Claude Message Batches
Használjon Anthropic-kompatibilis üzenetkötegeket, miközben a Model Gate minden elemet végrehajt a tartós belső soron keresztül.
Claude Message Batches
A meglévő kötegelt olvasási/vezérlési műveletek nulla egyenleg mellett elérhetők maradnak az egyébként érvényes aktív hitelesítő adatokhoz, de POST /v1/messages/batches új pozitív egyenleg/ráfordítás felvételt igényel, mielőtt bármilyen feladat/elem sor kerülne tárolásra. A nulla egyenlegkulcs ezért nem hozhat létre új Claude köteget, és nem fogyaszthat MariaDB megőrzési tárhelyet. A tényleges tételek újraellenőrzik a belépést, amikor a dolgozók igénylik őket, és a tartós sorban állnak, ha a pénzeszközök később kimerülnek. A bemenetet növekményesen, tételenként dekódolja a rendszer, nem pedig teljes, 256 MB-os, memórián belüli JSON-dokumentumként tölti be, és a felhasználónkénti aktív feladat/sorba állított tételkvóták a számlázástól függetlenül korlátozzák a tárolási visszaéléseket.
A Model Gate egy Anthropic-kompatibilis Message Batches API-t valósít meg https://api.model-gate.com. Ez egy kompatibilitási réteg: a Model Gate tartósan tárolja a köteget, és minden elemet a normál Model Gate-en keresztül hajt végre. /v1/messages útvonal. It does nem küldjön be egy szolgáltató natív Anthropic köteget upstream.
Használjon normál Model API kulcsot (mg_live_...). Minden tétel egyedi kérésként kerül elszámolásra request_mode=batch, batch_protocol=claude, a kötegazonosító és annak custom_id.
A streamelés nem támogatott kötegen belül. A modellálnevek az elem sorba állítása előtt feloldódnak.
Hozzon létre egy üzenetköteget
Kér
curl https://api.model-gate.com/v1/messages/batches \
-H "x-api-key: mg_live_..." \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{
"requests": [
{
"custom_id": "summary-1",
"params": {
"model": "ch-47",
"max_tokens": 256,
"messages": [{"role":"user","content":"Summarize this text."}]
}
}
]
}'
Válasz: 200
{
"id": "msgbatch_01K...",
"type": "message_batch",
"processing_status": "in_progress",
"request_counts": {
"processing": 1,
"succeeded": 0,
"errored": 0,
"canceled": 0,
"expired": 0
},
"ended_at": null,
"created_at": "2026-08-13T08:30:00Z",
"expires_at": "2026-08-14T08:30:00Z",
"cancel_initiated_at": null,
"results_url": null
}
Tölts le egy köteget
Kér
curl https://api.model-gate.com/v1/messages/batches/msgbatch_01K... \
-H "x-api-key: mg_live_..."
Válasz – véget ért
{
"id": "msgbatch_01K...",
"type": "message_batch",
"processing_status": "ended",
"request_counts": {
"processing": 0,
"succeeded": 1,
"errored": 0,
"canceled": 0,
"expired": 0
},
"ended_at": "2026-08-13T08:30:04Z",
"results_url": "https://api.model-gate.com/v1/messages/batches/msgbatch_01K.../results"
}
Olvassa el az eredményeket
Az eredmények JSON-sorokként jelennek meg. Ne feltételezze, hogy az alkalmazás logikája az eredeti beviteli sorrendtől függ; mérkőzés eredményei által custom_id.
Kér
curl https://api.model-gate.com/v1/messages/batches/msgbatch_01K.../results \
-H "x-api-key: mg_live_..."
Válasz: 200
{"custom_id":"summary-1","result":{"type":"succeeded","message":{"id":"msg_...","type":"message","role":"assistant","content":[{"type":"text","text":"..."}]}}}
Sorolja fel a tételeket
limit alapértelmezés szerint 20 és innen kell származnia 1 hogy 100. Használat after_id vagy before_id kurzor oldalszámozáshoz; ne küldje el mindkettőt egy kérésben.
Kér
curl "https://api.model-gate.com/v1/messages/batches?limit=20&after_id=msgbatch_01K..." \
-H "x-api-key: mg_live_..."
Válasz: 200
{
"data": [],
"has_more": false,
"first_id": null,
"last_id": null
}
Köteg törlése
A Mégse funkció leállítja a sorba állított tételek igénylését. Előfordulhat, hogy a már feldolgozott tétel befejeződik.
Kér
curl -X POST https://api.model-gate.com/v1/messages/batches/msgbatch_01K.../cancel \
-H "x-api-key: mg_live_..."
Válasz: 200
{
"id": "msgbatch_01K...",
"type": "message_batch",
"processing_status": "canceling",
"request_counts": {
"processing": 1,
"succeeded": 0,
"errored": 0,
"canceled": 0,
"expired": 0
}
}
Egy befejezett köteg törlése
A törlés csak akkor fogadható el, ha a köteg elérte a terminál állapotát.
Kér
curl -X DELETE https://api.model-gate.com/v1/messages/batches/msgbatch_01K... \
-H "x-api-key: mg_live_..."
Válasz: 200
{
"id": "msgbatch_01K...",
"type": "message_batch_deleted"
}
Helyreállítási szemantika
A kötegelt tételek ugyanazt a tartós sort használják, mint a natív aszinkron kérések. A helyreállítás az legalább egyszer, nem pontosan egyszer: a munkavállaló összeomlása után a felhagyott bérleti szerződés visszaigényelhető, és egy tétel újra felfelé küldhető, ha az első upstream választ nem tárolták tartósan. A Model Gate kérésazonosítója stabil marad az újrapróbálkozások során, és az elszámolási őrök megakadályozzák a második számlaterhelést egy már befejezett kérés esetén.
Minden tételt közvetlenül azelőtt fogadnak be, hogy a munkavállaló igényt tartana rá. Az egyébként érvényes tételek sorban maradnak, amíg a folyószámla egyenlege nem pozitív, vagy a kulcs/csoport visszaállítható költési limit már kimerült; A pénzeszközökre való várakozás nem veszi fel a kísérletet, és nem jelöli meg a tételt sikertelennek. A későbbi feltöltés, a használat alaphelyzetbe állítása vagy a korlát növelése automatikusan visszaállítja a megfelelő sorba állított tételeket. A Model Gate nem tart fenn a legrosszabb eseti kötegköltséget, így az egyidejűleg elfogadott tételek negatív végső egyenleggel vagy kis költési korlát túllépéssel végződhetnek; csak a későbbi új tételek kerülnek tárolásra.
Árképzés és könyvelés
Minden kötegelem ugyanazt a modell-útválasztást, token-elszámolást, árképzési pillanatképet, használati értékelést, API-kulcs-/csoportkorlátokat és elszámolási logikát használja, mint egy normál Model Gate-kérelem. A rendszergazda konfigurálhatja a Batch kérés ár együttható a számla árképzési sablonján. Az alapértelmezett 1.
Például normál Model Gate költséggel 0.02 és tételi együttható 0.5, a számla tényleges terhelése 0.01. A mentett hivatalos szolgáltató referenciaösszeget nem szorozzák meg ezzel a Model Gate kötegegyütthatóval. Natív kérések használatával "async": true szintén nem érintik.
Ha az együttható eltér a 1, ez látható a Modellárak oldalon és a /v1/models mint batch_pricing plusz a hatékony batch_cost árfolyamok.
Hibák
Érvénytelen vagy ismétlődő custom_id, ismeretlen modell, stream:true, beágyazott async:true, egy túlméretezett kérés vagy egy érvénytelen törzs normál antropikus stílusú hibaválaszt ad vissza.
{
"type": "error",
"error": {
"type": "invalid_request_error",
"message": "summary-1: stream=true is not supported inside a batch"
}
}