Chat Completions
استخدم CometAPI POST /v1/chat/completions لإرسال محادثات متعددة الرسائل والحصول على ردود LLM مع عناصر تحكم في Streaming وtemperature وmax_tokens.
model؛ وتعمل معظم حِزم SDK المتوافقة مع OpenAI عند ضبط base_url على https://api.cometapi.com/v1.
أدوار الرسائل
| Role | Description |
|---|---|
system | يحدد سلوك المساعد وشخصيته. يوضع في بداية المحادثة. |
developer | يحل محل system في النماذج الأحدث (o1+). يوفّر تعليمات يجب على النموذج اتباعها بغض النظر عن إدخال المستخدم. |
user | رسائل من المستخدم النهائي. |
assistant | استجابات النموذج السابقة، وتُستخدم للحفاظ على سجل المحادثة. |
tool | نتائج استدعاءات الأداة/الدالة. يجب أن تتضمن tool_call_id يطابق استدعاء الأداة الأصلي. |
إرسال إدخال Multimodal
تدعم العديد من النماذج الصور والصوت إلى جانب النص. لإرسال رسائل متعددة الوسائط، استخدم صيغة المصفوفة لـcontent:
detail في عمق تحليل الصورة:
low— أسرع، ويستخدم Tokens أقل (بتكلفة ثابتة)high— تحليل مفصل، مع استهلاك عدد أكبر من Tokensauto— يقرر النموذج ذلك (الافتراضي)
بث الاستجابات
لتلقي المخرجات بشكل تدريجي، اضبطstream على true. يتم تسليم الاستجابة على هيئة Server-Sent Events (SSE)، حيث يحتوي كل حدث على كائن chat.completion.chunk:
طلب مخرجات منظَّمة
لفرض أن يعيد model قيمة JSON صالحة تطابق مخططًا محددًا، استخدمresponse_format:
json_schema) أن يطابق الناتج المخطط الخاص بك تمامًا. أما وضع JSON Object (json_object) فيضمن فقط أن يكون JSON صالحًا — ولا يتم فرض البنية.استدعاء الأدوات والوظائف
لتمكين model من استدعاء وظائف خارجية، قدّم تعريفات الأدوات:finish_reason: "tool_calls" وسيحتوي المصفوفة message.tool_calls على اسم الوظيفة والوسائط. بعد ذلك تنفّذ الوظيفة وترسل النتيجة مرة أخرى كرسالة tool مع tool_call_id المطابق.
ملاحظات عبر المزوّدين
دعم المعلمات عبر المزوّدين
دعم المعلمات عبر المزوّدين
| المعلمة | OpenAI GPT | Claude (via compat) | Gemini (via compat) |
|---|---|---|---|
temperature | 0–2 | 0–1 | 0–2 |
top_p | 0–1 | 0–1 | 0–1 |
n | 1–128 | 1 فقط | 1–8 |
stop | حتى 4 | حتى 4 | حتى 5 |
tools | ✅ | ✅ | ✅ |
response_format | ✅ | ✅ (json_schema) | ✅ |
logprobs | ✅ | ❌ | ❌ |
reasoning_effort | o-series, GPT-5.1+ | ❌ | ❌ (استخدم thinking لـ Gemini native) |
max_tokens مقابل max_completion_tokens
max_tokens مقابل max_completion_tokens
max_tokens— المعلمة القديمة. تعمل مع معظم النماذج لكنها مهملة للنماذج الأحدث من OpenAI.max_completion_tokens— المعلمة الموصى بها لنماذج GPT-4.1 وGPT-5 series وo-series. وهي مطلوبة لنماذج reasoning لأنها تشمل كلًا من output tokens وreasoning tokens.
دور system مقابل developer
دور system مقابل developer
system— دور التعليمات التقليدي. يعمل مع جميع النماذج.developer— تم تقديمه مع نماذج o1. ويوفّر التزامًا أقوى بالتعليمات للنماذج الأحدث. ويعود إلى سلوكsystemفي النماذج الأقدم.
developer للمشاريع الجديدة التي تستهدف نماذج GPT-4.1+ أو o-series.الأسئلة الشائعة
كيف تتعامل مع حدود المعدّل؟
عند مواجهة429 Too Many Requests، طبّق التراجع الأسي:
كيف تحافظ على سياق المحادثة؟
ضمّن سجل المحادثة الكامل في المصفوفةmessages:
ماذا يعني finish_reason؟
| القيمة | المعنى |
|---|---|
stop | اكتمال طبيعي أو الوصول إلى تسلسل إيقاف. |
length | الوصول إلى حد max_tokens أو max_completion_tokens. |
tool_calls | استدعى النموذج أداة واحدة أو أكثر/استدعاءات دوال. |
content_filter | جرى تصفية المخرجات بسبب سياسة المحتوى. |
كيف تتحكم في التكاليف؟
- استخدم
max_completion_tokensلتحديد الحد الأقصى لطول المخرجات. - اختر نماذج منخفضة التكلفة (مثل
gpt-5.4أوgpt-5.4-nanoللمهام الأبسط). - اجعل Prompts موجزة — وتجنب السياق غير الضروري.
- راقب استخدام Token في حقل الاستجابة
usage.
التفويضات
Bearer token authentication. Use your CometAPI key.
الجسم
Model ID to use for this request. See the Models page for current options.
"gpt-4.1"
A list of messages forming the conversation. Each message has a role (system, user, assistant, or developer) and content (text string or multimodal content array).
If true, partial response tokens are delivered incrementally via server-sent events (SSE). The stream ends with a data: [DONE] message.
Sampling temperature between 0 and 2. Higher values (e.g., 0.8) produce more random output; lower values (e.g., 0.2) make output more focused and deterministic. Recommended to adjust this or top_p, but not both.
0 <= x <= 2Nucleus sampling parameter. The model considers only the tokens whose cumulative probability reaches top_p. For example, 0.1 means only the top 10% probability tokens are considered. Recommended to adjust this or temperature, but not both.
0 <= x <= 1Number of completion choices to generate for each input message. Defaults to 1.
Up to 4 sequences where the API will stop generating further tokens. Can be a string or an array of strings.
Maximum number of tokens to generate in the completion. The total of input + output tokens is capped by the model's context length.
Number between -2.0 and 2.0. Positive values penalize tokens based on whether they have already appeared, encouraging the model to explore new topics.
-2 <= x <= 2Number between -2.0 and 2.0. Positive values penalize tokens proportionally to how often they have appeared, reducing verbatim repetition.
-2 <= x <= 2A JSON object mapping token IDs to bias values from -100 to 100. The bias is added to the model's logits before sampling. Values between -1 and 1 subtly adjust likelihood; -100 or 100 effectively ban or force selection of a token.
A unique identifier for your end-user. Helps with abuse detection and monitoring.
An upper bound for the number of tokens to generate, including visible output tokens and reasoning tokens. Use this instead of max_tokens for GPT-4.1+, GPT-5 series, and o-series models.
Specifies the output format. Use {"type": "json_object"} for JSON mode, or {"type": "json_schema", "json_schema": {...}} for strict structured output.
A list of tools the model may call. Currently supports function type tools.
Controls how the model selects tools. auto (default): model decides. none: no tools. required: must call a tool.
Whether to return log probabilities of the output tokens.
Number of most likely tokens to return at each position (0-20). Requires logprobs to be true.
0 <= x <= 20Controls the reasoning effort for o-series and GPT-5.1+ models.
low, medium, high Options for streaming. Only valid when stream is true.
Specifies the processing tier.
auto, default, flex, priority الاستجابة
Successful chat completion response.
Unique completion identifier.
"chatcmpl-abc123"
chat.completion "chat.completion"
Unix timestamp of creation.
1774412483
The model used (may include version suffix).
"gpt-5.4-2025-07-16"
Array of completion choices.
"default"
"fp_490a4ad033"