GenAI Agent در Slack برای پرسش و پاسخ بر روی اسناد و اقدامات با تماس‌های API

۱. مرور کلی

در این آزمایش، شما یک عامل GenAI ایجاد خواهید کرد، آن را به برنامه Cloud Run متصل کرده و عامل را در فضای کاری Slack ادغام خواهید کرد.

3301e2bb69be325.png

آنچه یاد خواهید گرفت

آزمایشگاه شامل چندین بخش اصلی است:

  • استقرار برنامه Cloud Run برای ادغام با API های Gemini
  • ایجاد و استقرار عامل محاوره‌ای در برنامه‌های هوش مصنوعی
  • ادغام Agent در Slack
  • پیکربندی محل ذخیره‌سازی داده‌ها برای پرسش و پاسخ روی اسناد PDF

پیش‌نیازها

  • این آزمایشگاه آشنایی با محیط‌های Cloud Console و Cloud Shell را پیش‌فرض قرار می‌دهد.

۲. تنظیمات و الزامات

راه‌اندازی پروژه ابری

  1. وارد کنسول گوگل کلود شوید و یک پروژه جدید ایجاد کنید یا از یک پروژه موجود دوباره استفاده کنید. اگر از قبل حساب جیمیل یا گوگل ورک اسپیس ندارید، باید یکی ایجاد کنید .

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • نام پروژه، نام نمایشی برای شرکت‌کنندگان این پروژه است. این یک رشته کاراکتری است که توسط APIهای گوگل استفاده نمی‌شود. شما همیشه می‌توانید آن را به‌روزرسانی کنید.
  • شناسه پروژه در تمام پروژه‌های گوگل کلود منحصر به فرد است و تغییرناپذیر است (پس از تنظیم، قابل تغییر نیست). کنسول کلود به طور خودکار یک رشته منحصر به فرد تولید می‌کند؛ معمولاً برای شما مهم نیست که چه باشد. در اکثر آزمایشگاه‌های کد، باید شناسه پروژه خود را (که معمولاً با عنوان PROJECT_ID شناخته می‌شود) ارجاع دهید. اگر شناسه تولید شده را دوست ندارید، می‌توانید یک شناسه تصادفی دیگر ایجاد کنید. به عنوان یک جایگزین، می‌توانید شناسه خودتان را امتحان کنید و ببینید که آیا در دسترس است یا خیر. پس از این مرحله قابل تغییر نیست و در طول پروژه باقی می‌ماند.
  • برای اطلاع شما، یک مقدار سوم، شماره پروژه ، وجود دارد که برخی از APIها از آن استفاده می‌کنند. برای کسب اطلاعات بیشتر در مورد هر سه این مقادیر، به مستندات مراجعه کنید.
  1. در مرحله بعد، برای استفاده از منابع/API های ابری، باید پرداخت صورتحساب را در کنسول ابری فعال کنید . اجرای این آزمایشگاه کد هزینه زیادی نخواهد داشت، اگر اصلاً هزینه‌ای داشته باشد. برای خاموش کردن منابع به منظور جلوگیری از پرداخت صورتحساب پس از این آموزش، می‌توانید منابعی را که ایجاد کرده‌اید یا پروژه را حذف کنید. کاربران جدید Google Cloud واجد شرایط برنامه آزمایشی رایگان ۳۰۰ دلاری هستند.

تنظیمات محیط

چت جمینی را باز کنید.

e1e9ad314691368a.png

فعال کردن Gemini برای Google Cloud API:

۹۳۳۶۱۲a۲۳۶۴۸۳۶۱c.png

b366894eb450f862.png

روی « Start chatting » کلیک کنید و یکی از نمونه سوالات را دنبال کنید یا سوال خودتان را تایپ کنید تا آن را امتحان کنید.

ed120d672468b412.png

نکاتی برای امتحان کردن:

  • Cloud Run را در 5 نکته کلیدی توضیح دهید.
  • شما مدیر محصول Google Cloud Run هستید، Cloud Run را در 5 نکته کلیدی کوتاه برای یک دانشجو توضیح دهید.
  • شما مدیر محصول Google Cloud Run هستید، Cloud Run را برای یک توسعه‌دهنده‌ی مجاز Kubernetes در 5 نکته‌ی کلیدی کوتاه توضیح دهید.
  • شما مدیر محصول Google Cloud Run هستید، در 5 نکته کلیدی کوتاه، توضیح دهید که چه زمانی از Cloud Run در مقابل GKE استفاده می‌کنید.

برای کسب اطلاعات بیشتر در مورد نوشتن دستورالعمل‌های بهتر ، راهنمای دستورالعمل را بررسی کنید.

چگونه Gemini برای Google Cloud از داده‌های شما استفاده می‌کند

تعهد گوگل به حفظ حریم خصوصی

گوگل یکی از اولین شرکت‌هایی بود که در این صنعت، تعهدنامه‌ای در مورد حریم خصوصی هوش مصنوعی/یادگیری ماشین منتشر کرد که در آن، باور ما مبنی بر اینکه مشتریان باید بالاترین سطح امنیت و کنترل را بر داده‌های ذخیره شده در فضای ابری خود داشته باشند، تشریح شده است.

داده‌هایی که ارسال و دریافت می‌کنید

سوالاتی که از Gemini می‌پرسید، شامل هرگونه اطلاعات ورودی یا کدی که برای تجزیه و تحلیل یا تکمیل به Gemini ارسال می‌کنید، prompt نامیده می‌شوند. پاسخ‌ها یا تکمیل کدی که از Gemini دریافت می‌کنید، response نامیده می‌شوند. Gemini از promptهای شما یا پاسخ‌های خود به عنوان داده برای آموزش مدل‌های خود استفاده نمی‌کند .

رمزگذاری پیام‌های تبلیغاتی

وقتی درخواست‌هایی را به Gemini ارسال می‌کنید، داده‌های شما در حین انتقال به عنوان ورودی به مدل اصلی در Gemini رمزگذاری می‌شوند .

داده‌های برنامه تولید شده از Gemini

جمینی (Gemini) بر اساس کد گوگل کلود (Google Cloud) شخص ثالث و همچنین کد منتخب شخص ثالث آموزش دیده است. شما مسئول امنیت، آزمایش و اثربخشی کد خود ، از جمله هرگونه تکمیل، تولید یا تجزیه و تحلیل کدی که جمینی به شما ارائه می‌دهد، هستید.

بیشتر بدانید که گوگل چگونه درخواست‌های شما را مدیریت می‌کند.

۳. گزینه‌هایی برای آزمایش دستورالعمل‌ها

شما چندین گزینه برای آزمایش دستورالعمل‌ها دارید.

استودیوی هوش مصنوعی ورتکس (Vertex AI Studio) بخشی از پلتفرم هوش مصنوعی ورتکس گوگل کلود (Google Cloud) است که به‌طور خاص برای ساده‌سازی و تسریع توسعه و استفاده از مدل‌های هوش مصنوعی مولد (Generative AI) طراحی شده است.

گوگل هوش مصنوعی استودیو (Google AI Studio) ابزاری مبتنی بر وب برای نمونه‌سازی اولیه و آزمایش با مهندسی سریع و رابط برنامه‌نویسی کاربردی (API) جمینی (Gemini) است.

برنامه وب گوگل جمینی (gemini.google.com) ابزاری مبتنی بر وب است که برای کمک به شما در کشف و استفاده از قدرت مدل‌های هوش مصنوعی گوگل جمینی طراحی شده است.

۴. مخزن را کلون کنید

به کنسول ابری گوگل برگردید و با کلیک روی آیکون سمت راست نوار جستجو، Cloud Shell را فعال کنید.

3e0c761ca41f315e.png

اگر از شما خواسته شد که مجوز دهید، برای ادامه روی «مجوز» کلیک کنید.

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

۵. ایجاد حساب کاربری سرویس

یک حساب کاربری سرویس جدید ایجاد کنید. شما از این حساب کاربری سرویس برای برقراری تماس‌های API به Vertex AI Gemini API از برنامه Cloud Run استفاده خواهید کرد.

جزئیات پروژه را با استفاده از جزئیات پروژه qwiklabs خود پیکربندی کنید.

مثال: 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"

سرویس‌های مورد نیاز برای استفاده از APIهای هوش مصنوعی Vertex و چت 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

سرویس‌های مورد نیاز برای استفاده از APIهای هوش مصنوعی Vertex و چت 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

برای توضیح کد از Gemini Code Assist استفاده کنید

فایل « devai-api/app/routes.py » را باز کنید و سپس در هر جایی از فایل کلیک راست کرده و از منوی زمینه گزینه « Gemini Code Assist > Explain this" را انتخاب کنید.

427ed40dd44cab8a.png

توضیحات جمینی را برای فایل انتخاب شده مرور کنید.

a286d1e85bc42960.png

۶. Devai-API را روی Cloud Run مستقر کنید

بررسی کنید که در پوشه درست هستید.

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

برای این آزمایش، ما از بهترین شیوه‌ها پیروی می‌کنیم و از Secret Manager برای ذخیره و ارجاع مقادیر Access Token و LangChain API Key در Cloud Run استفاده می‌کنیم.

متغیرهای محیطی را تنظیم کنید. این دستور را بدون هیچ تغییری اجرا کنید.

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"

چندین راز را در Secret Manager ایجاد و ذخیره کنید.

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=-

برنامه را روی Cloud Run مستقر کنید.

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

برای ایجاد مخزن Docker مربوط به Artifact Registry، به 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

از Gemini بخواهید دستور را توضیح دهد:

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 گوگل کلود برای ساخت خودکار تصاویر کانتینر از کد منبع شما استفاده می‌کند، بدون اینکه نیازی به نصب داکر روی دستگاه شما یا تنظیم buildpacks یا Cloud Build باشد. یعنی، دستور واحدی که در بالا توضیح داده شد، کاری را انجام می‌دهد که در غیر این صورت نیاز به gcloud builds submit و gcloud run deploy .

اگر Dockerfile را ارائه داده باشید (که ما در این مخزن انجام دادیم)، Cloud Build از آن برای ساخت تصاویر کانتینر استفاده می‌کند، در حالی که برای شناسایی و ساخت خودکار تصاویر کانتینر به buildpackها متکی است. برای کسب اطلاعات بیشتر در مورد buildpackها، مستندات را بررسی کنید.

گزارش‌های Cloud Build را در کنسول مرور کنید.

تصویر داکر ایجاد شده در رجیستری مصنوعات را بررسی کنید.

جزئیات نمونه Cloud Run را در Cloud Console بررسی کنید.

با اجرای دستور curl، نقطه پایانی را آزمایش کنید.

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

پاسخ در قالب markdown خواهد بود و برای خوانایی بهتر، در حالت پیش‌نمایش نمایش داده می‌شود.

bda86deaa1c449a8.png

۷. کاربردهای هوش مصنوعی

در نوار جستجوی کنسول ابری گوگل، عبارت « AI Applications » را تایپ و باز کنید.

3f8540f5c946e199.png

ایجاد برنامه Conversational Agent :

6f372cbe4935c507.png

« Build your own » را انتخاب کنید.

5305cb9a8320f468.png

برای نام نمایشی، « Agent » را تایپ کنید و روی «ایجاد» کلیک کنید.

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

با استفاده از چت شبیه‌ساز در سمت راست، عامل را آزمایش کنید:

۵۹۳dd4b8fc4c20d9.png

مکالمات مشابه را مطابق شکل زیر دنبال کنید:

66a7569835ebc7e7.png

پیکربندی ابزارهای عامل

ماوس را روی آیکون آچار در سمت چپ نگه دارید. منوی ابزارها را باز کنید و یک ابزار جدید ایجاد کنید:

ff635e2d135ea6d8.png

از منوی کشویی Type، OpenAPI انتخاب کنید.

نام ابزار تنظیم:

jira-project-status

شرح مجموعه:

Provides JIRA project status

تب‌ها را عوض کنید و خروجی کنسول را برای آدرس اینترنتی سرویس Cloud Run بررسی کنید. مقدار آدرس اینترنتی سرویس را کپی کنید.

تنظیم طرحواره (YAML) - آدرس اینترنتی CLOUD RUN خود را جایگزین کنید.

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

با انتخاب "Playbooks" از منوی سمت چپ به پیکربندی Agent برگردید و دستورالعمل‌های استفاده از ابزار را به‌روزرسانی کنید:

دستورالعمل‌های استفاده از ابزار جدید را اضافه کنید و روی « Save » کلیک کنید:

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

۱۶۷۵۵dd3aaf3888.png

به برگه « Examples » بروید و مثال جدیدی اضافه کنید:

a74004679865ab6e.png

تنظیم نام نمایشی:

jira-project-flow

با استفاده از منوی پایین، مکالمه بین کاربر و عامل را مدل‌سازی کنید:

جریان نمونه:

پاسخ نماینده: شناسه پروژه چیست؟

ورودی کاربر: TEST-PROJECT-100

استفاده از ابزار: jira-project-status

پاسخ نماینده: جزئیات وضعیت پروژه.

6d54f90f1dc630fc.png

برای ایجاد مثال از مرجع زیر استفاده کنید.

c80eef4210256e5a.png

5affaee4cd54616e.png

روی Save کلیک کنید. به شبیه‌ساز عامل برگردید و مکالمات موجود را مجدداً تنظیم کنید. جریان را آزمایش کنید.

ac9db60831b0f684.png

a9fbafd45139d434.png

تبریک! با ادغام ابزارهای مرتبط با برنامه (API) مستقر در Cloud Run، شما با موفقیت Agent را برای انجام اقدامات و گسترش قابلیت‌های آن توانمند ساخته‌اید.

e8b113e0cc1b8ad6.png

بهترین شیوه‌ها برای نمایندگان مکالمه‌ای را مرور کنید

تنظیمات موجود برای عامل را بررسی کنید

  • تنظیمات ثبت وقایع - ثبت وقایع ابری را فعال کنید
  • ادغام با گیت - ادغام با گیت به شما امکان می‌دهد عامل خود را از یک مخزن گیت وارد (push) و خارج (pull) کنید.
  • انتخاب مدل مولد
  • محدودیت‌های توکن (ورودی و خروجی)

f914db1d8a5d5447.png

بررسی کنترل‌های شبیه‌ساز عامل:

d1c4712603d4a8a2.png

۸. ادغام اسلک

منوی Integrations را باز کنید و روی « Connect » در کاشی Slack کلیک کنید.

6fc0ad95c28cb6c8.png

e7ee0826668bfa2b.png

b29574fd2a0f9725.png

لینک را باز کنید و یک برنامه Slack جدید در 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» را کپی کنید و آن را در ادغام Slack عامل به عنوان مقدار برای فیلد «Access token» تنظیم کنید.

e74c7e003c31258.png

فیلدهای مورد نیاز را تنظیم کرده و روی "شروع" کلیک کنید.

مقدار « توکن دسترسی » عامل، «توکن OAUth کاربر ربات» از Slack است.

مقدار « امضای توکن » نماینده، «امضای محرمانه» از Slack است.

8ea9f6856efa62cf.png

7e71e37750fd063a.png

«Webhook URL» را کپی کنید و به پیکربندی برنامه Slack برگردید.

بخش «اشتراک‌های رویداد» را باز کنید و آدرس اینترنتی را جای‌گذاری کنید.

a1e7271934c714d9.png

تغییرات را ذخیره کنید.

e6d9b43b3787b6e7.png

«Slack» را باز کنید و با تایپ «@Agent» یک عامل (agent) اضافه کنید.

برای مثال، اضافه کردن یک برنامه با نام "@CX".

72313066707f947b.png

63becbd80824f8d8.png

c98e193062b096f0.png

از نماینده، خلاصه‌ای از پروژه جیرا را بخواهید.

6edfdb74760548ad.png

تبریک! عامل با موفقیت در فضای کاری Slack ادغام شد.

703a3bf5754680fa.png

۹. پرسش و پاسخ در مورد اسناد PDF

این بخش نحوه ایجاد یک مخزن داده با استفاده از یک سند PDF و پیوند دادن آن به Agent و فعال کردن قابلیت پرسش و پاسخ بر اساس محتوای سند را شرح می‌دهد.

ایجاد سطل ذخیره‌سازی ابری

باز کردن پوسته ابری: https://shell.cloud.google.com/

نام باکت را با استفاده از ۵ رقم آخر پروژه GCP خود تنظیم کنید. مثال: pdf-docs-3dw21

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

یک سطل ایجاد کنید و یک سند PDF بارگذاری کنید.

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

گزینه‌های تجزیه و قطعه‌بندی

شما می‌توانید تجزیه و تحلیل محتوا را به روش‌های زیر کنترل کنید:

  • تجزیه‌گر دیجیتال. تجزیه‌گر دیجیتال به طور پیش‌فرض برای همه انواع فایل‌ها فعال است، مگر اینکه نوع تجزیه‌گر دیگری مشخص شده باشد. تجزیه‌گر دیجیتال اسناد دریافت‌شده را پردازش می‌کند اگر هیچ تجزیه‌گر پیش‌فرض دیگری برای انبار داده مشخص نشده باشد یا اگر تجزیه‌گر مشخص‌شده از نوع فایل سند دریافت‌شده پشتیبانی نکند.
  • تجزیه OCR برای فایل‌های PDF . پیش‌نمایش عمومی. اگر قصد دارید فایل‌های PDF اسکن‌شده یا PDFهایی با متن درون تصاویر را آپلود کنید، می‌توانید تجزیه‌کننده OCR را برای بهبود نمایه‌سازی PDF فعال کنید. به بخش «درباره تجزیه OCR برای فایل‌های PDF» مراجعه کنید.
  • تجزیه‌گر طرح‌بندی. اگر قصد دارید از Vertex AI Search برای RAG استفاده کنید، تجزیه‌گر طرح‌بندی را برای فایل‌های HTML، PDF یا DOCX فعال کنید. برای اطلاعات بیشتر در مورد این تجزیه‌گر و نحوه فعال کردن آن، به اسناد Chunk برای 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

از منوی کشویی Invocations، گزینه « Agent » را انتخاب کرده و روی « Save as example » کلیک کنید.

582759df60b9a342.png

نامی به صورت « user-question-flow » وارد کنید.

خلاصه را تنظیم کنید: « Agent helped user answer question based on the pdf document » و روی ذخیره کلیک کنید.

پاسخ عامل را قالب‌بندی کنید و از بخش خروجی ابزار، پیوندی به سند pdf اضافه کنید.

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

منبع سند PDF.

5b3e6d2ceda99247.png

سوال:

What should I consider when evaluating projects?

۱۱۵۵edfbffcd14b2.png

منبع سند PDF.

57a0d331aa91f04b.png

سوال:

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

۹۲۲۶۴۱۲۱fc8f06e.png

منبع سند PDF.

b4d07e6e7d9adc00.png

تبریک! اکنون نماینده قادر است بر اساس اسناد PDF پاسخ‌های مستدل ارائه دهد.

e11d020a9cfa36d1.png

۱۰. نمایندگان از پیش ساخته شده

در مرحله بعد، از منوی سمت چپ، Agentهای از پیش ساخته شده را بررسی خواهید کرد.

de49672bbb8112fd.png

یکی از عامل‌ها را انتخاب کرده و آن را مستقر کنید. تنظیمات، دستورالعمل‌ها و ابزارهای عامل را بررسی کنید.

1e00ed8ef4887efb.png

۱۱. تبریک می‌گویم!

تبریک می‌گویم، آزمایشگاه را تمام کردید!

آنچه ما پوشش داده‌ایم:

  • نحوه ایجاد و استقرار عوامل محاوره‌ای
  • نحوه اضافه کردن ابزار برای عامل پشتیبانی شده توسط برنامه Cloud Run
  • نحوه ادغام عامل در فضای کاری Slack
  • نحوه پیکربندی محل ذخیره‌سازی داده‌ها برای پرسش و پاسخ روی اسناد PDF

قدم بعدی چیست؟

تمیز کردن

برای جلوگیری از تحمیل هزینه به حساب گوگل کلود خود برای منابع استفاده شده در این آموزش، یا پروژه‌ای که شامل منابع است را حذف کنید، یا پروژه را نگه دارید و منابع تکی را حذف کنید.

حذف پروژه

ساده‌ترین راه برای حذف هزینه‌ها، حذف پروژه‌ای است که برای آموزش ایجاد کرده‌اید.

©2024 Google LLC تمامی حقوق محفوظ است. گوگل و لوگوی گوگل علائم تجاری Google LLC هستند. سایر نام‌های شرکت‌ها و محصولات ممکن است علائم تجاری شرکت‌های مربوطه باشند که با آنها مرتبط هستند.