Question answering

الطريقة: model.generateAnswer

تنشئ إجابة موثوقة من النموذج الذي يوفّر إدخال GenerateAnswerRequest.

نقطة نهاية

منشور https://generativelanguage.googleapis.com/v1beta/{model=models/*}:generateAnswer

مَعلمات المسار

model string

مطلوب. تمثّل هذه السمة اسم Model المطلوب استخدامه لإنشاء استجابة مستندة إلى البيانات.

التنسيق: model=models/{model} ويكون على النحو models/{model}.

نص الطلب

يحتوي نص الطلب على بيانات بالبنية التالية:

الحقول
contents[] object (Content)

مطلوب. محتوى المحادثة الحالية مع النموذج. بالنسبة إلى طلبات البحث في منعطف واحد، يكون هذا سؤالاً واحدًا يجب الإجابة عنه. بالنسبة إلى طلبات البحث المتعددة الأدوار، هذا حقل متكرّر يحتوي على سجلّ المحادثات وآخر Content في القائمة التي تحتوي على السؤال.

ملاحظة: لا تتيح النماذج.generateAnswer حاليًا سوى طلبات البحث باللغة الإنجليزية.

answerStyle enum (AnswerStyle)

مطلوب. يشير ذلك المصطلح إلى النمط الذي يجب إرجاع الإجابات به.

safetySettings[] object (SafetySetting)

اختياريّ. قائمة بمثيلات SafetySetting الفريدة لحظر المحتوى غير الآمن.

وسيتم فرض ذلك على GenerateAnswerRequest.contents وGenerateAnswerResponse.candidate. يجب ألا يكون هناك أكثر من إعداد واحد لكل نوع SafetyCategory. ستحظر واجهة برمجة التطبيقات أي محتوى واستجابات لا تستوفي الحدود الدنيا التي حدّدتها هذه الإعدادات. تلغي هذه القائمة الإعدادات التلقائية لكل SafetyCategory محدّدة في "إعدادات الأمان". في حال عدم توفّر SafetySetting لعنصر SafetyCategory معيّن في القائمة، ستستخدم واجهة برمجة التطبيقات إعداد الأمان التلقائي لهذه الفئة. فئات الضرر 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)

المحتوى الذي تم استرداده من الموارد التي تم إنشاؤها عبر واجهة برمجة التطبيقات Semantic Retriever API

temperature number

اختياريّ. تتحكّم هذه السياسة في التوزيع العشوائي للمخرج.

ويمكن أن تتراوح القيم من [0.0،1.0]، ضمنًا. وستؤدي القيمة الأقرب من 1.0 إلى الحصول على ردود أكثر تنوعًا وإبداعًا، في حين تؤدي القيمة الأقرب من 0.0 عادةً إلى الحصول على ردود أكثر وضوحًا من النموذج. يُنصَح عادةً بالحصول على درجة حرارة منخفضة (حوالي 0.2) لحالات استخدام ميزة الإجابة عن الأسئلة.

نص الاستجابة

يشير ذلك المصطلح إلى استجابة من النموذج لإجابة شاملة.

إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:

الحقول
answer object (Candidate)

إجابة مرشحة من النموذج.

ملاحظة: يحاول النموذج دائمًا تقديم إجابة واضحة، حتى عندما يكون من غير المرجّح أن تكون الإجابة متوفرة من الفقرات المحدّدة. في هذه الحالة، قد يتم تقديم إجابة منخفضة الجودة أو غير مستندة إلى أي أساس، بالإضافة إلى قيمة منخفضة للسمة answerableProbability.

answerableProbability number

النتائج فقط. يشير ذلك المصطلح إلى تقدير النموذج لاحتمالية أن تكون الإجابة صحيحة ومستندة إلى فقرات الإدخال.

يشير انخفاض answerableProbability إلى أن الإجابة قد لا ترتكز على المصادر.

عندما تكون قيمة answerableProbability منخفضة، قد يريد بعض العملاء تنفيذ ما يلي:

  • عرض رسالة مفادها "تعذّر علينا الإجابة عن هذا السؤال" للمستخدم.
  • يمكنك الرجوع إلى نموذج لغوي كبير (LLM) للأغراض العامة يجيب عن سؤال متعلّق بالمعرفة العالمية. ويعتمد حد وطبيعة هذه الإجراءات الاحتياطية على حالات الاستخدام لكل عميل من العملاء. 0.5 هو حد بداية جيد.
inputFeedback object (InputFeedback)

النتائج فقط. هي التعقيبات المتعلقة ببيانات الإدخال المستخدمة للإجابة على السؤال، بدلاً من الردود التي ينشئها النموذج على السؤال.

"بيانات الإدخال" واحد أو أكثر مما يلي:

  • السؤال الذي تم تحديده من خلال الإدخال الأخير في GenerateAnswerRequest.content
  • سجلّ المحادثة المحدَّد من خلال الإدخالات الأخرى في GenerateAnswerRequest.content
  • المصادر الأساسية (GenerateAnswerRequest.semantic_retriever أو GenerateAnswerRequest.inline_passages)
تمثيل JSON
{
  "answer": {
    object (Candidate)
  },
  "answerableProbability": number,
  "inputFeedback": {
    object (InputFeedback)
  }
}

GroundingPassages

قائمة متكررة من الفقرات

تمثيل JSON
{
  "passages": [
    {
      object (GroundingPassage)
    }
  ]
}
الحقول
passages[] object (GroundingPassage)

قائمة الفقرات

GroundingPassage

تم تضمين الفقرة في إعدادات الأساس.

تمثيل JSON
{
  "id": string,
  "content": {
    object (Content)
  }
}
الحقول
id string

تمثّل هذه السمة معرّف الفقرة لإسناد هذه الفقرة في الإجابات الأساسية.

content object (Content)

محتوى الفقرة

SemanticRetrieverConfig

إعدادات لاسترداد المحتوى النهائي من Corpus أو Document تم إنشاؤه باستخدام واجهة برمجة التطبيقات Semantic Retriever API.

تمثيل JSON
{
  "source": string,
  "query": {
    object (Content)
  },
  "metadataFilters": [
    {
      object (MetadataFilter)
    }
  ],
  "maxChunksCount": integer,
  "minimumRelevanceScore": number
}
الحقول
source string

مطلوب. اسم المورد للاسترجاع، على سبيل المثال corpora/123 أو corpora/123/documents/abc.

query object (Content)

مطلوب. طلب البحث الذي يجب استخدامه لمطابقة عناصر Chunk في المرجع المحدّد

metadataFilters[] object (MetadataFilter)

اختياريّ. فلاتر لاختيار Document و/أو Chunk من المورد

maxChunksCount integer

اختياريّ. الحد الأقصى لعدد Chunk ذات الصلة التي يمكن استردادها.

minimumRelevanceScore number

اختياريّ. الحد الأدنى لنتيجة مدى الصلة بالموضوع لـ Chunk ذات الصلة التي تم استردادها

AnswerStyle

أسلوب مخصّص للإجابات التي تستند إلى الأسس

عمليات التعداد
ANSWER_STYLE_UNSPECIFIED نمط إجابة غير محدّد.
ABSTRACTIVE أسلوب موجز وتجريدي:
EXTRACTIVE أسلوب مختصر للغاية واستخراجي
VERBOSE نمط مطوَّل يشمل تفاصيل إضافية يمكن تنسيق الرد كجملة أو فقرة أو فقرات متعددة أو نقاط تعداد، إلخ.

InputFeedback

هي التعقيبات المتعلقة ببيانات الإدخال المستخدمة للإجابة على السؤال، بدلاً من الردود التي ينشئها النموذج على السؤال.

تمثيل JSON
{
  "safetyRatings": [
    {
      object (SafetyRating)
    }
  ],
  "blockReason": enum (BlockReason)
}
الحقول
safetyRatings[] object (SafetyRating)

تقييمات سلامة الإدخال يتوفّر تقييم واحد كحدّ أقصى لكل فئة.

blockReason enum (BlockReason)

اختياريّ. في حال ضبطها، تم حظر الإدخال ولن يتم عرض أي عناصر مرشحة. أعِد صياغة النص الذي أدخلته.

BlockReason

تحدد هذه السمة سبب حظر الإدخال.

عمليات التعداد
BLOCK_REASON_UNSPECIFIED القيمة التلقائية. هذه القيمة غير مستخدمة.
SAFETY تم حظر الإدخال لأسباب تتعلق بالأمان. يمكنك فحص "safetyRatings" لمعرفة فئة الأمان التي حظرته.
OTHER تم حظر الإدخال لأسباب أخرى.