Dokümanlar ve API çağrıları üzerinden kalite kontrolü için GenAI temsilcisi

1. Genel Bakış

Bu laboratuvarda bir GenAI temsilcisi oluşturacak, temsilciyi Cloud Run uygulamasına bağlayacak ve Slack çalışma alanına entegre edeceksiniz.

8541c95a7fbc9be7.png

Öğrenecekleriniz

Laboratuvarın birkaç ana bölümü vardır:

  • Gemini API'leriyle entegre edilecek Cloud Run uygulamasını dağıtma
  • Vertex AI Agent'ı oluşturma ve dağıtma
  • Agent'ı Slack'e entegre etme
  • PDF dokümanlarındaki soru-cevaplar için veri deposunu yapılandırma

Ön koşullar

  • Bu laboratuvarda, Cloud Console ve Cloud Shell ortamlarına aşina olmanız gerekir.

2. Kurulum ve Gereksinimler

Cloud projesi oluşturma

  1. Google Cloud Console'da oturum açın ve yeni bir proje oluşturun veya mevcut bir projeyi yeniden kullanın. Gmail veya Google Workspace hesabınız yoksa hesap oluşturmanız gerekir.

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • Proje adı, bu projenin katılımcılarının görünen adıdır. Google API'leri tarafından kullanılmayan bir karakter dizesidir. Dilediğiniz zaman güncelleyebilirsiniz.
  • Proje kimliği, tüm Google Cloud projelerinde benzersizdir ve değiştirilemez (ayarlandıktan sonra değiştirilemez). Cloud Console, benzersiz bir dize otomatik olarak oluşturur. Bu dizenin ne olduğu genellikle önemli değildir. Çoğu kod laboratuvarında proje kimliğinize (genellikle PROJECT_ID olarak tanımlanır) referans vermeniz gerekir. Oluşturulan kimliği beğenmezseniz rastgele başka bir kimlik oluşturabilirsiniz. Alternatif olarak, kendi anahtarınızı deneyerek kullanılabilir olup olmadığını görebilirsiniz. Bu adımdan sonra değiştirilemez ve proje boyunca geçerli kalır.
  • Bazı API'lerin kullandığı üçüncü bir değer (Proje Numarası) olduğunu belirtmek isteriz. Bu üç değer hakkında daha fazla bilgiyi dokümanlar bölümünde bulabilirsiniz.
  1. Ardından, Cloud kaynaklarını/API'lerini kullanmak için Cloud Console'da faturalandırmayı etkinleştirmeniz gerekir. Bu codelab'i çalıştırmak çok pahalı değildir. Bu eğitimden sonra faturalandırılmamak için kaynakları kapatmak istiyorsanız oluşturduğunuz kaynakları veya projeyi silebilirsiniz. Yeni Google Cloud kullanıcıları 300 ABD doları değerindeki ücretsiz deneme programına uygundur.

Ortam Kurulumu

Gemini sohbetini açın.

e1e9ad314691368a.png

Cloud AI Companion API'yi etkinleştirin:

66cb6e561e384bbf.png

"Start chatting" simgesini tıklayın ve örnek sorulardan birini uygulayın veya denemek için kendi isteminizi yazın.

5482c153eef23126.png

Deneyebileceğiniz istemler:

  • Cloud Run'u 5 temel noktada açıklayın.
  • Google Cloud Run Ürün Müdürü olduğunuzu varsayarak bir öğrenciye Cloud Run'u 5 kısa ve önemli noktayla açıklayın.
  • Google Cloud Run Ürün Müdürü olarak, Cloud Run'u Sertifikalı bir Kubernetes Geliştiricisine 5 kısa ve önemli noktayla açıklayın.
  • Google Cloud Run Ürün Müdürü olduğunuzu varsayalım. Kıdemli bir geliştiriciye, Cloud Run'u ne zaman GKE yerine kullanacağınızı 5 kısa ve önemli noktayla açıklayın.

Daha iyi istemler yazma hakkında daha fazla bilgi edinmek için İstem Rehberi'ne göz atın.

Google Cloud için Gemini, verilerinizi nasıl kullanır?

Google'ın gizlilik taahhüdü

Google, sektörde AI/ML gizlilik taahhüdü yayınlayan ilk şirketlerden biri oldu. Bu taahhüdümüzde, müşterilerin bulutta depolanan verileri üzerinde en yüksek düzeyde güvenlik ve denetime sahip olması gerektiğine olan inancımızı özetliyoruz.

Gönderdiğiniz ve aldığınız veriler

Gemini'ye sorduğunuz sorulara (analiz etmesi veya tamamlaması için Gemini'ye gönderdiğiniz giriş bilgileri veya kodlar dahil) istem denir. Gemini'den aldığınız yanıtlara veya kod tamamlamalarına yanıt denir. Gemini, istemlerinizi veya yanıtlarını modellerini eğitmek için veri olarak kullanmaz.

İstemlerin şifrelenmesi

Gemini'ye istem gönderdiğinizde, Gemini'deki temel modele giriş olarak verileriniz aktarılırken şifrelenir.

Gemini'den oluşturulan program verileri

Gemini, birinci taraf Google Cloud kodunun yanı sıra belirli üçüncü taraf kodlarıyla eğitilmiştir. Gemini'nin sunduğu kod tamamlama, oluşturma veya analizler dahil olmak üzere kodunuzun güvenliği, test edilmesi ve etkililiğinden siz sorumlusunuz.

Google'ın istemlerinizi nasıl işlediği hakkında daha fazla bilgi edinin.

3. İstemleri test etme seçenekleri

İstemleri test etmek için çeşitli seçenekleriniz vardır.

Vertex AI Studio, Google Cloud'un Vertex AI platformunun bir parçasıdır ve üretken yapay zeka modellerinin geliştirilmesini ve kullanımını basitleştirmek ve hızlandırmak için özel olarak tasarlanmıştır.

Google AI Studio, istem mühendisliği ve Gemini API ile prototip oluşturmak ve denemeler yapmak için web tabanlı bir araçtır.

Google Gemini web uygulaması (gemini.google.com), Google'ın Gemini yapay zeka modellerinin gücünü keşfetmenize ve kullanmanıza yardımcı olmak için tasarlanmış web tabanlı bir araçtır.

4. Depoyu klonlama

Google Cloud Console'a dönün ve arama çubuğunun sağındaki simgeyi tıklayarak Cloud Shell'i etkinleştirin.

3e0c761ca41f315e.png

Açılan terminalde aşağıdaki komutları çalıştırın

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

cd genai-for-developers

git checkout slack-agent-jira-lab

"Düzenleyiciyi aç"ı tıklayın.

63e838aebfdd2423.png

"File / Open Folder" menü öğesini kullanarak "genai-for-developers"u açın.

e3b9bd9682acf539.png

Yeni bir terminal açma

62dccf5c78880ed9.png

5. Hizmet Hesabı Oluşturma

Yeni bir hizmet hesabı ve anahtarlar oluşturun.

Cloud Run uygulamasından Vertex AI Gemini API'ye API çağrıları yapmak için bu hizmet hesabını kullanacaksınız.

Qwiklabs proje ayrıntılarınızı kullanarak proje ayrıntılarını yapılandırın.

Örnek: qwiklabs-gcp-00-2c10937585bb

gcloud config set project YOUR_QWIKLABS_PROJECT_ID

Hizmet hesabı oluşturun ve roller verin.

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

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"


gcloud iam service-accounts keys create $KEY_FILE_NAME.json --iam-account=$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com

Yetki vermeniz istenirse devam etmek için "Yetkilendir"i tıklayın.

6356559df3eccdda.png

Vertex AI API'lerini ve Gemini sohbet uygulamasını kullanmak için gerekli hizmetleri etkinleştirin.

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

Vertex AI API'lerini ve Gemini sohbet uygulamasını kullanmak için gerekli hizmetleri etkinleştirin.

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'i etkinleştirme

"Gemini" simgesini, ardından sağ alt köşedeki "Sign-in" ve "Select Google Cloud project"u tıklayın.

4a7f4640f66037f.png

8b4405d7366d2cad.png

bd07352707166136.png

Pop-up pencerede Qwiklabs projenizi seçin.

Örnek:

70ae6837db397e2a.png

"devai-api/app/routes.py" dosyasını açın, ardından dosyanın herhangi bir yerinde sağ tıklayın ve bağlam menüsünden "Gemini Code Assist > Explain this""yi seçin.

e54daef175df3cf0.png

Gemini'nin, seçili dosyayla ilgili açıklamasını inceleyin.

e666676dce8b94d6.png

6. Devai-API'yi Cloud Run'a dağıtma

Doğru klasörde olduğunuzdan emin olun.

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

Bu laboratuvarda, en iyi uygulamaları uygulayarak Cloud Run'da erişim jetonu ve LangChain API anahtarı değerlerini depolamak ve referans vermek için Secret Manager'ı kullanırız.

Ortam değişkenlerini ayarlayın.

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"

JIRA erişim jetonunu Secret Manager'da depolayın.

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

GitLab erişim jetonunu Secret Manager'da depolayın.

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

LangChain API anahtarını Secret Manager'da saklayın.

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

Uygulamayı Cloud Run'a dağıtın.

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

Artifact Registry Docker deposu oluşturmak için Y cevabını verin.

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'den komutu açıklamasını isteyin:

94d5487568b08dd2.png

Aşağıdaki gcloud run deploy SERVICE_NAME --source=. akışını inceleyin. Daha fazla bilgi edinin.

5c122a89dd11822e.png

Bu komut, arka planda Google Cloud'un buildpacks ve Cloud Build özelliklerini kullanarak makinenize Docker yüklemenize veya buildpack'ler ya da Cloud Build'i ayarlamanıza gerek kalmadan kaynak kodunuzdan otomatik olarak container görüntüleri oluşturur. Yani yukarıda açıklanan tek komut, gcloud builds submit ve gcloud run deploy komutlarının gerektirdiği işlemleri yapar.

Dockerfile sağladıysanız(bu depoda sağladık) Cloud Build, container görüntülerini otomatik olarak algılayıp oluşturmak için buildpack'lere güvenmek yerine Dockerfile'i kullanır. Derleme paketleri hakkında daha fazla bilgi edinmek için dokümanlara göz atın.

Console'da Cloud Build günlüklerini inceleyin.

Oluşturulan Docker görüntüsünü Artifact Registry'de inceleyin.

cloud-run-source-deploy/devai-api'ü açın ve otomatik olarak algılanan güvenlik açıklarını inceleyin. Düzeltme olanlarını kontrol edin ve açıklamaya göre nasıl düzeltilebileceğini öğrenin.

d00c9434b511be44.png

Cloud Console'da Cloud Run örneği ayrıntılarını inceleyin.

curl komutunu çalıştırarak uç noktayı test edin.

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

Çıktıyı inceleyin:

bda86deaa1c449a8.png

7. Vertex AI Agent Builder

"Agent Builder"ı arayıp açın.

b99ae5b6ca1d6340.png

API'leri etkinleştirme

4bf2b240bd51db8.png

Create Agent uygulamasını oluşturun:

2e50007e454b504.png

Görünen ad için "Temsilci" yazın ve "Kabul et ve Oluştur"u tıklayın.

6c49a874c48d0401.png

Temsilci adını ayarlama:

Agent

Hedef belirleyin:

Help user with questions about JIRA project

Ayar Talimatları:

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

"Kaydet"i tıklayın:

6ef0ca47100008e0.png

Sağ taraftaki emülatör sohbet özelliğini kullanarak temsilciyi test edin:

32f49a9791302535.png

Araçlar menüsünü açıp yeni bir araç oluşturun:

c236b95409dfedc3.png

Tür açılır menüsünden OpenAPI'yi seçin.

Araç adını ayarlayın:

jira-project-status

Set açıklaması:

Returns JIRA project status

Şemayı ayarlayın (YAML) - CLOUD RUN URL'NİZİ değiştirin.

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:
 /create-jira-issue:
   post:
     summary: Request impl
     operationId: create-jira-issue
     requestBody:
       description: Request impl
       required: true
       content:
         application/json:
           schema:
             $ref: '#/components/schemas/Prompt'
     responses:
       '200':
         description: Generated
         content:
           application/json:
             schema:
               type: string
 /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:
               type: string

 /test:
   get:
     summary: Request impl
     operationId: test
     responses:
       '200':
         description: Generated
         content:
           application/json:
             schema:
               type: string                    
components:
 schemas:
   Prompt:
     type: object
     required:
       - prompt
     properties:
       prompt:
         type: string

Araç yapılandırmasını kaydedin:

f99ce79ba79e3a4b.png

Aracı kullanmak için aracı yapılandırmasına dönün ve talimatları güncelleyin:

Yeni aracı kullanma talimatlarını ekleyin:

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

4dabf135b37b044b.png

Örnekler sekmesine geçip yeni örnek ekleyin:

5b1fb22e49500362.png

Görünen Adı Ayarlama:

jira-project-flow

Alttaki menüyü kullanarak kullanıcı ile müşteri temsilcisi arasındaki görüşmeyi modelleyin:

54ffb5e7744a0772.png

14cced6461a65811.png

Araç çağırma yapılandırması:

82af695d2f21c4f0.png

Kaydet ve İptal'i tıklayın. Temsilci emülatörüne dönüp akışı test edin.

ec137f71bf6075e2.png

f76fd38c32e29f0a.png

Vertex AI Agents ile ilgili en iyi uygulamaları inceleyin

Temsilci Ayarları

564dd5371999a3f1.png

b5b04f282fcee3e8.png

Günlük kaydı ayarları

af30487d72c1cfa2.png

Model yapılandırması.

53191049428693c7.png

Temsilci yapılandırmasını yayınlamak ve geri yüklemek için GitGub entegrasyonu.

7170649a9c027857.png

Temsilci emülatör denetimleri:

59fd8b2343e89513.png

8. Slack Entegrasyonu

Entegrasyonlar menüsünü açın ve Slack kartında "Bağlan"ı tıklayın.

36f3992134479a37.png

e7ee0826668bfa2b.png

c3e36f4dacbe3f9b.png

Bağlantıyı açın ve https://api.slack.com/apps adresinde yeni bir Slack uygulaması oluşturun.

cbf13edc1b284899.png

"Manifest" bölümünden şunları seçin:

64fa9c75afecdb3e.png

Uygulamanızı geliştirmek için bir çalışma alanı seçin

99a3d5b37cdf8f76.png

YAML'e geçin ve şu manifest dosyasını yapıştırın:

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

"Oluştur"u tıklayın:

5f0b3d2c44022eb9.png

Workspace'e yükleme:

aa1c2ea1b700c838.png

"#general" kanalını seçin ve "İzin ver"i tıklayın.

18eba659946fc65f.png

"Temel Bilgiler / Uygulama Kimlik Bilgileri" bölümünde "İmza Gizli Anahtarı"nı kopyalayıp Slack entegrasyonunda ayarlayın.

31d62babb57e523d.png

bd9f7e3be3b9ea4e.png

"OAuth ve İzinler"i açın, "Bot Kullanıcısı OAuth Jetonu"nu kopyalayın ve Slack entegrasyonunda ayarlayın.

e74c7e003c31258.png

Zorunlu alanları ayarlayın ve "Başlat"ı tıklayın.

Temsilcinin "Erişim Jetonu " değeri, Slack'teki "Bot Kullanıcısı OAUth Jetonu"dur.

Temsilcinin "İmzalama Jetonu " değeri, Slack'taki "İmzalama Gizli Anahtarı"dır.

a00d22bdaeed3ab8.png

7e71e37750fd063a.png

"Webhook URL'sini" kopyalayın ve Slack uygulama yapılandırmasına dönün.

"Etkinlik Abonelikleri" bölümünü açın ve URL'yi yapıştırın.

a1e7271934c714d9.png

Değişiklikleri kaydedin.

e6d9b43b3787b6e7.png

"Slack"ı açın ve "@Agent" yazarak bir temsilci ekleyin.

Örneğin, "@CX" adlı bir uygulama ekleyebilirsiniz.

72313066707f947b.png

63becbd80824f8d8.png

c98e193062b096f0.png

Temsilciden JIRA proje özetini isteyin.

6edfdb74760548ad.png

9. PDF dokümanları hakkında soru-cevap

Cloud Storage paketi oluşturma

Cloud Console'da GCS'yi açın: https://console.cloud.google.com/storage/browser

Yeni bir paket oluşturun.

Paket adı için: "pdf-docs" + GCP projenizin son 5 hanesini yazın.

Konum türü: multi-region, us.

Depolama sınıfı: Standard

Erişim denetimi: Uniform

Veri koruma: uncheck soft delete policy

"Create" öğesini tıklayın.

"Herkese açık erişim önlenecek" seçeneğini onaylayın.

PDF raporunu indirip pakete yükleyin. https://services.google.com/fh/files/misc/exec_guide_gen_ai.pdf

Yüklenen dosyayı içeren paket görünümü:

ff09ac8da88fb680.png

Veri deposu yapılandırması

Temsilci Konsolu'na dönüp "Agent"yi açın, aşağı kaydırın ve "+ Data store"yi tıklayın.

e20b69db922e37d7.png

Aşağıdaki değerleri kullanın:

Araç adı: pdf-docs

Tür: Data store

Açıklama: pdf-docs

"Save"yi tıklayın.

c5bc7a2e458213ba.png

Sayfanın alt kısmındaki "Create a data store" simgesini tıklayın.

"Arama ve sohbet verilerinizin ABD bölgesinde saklanmasını kabul ediyor musunuz?" sorusunu gördüğünüzde "AGREE" simgesini tıklayın.

"Şirket Bilgileri" alanına "Google" yazın.

Sonraki ekranda "CREATE DATA STORE"i tıklayın.

Veri kaynağı olarak "Cloud Storage"yi seçin.

Verileri beslemeye hazırlama

https://cloud.google.com/generative-ai-app-builder/docs/prepare-data

HTML ve TXT dosyaları 2,5 MB veya daha küçük olmalıdır.

PDF, PPTX ve DOCX dosyaları en fazla 100 MB olmalıdır.

Tek seferde en fazla 100.000 dosyayı içe aktarabilirsiniz.

Seç: unstructured documents

Ardından GCS paketinizi/klasörünüzü seçin.

e8534a921059e3a2.png

Devam'ı tıklayın: ed5ad1fabe9503a4.png

Veri deposu adı için: "pdf-docs"

Açılır listeden "Digital parser"i seçin.

Gelişmiş parçalara ayırmayı etkinleştirin.

Üst öğe başlıklarını parçalar halinde etkinleştirin.

"Create" öğesini tıklayın.

1a5222b86ee6c58e.png

3119b5fec43c9294.png

Veri deposunu seçin ve "Create" simgesini tıklayın.

43d5be0a0aca6f8.png

9fd7fc7c1462d114.png

Veri deposunu tıklayın ve Dokümanlar, Etkinlik ve İşleme Yapılandırması'nı inceleyin.

872d9142615e90c9.png

İçe aktarma işleminin tamamlanması yaklaşık 5-10 dakika sürer.

d9739a4af2244e03.png

Ayrıştırma ve parçalara ayırma seçenekleri

İçerik ayrıştırmayı aşağıdaki yöntemlerle kontrol edebilirsiniz:

  • Dijital ayrıştırıcı. Farklı bir ayrıştırıcı türü belirtilmediği sürece dijital ayrıştırıcı tüm dosya türleri için varsayılan olarak açıktır. Dijital ayrıştırıcı, veri deposu için başka bir varsayılan ayrıştırıcı belirtilmemişse veya belirtilen ayrıştırıcı, beslenen bir dokümanın dosya türünü desteklemiyorsa beslenen dokümanları işler.
  • PDF'ler için OCR ayrıştırma. Herkese açık önizleme. Taranmış PDF'ler veya resimlerde metin bulunan PDF'ler yüklemeyi planlıyorsanız PDF dizine ekleme işlemini iyileştirmek için OCR ayrıştırıcıyı etkinleştirebilirsiniz. PDF'ler için OCR ayrıştırma hakkında başlıklı makaleyi inceleyin.
  • Düzen ayrıştırıcı. Herkese açık önizleme. RAG için Vertex AI Search'i kullanmayı planlıyorsanız HTML, PDF veya DOCX dosyaları için düzen ayrıştırıcıyı etkinleştirin. Bu ayrıştırıcı ve nasıl etkinleştirileceği hakkında bilgi edinmek için RAG için belgeleri parçalara ayırma başlıklı makaleyi inceleyin.

Belgeleri ayrıştırma ve parçalara bölme hakkında daha fazla bilgi edinin.

Araç yapılandırması

Araçlar yapılandırmasının bulunduğu sekmeye dönün.

Tarayıcıyı yenileyin ve Yapılandırılmamış açılır listesinden "pdf-docs"i seçin.

71323e788b35ca66.png

Topraklama ayarlarını yapın.

Şirket adı için "Google" yazın.

Yük ayarları - "Include snippets in the response payload"yi işaretleyin

b0cb701d13ad4264.png

"Save" öğesini tıklayın.

91a546957bdfe029.png

7535b85cfc7febe6.png

Temsilcinin talimatları yapılandırması

Temsilci yapılandırmasına dönün.

Yeni talimat ekleyin:

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

9b9548497ddaccbd.png

Yapılandırmayı kaydedin.

PDF-Dokümanlar aracı için örnek oluşturma

Örnekler sekmesine geçin. Yeni bir örnek oluşturun.

"+" işlemlerini kullanarak:

4da93695907c97ad.png

"Kullanıcı girişi"ni ekleyin:

What are the main capabilities?

"Araç kullanımı"nı ekleyin.

  • Araç ve İşlem: "pdf-docs"

Giriş (requestBody)

{
  "query": "Main capabilities",
  "filter": "",
  "userMetadata": {},
  "fallback": ""
}

Araç Çıkışı:

{
  "answer": "Detailed answer about main capabilities",
  "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"
    }
  ]
}

"Müşteri temsilcisi yanıtı"nı ekleme

Detailed answer about main capabilities. 

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

Yapılandırılmış örnek:

2968363e05f3325e.png

Araç çağırma yapılandırması:

658316bb29ac352d.png

Emülatördeki temsilciye soru göndererek yapılandırmayı test edin.

Soru:

What are the 10 steps in the exec guide?

5b2329c494ad0d17.png

"Agent"yi seçin ve "Save example"u tıklayın.

e79c86aa04a9572f.png

"user-question-flow" adını girip kaydedin.

Temsilcinin yanıtını biçimlendirin ve araç çıkışı bölümündeki PDF dokümanın bağlantısını ekleyin.

50f2bcee082ac38d.png

Örneği kaydedin.

Emülatöre dönün ve "Replay conversation"yi tıklayın. Güncellenen yanıt biçimini kontrol edin.

8db40e424f448a2d.png

Başka bir soru sorun:

What are the main capabilities in the exec guide?

6f103fdac8ec4cda.png

Kaynak PDF dokümanı.

5b3e6d2ceda99247.png

Soru:

What should I consider when evaluating projects?

ec7e0f5884772385.png

Kaynak PDF dokümanı.

57a0d331aa91f04b.png

Soru:

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

7a18ba3ca0fe90c5.png

Kaynak PDF dokümanı.

b4d07e6e7d9adc00.png

10. Önceden oluşturulmuş aracılar

Soldaki menüden önceden oluşturulmuş temsilcileri keşfedin.

5720dc5343aede65.png

Temsilcilerden birini seçip dağıtın. Agent'ın kurulumunu, talimatlarını ve araçlarını keşfedin.

2a3db1129b5a1461.png

11. Tebrikler!

Tebrikler, laboratuvarı tamamladınız.

Ele aldığımız konular:

  • Cloud Run uygulamasını Gemini API'leriyle entegre edecek şekilde dağıtma
  • Vertex AI Agent'ı oluşturma ve dağıtma
  • Temsilci için Slack entegrasyonu ekleme
  • PDF dokümanlarda soru-cevap için veri deposunu yapılandırma

Sıradaki adım:

Temizleme

Bu eğiticide kullanılan kaynaklar için Google Cloud hesabınızın ücretlendirilmesini istemiyorsanız kaynakları içeren projeyi silin veya projeyi saklayıp kaynakları tek tek silin.

Projeyi silme

Faturalandırılmanın önüne geçmenin en kolay yolu, eğitim için oluşturduğunuz projeyi silmektir.

©2024 Google LLC Tüm hakları saklıdır. Google ve Google logosu, Google LLC şirketinin ticari markalarıdır. Diğer tüm şirket ve ürün adları ilişkili oldukları şirketlerin ticari markaları olabilir.