توفّر واجهة برمجة التطبيقات Semantic Retrieval API خدمة استضافة للإجابة عن الأسئلة من أجل إنشاء أنظمة استرجاع المعلومات حسب الخصائص الدلالية (RAG) باستخدام البنية الأساسية من Google.
الطريقة: models.generateAnswer
- نقطة النهاية
- مَعلمات المسار
- نص الطلب
- نص الاستجابة
- نطاقات التفويض
- GroundingPassages
- GroundingPassage
- SemanticRetrieverConfig
- AnswerStyle
- InputFeedback
- BlockReason
تنشئ إجابة مستندة إلى النموذج بالاستناد إلى الإدخال GenerateAnswerRequest
.
نقطة نهاية
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:generateAnswer
مَعلمات المسار
model
string
مطلوب. اسم Model
الذي سيتم استخدامه لإنشاء الردّ المستند إلى معلومات موثوقة.
التنسيق: model=models/{model}
تتّخذ الشكل models/{model}
.
نص الطلب
يحتوي نص الطلب على بيانات بالبنية التالية:
contents[]
object (Content
)
مطلوب. محتوى المحادثة الحالية مع Model
بالنسبة إلى طلبات البحث ذات الجولة الواحدة، يكون هذا السؤال واحدًا فقط. بالنسبة إلى الاستعلامات المتعددة الجولات، هذا حقل متكرّر يحتوي على سجلّ المحادثات وآخر Content
في القائمة التي تتضمّن السؤال.
ملاحظة: لا يتيح models.generateAnswer
سوى الاستعلامات باللغة الإنجليزية.
answerStyle
enum (AnswerStyle
)
مطلوب. نمط عرض الإجابات
safetySettings[]
object (SafetySetting
)
اختيارية: قائمة بحالات SafetySetting
الفريدة لحظر المحتوى غير الآمن
سيتم تطبيق هذا الشرط على GenerateAnswerRequest.contents
وGenerateAnswerResponse.candidate
. يجب ألا يكون هناك أكثر من إعداد واحد لكل نوع SafetyCategory
. ستحظر واجهة برمجة التطبيقات أي محتوى وردود لا تستوفي الحدود التي تحدّدها هذه الإعدادات. تلغي هذه القائمة الإعدادات التلقائية لكل SafetyCategory
محدّد في safetySettings. إذا لم يكن هناك SafetySetting
لفئة SafetyCategory
معيّنة مقدَّمة في القائمة، ستستخدم واجهة برمجة التطبيقات إعدادات الأمان التلقائية لهذه الفئة. تتوفّر فئات المحتوى الضار التالية: HARM_CATEGORY_HATE_SPEECH وHARM_CATEGORY_SEXUALLY_EXPLICIT وHARM_CATEGORY_DANGEROUS_CONTENT وHARM_CATEGORY_HARASSMENT. راجِع الدليل للحصول على معلومات تفصيلية حول إعدادات الأمان المتاحة. يمكنك أيضًا الرجوع إلى إرشادات الأمان للتعرّف على كيفية تضمين اعتبارات الأمان في تطبيقات الذكاء الاصطناعي.
grounding_source
Union type
grounding_source
إحدى القيم التالية فقط:inlinePassages
object (GroundingPassages
)
المقاطع المقدَّمة بشكل مضمّن مع الطلب
semanticRetriever
object (SemanticRetrieverConfig
)
المحتوى الذي تم استرداده من المراجع التي تم إنشاؤها من خلال واجهة برمجة التطبيقات Semantic Retriever
temperature
number
اختيارية: تتحكّم هذه السمة في عشوائية الناتج.
يمكن أن تتراوح القيم من [0.0,1.0]، بما في ذلك هذين الرقمَين. ستؤدي القيمة الأقرب إلى 1.0 إلى إنشاء ردود أكثر تنوعًا وإبداعًا، بينما ستؤدي القيمة الأقرب إلى 0.0 عادةً إلى إنشاء ردود أكثر مباشرةً من النموذج. يُنصح عادةً باستخدام درجة حرارة منخفضة (حوالي 0.2) لحالات استخدام "الإجابة عن الأسئلة مع ذكر المصدر".
نص الاستجابة
الردّ الذي يقدّمه النموذج للحصول على إجابة مستندة إلى معلومات موثوقة
إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:
answer
object (Candidate
)
الإجابة المرشّحة من النموذج
ملاحظة: يحاول النموذج دائمًا تقديم إجابة مستندة إلى الحقائق، حتى عندما يكون من غير المحتمل أن تكون الإجابة قابلة للاستخراج من الفقرات المقدَّمة. في هذه الحالة، قد يتم تقديم إجابة منخفضة الجودة أو غير مستندة إلى معلومات، بالإضافة إلى answerableProbability
منخفض.
answerableProbability
number
النتائج فقط. تقدير النموذج لاحتمالية أن تكون إجابته صحيحة ومستندة إلى الفقرات المُدخَلة.
يشير انخفاض answerableProbability
إلى أنّ الإجابة قد لا تكون مستندة إلى المصادر.
عندما تكون قيمة answerableProbability
منخفضة، ننصحك بما يلي:
- عرض رسالة للمستخدم مفادها "لم نتمكّن من الإجابة عن هذا السؤال"
- الرجوع إلى نموذج لغوي كبير للأغراض العامة يجيب عن السؤال استنادًا إلى المعلومات المتوفرة حول العالم سيعتمد الحدّ الأدنى وطبيعة هذه البدائل على حالات الاستخدام الفردية.
0.5
هي عتبة بداية جيدة.
inputFeedback
object (InputFeedback
)
النتائج فقط. تشير إلى الملاحظات المتعلّقة ببيانات الإدخال المستخدَمة للإجابة عن السؤال، بدلاً من الردّ الذي أنشأه النموذج على السؤال.
يمكن أن تكون بيانات الإدخال واحدة أو أكثر مما يلي:
- السؤال المحدّد من خلال الإدخال الأخير في
GenerateAnswerRequest.content
- سجلّ المحادثات المحدّد من خلال الإدخالات الأخرى في
GenerateAnswerRequest.content
- المصادر الأساسية (
GenerateAnswerRequest.semantic_retriever
أوGenerateAnswerRequest.inline_passages
)
تمثيل JSON |
---|
{ "answer": { object ( |
GroundingPassages
قائمة متكرّرة من المقاطع
passages[]
object (GroundingPassage
)
قائمة الفقرات
تمثيل JSON |
---|
{
"passages": [
{
object ( |
GroundingPassage
SemanticRetrieverConfig
إعدادات استرداد المحتوى الأساسي من Corpus
أو Document
تم إنشاؤه باستخدام Semantic Retriever API
source
string
مطلوب. اسم المورد الذي سيتم استرداده. مثال: corpora/123
أو corpora/123/documents/abc
query
object (Content
)
مطلوب. طلب البحث الذي سيتم استخدامه لمطابقة Chunk
في المرجع المحدّد حسب التشابه
metadataFilters[]
object (MetadataFilter
)
اختيارية: فلاتر لاختيار Document
و/أو Chunk
من المرجع
maxChunksCount
integer
اختيارية: تمثّل هذه السمة الحدّ الأقصى لعدد Chunk
ذات الصلة التي سيتم استرجاعها.
minimumRelevanceScore
number
اختيارية: الحدّ الأدنى لنتيجة الصلة التي يجب أن تحقّقها Chunk
s المسترجَعة ذات الصلة
تمثيل JSON |
---|
{ "source": string, "query": { object ( |
AnswerStyle
نمط الإجابات المستندة إلى مصادر
عمليات التعداد | |
---|---|
ANSWER_STYLE_UNSPECIFIED |
نمط إجابة غير محدَّد |
ABSTRACTIVE |
أسلوب موجز ولكن تجريدي |
EXTRACTIVE |
أسلوب موجز ومقتضب للغاية |
VERBOSE |
نمط مطوّل يتضمّن تفاصيل إضافية قد يتم تنسيق الردّ كجملة أو فقرة أو فقرات متعددة أو نقاط تعداد، وما إلى ذلك. |
InputFeedback
تشير إلى الملاحظات المتعلّقة ببيانات الإدخال المستخدَمة للإجابة عن السؤال، بدلاً من الردّ الذي أنشأه النموذج على السؤال.
safetyRatings[]
object (SafetyRating
)
تقييمات لمدى أمان البيانات المدخلة يمكن إضافة تقييم واحد كحدّ أقصى لكل فئة.
blockReason
enum (BlockReason
)
اختيارية: في حال ضبط هذه السمة، تم حظر الإدخال ولم يتم عرض أي نتائج مرشّحة. أعِد صياغة النص.
تمثيل JSON |
---|
{ "safetyRatings": [ { object ( |
BlockReason
تحدّد هذه السمة سبب حظر الإدخال.
عمليات التعداد | |
---|---|
BLOCK_REASON_UNSPECIFIED |
القيمة التلقائية هذه القيمة غير مستخدَمة. |
SAFETY |
تم حظر الإدخال لأسباب تتعلق بالسلامة. افحص safetyRatings لمعرفة فئة الأمان التي حظرته. |
OTHER |
تم حظر الإدخال لأسباب أخرى. |