SageMaker میں AI ایجنٹس بنائیں

Generative AI ایجنٹوں کے ساتھ خودکار ورک فلو

‏Amazon Bedrock in SageMaker Unified Studio آپ کو جدید Generative AI ایجنٹس بنانے اور تعینات کرنے کی طاقت دیتا ہے۔ یہ ایجنٹس آپ کی تنظیم کی ایپلیکیشنز، ڈیٹا بیسز، اور یہاں تک کہ تھرڈ پارٹی سسٹمز کے ساتھ بغیر کسی رکاوٹ کے ضم ہو سکتے ہیں۔ انضمام کی یہ سطح آپ کے پورے ٹیکنالوجی اسٹیک میں قدرتی زبان کے تعاملات کو ممکن بناتی ہے۔ چیٹ ایجنٹ ایک اہم پل کا کام کرتا ہے، جو پیچیدہ معلوماتی نظام کو صارف دوست مواصلات سے جوڑتا ہے۔ Amazon Bedrock فنکشنز اور Amazon Bedrock Knowledge Bases کا فائدہ اٹھا کر، ایجنٹ متنوع ڈیٹا ذرائع سے منسلک ہونے کی صلاحیت حاصل کرتا ہے۔ یہ ذرائع JIRA APIs سے لے کر ریئل ٹائم پروجیکٹ اسٹیٹس ٹریکنگ سے لے کر کسٹمر ریلیشن شپ مینجمنٹ (CRM) سسٹمز تک کسٹمر کی معلومات بازیافت کرنے کے لیے ہو سکتے ہیں۔ ایجنٹ پروجیکٹ کے کاموں کو بھی اپ ڈیٹ کر سکتا ہے، صارف کی ترجیحات کا نظم کر سکتا ہے، اور بہت کچھ کر سکتا ہے۔‏

‏یہ جامع فعالیت کسی تنظیم کے اندر مختلف ٹیموں کو اہم فوائد فراہم کرتی ہے۔ سیلز اور مارکیٹنگ ٹیمیں کسٹمر کی معلومات اور ان کے ترجیحی ملاقات کے اوقات تک تیزی سے رسائی حاصل کر سکتی ہیں۔ پروجیکٹ مینیجرز JIRA کے کاموں اور ٹائم لائنز کا مؤثر طریقے سے انتظام کر سکتے ہیں، پروجیکٹ کے ورک فلو کو بہتر بنا سکتے ہیں۔ AI ایجنٹ کے ذریعے سہولت فراہم کردہ یہ ہموار عمل، پوری تنظیم میں بہتر پیداواریت اور بہتر کسٹمر انٹرایکشن کا باعث بنتا ہے۔‏

حل کا جائزہ

‏Amazon Bedrock ایک منظم، باہمی تعاون کا ماحول فراہم کرتا ہے، سبھی SageMaker Unified Studio کے اندر، Generative AI ایپلیکیشنز بنانے اور شیئر کرنے کے لیے۔ آئیے ایک عملی مثال کے حل میں غوطہ لگاتے ہیں جو کسٹمر مینجمنٹ ایجنٹ کے نفاذ کو ظاہر کرتا ہے:‏

  • Agentic Chat: ایک جدید ایجنٹک چیٹ ایپلیکیشن Amazon Bedrock کی چیٹ ایپلیکیشن فیچرز کا استعمال کرتے ہوئے بنائی جا سکتی ہے۔ اس چیٹ ایپلیکیشن کو بغیر کسی رکاوٹ کے ان فنکشنز کے ساتھ مربوط کیا جا سکتا ہے جو آسانی سے دیگر AWS سروسز کا استعمال کرتے ہوئے بنائے گئے ہیں، جیسے کہ سرور لیس کمپیوٹ کے لیے AWS Lambda اور APIs بنانے اور ان کا نظم کرنے کے لیے Amazon API Gateway۔
  • Data Management: SageMaker Unified Studio، Amazon DataZone کے ساتھ مل کر، اپنی مربوط سروسز کے ذریعے ڈیٹا مینجمنٹ کا ایک جامع حل پیش کرتا ہے۔ تنظیم کے منتظمین کے پاس Amazon Bedrock ماڈلز اور فیچرز تک ممبر کی رسائی پر باریک بینی سے کنٹرول ہوتا ہے۔ یہ ڈیٹا سیکیورٹی اور تعمیل کو برقرار رکھتے ہوئے محفوظ شناخت کا انتظام اور دانے دار رسائی کنٹرول کو یقینی بناتا ہے۔

اس سے پہلے کہ ہم AI ایجنٹ کی تعیناتی میں گہرائی میں غوطہ لگائیں، آرکیٹیکچر کے اہم مراحل سے گزرنا فائدہ مند ہے۔

ورک فلو اس طرح سامنے آتا ہے:

  1. User Authentication and Interaction: صارف AWS IAM Identity Center سے اپنی تنظیم کے SSO اسناد کا استعمال کرتے ہوئے SageMaker Unified Studio میں لاگ ان کرکے اس عمل کو شروع کرتا ہے۔ ایک بار تصدیق ہوجانے کے بعد، صارف قدرتی زبان کا استعمال کرتے ہوئے چیٹ ایپلیکیشن کے ساتھ بات چیت کرتا ہے، سوالات پوچھتا ہے یا درخواستیں کرتا ہے۔
  2. Function Invocation: Amazon Bedrock چیٹ ایپلیکیشن ذہانت سے متعلقہ معلومات کو بازیافت کرنے کے لیے پہلے سے طے شدہ فنکشن کا استعمال کرتی ہے۔ یہ فنکشن JIRA اسٹیٹس اپ ڈیٹس یا ڈیٹا بیس سے کسٹمر کی معلومات لانے کے لیے ڈیزائن کیا جا سکتا ہے۔ بازیافت API Gateway کا استعمال کرتے ہوئے ایک محفوظ اینڈ پوائنٹ کے ذریعے انجام دی جاتی ہے۔
  3. Secure Access and Lambda Trigger: چیٹ ایپلیکیشن نامزد اینڈ پوائنٹ تک محفوظ طریقے سے رسائی حاصل کرنے کے لیے API Gateway کے ساتھ خود کی تصدیق کرتی ہے۔ یہ تصدیق AWS Secrets Manager میں محفوظ طریقے سے ذخیرہ شدہ بے ترتیب طور پر تیار کردہ API کلید کا استعمال کرتے ہوئے حاصل کی جاتی ہے۔ صارف کی درخواست کی بنیاد پر، مناسب Lambda فنکشن متحرک ہوتا ہے۔
  4. Action Execution: Lambda فنکشن، جو اب فعال ہو چکا ہے، صارف کی طرف سے درخواست کردہ مخصوص کارروائیاں انجام دیتا ہے۔ اس میں JIRA API کو کال کرنا یا ایجنٹ کے ذریعہ فراہم کردہ ضروری پیرامیٹرز کے ساتھ ڈیٹا بیس سے استفسار کرنا شامل ہے۔ ایجنٹ کو مختلف قسم کے کاموں کو سنبھالنے کے لیے ڈیزائن کیا گیا ہے، بشمول:
    1. کسی مخصوص گاہک کا ایک جامع جائزہ فراہم کرنا۔
    2. کسی خاص گاہک کے ساتھ حالیہ بات چیت کی فہرست بنانا۔
    3. کسی نامزد گاہک کے لیے ملاقات کی ترجیحات کو بازیافت کرنا۔
    4. کسی مخصوص پروجیکٹ سے وابستہ کھلے JIRA ٹکٹوں کی فہرست بازیافت کرنا۔
    5. کسی خاص JIRA ٹکٹ کے لیے مقررہ تاریخ کو اپ ڈیٹ کرنا۔

پیشگی شرائط

اس حل کے نفاذ پر عمل کرنے اور اپنا کسٹمر مینجمنٹ ایجنٹ بنانے کے لیے، آپ کو درج ذیل پیشگی شرائط کی ضرورت ہوگی:

  • AWS Account: ضروری سروسز تک رسائی کے لیے ایک فعال AWS اکاؤنٹ ضروری ہے۔
  • SageMaker Unified Studio Access: SageMaker Unified Studio کے اندر Amazon Bedrock تک صارف کی رسائی درکار ہے۔
  • Model Access: آپ کو Amazon Bedrock پر Amazon Nova Pro تک ماڈل تک رسائی کی ضرورت ہوگی۔ یقینی بنائیں کہ یہ ماڈل ایک معاون AWS ریجن میں دستیاب ہے۔
  • JIRA Setup: JIRA کے ساتھ ضم ہونے کے لیے ایک JIRA ایپلیکیشن، اس کا متعلقہ JIRA URL، اور آپ کے اکاؤنٹ سے وابستہ JIRA API ٹوکن ضروری ہے۔

یہ فرض کیا جاتا ہے کہ آپ کو AWS پر بنیادی سرور لیس تصورات کی بنیادی سمجھ ہے، بشمول API Gateway، Lambda فنکشنز، اور IAM Identity Center۔ اگرچہ یہ پوسٹ ان سروسز کی گہرائی سے تعریفیں فراہم نہیں کرے گی، ہم SageMaker Unified Studio کے اندر دستیاب نئے Amazon Bedrock فیچرز کے تناظر میں ان کے استعمال کے معاملات کو ظاہر کریں گے۔

حل کی تعیناتی

کسٹمر مینجمنٹ ایجنٹ حل کو تعینات کرنے کے لیے، ان مراحل پر عمل کریں:

  1. Download Code: فراہم کردہ GitHub repository سے ضروری کوڈ ڈاؤن لوڈ کرکے شروع کریں۔
  2. Retrieve JIRA Credentials: Lambda فنکشن کے لیے JIRA_API_KEY_ARN، JIRA_URL، اور JIRA_USER_NAME کی قدریں حاصل کریں۔ یہ اسناد آپ کے JIRA مثال کے ساتھ تصدیق کرنے کے لیے استعمال ہوں گی۔
  3. Launch CloudFormation Stack: فراہم کردہ AWS CloudFormation ٹیمپلیٹ کا استعمال کریں۔ اپنے پسندیدہ AWS ریجن میں اسٹیک لانچ کرنے کے بارے میں تفصیلی ہدایات کے لیے “Create a stack from the CloudFormation console” پر دستاویزات سے رجوع کریں۔
  4. API Gateway URL: CloudFormation اسٹیک کے کامیابی کے ساتھ تعینات ہونے کے بعد، Outputs ٹیب پر جائیں۔ ApiInvokeURL ویلیو کو تلاش کریں اور نوٹ کریں۔ یہ URL آپ کے API Gateway کے اینڈ پوائنٹ کی نمائندگی کرتا ہے۔
  5. Secrets Manager Configuration: Secrets Manager کنسول تک رسائی حاصل کریں۔ JIRA_API_KEY_ARN، JIRA_URL، اور JIRA_USER_NAME سے مطابقت رکھنے والے راز تلاش کریں۔
  6. Update Secret Values: ہر راز کے لیے Retrieve secret آپشن منتخب کریں۔ مرحلہ 2 میں حاصل کردہ متعلقہ متغیرات کو خفیہ سادہ متن سٹرنگ میں کاپی کریں۔ یہ آپ کے JIRA اسناد کو محفوظ طریقے سے ذخیرہ کرے گا۔
  7. Sign in to SageMaker Unified Studio: اپنی تنظیم کے SSO اسناد کا استعمال کرتے ہوئے SageMaker Unified Studio میں سائن ان کریں۔

ایک نیا پروجیکٹ بنانا

بنیادی ڈھانچے کے ساتھ، آئیے SageMaker Unified Studio کے اندر ایک نیا پروجیکٹ بنائیں:

  1. Project Creation: SageMaker Unified Studio لینڈنگ پیج پر، ایک نئے پروجیکٹ کی تخلیق شروع کریں۔
  2. Project Naming: اپنے پروجیکٹ کو ایک وضاحتی نام دیں (مثال کے طور پر، crm-agent
  3. Profile Selection: Generative AI application development profile کو منتخب کریں اور آگے بڑھیں۔
  4. Default Settings: ڈیفالٹ سیٹنگز کو قبول کریں اور جاری رکھیں۔
  5. Confirmation: پروجیکٹ کنفیگریشن کا جائزہ لیں اور تصدیق کے لیے Create project منتخب کریں۔

چیٹ ایجنٹ ایپلیکیشن کی تعمیر

اب، آئیے اپنے حل کا بنیادی حصہ بنائیں – چیٹ ایجنٹ ایپلیکیشن:

  1. Chat Agent Initiation: crm-agent پروجیکٹ لینڈنگ پیج کے اندر، دائیں جانب New سیکشن کو تلاش کریں۔ اپنی ایپلیکیشن بنانا شروع کرنے کے لیے Chat agent کو منتخب کریں۔
    یہ آپ کے ایجنٹ ایپلیکیشن کے لیے کنفیگریشنز کی فہرست پیش کرے گا۔

  2. Model Selection: ماڈل سیکشن کے تحت، Amazon Bedrock کے ذریعے سپورٹ کردہ مطلوبہ فاؤنڈیشن ماڈل (FM) کو منتخب کریں۔ اس crm-agent کے لیے، ہم Amazon Nova Pro کا انتخاب کریں گے۔

  3. System Prompt Definition: سسٹم پرامپٹ سیکشن میں، درج ذیل پرامپٹ فراہم کریں۔ یہ پرامپٹ ایجنٹ کے رویے اور جوابات کی رہنمائی کرے گا۔ آپ اس کی کارکردگی کو مزید بہتر بنانے کے لیے صارف کے ان پٹ اور ماڈل کے جوابات کی مثالیں بھی شامل کر سکتے ہیں۔

    You are a customer relationship management agent tasked with helping a sales person plan their work with customers. You are provided with an API endpoint. This endpoint can provide information like company overview, company interaction history (meeting times and notes), company meeting preferences (meeting type, day of week, and time of day). You can also query Jira tasks and update their timeline. After receiving a response, clean it up into a readable format. If the output is a numbered list, format it as such with newline characters and numbers.

  4. Function Creation: Functions سیکشن میں، Create a new function منتخب کریں۔ یہ فنکشن ان اعمال کی وضاحت کرے گا جو ایجنٹ انجام دے سکتا ہے۔

  5. Function Naming: اپنے فنکشن کو ایک وضاحتی نام دیں، جیسے crm_agent_calling۔

  6. Function Schema: Function schema کے لیے، GitHub repository میں فراہم کردہ OpenAPI تعریف استعمال کریں۔ یہ اسکیما آپ کے فنکشن کے لیے ان پٹ اور آؤٹ پٹ پیرامیٹرز کی وضاحت کرتا ہے۔

  7. Authentication Configuration: Authentication method کے لیے، API Keys (Max. 2 Keys) منتخب کریں اور درج ذیل تفصیلات درج کریں:

    1. Key sent in کے لیے، Header منتخب کریں۔
    2. Key name کے لیے، x-api-key درج کریں۔
    3. Key value کے لیے، Secrets Manager API Key درج کریں۔
  8. API Server Endpoint: API servers سیکشن میں، CloudFormation Outputs سے حاصل کردہ اینڈ پوائنٹ URL ( ApiInvokeURL) ان پٹ کریں۔

  9. Function Finalization: فنکشن کی تخلیق کو حتمی شکل دینے کے لیے Create منتخب کریں۔

  10. Application Saving: چیٹ ایجنٹ ایپلیکیشن کے Functions سیکشن میں، آپ نے ابھی بنائے گئے فنکشن کو منتخب کریں اور ایپلیکیشن کی تخلیق کو مکمل کرنے کے لیے Save منتخب کریں۔

مثال کے تعاملات

آئیے کچھ عملی مثالیں دریافت کرتے ہیں کہ اس چیٹ ایجنٹ کو کیسے استعمال کیا جا سکتا ہے:

یوز کیس 1: CRM تجزیہ کار کسٹمر کی تفصیلات بازیافت کرنا

ایک CRM تجزیہ کار ڈیٹا بیس میں ذخیرہ شدہ کسٹمر کی تفصیلات بازیافت کرنے کے لیے قدرتی زبان کا استعمال کر سکتا ہے۔ یہاں کچھ مثالی سوالات ہیں جو وہ پوچھ سکتے ہیں:

  • “Give me a brief overview of customer C-jkl101112.”
  • “List the last 2 recent interactions for customer C-def456.”
  • “What communication method does customer C-mno131415 prefer?”
  • “Recommend optimal time and contact channel to reach out to C-ghi789 based on their preferences and our last interaction.”

ایجنٹ، ان درخواستوں کو موصول ہونے پر، ذہانت سے ڈیٹا بیس سے استفسار کرے گا اور متعلقہ جوابات کو واضح اور جامع شکل میں فراہم کرے گا۔

یوز کیس 2: پروجیکٹ مینیجر JIRA ٹکٹوں کا انتظام کرنا

ایک پروجیکٹ مینیجر JIRA ٹکٹوں کی فہرست بنانے اور اپ ڈیٹ کرنے کے لیے ایجنٹ کا استعمال کر سکتا ہے۔ یہاں کچھ مثالی تعاملات ہیں:

  • “What are the open JIRA Tasks for project id CRM?”
  • “Please update JIRA Task CRM-3 to 1 weeks out.”

ایجنٹ JIRA بورڈ تک رسائی حاصل کرے گا، متعلقہ پروجیکٹ کی معلومات لائے گا، اور کھلے JIRA کاموں کی فہرست فراہم کرے گا۔ یہ صارف کی درخواست کے مطابق کسی مخصوص کام کی ٹائم لائن کو بھی اپ ڈیٹ کرے گا۔

صفائی

غیر ضروری اخراجات سے بچنے کے لیے، درج ذیل صفائی کے مراحل انجام دیں:

  1. Delete CloudFormation Stack: CloudFormation اسٹیک کو حذف کریں جسے آپ نے پہلے تعینات کیا تھا۔
  2. Delete Function Component: Amazon Bedrock میں آپ نے جو فنکشن کمپوننٹ بنایا ہے اسے ہٹا دیں۔
  3. Delete Chat Agent Application: Amazon Bedrock کے اندر چیٹ ایجنٹ ایپلیکیشن کو حذف کریں۔
  4. Delete Domains: SageMaker Unified Studio میں ڈومینز کو حذف کریں۔

لاگت

SageMaker Unified Studio کے اندر Amazon Bedrock استعمال کرنے سے کوئی علیحدہ چارجز نہیں لگتے ہیں۔ تاہم، آپ سے سروس کے اندر استعمال ہونے والی انفرادی AWS سروسز اور وسائل کے لیے بل لیا جائے گا۔ Amazon Bedrock پے-ایز-یو-گو ماڈل پر کام کرتا ہے، یعنی آپ صرف ان وسائل کے لیے ادائیگی کرتے ہیں جو آپ استعمال کرتے ہیں، بغیر کسی کم از کم فیس یا پیشگی وعدوں کے۔

اگر آپ کو قیمتوں کے حساب کتاب میں مزید مدد کی ضرورت ہو یا اپنے مخصوص استعمال کے کیس کے لیے اخراجات کو بہتر بنانے کے بارے میں سوالات ہوں، تو AWS سپورٹ سے رابطہ کرنے یا اپنے اکاؤنٹ مینیجر سے مشورہ کرنے کی سفارش کی جاتی ہے۔ وہ آپ کی ضروریات کی بنیاد پر موزوں رہنمائی فراہم کر سکتے ہیں۔