יצירה של מכונה של Example Store או שימוש חוזר במכונה קיימת

בדף הזה מוסבר איך ליצור מופע חדש של Example Store או לעשות שימוש חוזר במופע קיים של Example Store. אתם יכולים לאחסן את הדוגמאות שלכם ב-Example Store כשאתם מפתחים את אפליקציית ה-LLM, ולאחזר אותן באופן דינמי כדי להשתמש בהן בהנחיות ה-LLM.

כדי לאמן מודל שפה גדול (LLM) או סוכן באמצעות דוגמאות מעטות, צריך קודם ליצור או להשתמש מחדש במופע של חנות לדוגמה עבור הפרויקט והמיקום, ואז להעלות אליו דוגמאות.

לכל פרויקט ומיקום, אפשר ליצור עד 50 מקרים של חנות לדוגמה. אחרי שיוצרים מקרה של חנות לדוגמה, אפשר לשתף אותו בכמה אפליקציות וסוכנים של LLM.

יש שתי דרכים להקצאת מופע של חנות לדוגמה:

  • יצירת מכונה חדשה של Example Store: כשיוצרים מכונה חדשה של Example Store, צריך לציין את מודל ההטמעה שבו Example Store משתמש כדי לקבוע אילו דוגמאות רלוונטיות לשאילתות של המשתמשים. חנות לדוגמה תומכת במודלים הבאים להטמעה:

    • text-embedding-005

    • text-multilingual-embedding-002

    אי אפשר לשנות מודל הטמעה אחרי שיוצרים את המופע של חנות לדוגמה. אם רוצים להשתמש במודל הטמעה אחר, צריך ליצור חנות לדוגמה נוספת. מידע נוסף על הטמעות טקסט זמין במאמר קבלת הטמעות טקסט.

  • שימוש חוזר במופע קיים של חנות לדוגמה: מופעים של חנות לדוגמה מיועדים לשימוש של כמה נציגים, כך שאפשר לגשת לדוגמאות המאוחסנות באפליקציות של מודלים גדולים של שפה. אי אפשר לשנות את מודל ההטמעה כשמשתמשים מחדש במופע קיים של חנות לדוגמה.

דרישות מוקדמות

לפני שמשתמשים בדוגמאות של Python שבדף הזה, צריך להתקין ולהפעיל את Agent Platform SDK בסביבת Python המקומית.

  1. מריצים את הפקודה הבאה כדי להתקין את Agent Platform SDK עבור Example Store.

    pip install --upgrade google-cloud-aiplatform>=1.87.0
  2. בדוגמת הקוד הבאה אפשר לראות איך מייבאים ומפעילים את ה-SDK של Example Store.

    import vertexai
    from vertexai.preview import example_stores
    
    vertexai.init(
      project="PROJECT_ID",
      location="LOCATION"
    )
    

    מחליפים את מה שכתוב בשדות הבאים:

    • PROJECT_ID: מזהה הפרויקט.

    • LOCATION: האזור שלכם. יש תמיכה רק ב-us-central1.

יצירת מופע של חנות לדוגמה

בדוגמאות הבאות מוסבר איך ליצור מופע של Example Store לפרויקט ולמיקום ספציפיים. שימו לב: יצירת מופע של חנות לדוגמה נמשכת כמה דקות.

Python

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonההוראות להגדרה במאמר מדריך למתחילים של Agent Platform באמצעות ספריות לקוח.

כדי לבצע אימות ב-Agent Platform, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

import vertexai
from vertexai.preview import example_stores

vertexai.init(
    project="PROJECT_ID",
    location="LOCATION"
)

my_example_store = example_stores.ExampleStore.create(
    example_store_config=example_stores.ExampleStoreConfig(
        vertex_embedding_model="EMBEDDING_MODEL"
    )
)

מחליפים את מה שכתוב בשדות הבאים:

  • PROJECT_ID: מזהה הפרויקט.
  • LOCATION: האזור שבו רוצים ליצור את חנות הדוגמה. האזור היחיד שנתמך הוא us-central1.
  • EMBEDDING_MODEL: מודל הטמעה שמופע של חנות לדוגמה משתמש בו כדי לקבוע אילו דוגמאות רלוונטיות לשאילתות של משתמשים. חנות לדוגמה תומכת במודלים הבאים להטמעה:
    • text-embedding-005
    • text-multilingual-embedding-002

REST

כדי ליצור משאב ExampleStore, שולחים בקשת POST באמצעות ה-method‏ exampleStores.create.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט.
  • LOCATION: האזור שבו רוצים ליצור את מופע החנות Example. האזור הנתמך היחיד הוא us-central1.
  • DISPLAY_NAME: השם של מופע Example Store.
  • EMBEDDING_MODEL: מודל הטמעה שמופע של חנות לדוגמה משתמש בו כדי לקבוע אילו דוגמאות רלוונטיות לשאילתות של משתמשים. חנות לדוגמה תומכת במודלים הבאים להטמעה:
    • textembedding-gecko@003
    • text-embedding-004
    • text-multilingual-embedding-002

ה-method של ה-HTTP וכתובת ה-URL:

POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/exampleStores

גוף בקשת JSON:

{
  "display_name": "DISPLAY_NAME",
  "example_store_config": {"vertex_embedding_model": EMBEDDING_MODEL}
}

כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:

curl

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/exampleStores"

PowerShell

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/exampleStores" | Select-Object -Expand Content

אתם אמורים לקבל תגובת JSON שדומה לזו, שבה EXAMPLE_STORE_ID מייצג את המזהה של מופע Example Store.

שימוש חוזר במכונה קיימת של חנות לדוגמה

אפשר להשתמש בדוגמה הבאה כדי לעשות שימוש חוזר במופע קיים של Example Store עבור פרויקט ומיקום ספציפיים.

Python

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonההוראות להגדרה במאמר מדריך למתחילים של Agent Platform באמצעות ספריות לקוח.

כדי לבצע אימות ב-Agent Platform, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

import vertexai
from vertexai.preview import example_stores

vertexai.init(
    project="PROJECT_ID",
    location="LOCATION"
)

example_store = example_stores.ExampleStore(
    "EXAMPLE_STORE_NAME")

מחליפים את מה שכתוב בשדות הבאים:

  • PROJECT_ID: מזהה הפרויקט.
  • LOCATION: האזור שבו רוצים ליצור את חנות הדוגמה. האזור היחיד שנתמך הוא us-central1.
  • EXAMPLE_STORE_NAME: השם של מופע Example Store שרוצים לעשות בו שימוש חוזר.

המאמרים הבאים