Batch API معناه إنك تجمع عدد كبير من الطلبات المستقلة وتبعتها كدفعة واحدة، بدل ما تبعت كل request وتستنى الرد لحظيًا. مزود الخدمة يعالجها في الخلفية خلال فترة زمنية محددة، غالبًا ساعات أو حتى 24 ساعة، مقابل سعر أقل من الـAPI العادي. فعند مزود زي OpenAI Batch API بيخلي التكلفة 50% أقل!

تخيّل عندك 50,000 ticket من Jira / Zendesk / Intercom، وعاوز تصنّفهم مثلًا إلى:
Billing, Bug, Feature Request, Account, Technical Support, Refund, Other
بدل ما تبعت كل ticket للـ API وتستنى الرد فورًا، بتجهّزهم كلهم كـ batch job وتبعته مرة واحدة، والنتيجة ترجعلك لاحقًا.
الفكرة ببساطة بدل الشكل ده:
Ticket 1 → API → wait → result
Ticket 2 → API → wait → result
Ticket 3 → API → wait → resultيبقى الشكل كده:
Tickets file:
- Ticket 1
- Ticket 2
- Ticket 3
- ...
- Ticket 50,000
↓
Batch API
↓
Results file لاحقًافي المثال اللي ذكرته، السعر ينزل للنصف من $10 input / $50 output لكل مليون token إلى $5 input / $25 output عند استخدام الـBatch API. طبعًا دا قلل التكلفة ولم تخسر شيئاَ لأن المهمة ممكن تخلص بشكل Asynch.
امتى استخدم الـ Batch API ؟
الـBatch API مناسب للمهام اللي مش محتاجة رد فوري، أي حاجة تقدر تعملها بشكل Asynch زي:
- تلخيص آلاف الملفات
- تصنيف tickets
- تحليل logs علي مدار اليوم
- إنشاء embeddings أو metadata
- مراجعة كمية كبيرة من PRs القديمة
- تشغيل evaluations على prompts وموديلات مختلفة.
لكنه غير مناسب لواجهة chatbot مباشرة أو coding assistant أثناء ما أنت بتكتب كود، لأن المهام دي بطبيعتها Synchronous وبتحتاج رد فوري وتفاعل و مش هينفع تنتظر نتيجة الدفعة بدل الاستجابة اللحظية.
ما الفرق بينه وبين ال Prompt Caching ؟
الاثنين بيوفروا في فاتورة استخدامك لل LLMs ولكن كل واحد ليه دوره وشرحنا ال Prompt Caching في ورقة وقلم من قبل تقدروا تشوفوه من هنا.
نظرة سريعة علي فارق السعر
معظم مزودين ال LLMs الكبار بيتيحوا استخدام الـ Batch API ولكن مش لكل ال Models بفارق سعر يصل ل 50%
- عند OpenAI، يتم دعم Batch API لمعظم الموديلات الحديثة.
- بالنسبة Google Gemini، فGoogle أضافت Batch API مؤخرًا. يدعم أيضًا Context Caching داخل الـBatch نفسه و مناسب للـEvaluation وDataset الكبيرة.
- وبالنسبة ل Anthropic (Claude) فيسمى ب Message Batches API. و بيدعم جميع موديلات Claude تقريبًا.
Discussion