دستهای و فایلها
چند درخواست گفتگو در یک فراخوانی
تا ۲۰ درخواست گفتگو را در یک فراخوانی همزمان بفرستید و نتیجهی همه را به ترتیب ورودی در یک پاسخ بگیرید.
/v1/batchاین مسیر برای وقتی است که چند درخواست کوچک و مستقل دارید و نمیخواهید هر کدام را جدا بفرستید. هر عنصر requests همان بدنهی POST /v1/chat/completions است و مثل یک درخواست جداگانه محدودیتها، رزرو اعتبار، مسیریابی و هزینهی خودش را دارد. حداکثر پنج درخواست همزمان اجرا میشود.
پاسخ همیشه ترتیب ورودی را نگه میدارد و شکست یک درخواست بقیه را خراب نمیکند: هر عنصر data یا status: "ok" است یا status: "error". پاسخها هیچوقت استریم نمیشوند و فیلد stream هر عنصر نادیده گرفته و روی false گذاشته میشود.
این مسیر با /v1/batches فرق دارد: اینجا منتظر میمانید و همهی پاسخها در همین فراخوانی میآید. برای حجم بزرگ و کار غیرهمزمان به ساخت کار دستهای بروید.
نمونهها
curl https://1ai.ir/v1/batch \
-H "Authorization: Bearer $ONEAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"requests": [
{
"model": "openai/gpt-5.4-mini",
"max_tokens": 20,
"messages": [
{
"role": "user",
"content": "Is this review positive or negative? \"Arrived quickly, works great.\""
}
]
},
{
"model": "openai/gpt-5.4-mini",
"max_tokens": 20,
"messages": [
{
"role": "user",
"content": "Is this review positive or negative? \"The box was crushed.\""
}
]
}
]
}'{
"object": "batch",
"data": [
{
"status": "ok",
"request_id": "6f1d1c52-2a0e-4c3a-9a6e-0d2f6b7c9e11",
"credits": 0.02,
"response": {
"id": "chatcmpl-6f1d1c52",
"object": "chat.completion",
"created": 1793000000,
"model": "openai/gpt-5.4-mini",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Positive."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 24,
"completion_tokens": 2,
"total_tokens": 26
}
}
},
{
"status": "ok",
"request_id": "b0c4a9d7-5e1f-4d8b-8c53-7a9e2f4d6b20",
"credits": 0.02,
"response": {
"id": "chatcmpl-b0c4a9d7",
"object": "chat.completion",
"created": 1793000001,
"model": "openai/gpt-5.4-mini",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Negative."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 20,
"completion_tokens": 2,
"total_tokens": 22
}
}
}
]
}بدنهی درخواست
requestsobject[]الزامیفهرست درخواستهای گفتگو، از ۱ تا ۲۰ عنصر. هر عنصر بدنهی کامل یک درخواست
/v1/chat/completionsاست، از جملهmodelوmessages.
خطاها
batch_too_large400بیش از ۲۰ درخواست فرستادهاید.
invalid_request400requestsخالی است یا آرایه نیست. خطای هر درخواست جداگانه در عنصر خودش میآید، نه به صورت خطای کل فراخوانی.invalid_api_key401کلید API نادرست یا غیرفعال است.
صفحههای مرتبط
- تکمیل گفتگوپاسخ یک مدل گفتگو را به قالب OpenAI میگیرید: متن ساده، استریم، فراخوانی ابزار و ورودی تصویر، با همان SDK رسمی OpenAI.
- ساخت کار دستهایفایل JSONL بارگذاریشده را به صورت یک کار غیرهمزمان اجرا کنید. اعتبار بدترین حالت همهی سطرها همینجا رزرو میشود.
- خطاهاقالب دقیق خطا در /v1، فهرست وضعیتها و کدها و اینکه کدام خطا را باید دوباره فرستاد.