এপিআই কলের সাথে ডক্স এবং অ্যাকশনের জন্য প্রশ্নোত্তর জন্য স্ল্যাকে GenAI এজেন্ট

১. সংক্ষিপ্ত বিবরণ

এই ল্যাবে, আপনি একটি GenAI এজেন্ট তৈরি করবেন, সেটিকে Cloud Run অ্যাপ্লিকেশনের সাথে সংযুক্ত করবেন এবং এজেন্টটিকে Slack ওয়ার্কস্পেসে একীভূত করবেন।

3301e2bb69be325.png

আপনি যা শিখবেন

ল্যাবের কয়েকটি প্রধান অংশ রয়েছে:

  • জেমিনি এপিআই-এর সাথে ইন্টিগ্রেট করতে ক্লাউড রান অ্যাপ্লিকেশনটি ডিপ্লয় করুন।
  • এআই অ্যাপ্লিকেশনগুলিতে কথোপকথনমূলক এজেন্ট তৈরি এবং স্থাপন করুন
  • এজেন্টকে স্ল্যাকে একীভূত করুন
  • পিডিএফ ডকুমেন্টের প্রশ্নোত্তরের জন্য ডেটা স্টোর কনফিগার করুন।

পূর্বশর্ত

  • এই ল্যাবটি করার জন্য ক্লাউড কনসোল এবং ক্লাউড শেল পরিবেশ সম্পর্কে পূর্বপরিচিতি আছে বলে ধরে নেওয়া হচ্ছে।

২. সেটআপ এবং প্রয়োজনীয়তা

ক্লাউড প্রজেক্ট সেটআপ

  1. Google Cloud Console- এ সাইন-ইন করুন এবং একটি নতুন প্রজেক্ট তৈরি করুন অথবা বিদ্যমান কোনো প্রজেক্ট পুনরায় ব্যবহার করুন। যদি আপনার আগে থেকে Gmail বা Google Workspace অ্যাকাউন্ট না থাকে, তবে আপনাকে অবশ্যই একটি তৈরি করতে হবে।

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • প্রজেক্টের নামটি হলো এই প্রজেক্টের অংশগ্রহণকারীদের প্রদর্শিত নাম। এটি একটি ক্যারেক্টার স্ট্রিং যা গুগল এপিআই ব্যবহার করে না। আপনি যেকোনো সময় এটি আপডেট করতে পারেন।
  • প্রজেক্ট আইডি সমস্ত গুগল ক্লাউড প্রজেক্ট জুড়ে অনন্য এবং অপরিবর্তনীয় (একবার সেট করার পর এটি পরিবর্তন করা যায় না)। ক্লাউড কনসোল স্বয়ংক্রিয়ভাবে একটি অনন্য স্ট্রিং তৈরি করে; সাধারণত এটি কী তা নিয়ে আপনার মাথা ঘামানোর দরকার নেই। বেশিরভাগ কোডল্যাবে, আপনাকে আপনার প্রজেক্ট আইডি উল্লেখ করতে হবে (যা সাধারণত PROJECT_ID হিসাবে চিহ্নিত করা হয়)। তৈরি করা আইডিটি আপনার পছন্দ না হলে, আপনি এলোমেলোভাবে আরেকটি তৈরি করতে পারেন। বিকল্পভাবে, আপনি আপনার নিজের আইডি দিয়ে চেষ্টা করে দেখতে পারেন যে সেটি উপলব্ধ আছে কিনা। এই ধাপের পরে এটি পরিবর্তন করা যাবে না এবং প্রজেক্টের পুরো সময়কাল জুড়ে এটি অপরিবর্তিত থাকবে।
  • আপনার অবগতির জন্য জানানো যাচ্ছে যে, তৃতীয় একটি ভ্যালু রয়েছে, যা হলো প্রজেক্ট নম্বর , এবং কিছু এপিআই এটি ব্যবহার করে থাকে। ডকুমেন্টেশনে এই তিনটি ভ্যালু সম্পর্কে আরও বিস্তারিত জানুন।
  1. এরপর, ক্লাউড রিসোর্স/এপিআই ব্যবহার করার জন্য আপনাকে ক্লাউড কনসোলে বিলিং চালু করতে হবে। এই কোডল্যাবটি সম্পন্ন করতে খুব বেশি খরচ হবে না, এমনকি আদৌ কোনো খরচ নাও হতে পারে। এই টিউটোরিয়ালের পর বিলিং এড়াতে রিসোর্সগুলো বন্ধ করার জন্য, আপনি আপনার তৈরি করা রিসোর্সগুলো অথবা প্রজেক্টটি ডিলিট করে দিতে পারেন। নতুন গুগল ক্লাউড ব্যবহারকারীরা ৩০০ মার্কিন ডলারের ফ্রি ট্রায়াল প্রোগ্রামের জন্য যোগ্য।

পরিবেশ সেটআপ

জেমিনি চ্যাট খুলুন।

e1e9ad314691368a.png

Google Cloud API-এর জন্য Gemini সক্রিয় করুন:

933612a23648361c.png

b366894eb450f862.png

" Start chatting "-এ ক্লিক করুন এবং এটি পরখ করে দেখার জন্য নমুনা প্রশ্নগুলোর মধ্যে একটি অনুসরণ করুন অথবা আপনার নিজের প্রশ্ন টাইপ করুন।

ed120d672468b412.png

চেষ্টা করার মতো কিছু প্রম্পট:

  • ৫টি মূল পয়েন্টে ক্লাউড রান ব্যাখ্যা করুন।
  • আপনি গুগল ক্লাউড রান-এর প্রোডাক্ট ম্যানেজার, একজন শিক্ষার্থীকে ৫টি সংক্ষিপ্ত ও গুরুত্বপূর্ণ পয়েন্টে ক্লাউড রান ব্যাখ্যা করুন।
  • আপনি গুগল ক্লাউড রান প্রোডাক্ট ম্যানেজার, একজন সার্টিফায়েড কুবারনেটিস ডেভেলপারকে ৫টি সংক্ষিপ্ত ও মূল পয়েন্টে ক্লাউড রান ব্যাখ্যা করুন।
  • আপনি গুগল ক্লাউড রান-এর প্রোডাক্ট ম্যানেজার। একজন সিনিয়র ডেভেলপারকে ৫টি সংক্ষিপ্ত ও গুরুত্বপূর্ণ পয়েন্টে ব্যাখ্যা করুন, কখন আপনি GKE-এর পরিবর্তে ক্লাউড রান ব্যবহার করবেন।

আরও ভালো প্রম্পট লেখার বিষয়ে জানতে প্রম্পট গাইডটি দেখুন।

গুগল ক্লাউডের জন্য জেমিনি কীভাবে আপনার ডেটা ব্যবহার করে

গুগলের গোপনীয়তার প্রতিশ্রুতি

এআই/এমএল গোপনীয়তার প্রতিশ্রুতি প্রকাশকারী শিল্পখাতে গুগল অন্যতম প্রথম প্রতিষ্ঠান, যেখানে আমাদের এই বিশ্বাসটি তুলে ধরা হয়েছে যে, ক্লাউডে সংরক্ষিত গ্রাহকদের ডেটার ওপর সর্বোচ্চ স্তরের নিরাপত্তা এবং নিয়ন্ত্রণ থাকা উচিত।

আপনার জমা দেওয়া এবং প্রাপ্ত ডেটা

আপনি জেমিনিকে যে প্রশ্নগুলো করেন, যার মধ্যে বিশ্লেষণ বা সম্পূর্ণ করার জন্য আপনার জমা দেওয়া যেকোনো ইনপুট তথ্য বা কোডও অন্তর্ভুক্ত, সেগুলোকে প্রম্পট বলা হয়। জেমিনি থেকে আপনি যে উত্তর বা কোড সম্পূর্ণকরণ পান, সেগুলোকে রেসপন্স বলা হয়। জেমিনি তার মডেলগুলোকে প্রশিক্ষণ দেওয়ার জন্য আপনার প্রম্পট বা তার রেসপন্সগুলোকে ডেটা হিসেবে ব্যবহার করে না

প্রম্পটের এনক্রিপশন

আপনি যখন জেমিনিতে প্রম্পট জমা দেন, তখন আপনার ডেটা জেমিনির অন্তর্নিহিত মডেলে ইনপুট হিসেবে স্থানান্তরের সময় এনক্রিপ্ট করা হয়

জেমিনি থেকে তৈরি প্রোগ্রাম ডেটা

জেমিনি গুগল ক্লাউডের নিজস্ব কোডের পাশাপাশি নির্বাচিত তৃতীয় পক্ষের কোডের উপরও প্রশিক্ষিত। আপনার কোডের নিরাপত্তা, পরীক্ষা এবং কার্যকারিতার জন্য আপনিই দায়ী থাকবেন , যার মধ্যে জেমিনির দেওয়া যেকোনো কোড কমপ্লিশন, জেনারেশন বা অ্যানালাইসিসও অন্তর্ভুক্ত।

গুগল আপনার অনুরোধগুলো কীভাবে পরিচালনা করে, সে সম্পর্কে আরও জানুন

৩. প্রম্পট পরীক্ষা করার বিকল্পসমূহ

প্রম্পটগুলো পরীক্ষা করার জন্য আপনার কাছে বেশ কয়েকটি বিকল্প রয়েছে।

ভার্টেক্স এআই স্টুডিও হলো গুগল ক্লাউডের ভার্টেক্স এআই প্ল্যাটফর্মের একটি অংশ, যা বিশেষভাবে জেনারেটিভ এআই মডেলের উন্নয়ন ও ব্যবহারকে সহজ এবং দ্রুততর করার জন্য ডিজাইন করা হয়েছে।

গুগল এআই স্টুডিও হলো প্রম্পট ইঞ্জিনিয়ারিং এবং জেমিনি এপিআই নিয়ে প্রোটোটাইপিং ও পরীক্ষা-নিরীক্ষার জন্য একটি ওয়েব-ভিত্তিক টুল।

গুগল জেমিনি ওয়েব অ্যাপ (gemini.google.com) হলো একটি ওয়েব-ভিত্তিক টুল, যা আপনাকে গুগলের জেমিনি এআই মডেলগুলোর শক্তি অন্বেষণ ও ব্যবহার করতে সাহায্য করার জন্য ডিজাইন করা হয়েছে।

৪. রিপোটি ক্লোন করুন

Google Cloud Console-এ ফিরে যান এবং সার্চ বারের ডানদিকে থাকা আইকনটিতে ক্লিক করে Cloud Shell সক্রিয় করুন।

3e0c761ca41f315e.png

অনুমতি দিতে বলা হলে, চালিয়ে যাওয়ার জন্য 'Authorize'-এ ক্লিক করুন।

6356559df3eccdda.png

খোলা টার্মিনালে নিম্নলিখিত কমান্ডগুলো চালান।

git clone https://github.com/GoogleCloudPlatform/genai-for-developers.git

cd genai-for-developers

git checkout slack-agent-jira-lab

'ওপেন এডিটর'-এ ক্লিক করুন

63e838aebfdd2423.png

" File / Open Folder " মেনু আইটেমটি ব্যবহার করে " genai-for-developers " ফোল্ডারটি খুলুন।

e3b9bd9682acf539.png

একটি নতুন টার্মিনাল খুলুন

4d9c41ab01ff4e97.png

৫. পরিষেবা অ্যাকাউন্ট তৈরি করুন

একটি নতুন সার্ভিস অ্যাকাউন্ট তৈরি করুন। ক্লাউড রান অ্যাপ্লিকেশন থেকে ভার্টেক্স এআই জেমিনি এপিআই-তে এপিআই কল করার জন্য আপনি এই সার্ভিস অ্যাকাউন্টটি ব্যবহার করবেন।

আপনার কুইকল্যাবস প্রজেক্টের বিবরণ ব্যবহার করে প্রজেক্টের বিস্তারিত তথ্য কনফিগার করুন।

উদাহরণ: qwiklabs-gcp-00-2c10937585bb

gcloud config set project YOUR_QWIKLABS_PROJECT_ID

একটি পরিষেবা অ্যাকাউন্ট তৈরি করুন।

export LOCATION=us-central1
export PROJECT_ID=$(gcloud config get-value project)
export SERVICE_ACCOUNT_NAME='vertex-client'
export DISPLAY_NAME='Vertex Client'

gcloud iam service-accounts create $SERVICE_ACCOUNT_NAME --project $PROJECT_ID --display-name "$DISPLAY_NAME"

ভূমিকা মঞ্জুর করুন।

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/aiplatform.admin"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/aiplatform.user"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/cloudbuild.builds.editor"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/artifactregistry.admin"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/storage.admin"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/run.admin"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/secretmanager.secretAccessor"

Vertex AI API এবং Gemini চ্যাট ব্যবহার করার জন্য প্রয়োজনীয় পরিষেবাগুলি সক্রিয় করুন।

gcloud services enable \
    generativelanguage.googleapis.com \
    aiplatform.googleapis.com \
    cloudaicompanion.googleapis.com \
    dialogflow.googleapis.com \
    run.googleapis.com \
    cloudresourcemanager.googleapis.com \
    discoveryengine.googleapis.com

Vertex AI API এবং Gemini চ্যাট ব্যবহার করার জন্য প্রয়োজনীয় পরিষেবাগুলি সক্রিয় করুন।

gcloud services enable \
    artifactregistry.googleapis.com \
    cloudbuild.googleapis.com \
    runapps.googleapis.com \
    workstations.googleapis.com \
    servicemanagement.googleapis.com \
    secretmanager.googleapis.com \
    containerscanning.googleapis.com

কোডের ব্যাখ্যার জন্য জেমিনি কোড অ্যাসিস্ট ব্যবহার করুন।

' devai-api/app/routes.py ' ফাইলটি খুলুন এবং তারপর ফাইলটির যেকোনো জায়গায় রাইট-ক্লিক করে কনটেক্সট মেনু থেকে ' Gemini Code Assist > Explain this" নির্বাচন করুন।

427ed40dd44cab8a.png

নির্বাচিত ফাইলটির জন্য জেমিনির ব্যাখ্যা পর্যালোচনা করুন।

a286d1e85bc42960.png

৬. ক্লাউড রানে দেবাই-এপিআই স্থাপন করুন

আপনি সঠিক ফোল্ডারে আছেন কিনা তা যাচাই করুন।

cd ~/genai-for-developers/devai-api

এই ল্যাবের জন্য, আমরা সর্বোত্তম পদ্ধতি অনুসরণ করি এবং ক্লাউড রানে অ্যাক্সেস টোকেন ও ল্যাংচেইন এপিআই কী-এর মান সংরক্ষণ ও রেফারেন্স করার জন্য সিক্রেট ম্যানেজার ব্যবহার করি।

এনভায়রনমেন্ট ভেরিয়েবল সেট করুন। এই কমান্ডটি কোনো পরিবর্তন ছাড়াই সরাসরি চালান।

export JIRA_API_TOKEN=your-jira-token
export JIRA_USERNAME="YOUR-EMAIL"
export JIRA_INSTANCE_URL="https://YOUR-JIRA-PROJECT.atlassian.net"
export JIRA_PROJECT_KEY="YOUR-JIRA-PROJECT-KEY"
export JIRA_CLOUD=true

export GITLAB_PERSONAL_ACCESS_TOKEN=your-gitlab-token
export GITLAB_URL="https://gitlab.com"
export GITLAB_BRANCH="devai"
export GITLAB_BASE_BRANCH="main"
export GITLAB_REPOSITORY="GITLAB-USERID/GITLAB-REPO"

export LANGCHAIN_API_KEY=your-langchain-key
export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_ENDPOINT="https://api.smith.langchain.com"

সিক্রেট ম্যানেজারে একাধিক গোপনীয় তথ্য তৈরি ও সংরক্ষণ করুন।

echo -n $JIRA_API_TOKEN | \
 gcloud secrets create JIRA_API_TOKEN \
 --data-file=-

echo -n $GITLAB_PERSONAL_ACCESS_TOKEN | \
 gcloud secrets create GITLAB_PERSONAL_ACCESS_TOKEN \
 --data-file=-

echo -n $LANGCHAIN_API_KEY | \
 gcloud secrets create LANGCHAIN_API_KEY \
 --data-file=-

অ্যাপ্লিকেশনটি ক্লাউড রান-এ স্থাপন করুন।

gcloud run deploy devai-api \
  --source=. \
  --region="$LOCATION" \
  --allow-unauthenticated \
  --service-account vertex-client \
  --set-env-vars PROJECT_ID="$PROJECT_ID" \
  --set-env-vars LOCATION="$LOCATION" \
  --set-env-vars GITLAB_URL="$GITLAB_URL" \
  --set-env-vars GITLAB_REPOSITORY="$GITLAB_REPOSITORY" \
  --set-env-vars GITLAB_BRANCH="$GITLAB_BRANCH" \
  --set-env-vars GITLAB_BASE_BRANCH="$GITLAB_BASE_BRANCH" \
  --set-env-vars JIRA_USERNAME="$JIRA_USERNAME" \
  --set-env-vars JIRA_INSTANCE_URL="$JIRA_INSTANCE_URL" \
  --set-env-vars JIRA_PROJECT_KEY="$JIRA_PROJECT_KEY" \
  --set-env-vars JIRA_CLOUD="$JIRA_CLOUD" \
  --set-env-vars LANGCHAIN_TRACING_V2="$LANGCHAIN_TRACING_V2" \
  --update-secrets="LANGCHAIN_API_KEY=LANGCHAIN_API_KEY:latest" \
  --update-secrets="GITLAB_PERSONAL_ACCESS_TOKEN=GITLAB_PERSONAL_ACCESS_TOKEN:latest" \
  --update-secrets="JIRA_API_TOKEN=JIRA_API_TOKEN:latest" \
  --min-instances=1 \
  --max-instances=3

আর্টিফ্যাক্ট রেজিস্ট্রি ডকার রিপোজিটরি তৈরি করতে Y উত্তর দিন।

Deploying from source requires an Artifact Registry Docker repository to store built containers. A repository named [cloud-run-source-deploy] in 
region [us-central1] will be created.

Do you want to continue (Y/n)?  y

জেমিনিকে আদেশটি ব্যাখ্যা করতে বলুন:

What does this command do?

gcloud run deploy devai-api \
  --source=. \
  --region="$LOCATION" \
  --allow-unauthenticated \
  --service-account vertex-client \
  --set-env-vars PROJECT_ID="$PROJECT_ID" \
  --set-env-vars LOCATION="$LOCATION" \
  --set-env-vars GITLAB_URL="$GITLAB_URL" \
  --set-env-vars GITLAB_REPOSITORY="$GITLAB_REPOSITORY" \
  --set-env-vars GITLAB_BRANCH="$GITLAB_BRANCH" \
  --set-env-vars GITLAB_BASE_BRANCH="$GITLAB_BASE_BRANCH" \
  --set-env-vars JIRA_USERNAME="$JIRA_USERNAME" \
  --set-env-vars JIRA_INSTANCE_URL="$JIRA_INSTANCE_URL" \
  --set-env-vars JIRA_PROJECT_KEY="$JIRA_PROJECT_KEY" \
  --set-env-vars JIRA_CLOUD="$JIRA_CLOUD" \
  --set-env-vars LANGCHAIN_TRACING_V2="$LANGCHAIN_TRACING_V2" \
  --update-secrets="LANGCHAIN_API_KEY=LANGCHAIN_API_KEY:latest" \
  --update-secrets="GITLAB_PERSONAL_ACCESS_TOKEN=GITLAB_PERSONAL_ACCESS_TOKEN:latest" \
  --update-secrets="JIRA_API_TOKEN=JIRA_API_TOKEN:latest" \
  --min-instances=1 \
  --max-instances=3

34ed504e0bcf697b.png

নিচে দেওয়া gcloud run deploy SERVICE_NAME --source=. ফ্লোটি পর্যালোচনা করুন। আরও জানুন

5c122a89dd11822e.png

নেপথ্যে, এই কমান্ডটি গুগল ক্লাউডের buildpacks এবং Cloud Build ব্যবহার করে আপনার মেশিনে ডকার ইনস্টল করা বা বিল্ডপ্যাক বা ক্লাউড বিল্ড সেট আপ করা ছাড়াই আপনার সোর্স কোড থেকে স্বয়ংক্রিয়ভাবে কন্টেইনার ইমেজ তৈরি করে। অর্থাৎ, উপরে বর্ণিত এই একটিমাত্র কমান্ডই সেই কাজটি করে, যা করতে অন্যথায় gcloud builds submit এবং gcloud run deploy কমান্ডগুলোর প্রয়োজন হতো।

আপনি যদি ডকারফাইল দিয়ে থাকেন (যা আমরা এই রিপোজিটরিতে করেছি), তাহলে ক্লাউড বিল্ড স্বয়ংক্রিয়ভাবে কন্টেইনার ইমেজ শনাক্ত ও তৈরি করার জন্য বিল্ডপ্যাকের উপর নির্ভর না করে, সেটি ব্যবহার করে কন্টেইনার ইমেজ তৈরি করবে। বিল্ডপ্যাক সম্পর্কে আরও জানতে ডকুমেন্টেশন দেখুন।

কনসোলে ক্লাউড বিল্ড লগগুলো পর্যালোচনা করুন।

আর্টিফ্যাক্ট রেজিস্ট্রি -তে তৈরি করা ডকার ইমেজটি পর্যালোচনা করুন।

ক্লাউড কনসোলে ক্লাউড রান ইনস্ট্যান্সের বিবরণ পর্যালোচনা করুন।

curl কমান্ড চালিয়ে এন্ডপয়েন্টটি পরীক্ষা করুন।

curl -X POST \
   -H "Content-Type: application/json" \
   -d '{"prompt": "PROJECT-100"}' \
   $(gcloud  run services list --filter="(devai-api)" --format="value(URL)")/generate

উত্তরটি মার্কডাউন ফরম্যাটে থাকবে। সহজে পড়ার সুবিধার জন্য প্রিভিউ মোডে দেখানো হচ্ছে।

bda86deaa1c449a8.png

৭. এআই অ্যাপ্লিকেশন

গুগল ক্লাউড কনসোলের সার্চ বারে " AI Applications " টাইপ করে খুলুন।

3f8540f5c946e199.png

Conversational Agent অ্যাপ তৈরি করুন:

6f372cbe4935c507.png

" Build your own " নির্বাচন করুন।

5305cb9a8320f468.png

ডিসপ্লে নেমের জন্য " Agent " টাইপ করুন এবং "Create"-এ ক্লিক করুন।

e0056adc2f8af87.png

প্লেবুকের নাম সেট করুন:

Agent

লক্ষ্য নির্ধারণ করুন:

Help users with questions about JIRA project

নির্দেশাবলী নির্ধারণ করুন:

- Greet the users, then ask how you can help them today.
- Summarize the user's request and ask them to confirm that you understood correctly.
  - If necessary, seek clarifying details.
- Thank the user for their business and say goodbye.

" Save "-এ ক্লিক করুন:

bb2569de77cd1f06.png

ডান পাশের সিমুলেটর চ্যাট ব্যবহার করে এজেন্টটিকে পরীক্ষা করুন:

593dd4b8fc4c20d9.png

নীচে দেখানো অনুরূপ কথোপকথনগুলি অনুসরণ করুন:

66a7569835ebc7e7.png

এজেন্টের টুলস কনফিগারেশন

বাম দিকের রেঞ্চ আইকনের উপর মাউস রাখুন। টুলস মেনু খুলুন এবং একটি নতুন টুল তৈরি করুন:

ff635e2d135ea6d8.png

Type ড্রপডাউন থেকে OpenAPI নির্বাচন করুন।

টুলের নাম সেট করুন:

jira-project-status

সেটের বিবরণ:

Provides JIRA project status

ট্যাব পরিবর্তন করে ক্লাউড রান সার্ভিস ইউআরএল-এর জন্য কনসোল আউটপুট দেখুন। সার্ভিস ইউআরএল-এর মানটি কপি করুন।

স্কিমা (YAML) সেট করুন - আপনার ক্লাউড রান URL প্রতিস্থাপন করুন।

openapi: 3.0.0
info:
 title: CR API
 version: 1.0.0
 description: >-
   This is the OpenAPI specification of a service.
servers:
 - url: 'https://YOUR CLOUD RUN URL'
paths:

 /generate:
   post:
     summary: Request impl
     operationId: generate
     requestBody:
       description: Request impl
       required: true
       content:
         application/json:
           schema:
             $ref: '#/components/schemas/Prompt'
     responses:
       '200':
         description: Generated
         content:
           application/json:
             schema:
               $ref: '#/components/schemas/ProjectStatus'
                  
components:
 schemas:
   Prompt:
     type: object
     required:
       - prompt
     properties:
       prompt:
         type: string
   ProjectStatus:
     type: object
     required:
       - message
     properties:
       message:
         type: string

টুল কনফিগারেশন সংরক্ষণ করুন:

ae78c21f48754d7a.png

বাম মেনু থেকে 'প্লেবুক' নির্বাচন করে এজেন্ট কনফিগারেশনে ফিরে যান এবং টুলটি ব্যবহার করার জন্য নির্দেশাবলী আপডেট করুন:

নতুন টুলটি ব্যবহারের জন্য নির্দেশাবলী যোগ করুন এবং " Save " এ ক্লিক করুন:

- Use ${TOOL: jira-project-status} to help the user with JIRA project status.

16755dd3aaf3888.png

" Examples " ট্যাবে যান এবং নতুন উদাহরণ যোগ করুন:

a74004679865ab6e.png

প্রদর্শনের নাম সেট করুন:

jira-project-flow

নিচের মেনু ব্যবহার করে ব্যবহারকারী ও এজেন্টের মধ্যকার কথোপকথনটি মডেল করুন:

উদাহরণ প্রবাহ:

এজেন্টের উত্তর: প্রজেক্ট আইডি কী?

ব্যবহারকারীর ইনপুট: টেস্ট-প্রজেক্ট-১০০

টুল ব্যবহার: জিরা-প্রজেক্ট-স্ট্যাটাস

এজেন্টের উত্তর: প্রকল্পের অবস্থা সম্পর্কিত বিস্তারিত তথ্য।

6d54f90f1dc630fc.png

উদাহরণটি তৈরি করতে নিচের রেফারেন্সটি ব্যবহার করুন।

c80eef4210256e5a.png

5affaee4cd54616e.png

Save ক্লিক করুন। এজেন্ট সিমুলেটরে ফিরে যান এবং বিদ্যমান কথোপকথনগুলো রিসেট করুন। ফ্লোটি পরীক্ষা করুন।

ac9db60831b0f684.png

a9fbafd45139d434.png

অভিনন্দন! ক্লাউড রান-এ ডেপ্লয় করা অ্যাপ্লিকেশনের (API) সাথে সংযুক্ত টুলগুলো ইন্টিগ্রেট করার মাধ্যমে, আপনি সফলভাবে এজেন্টকে বিভিন্ন কাজ সম্পাদন করতে এবং এর সক্ষমতা বাড়াতে সক্ষম করেছেন।

e8b113e0cc1b8ad6.png

কথোপকথনমূলক এজেন্টদের জন্য সর্বোত্তম অনুশীলন পর্যালোচনা করুন

উপলব্ধ এজেন্ট সেটিংস পর্যালোচনা করুন

  • লগিং সেটিংস - ক্লাউড লগিং সক্ষম করুন
  • গিট ইন্টিগ্রেশন - গিট ইন্টিগ্রেশন আপনাকে একটি গিট রিপোজিটরি থেকে আপনার এজেন্টকে পুশ এবং পুল করার সুযোগ দেয়।
  • জেনারেটিভ মডেল নির্বাচন
  • টোকেন সীমা (ইনপুট এবং আউটপুট)

f914db1d8a5d5447.png

এজেন্ট সিমুলেটরের নিয়ন্ত্রণগুলো পর্যালোচনা করুন:

d1c4712603d4a8a2.png

৮. স্ল্যাক ইন্টিগ্রেশন

ইন্টিগ্রেশন মেনুটি খুলুন এবং স্ল্যাক টাইলের " Connect " বোতামে ক্লিক করুন।

6fc0ad95c28cb6c8.png

e7ee0826668bfa2b.png

b29574fd2a0f9725.png

লিঙ্কটি খুলুন এবং https://api.slack.com/apps- এ একটি নতুন স্ল্যাক অ্যাপ তৈরি করুন।

cbf13edc1b284899.png

"ম্যানিফেস্ট" থেকে নির্বাচন করুন:

7721feb295693ea2.png

আপনার অ্যাপ তৈরি করার জন্য একটি কর্মক্ষেত্র বেছে নিন।

99a3d5b37cdf8f76.png

YAML-এ পরিবর্তন করুন এবং এই ম্যানিফেস্টটি পেস্ট করুন:

display_information:
  name: Agent
  description: Agent
  background_color: "#1148b8"
features:
  app_home:
    home_tab_enabled: false
    messages_tab_enabled: true
    messages_tab_read_only_enabled: false
  bot_user:
    display_name: Agent
    always_online: true
oauth_config:
  scopes:
    bot:
      - app_mentions:read
      - chat:write
      - im:history
      - im:read
      - im:write
      - incoming-webhook
settings:
  event_subscriptions:
    request_url: https://dialogflow-slack-4vnhuutqka-uc.a.run.app
    bot_events:
      - app_mention
      - message.im
  org_deploy_enabled: false
  socket_mode_enabled: false
  token_rotation_enabled: false

'তৈরি করুন'-এ ক্লিক করুন:

5f0b3d2c44022eb9.png

ওয়ার্কস্পেসে ইনস্টল করুন:

aa1c2ea1b700c838.png

"#general" চ্যানেলটি নির্বাচন করুন এবং "Allow"-এ ক্লিক করুন।

18eba659946fc65f.png

"মৌলিক তথ্য / অ্যাপ ক্রেডেনশিয়ালস"-এর অধীনে, "সাইনিং সিক্রেট" কপি করুন এবং এজেন্টের স্ল্যাক ইন্টিগ্রেশনে "সাইনিং টোকেন" ফিল্ডের ভ্যালু হিসেবে সেট করুন।

31d62babb57e523d.png

bd9f7e3be3b9ea4e.png

'OAuth & Permissions' খুলুন এবং 'Bot User OAuth Token' কপি করে এজেন্টের স্ল্যাক ইন্টিগ্রেশনে 'Access token' ফিল্ডের ভ্যালু হিসেবে সেট করুন।

e74c7e003c31258.png

প্রয়োজনীয় ক্ষেত্রগুলি পূরণ করুন এবং "শুরু করুন" বোতামে ক্লিক করুন।

এজেন্টের " অ্যাক্সেস টোকেন " এর মান হলো স্ল্যাক থেকে প্রাপ্ত "বট ইউজার ওঅথ টোকেন"

এজেন্টের " সাইনিং টোকেন " এর মান হলো স্ল্যাক থেকে প্রাপ্ত "সাইনিং সিক্রেট"।

8ea9f6856efa62cf.png

7e71e37750fd063a.png

'ওয়েবহুক ইউআরএল' কপি করে স্ল্যাক অ্যাপ কনফিগারেশনে ফিরে যান।

'ইভেন্ট সাবস্ক্রিপশন' বিভাগটি খুলুন এবং ইউআরএলটি পেস্ট করুন।

a1e7271934c714d9.png

পরিবর্তনগুলো সংরক্ষণ করুন।

e6d9b43b3787b6e7.png

"Slack" খুলুন এবং "@Agent" টাইপ করে একজন এজেন্ট যুক্ত করুন।

উদাহরণস্বরূপ, "@CX" নামে একটি অ্যাপ যোগ করা।

72313066707f947b.png

63becbd80824f8d8.png

c98e193062b096f0.png

এজেন্টের কাছে একটি জিরা প্রজেক্ট সামারি চেয়ে নিন।

6edfdb74760548ad.png

অভিনন্দন! এজেন্টটিকে সফলভাবে স্ল্যাক ওয়ার্কস্পেসে সংযুক্ত করা হয়েছে।

703a3bf5754680fa.png

৯. পিডিএফ ডকুমেন্ট নিয়ে প্রশ্নোত্তর

এই অংশে বর্ণনা করা হয়েছে কীভাবে একটি পিডিএফ ডকুমেন্ট ব্যবহার করে ডেটা স্টোর স্থাপন করতে হয় এবং সেটিকে এজেন্টের সাথে লিঙ্ক করতে হয়, যার ফলে ডকুমেন্টটির বিষয়বস্তুর উপর ভিত্তি করে প্রশ্নোত্তর (Q&A) কার্যকারিতা সক্রিয় করা যায়।

ক্লাউড স্টোরেজ বাকেট তৈরি করুন

ক্লাউড শেল খুলুন: https://shell.cloud.google.com/

আপনার GCP প্রজেক্টের শেষ ৫টি সংখ্যা ব্যবহার করে বাকেটের নাম সেট করুন। উদাহরণ: pdf-docs-3dw21

BUCKET_NAME=pdf-docs-LAST-5-DIGITS-OF-YOUR-PROJECT

একটি বাকেট তৈরি করুন এবং একটি পিডিএফ ডকুমেন্ট আপলোড করুন।

gcloud storage buckets create gs://$BUCKET_NAME \
    --location=us \
    --default-storage-class=STANDARD \
    --no-public-access-prevention \
    --uniform-bucket-level-access

wget https://services.google.com/fh/files/misc/exec_guide_gen_ai.pdf 

gsutil cp exec_guide_gen_ai.pdf gs://$BUCKET_NAME

ডেটা স্টোর কনফিগারেশন

এজেন্ট কনসোলে ফিরে যান এবং ' Agent ' খুলুন, নিচে স্ক্রোল করুন এবং ' + Data store -এ ক্লিক করুন।

9a5e4d6d1e040b86.png

নিম্নলিখিত মানগুলি ব্যবহার করুন:

টুলের নাম: pdf-docs

ধরণ: Data store

বিবরণ: pdf-docs

" Save " এ ক্লিক করুন

60096b1c597347fa.png

পৃষ্ঠার নীচে থাকা " Add data stores "-এ ক্লিক করুন। তারপর " Create new data store "-এ ক্লিক করুন।

abb9e513ac905e75.png

ডেটা উৎস হিসেবে ' Cloud Storage ' নির্বাচন করুন।

নির্বাচন করুন: Unstructured documents

এবং আপনার GCS বাকেট/ফোল্ডারটি নির্বাচন করুন।

42dec238c1d0ac2f.png

ডেটা সংরক্ষণের অবস্থানের জন্য " us " নির্বাচন করুন।

ডেটা স্টোরের নামের ধরণ: " pdf-docs "

ড্রপডাউন থেকে " Digital parser " নির্বাচন করুন।

উন্নত চাংকিং সক্রিয় করুন।

খণ্ডে খণ্ডে পূর্বপুরুষ শিরোনাম সক্রিয় করুন।

" Create " এ ক্লিক করুন।

1a5222b86ee6c58e.png

3119b5fec43c9294.png

ডেটা স্টোরে ক্লিক করুন এবং ডকুমেন্টস, অ্যাক্টিভিটি ও প্রসেসিং কনফিগ পর্যালোচনা করুন।

872d9142615e90c9.png

ইম্পোর্ট সম্পন্ন হতে প্রায় ৫-১০ মিনিট সময় লাগবে।

d9739a4af2244e03.png

পার্সিং এবং চাংকিং বিকল্পগুলি

আপনি নিম্নলিখিত উপায়ে কন্টেন্ট পার্সিং নিয়ন্ত্রণ করতে পারেন:

  • ডিজিটাল পার্সার। ভিন্ন কোনো পার্সারের ধরন নির্দিষ্ট করা না থাকলে, সব ধরনের ফাইলের জন্য ডিজিটাল পার্সারটি ডিফল্টরূপে চালু থাকে। ডেটা স্টোরের জন্য অন্য কোনো ডিফল্ট পার্সার নির্দিষ্ট করা না থাকলে, অথবা নির্দিষ্ট পার্সারটি গৃহীত ডকুমেন্টের ফাইলের ধরন সমর্থন না করলে, ডিজিটাল পার্সারটি গৃহীত ডকুমেন্টগুলো প্রসেস করে।
  • পিডিএফ-এর জন্য ওসিআর পার্সিং । পাবলিক প্রিভিউ। আপনি যদি স্ক্যান করা পিডিএফ অথবা ছবির ভেতরে টেক্সট থাকা পিডিএফ আপলোড করার পরিকল্পনা করেন, তাহলে পিডিএফ ইন্ডেক্সিং উন্নত করতে ওসিআর পার্সার চালু করতে পারেন। পিডিএফ-এর জন্য ওসিআর পার্সিং সম্পর্কে দেখুন।
  • লেআউট পার্সার। আপনি যদি RAG-এর জন্য Vertex AI Search ব্যবহার করার পরিকল্পনা করেন, তাহলে HTML, PDF, বা DOCX ফাইলগুলির জন্য লেআউট পার্সারটি চালু করুন। এই পার্সার এবং এটি কীভাবে চালু করতে হয় সে সম্পর্কে তথ্যের জন্য RAG-এর জন্য চাঙ্ক ডকুমেন্টস দেখুন।

ডকুমেন্ট পার্সিং এবং চাংকিং সম্পর্কে আরও জানুন।

টুল কনফিগারেশন

এজেন্টস টুল কনফিগারেশন স্ক্রিনে ফিরে যান এবং উপলব্ধ ডেটা স্টোরগুলি রিফ্রেশ করুন।

আপনি এইমাত্র যে ডেটা স্টোরটি তৈরি করেছেন সেটি নির্বাচন করুন এবং " Confirm " বোতামে ক্লিক করুন।

2922f7d9bdb7b2bc.png

গ্রাউন্ডিং কনফিগার করুন।

কোম্পানির নামের জায়গায় " Google Cloud " টাইপ করুন।

পেলোড সেটিংস - " Include snippets in Conversational Messenger response payload" চেক করুন। এর মান ৫ সেট করুন।

'সংরক্ষণ করুন'-এ ক্লিক করুন।

484e99caa7d1bc07.png

এজেন্টের নির্দেশাবলী কনফিগারেশন

এজেন্ট কনফিগারেশনে ফিরে যান।

নতুন নির্দেশনা যোগ করুন:

- Provide detailed answer to users questions about the exec guide to gen ai using information in the ${TOOL:pdf-docs}

f6d27e58b68f9f7.png

কনফিগারেশন সংরক্ষণ করুন।

PDF-Docs টুলের জন্য একটি উদাহরণ তৈরি করুন

উদাহরণ ট্যাবে যান। একটি নতুন উদাহরণ তৈরি করুন: Guide to generative AI

ক্রিয়া ব্যবহার করে " + ":

ee4f85ba3f47fda0.png

"ব্যবহারকারীর ইনপুট" যোগ করুন:

What are the main capabilities for generative AI?

"টুল ব্যবহার" যোগ করুন।

  • টুল ও অ্যাকশন: " pdf-docs "

ইনপুট (requestBody)

{
  "query": "Main capabilities for generative AI",
  "filter": "",
  "userMetadata": {},
  "fallback": ""
}

টুল আউটপুট:

{
  "answer": "Detailed answer about main capabilities for generative AI",
  "snippets": [
    {
      "uri": "https://storage.cloud.google.com/pdf-docs-49ca4/exec_guide_gen_ai.pdf",
      "text": "Detailed answer about main capabilities",
      "title": "exec_guide_gen_ai"
    }
  ]
}

"এজেন্ট প্রতিক্রিয়া" যোগ করুন

Detailed answer about main capabilities. 

https://storage.cloud.google.com/pdf-docs-49ca4/exec_guide_gen_ai.pdf

কনফিগার করা উদাহরণ:

d1da4c1d18709ea6.png

টুল আহ্বান কনফিগারেশন:

a0d47a9dc04bb2f1.png

কনফিগারেশন পরীক্ষা করার জন্য সিমুলেটরে যান।

প্রশ্ন:

What are the 10 steps in the exec guide?

e682480a959125bc.png

ইনভোকেশন ড্রপডাউন থেকে " Agent " নির্বাচন করুন এবং " Save as example "-এ ক্লিক করুন।

582759df60b9a342.png

" user-question-flow " নামে একটি নাম দিন।

সারাংশ সেট করুন: " Agent helped user answer question based on the pdf document " এবং সেভ-এ ক্লিক করুন।

এজেন্টের প্রতিক্রিয়াটি ফরম্যাট করুন এবং টুল আউটপুট বিভাগ থেকে পিডিএফ ডকুমেন্টের একটি লিঙ্ক অন্তর্ভুক্ত করুন।

6ba5011ed26793f3.png

উদাহরণটি সংরক্ষণ করুন।

সিমুলেটরে ফিরে যান এবং " Replay conversation "-এ ক্লিক করুন। আপডেট করা প্রতিক্রিয়া বিন্যাসটি পরীক্ষা করুন। উদাহরণটি সংরক্ষণ করার পরে যদি আপনি কোনও ত্রুটি দেখতে পান, তাহলে আপনাকে আপনার ব্রাউজার উইন্ডো রিফ্রেশ করতে হতে পারে এবং প্রম্পটটি আবার পাঠিয়ে কথোপকথনটি পুনরায় শুরু করতে হতে পারে:

What are the 10 steps in the exec guide?

51698c5f1fbd2770.png

আরেকটি প্রশ্ন করুন:

What are the main capabilities in the exec guide?

7b636f489c05a13.png

উৎস পিডিএফ নথি।

5b3e6d2ceda99247.png

প্রশ্ন:

What should I consider when evaluating projects?

1155edfbffcd14b2.png

উৎস পিডিএফ নথি।

57a0d331aa91f04b.png

প্রশ্ন:

What are the priority use cases in Retail and CPG in the exec guide?

92264121fc8f06e.png

উৎস পিডিএফ নথি।

b4d07e6e7d9adc00.png

অভিনন্দন! এজেন্ট এখন পিডিএফ ডকুমেন্টগুলোর উপর ভিত্তি করে যথাযথ উত্তর দিতে সক্ষম।

e11d020a9cfa36d1.png

১০. পূর্ব-নির্মিত এজেন্ট

এরপর আপনি বাম দিকের মেনু থেকে আগে থেকে তৈরি এজেন্টগুলো দেখতে পাবেন।

de49672bbb8112fd.png

এজেন্টগুলোর মধ্যে একটি নির্বাচন করে তা স্থাপন করুন। এজেন্টের সেটআপ, নির্দেশাবলী এবং টুলগুলো অন্বেষণ করুন।

1e00ed8ef4887efb.png

১১. অভিনন্দন!

অভিনন্দন, আপনি ল্যাবটি শেষ করেছেন!

আমরা যা আলোচনা করেছি:

  • কথোপকথনমূলক এজেন্ট কীভাবে তৈরি এবং স্থাপন করবেন
  • ক্লাউড রান অ্যাপ্লিকেশন দ্বারা সমর্থিত এজেন্টের জন্য টুল কীভাবে যুক্ত করবেন
  • স্ল্যাক ওয়ার্কস্পেসে এজেন্টকে কীভাবে যুক্ত করবেন
  • পিডিএফ ডকুমেন্টের প্রশ্নোত্তরের জন্য ডেটা স্টোর কীভাবে কনফিগার করবেন

এরপর কী:

পরিষ্কার করা

এই টিউটোরিয়ালে ব্যবহৃত রিসোর্সগুলোর জন্য আপনার গুগল ক্লাউড অ্যাকাউন্টে চার্জ হওয়া এড়াতে, হয় রিসোর্সগুলো যে প্রজেক্টে রয়েছে সেটি ডিলিট করে দিন, অথবা প্রজেক্টটি রেখে দিয়ে আলাদা আলাদা রিসোর্সগুলো ডিলিট করে দিন।

প্রকল্পটি মুছে ফেলা হচ্ছে

বিলিং বন্ধ করার সবচেয়ে সহজ উপায় হলো টিউটোরিয়ালের জন্য তৈরি করা প্রজেক্টটি ডিলিট করে দেওয়া।

©২০২৪ গুগল এলএলসি। সর্বস্বত্ব সংরক্ষিত। গুগল এবং গুগল লোগো হলো গুগল এলএলসি-এর ট্রেডমার্ক। অন্য সকল কোম্পানি ও পণ্যের নাম তাদের সংশ্লিষ্ট কোম্পানিগুলোর ট্রেডমার্ক হতে পারে।