בדף הזה מוצגות קבוצה מאוחדת של יכולות להגדרת הנחיות, לשמירתן, לאחזורן ולניהולן ב Google Cloud פרויקט באמצעות מודול ניהול ההנחיות של Vertex AI SDK.
סקירה כללית
Vertex AI מציע כלים שיעזרו לכם לנהל תבניות של הנחיות ונתונים של הנחיות. אפשר ליצור גרסאות של תבניות הנחיות ולהשתמש בהן עם מודלים גנרטיביים ב-Vertex AI. אפשר להרכיב כל הנחיה ולשמור את הגרסה שלה ב-Vertex AI Studio או ב-Vertex AI SDK.
ניהול הנחיות ב-Vertex AI SDK כולל תמיכה מלאה ברמת הארגון, כולל תמיכה במפתחות הצפנה בניהול הלקוח (CMEK) וב-VPC Service Controls (VPCSC).
יכולות לניהול הנחיות
כדי להשתמש ביכולות של AI גנרטיבי מ-Vertex AI SDK, צריך לבצע את הפעולות הבאות:
מתקינים את הגרסה העדכנית של Vertex AI SDK.
pip install --upgrade google-cloud-aiplatformיוצרים לקוח של AI גנרטיבי באמצעות דוגמת קוד Python הבאה:
import vertexai from vertexai import types # Instantiate GenAI client from Vertex SDK # Replace with your project ID and location client = vertexai.Client(project='my-project', location='my-location')
אחרי שיוצרים לקוח של AI גנרטיבי, אפשר להשתמש בכל אחת מהיכולות הבאות לניהול הנחיות ב-Vertex AI SDK:
- יצירת הנחיה מקומית.
- שמירת הנחיה ב Google Cloud פרויקט.
- איך מקבלים הנחיה שמורה
- הצגת רשימה של הנחיות וגרסאות.
- מחיקת הנחיה
- שחזור גרסה של הצעה לפעולה
יצירת הנחיה מקומית
בקטע הזה מופיעה דוגמה להגדרת משתנה types.Prompt לשימוש בכל הדף.
המחלקה Prompt משמשת להגדרה, להרכבה ולשימוש בהנחיות. המאפיין prompt_data מוגדר עבור המחלקה Prompt וכולל את הערכים הבאים:
| מאפיין | |
|---|---|
|
חובה: שם הדגם. |
|
חובה: תוכן השיחה עם המודל. יש תמיכה רק בהנחיות חד-פעמיות. |
|
אופציונלי: הגדרת יצירה |
|
אופציונלי: התצורה הזו משותפת לכל הכלים שצוינו בבקשה. |
|
אופציונלי: רשימה של |
|
אופציונלי: הגדרות הבקשה לחסימת תוכן לא בטוח, שנאכפות ב- |
|
אופציונלי: הוראות המערכת שהמשתמש סיפק למודל. |
|
אופציונלי: אם ההנחיה מכילה משתנה תבנית, מציינים את הערכים שבהם רוצים להשתמש עבור המשתנה הזה. לדוגמה, אם תוכן הטקסט של ההנחיה הוא "שלום, {name}". רשימת המשתנים צריכה לכלול מילון של כל הערכים האפשריים של המשתנה {name}. דוגמה:
"variables": [
{"name": {"text": "Alice"}},
{"name": {"text": "Bob"}},
],
|
בדוגמת הקוד הזו מוסבר איך להגדיר משתנה types.Prompt.
import vertexai
from vertexai import types
from google.genai import types as genai_types
prompt = types.Prompt(
prompt_data=types.PromptData(
contents=[genai_types.Content(parts=[genai_types.Part(text="Hello, {name}! How are you?")])],
variables=[
{"name": genai_types.Part(text="Alice")},
{"name": genai_types.Part(text="Bob")},
],
model="your-model",
),
)
שמירת הנחיה בפרויקט Google Cloud
בקטע הזה מוצגים הפרמטרים ודוגמה לאופן שבו שומרים הנחיה ב Google Cloud פרויקט.
פרמטרים
בטבלה הזו מתוארים הפרמטרים שמשמשים בשיטה create:
| פרמטרים | |
|---|---|
|
הנתונים של הנחיה ספציפית. |
|
אופציונלי: אובייקט |
בטבלה הזו מתוארים הפרמטרים שמשמשים בשיטה create_version:
| פרמטרים | |
|---|---|
|
חובה: הנתונים של הנחיה ספציפית. |
|
אופציונלי: אובייקט |
השיטה create_version מחזירה Prompt.
דוגמה
כדי לשמור הנחיה ב Google Cloud פרויקט, משתמשים בשיטות client.prompts.create ו-client.prompts.create_version.
השיטה client.prompts.create יוצרת משאב של הנחיה בGoogle Cloud פרויקט. השיטה client.prompts.create_version יוצרת גרסת הנחיה במשאב הזה, ואפשר לגשת למשאב במסוףGoogle Cloud .
השיטה client.prompts.create מקבלת אובייקט Prompt כקלט ויוצרת הנחיה בפרויקט Google Cloud . בנוסף, צריך להעביר את prompt_id בשיטה client.prompts.create_version, שהוא המזהה של משאב ההנחיה שרוצים ליצור את הגרסה שלו. מוחזר אובייקט חדש Prompt שמשויך לפרויקט Google Cloud . כל העדכונים שבוצעו באובייקט Prompt הם מקומיים עד שמפעילים את create או create_version.
בדוגמת הקוד הבאה אפשר לראות איך שומרים הנחיה וגרסה של הנחיה:
# Save `Prompt` to a Google Cloud project.
# Returns a new `Prompt` object associated with the saved prompt resource.
prompt_resource = client.prompts.create(prompt=prompt)
prompt_version_resource = client.prompts.create_version(prompt=prompt, prompt_id=prompt_resource.prompt_id)
אחזור הנחיה שמורה
בקטע הזה מוצגים הפרמטרים ודוגמה לאופן קבלת הנחיה וגרסת הנחיה.
יש שתי שיטות: client.prompts.get ו-client.prompts.get_version.
פרמטרים
בטבלה הזו מתוארים הפרמטרים שמשמשים בשיטה client.prompts.get:
| פרמטרים | |
|---|---|
|
חובה: המזהה של ההנחיה לאחזור. |
|
אופציונלי: אובייקט |
בטבלה הזו מתוארים הפרמטרים שמשמשים בשיטה client.prompts.get_version:
| פרמטרים | |
|---|---|
|
חובה: המזהה של ההנחיה לאחזור. |
|
חובה: המזהה של גרסת ההנחיה שרוצים לאחזר. |
|
אופציונלי: אובייקט |
השיטות get ו-get_version מחזירות Prompt.
דוגמאות
כדי לקבל (לטעון) הנחיה שנשמרה בפרויקט Google Cloud , משתמשים בשיטה client.prompts.get. השיטה הזו מקבלת את מזהה ההנחיה כקלט ומחזירה את אובייקט Prompt המתאים. בדוגמת הקוד הזו אפשר לראות איך לטעון הנחיה שמורה:
# Get prompt
retrieved_prompt = client.prompts.get(prompt_id=prompt_resource.prompt_id)
בדוגמת הקוד הבאה מוצג איך מקבלים גרסה של הנחיה.
retrieved_prompt_version = client.prompts.get_version(prompt_id='your-prompt-id', version_id='your-prompt-version-id')
בדוגמת הקוד הבאה אפשר לראות איך משנים את ההנחיה כדי להתקשר אל generate_content ב-SDK של AI גנרטיבי.
from google import genai
from google.genai import types as genai_types
genai_client = genai.Client(vertexai=True, project="my-project", location="my-location")
response = genai_client.models.generate_content(
model=retrieved_prompt.prompt_data.model,
contents=retrieved_prompt.assemble_contents(),
)
הצגת רשימת ההנחיות והגרסאות
בקטע הזה מוצגים הפרמטרים ודוגמה לאופן שבו אפשר להציג הנחיות וגרסאות של הנחיות.
יש שתי שיטות: client.prompts.list ו-client.prompts.list_versions.
פרמטרים
בטבלה הזו מתוארים הפרמטרים שמשמשים בשיטה list:
| פרמטרים | |
|---|---|
|
אופציונלי: אובייקט |
בטבלה הזו מתוארים הפרמטרים שמשמשים בשיטה list_versions:
| פרמטרים | |
|---|---|
|
חובה: המזהה של ההנחיה שרוצים להציג את הגרסאות שלה. |
|
אופציונלי: אובייקט |
השיטות list ו-list_versions מחזירות Iterator של אובייקטים מסוג types.PromptRef. השדה PromptRef מכיל הפניה להנחיה.
דוגמה
כדי לראות את מזהה ההנחיה והמודל של כל ההנחיות שנשמרו ב Google Cloud פרויקט, משתמשים בשיטה list.
בדוגמת הקוד הבאה אפשר לראות איך מאחזרים PromptRef לכל ההנחיות השמורות בפרויקט הנוכחי:
prompt_refs = list(client.prompts.list())
# Get a prompt from the list
prompt1 = client.prompts.get(prompt_id=prompt_refs[0].prompt_id)
בדוגמת הקוד הבאה אפשר לראות איך מציגים את מזהי ההנחיות והגרסאות של כל גרסאות ההנחיות שנשמרו בהנחיה:
prompt_versions_metadata = client.prompts.list_versions(prompt_id="123456789")
# Get a specific prompt version from the versions metadata list
prompt1 = client.prompts.get_version(
prompt_id=prompt_versions_metadata[0].prompt_id,
version_id=prompt_versions_metadata[0].version_id
)
מחיקת הנחיה
בקטע הזה מפורטים הפרמטרים ודוגמה לאופן המחיקה של הנחיה.
יש שתי שיטות: delete ו-delete_version.
פרמטרים
בטבלה הזו מתוארים הפרמטרים שמשמשים בשיטה delete:
| פרמטרים | |
|---|---|
|
המזהה של ההנחיה שרוצים למחוק. |
|
אופציונלי: אובייקט |
בטבלה הזו מתוארים הפרמטרים שמשמשים בשיטה delete_version:
| פרמטרים | |
|---|---|
|
המזהה של ההנחיה שממנה רוצים למחוק גרסה. |
|
גרסת ההנחיה למחיקה. |
|
אופציונלי: אובייקט |
דוגמאות
כדי למחוק הנחיה ואת כל הגרסאות שלה, משתמשים בשיטה delete.
client.prompts.delete(prompt_id=retrieved_prompt.prompt_id)
כדי למחוק גרסה ספציפית ממשאב של הנחיה, משתמשים בשיטה delete_version.
client.prompts.delete_version(prompt_id=retrieved_prompt.prompt_id, version_id='your-version-id')
שחזור גרסה של הנחיה
בקטע הזה מוצגים הפרמטרים ודוגמה לאופן השחזור של גרסת הנחיה.
פרמטרים
בטבלה הזו מתוארים הפרמטרים שמשמשים בשיטה restore_version:
| פרמטרים | |
|---|---|
|
המזהה של הנחיה ספציפית. |
|
גרסת ההנחיה לשחזור. |
|
ההגדרה לשחזור גרסה של הנחיה. |
השיטה restore_version מחזירה אובייקט Prompt.
דוגמה
משאב של הנחיה מכיל גם היסטוריית גרסאות שבה נשמרות גרסאות קודמות של ההנחיה. אפשר להשתמש בשיטה restore_version() כדי לשחזר גרסה ישנה יותר כגרסה העדכנית של ההנחיה. הפעולה הזו מחזירה אובייקט Prompt.
# Restore to prompt version id 1
restored_prompt = client.prompts.restore_version(prompt_id=retrieved_prompt.prompt_id, version_id='1')
המאמרים הבאים
- מידע נוסף על הנחיות שתומכות בהפעלת פונקציות זמין במאמר מבוא להפעלת פונקציות.