دسته‌ای و فایل‌ها

چند درخواست گفتگو در یک فراخوانی

تا ۲۰ درخواست گفتگو را در یک فراخوانی همزمان بفرستید و نتیجه‌ی همه را به ترتیب ورودی در یک پاسخ بگیرید.

POST/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.\""
        }
      ]
    }
  ]
}'
200پاسخ
{
  "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_request400

    requests خالی است یا آرایه نیست. خطای هر درخواست جداگانه در عنصر خودش می‌آید، نه به صورت خطای کل فراخوانی.

  • invalid_api_key401

    کلید API نادرست یا غیرفعال است.

صفحه‌های مرتبط