بادئة المحادثة
إكمال البادئة يفرض بداية الإجابة : تكتبون الأحرف الأولى، ويكمل النموذج تمامًا من هناك. إنها الطريقة الأضمن لحذف المقدمات المجاملة وضمان صيغة معينة.
كيف تعمل#
أضيفوا آخر رسالة assistant مُعلَّمة بـ"prefix": true.
لا يبدأ النموذج رسالة جديدة : بل يكمل تلك الرسالة.
reponse = client.chat.completions.create(
model="mina-flash",
messages=[
{"role": "user", "content": "Écris une fonction Python qui inverse une chaîne."},
{"role": "assistant", "content": "```python\n", "prefix": True},
],
stop=["```"],
max_tokens=150,
temperature=0,
)
print(reponse.choices[0].message.content)
# → def inverser_chaine(chaine):
# ...
# (aucune phrase d'introduction, aucune balise à nettoyer)curl https://api.cloudzir.com/v1/chat/completions \
-H "Authorization: Bearer $CLOUDZIR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "mina-flash",
"messages": [
{"role": "user", "content": "Écris une fonction Python qui inverse une chaîne."},
{"role": "assistant", "content": "```python\n", "prefix": true}
],
"stop": ["```"],
"max_tokens": 150,
"temperature": 0
}'تنقل حزمة SDK لـOpenAI الحقول غير المعروفة كما هي : يمر prefix
دون أي تعديل.
القواعد#
- يجب أن تكون الرسالة المُعلَّمة بـ
prefixهي الأخيرة في القائمة وأن تحمل الدورassistant. - بادئة واحدة فقط لكل طلب.
- أرفقوا دائمًا تقريبًا معاملًا
stop: بدونه، قد يغلق النموذج الكتلة ثم يستمر في الثرثرة.
ما فائدتها فعليًا#
| الحاجة | البادئة المفروضة |
|---|---|
| تلقي شيفرة خام | ```python\n + stop: ["```"] |
| فرض JSON | {"؛ انظروا أيضًا إخراج JSON |
| فرض لغة | Réponse en français : |
| استئناف توليد مقطوع | النص المُستلَم بالفعل، للمتابعة من حيث توقف finish_reason: "length" |
| فرض حكم | Décision : |
استئناف إجابة مقطوعة#
def completer(client, messages, deja_recu="", tours=3):
"""Poursuit une réponse coupée par max_tokens, sans la régénérer."""
for _ in range(tours):
suite = list(messages)
if deja_recu:
suite.append({"role": "assistant", "content": deja_recu, "prefix": True})
reponse = client.chat.completions.create(
model="mina-low", messages=suite, max_tokens=2000,
)
choix = reponse.choices[0]
deja_recu += choix.message.content or ""
if choix.finish_reason != "length":
break
return deja_recu
لماذا هذا أكثر موثوقية من تعليمة
«أجب بالشيفرة فقط» هي طلب : قد ينساه النموذج. البادئة قيد : الأحرف الأولى مكتوبة بالفعل، ولا يمكنه حرفيًا أن يبدأ بشكل آخر.
القيود#
- تُحتسَب البادئة ضمن رموز الإدخال : أبقوها قصيرة.
- غير قابلة للجمع مع استدعاء الأدوات في نفس الطلب.
- طلب يُخدَم بمحرك محدد : إن كان غير متاح، يفشل الطلب بالرمز
503بدل التحويل بصمت إلى محرك قد يتجاهل البادئة؛ لن تتلقوا أبدًا إجابة تجاهلتها بهدوء.