B2BB2B LLM

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"
  }
}