Messages (Anthropic)
يولّد رسالة بصيغة Anthropic Messages. نفس المفتاح، نفس المحفظة، نفس الأسعار
مثل واجهة /v1.
المصادقة#
x-api-key: zir_ai_<48 caractères hexadécimaux>
content-type: application/json
Authorization: Bearer … مقبول أيضًا.
المعاملات#
| الحقل | النوع | الوصف |
|---|---|---|
model إلزامي | string | معرّف Mina تعرضه GET /anthropic/v1/models. |
max_tokens إلزامي | integer | إلزامي. محدود بسقف النموذج (8192 / 16384 / 32768). |
messages إلزامي | array | تناوب user / assistant. المحتوى : سلسلة نصية أو كتل. |
max_cost_micro_dzd | integer | سقف إنفاق بالميكرو دينار جزائري، متاح فقط مع mina-auto. يفشل الطلب إذا تجاوزه. |
system | string أو array | تعليمات. سلسلة نصية، أو قائمة كتل text. |
temperature | number | 0 إلى 2. |
top_p | number | ]0, 1]. |
stop_sequences | array | 4 سلاسل كحد أقصى. |
thinking | object | تكون قيمة type هي enabled أو disabled. وعند التفعيل، يحدد budget_tokens مستوى الجهد. |
output_config.effort | string | off أو minimal أو low أو medium أو high أو xhigh أو max. |
stream | boolean | تدفق أحداث SSE مُسمّاة. |
tools | array | name، description، input_schema. |
tool_choice | object | {"type":"auto"} · {"type":"any"} ·
{"type":"tool","name":"…"} · {"type":"none"} |
metadata.user_id | string | عزل حدود المعدل (≤ 512، أبجدي رقمي). |
مدعوم : thinking (enabled/disabled،
يُترجَم budget_tokens إلى مستوى جهد) وoutput_config.effort؛
انظروا وضع التفكير. يعود الاستدلال في كتلة
محتوى thinking، ويشير usage.cache_read_input_tokens إلى
الجزء المخدوم من الذاكرة المؤقتة.
مقبولة ثم مُتجاهَلة : cache_control (تخزين مؤقت تلقائي)،
top_k، anthropic-version، betas،
mcp_servers، container.
كتل image مدعومة (base64 أو رابط)؛ الرؤية.
مرفوضة (400) : كتل document.
نماذج Mina المتاحة#
معرّفات النماذج القابلة للاختيار هي mina-flash وmina-low
وmina-full. تُعيد GET /anthropic/v1/models قائمة النماذج
المفعّلة لمفتاحكم.
الطلب#
curl https://api.cloudzir.com/anthropic/v1/messages \
-H "x-api-key: $CLOUDZIR_API_KEY" \
-H "content-type: application/json" \
-d '{
"model": "mina-full",
"max_tokens": 512,
"system": "Tu es un assistant concis.",
"messages": [{"role": "user", "content": "Cite trois wilayas côtières."}]
}'
الاستجابة#
{
"id": "msg_4334a6f158894999",
"type": "message",
"role": "assistant",
"model": "mina-full",
"content": [{"type": "text", "text": "Alger, Oran et Béjaïa."}],
"stop_reason": "end_turn",
"stop_sequence": null,
"usage": {"input_tokens": 24, "output_tokens": 9}
}
| الحقل | القيم |
|---|---|
content[] | كتل text و/أو tool_use. |
stop_reason |
end_turn · max_tokens · tool_use · stop_sequence (غير مُصدَر اليوم: التوقف عند سلسلة يعود بـend_turn) |
usage | input_tokens، output_tokens. |
استدعاء أداة#
{
"content": [{
"type": "tool_use",
"id": "toolu_a1b2c3",
"name": "stock_produit",
"input": {"reference": "DEMO-001"}
}],
"stop_reason": "tool_use"
}
أجيبوا في الجولة التالية بكتلة tool_result تحمل نفس
tool_use_id.
البث المباشر#
event: message_start
data: {"type":"message_start","message":{"id":"msg_…","type":"message","role":"assistant",
"model":"mina-low","content":[],"stop_reason":null,
"usage":{"input_tokens":0,"output_tokens":0}}}
event: content_block_start
data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""}}
event: content_block_delta
data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"Alger"}}
event: content_block_stop
data: {"type":"content_block_stop","index":0}
event: message_delta
data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},
"usage":{"input_tokens":24,"output_tokens":9}}
event: message_stop
data: {"type":"message_stop"}
تُصدَر أحداث ping أثناء الانتظار. بالنسبة لأداة، تصل المعاملات
في input_json_delta (أجزاء يجب دمجها).
الأخطاء#
{"type":"error","error":{"type":"rate_limit_error","message":"Limite de débit atteinte…"}}
الأنواع : invalid_request_error، authentication_error،
permission_error، not_found_error، rate_limit_error،
api_error، overloaded_error. المطابقة الكاملة مع HTTP :
أكواد الأخطاء.
عرض قائمة النماذج#
curl https://api.cloudzir.com/anthropic/v1/models \
-H "x-api-key: $CLOUDZIR_API_KEY"