שיטה: model.generateAnswer
- נקודת קצה (endpoint)
- פרמטרים של נתיב
- גוף הבקשה
- גוף התשובה
- היקפי ההרשאות
- GroundingPassages
- GroundingPassage
- SemanticRetrieverConfig
- AnswerStyle
- InputFeedback
- BlockReason
יוצרת תשובה בסיסית מהמודל בהינתן קלט GenerateAnswerRequest
.
נקודת קצה
לשלוח
https://generativelanguage.googleapis.com/v1beta/{model=models/*}:generateAnswer
פרמטרים של נתיב
model
string
חובה. השם של Model
שישמש ליצירת התגובה הבסיסית.
פורמט: model=models/{model}
הוא מופיע בפורמט models/{model}
.
גוף הבקשה
גוף הבקשה מכיל נתונים במבנה הבא:
contents[]
object (Content
)
חובה. תוכן השיחה הנוכחית עם המודל. זו שאלה אחת שצריך לענות עליה כשמדובר בשאילתות חד-פעמיות. לשאילתות עם מספר פניות, זהו שדה חוזר שמכיל את היסטוריית השיחות ואת Content
האחרון ברשימה שמכילה את השאלה.
הערה: model.generateAnswer תומך כרגע רק בשאילתות באנגלית.
answerStyle
enum (AnswerStyle
)
חובה. הסגנון שבו צריך להחזיר תשובות.
safetySettings[]
object (SafetySetting
)
זה שינוי אופציונלי. רשימה של מופעים ייחודיים של SafetySetting
לחסימת תוכן לא בטוח.
המדיניות הזו תיאכף בGenerateAnswerRequest.contents
ובGenerateAnswerResponse.candidate
. לכל סוג של SafetyCategory
יכולה להיות הגדרה אחת לכל היותר. ה-API יחסום תוכן ותשובות שלא יעמדו בערכי הסף שהוגדרו על ידי ההגדרות האלה. הרשימה הזו מבטלת את הגדרות ברירת המחדל לכל SafetyCategory
שצוינו בהגדרות הבטיחות. אם לא צוין SafetySetting
עבור SafetyCategory
מסוים ברשימה, ה-API ישתמש בהגדרת ברירת המחדל של בטיחות לקטגוריה הזו. קיימת תמיכה בקטגוריות פגיעה HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT ו-HARM_CATEGORY_HARASSMENT.
grounding_source
. המקורות שבהם אפשר לבסס את התשובה. grounding_source
יכול להיות רק אחת מהאפשרויות הבאות:
inlinePassages
object (GroundingPassages
)
המעברים סופקו בהתאם לבקשה.
semanticRetriever
object (SemanticRetrieverConfig
)
תוכן שאוחזר ממשאבים שנוצרו באמצעות ממשק ה-API של האחזור הסמנטי.
temperature
number
זה שינוי אופציונלי. המדיניות קובעת את רמת הרנדומיזציה של הפלט.
הערכים יכולים לנוע בין [0.0,1.0], כולל. ערך קרוב ל-1.0 יוביל לתשובות מגוונות ויצירתיות יותר. לעומת זאת, ערך קרוב ל-0.0 בדרך כלל יניב תשובות ישירות יותר מהמודל. בדרך כלל מומלץ להשתמש בטמפרטורה נמוכה (~0.2) בתרחישי שימוש של מענה על שאלות עם מאפיינים (Attributed- חנויות).
גוף התשובה
תשובה מהמודל לתשובה מבוססת.
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל נתונים במבנה הבא:
answer
object (Candidate
)
תשובה מהמודל.
הערה: המודל תמיד מנסה לספק תשובה בסיסית, גם אם לא סביר שניתן יהיה להשיב על התשובה בקטעים הנתונים. במקרה כזה, ייתכן שתימסר תשובה באיכות נמוכה או לא מבוססת, יחד עם ערך נמוך של answerableProbability
.
answerableProbability
number
פלט בלבד. האומדן של המודל להסתברות שהתשובה שלו נכונה, ומבוססת על קטעי הקלט.
אם התשובה היא שההסתברות שלה נמוכה, פירוש הדבר הוא שייתכן שהתשובה לא מבוססת על המקורות.
כאשר הערך של answerableProbability
נמוך, ייתכן שלקוחות מסוימים ירצו:
- הצגת הודעה עם הכיתוב 'לא הצלחנו לענות על השאלה הזו' למשתמש.
- נחזור ל-LLM לשימוש כללי שיענה על השאלה מתוך הידע העולמי. הסף והאופי של חלופות כאלה תלויים בתרחישים לדוגמה של כל לקוח. 0.5 הוא סף טוב להתחלה.
inputFeedback
object (InputFeedback
)
פלט בלבד. משוב שקשור לנתוני הקלט שמשמשים לתשובה על השאלה, ולא לתשובה שנוצרה באמצעות מודל לשאלה.
'נתוני קלט' יכול להיות אחת או יותר מהאפשרויות הבאות:
- השאלה שצוינה על ידי הערך האחרון ב-
GenerateAnswerRequest.content
- היסטוריית השיחות שצוינה על ידי הערכים האחרים בתיקייה
GenerateAnswerRequest.content
- מקורות הבסיס (
GenerateAnswerRequest.semantic_retriever
אוGenerateAnswerRequest.inline_passages
)
ייצוג JSON |
---|
{ "answer": { object ( |
GroundingPassages
רשימה חוזרת של פסקאות.
ייצוג JSON |
---|
{
"passages": [
{
object ( |
passages[]
object (GroundingPassage
)
רשימת פסקאות.
GroundingPassage
המעבר נכלל בגוף ההודעה עם הגדרות הארקה.
ייצוג JSON |
---|
{
"id": string,
"content": {
object ( |
id
string
מזהה של הקטע לשיוך הקטע הזה בתשובות מבוססות.
content
object (Content
)
תוכן הקטע.
SemanticRetrieverConfig
הגדרה לאחזור תוכן בסיסי מ-Corpus
או מ-Document
שנוצרו באמצעות ה-API של האחזור הסמנטי.
ייצוג JSON |
---|
{ "source": string, "query": { object ( |
source
string
חובה. שם המשאב לאחזור, למשל: corpora/123 או corpora/123/documents/abc.
query
object (Content
)
חובה. שאילתה שתשמש להתאמת דמיון Chunk
במשאב הנתון.
metadataFilters[]
object (MetadataFilter
)
זה שינוי אופציונלי. מסננים לבחירת Document
או Chunk
מהמשאב.
maxChunksCount
integer
זה שינוי אופציונלי. המספר המקסימלי של Chunk
רלוונטיים לאחזור.
minimumRelevanceScore
number
זה שינוי אופציונלי. ציון רלוונטיות מינימלי ל-Chunk
שאוחזרו.
AnswerStyle
סגנון לתשובות מבוססות-בסיס.
טיפוסים בני מנייה (enum) | |
---|---|
ANSWER_STYLE_UNSPECIFIED |
סגנון התשובה לא צוין. |
ABSTRACTIVE |
סוצינט אבל סגנון מופשט. |
EXTRACTIVE |
סגנון קצר מאוד ומחלץ. |
VERBOSE |
סגנון מילולי, כולל פרטים נוספים. התשובה יכולה להיות בפורמט של משפט, פסקה, מספר פסקאות, נקודות תבליטים וכו'. |
InputFeedback
משוב שקשור לנתוני הקלט שמשמשים לתשובה על השאלה, ולא לתשובה שנוצרה באמצעות מודל לשאלה.
ייצוג JSON |
---|
{ "safetyRatings": [ { object ( |
safetyRatings[]
object (SafetyRating
)
דירוגים לבטיחות הקלט. לכל קטגוריה יש דירוג אחד לכל היותר.
blockReason
enum (BlockReason
)
זה שינוי אופציונלי. אם הוא הוגדר, הקלט נחסם ולא מוחזרים מועמדים. תנסח מחדש את הקלט.
BlockReason
מציינת מה הייתה הסיבה לחסימת הקלט.
טיפוסים בני מנייה (enum) | |
---|---|
BLOCK_REASON_UNSPECIFIED |
ערך ברירת המחדל. הערך הזה לא בשימוש. |
SAFETY |
הקלט נחסם מטעמי בטיחות. אפשר לבדוק את safetyRatings כדי להבין איזו קטגוריית בטיחות חסמה אותה. |
OTHER |
הקלט נחסם מסיבות אחרות. |