إكمال FIM

إكمال FIM (Fill In the Middle) يملأ فراغًا بين بادئة ولاحقة من الشيفرة. إنها الآلية الكامنة خلف الإكمال التلقائي في محرر ما : تعطون ما قبل المؤشر وما بعده، ويكتب النموذج الناقص.

نقطة النهاية#

POST https://api.cloudzir.com/v1/completions

curl https://api.cloudzir.com/v1/completions \
  -H "Authorization: Bearer $CLOUDZIR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "mina-flash",
    "prompt": "def moyenne(valeurs):\n    if not valeurs:\n        return 0.0\n",
    "suffix": "\n\nprint(moyenne([1, 2, 3]))",
    "max_tokens": 80,
    "temperature": 0
  }'

الاستجابة#

{
  "id": "cmpl-4334a6f158894999",
  "object": "text_completion",
  "created": 1766400000,
  "model": "mina-flash",
  "choices": [{
    "index": 0,
    "text": "    return sum(valeurs) / len(valeurs)",
    "logprobs": null,
    "finish_reason": "stop"
  }],
  "usage": {"prompt_tokens": 36, "completion_tokens": 13, "total_tokens": 49}
}

يحتوي حقل text على الجزء الناقص فقط : لا البادئة، ولا اللاحقة. تعيدون بناء الملف بـprompt + text + suffix.

المعاملات#

الحقلالوصف
model إلزاميmina-flash أو mina-low أو mina-full.
prompt إلزاميالشيفرة قبل المؤشر.
suffixالشيفرة بعد المؤشر. بدونها، إنه مجرد إكمال نهاية بسيط.
max_tokensافتراضيًا 256. محدود بسقف النموذج.
temperature، top_pللشيفرة، ابقوا منخفضين (0 إلى 0,2).
stop4 سلاسل كحد أقصى.
userمعرّف مستخدمكم النهائي (عزل الحدود).
لا بث مباشر هنا

"stream": true يُعيد 400 على نقطة النهاية هذه. إكمال المحرر قصير : يصل دفعة واحدة. للبث المباشر، استخدموا /v1/chat/completions.

ربط محرر#

أي إضافة تتحدث «OpenAI completions» تعمل : وجّهوها نحو https://api.cloudzir.com/v1 بالنموذج mina-flash.

اختيار النموذج

للإكمال التلقائي، لا يهم سوى زمن الاستجابة : اختاروا mina-flash، مع max_tokens ضيّق (64 إلى 128) ودرجة حرارة 0. إكمال يصل بعد ثانية لم يعد يُستخدَم من طرف المطور.

التحكم في التكلفة#

  • لا تنقلوا الملف كاملًا : 30 إلى 60 سطرًا قبل المؤشر و10 إلى 20 بعده تكفي غالبًا.
  • أطلقوا الإكمال عند توقف الكتابة (150 إلى 300 مللي ثانية)، لا عند كل حرف.
  • ألغوا الطلب الجاري حين يواصل المستخدم الكتابة.

القيود#

  • prompt + suffix: 200 000 حرف إجمالًا.
  • لا بث مباشر، لا استدعاء أدوات، لا صور على نقطة النهاية هذه.
  • n > 1 غير مدعوم : إكمال واحد فقط لكل طلب.

الإعدادات

استجابة API