Z.ai: GLM 5.3 (batch)
Z.ai GLM 5.3 er en tekstræsonneringsmodel til kompleks softwareudvikling, terminalarbejde og agenter med lange opgaveforløb. Den understøtter en producentdokumenteret kontekst på 1M tokens, op til 128K outputtokens, funktionskald og indsatsniveauerne low/high/max, med ræsonnering aktiveret gennem hele forløbet.
Om modellen
Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.
Z.ai GLM 5.3 er en stor tekstræsonneringsmodel designet til kompleks softwareudvikling og agentarbejde med lange opgaveforløb. Producenten angiver, at den bruger samme basismodel som GLM 5.2, og at de nye forbedringer stammer fra eftertræning. Udgivelsen fokuserer på stærkere programmering, terminalhandlinger og bredere opgaver med flere indbyrdes afhængige trin. Den modtager tekst og producerer tekst, herunder kode, forklaringer, planer og anmodninger om værktøjskald i en applikation med tilsluttede værktøjer.
Den dokumenterede ræsonneringstilstand er altid aktiveret. GLM 5.3 tilbyder tre indsatsniveauer: low, high og max, med max som standard. Producenten anbefaler max til komplekst programmeringsarbejde; low giver en lettere ræsonneringsmulighed til enklere trin. Brug det valgte niveau sammen med et tydeligt slutprodukt og afslutningskriterier. Eksempelvis: “Undersøg disse filer og fejlresultater, spor årsagen på tværs af de berørte moduler, foreslå en rettelse, der bevarer den offentlige grænseflade, og forklar, hvilke kontroller der fastslår, at regressionen er løst.”
Producenten angiver et kontekstvindue på 1M tokens og en maksimal outputlængde på 128K tokens. Organiser langt materiale omkring den sammenhæng, modellen skal undersøge. Bevar filnavne, relevante definitioner, kildebetegnelser og rækkefølgen af observationer, og afsæt plads til ræsonneringen og det endelige svar inden for den gældende arbejdskontekst. Et stort vindue er nyttigt til afhængigheder på tværs af moduler eller en lang række agentobservationer; det gør ikke et uordnet arkiv af uvedkommende materiale til en veldefineret opgave.
Ved arbejde i et kodelager skal du levere den forventede adfærd, relevant kildetekst, afhængighedsversioner og det faktiske fejloutput. Bed modellen identificere den berørte adfærd, før den foreslår en rettelse. Ved en refaktorering skal du navngive den grænseflade og de invarianter, der skal bevares. Et nyttigt svar indeholder den reviderede kode, en forklaring på, hvorfor ændringen løser det observerede problem, og de testtilfælde, der er nødvendige for at kontrollere resultatet. Før faktiske resultater tilbage i en arbejdsgang med tilsluttede værktøjer, så næste trin bygger på den ændrede tilstand frem for det tidligere forslag.
Ved ydelsesarbejde skal du levere en arbejdsbelastning, en baseline og målinger såsom tidsmålinger, profiler eller allokeringsregistreringer. Z.ai beskriver træningsopgaver med diagnosticering af flaskehalse, optimering, eksperimenter og resultater, der bevarer korrekthed. En praktisk anmodning er: “Brug denne profil til at identificere den mest betydningsfulde flaskehals, foreslå én målbar ændring, og forklar, hvilket resultat der ville begrunde at beholde den.” Skeln mellem en hypotese om ydelse og en registreret forbedring. Bevar samme arbejdsbelastning og relevante betingelser, når et resultat undersøges.
Udgivelsen udvikler også evnen til sårbarhedsanalyse. Ved defensiv kildekodegennemgang skal du levere den relevante kode, dens tilsigtede tillidsgrænser og de betingelser, den kører under. Bed om et fund, der forbinder et mistænkt problem med det berørte input, den berørte adfærd og en målrettet afhjælpning. Adskil en potentiel svaghed fra en reproduceret fejl, og bevar den observation, der blev brugt til at validere den. En rapport er mere nyttig, når den prioriterer konkret evidens og foreslåede rettelser frem for at behandle hvert mistænkeligt mønster som en bekræftet sårbarhed.
Funktionskald lader en omgivende applikation stille eksterne handlinger til rådighed for modellen. Definer hvert værktøjs formål, argumenter og forventede resultat, og returner derefter den faktiske værktøjsobservation til næste trin. Modellen kan ræsonnere over dette resultat og afgøre, hvordan det ændrer opgaven. Hold foreslåede handlinger, udførte handlinger og uafklarede kontroller adskilte. Producenten dokumenterer også streamingsvar, som returnerer ræsonnerings- og svarfragmenter hver for sig; saml det færdige svar, før det behandles som den endelige rapport eller kodeforklaring.
Det lokale modelkort giver en konkret detalje om historikindstillingen: chatskabelonen bevarer ræsonnering som standard, mens producenten anbefaler udtrykkeligt at rydde gammel ræsonnering ved almindelige chatscenarier. Anvend den passende samtalestruktur til anvendelsen, og bevar de faktiske færdige svar og værktøjsresultater, som fortsættelsen kræver. Behandl ikke ræsonneringsindstillinger fra GLM 5.2 eller de særskilte GLM 5.3 Flash-udgaver som udskiftelige med denne models low/high/max-indstillinger.
Ved strukturerede resultater skal du angive de forventede felter, typer og kilderegler. Et nyttigt produkt kan være en fejltabel, en ændringsplan eller et JSON-objekt, der opsummerer observationer. Valider både strukturen og værdierne, før en applikation bruger dem. Slutresultatet bør identificere svaret eller det reviderede produkt, den underbyggende evidens og de tilbageværende antagelser. Mere ræsonneringsindsats fastslår ikke, at et værktøj kørte, at en foreslået rettelse bestod sine kontroller, eller at en faktuel påstand har støtte ud over det leverede materiale.
Ailoot Ultra · Batch POST /v1/batches z-ai/glm-5.3:batch
z-ai/glm-5.3:batchStart
Z.ai GLM 5.3 er en tekstræsonneringsmodel til kompleks softwareudvikling, terminalarbejde og agenter med lange opgaveforløb. Den understøtter en producentdokumenteret kontekst på 1M tokens, op til 128K outputtokens, funktionskald og indsatsniveauerne low/high/max, med ræsonnering aktiveret gennem hele forløbet.
- Accepterede input
- Tekst
- Resultater
- Tekst
Tilgængelig i Ailoot · input og metoder
Ailoot Ultra · Batch POST /v1/batches
- Inputtyper
text- Outputtyper
text- Outputformat
- JSON direkte i results[].response.body
| Felt | Type | Krav | Værdier og grænser | Standard |
|---|---|---|---|---|
Feltendpoint | Typestring | KravPåkrævet | Værdier og grænser /v1/chat/completions | Standard— |
Feltmodel | Typestring | KravPåkrævet | Værdier og grænser z-ai/glm-5.3:batch | Standard— |
Feltrequests | Typebatch_item[] | KravPåkrævet | Værdier og grænser Minimumsantal elementer: 1 | Standard— |
Feltrequests[].custom_id | Typestring | KravPåkrævet | Værdier og grænser | Standard— |
Feltrequests[].body.messages | Typemessage[] | KravPåkrævet | Værdier og grænser | Standard— |
Feltcompletion_window | Typestring | KravValgfrit | Værdier og grænser 24h | Standard— |
Feltprovider | Typeobject|null | KravValgfrit | Værdier og grænser | Standard— |
Feltrequests[].body.model | Typestring | KravValgfrit | Værdier og grænser z-ai/glm-5.3:batch, z-ai/glm-5.3 | Standard— |
Feltprovider.only | Typestring[] | KravValgfrit | Værdier og grænser deepinfra/fp4 | Standard— |
Feltprovider.allow_fallbacks | Typeboolean|null | KravValgfrit | Værdier og grænser false, null | Standard— |
Metodeparametre og livscyklus
| Parameter | Kontrakt |
|---|---|
Parametercontent_type | Kontraktapplication/json |
Parameterrequired | Kontraktendpoint, model, requests |
Parametermaterial_types | Kontrakttext |
Parameterrepresentation | Kontraktrequests[] direkte i anmodningen; hvert element har custom_id og body |
Parameterrequest_endpoint_profile | Kontrakt/v1/chat/completions |
Parameterfile_material | KontraktDen kaldende part kan læse det faktiske JSONL-indhold i UTF-8 lokalt ind i requests[]. Der angives hverken purpose til upload, input_file_id eller en filreference. Hvis kundematerialet mangler eller er tomt, stoppes forberedelsen før POST. |
Parameterserialization_order | Kontraktendpoint, model, provider (hvis angivet), completion_window (hvis angivet), requests til sidst |
Parameteroptional_controls | Kontraktprovider.only, provider.allow_fallbacks, completion_window |
Parameterschema_scope | KontraktAnmodningsindhold for Chat Completions med tekst i den dokumenterede inline Batch-struktur. |
Livscyklus: asynchronous
GET /v1/batches/{operation_id} · det faktiske response.id fra den oprindelige oprettelse; samme bruger/nøgle/gruppe
Priser
Tarifoplysninger tilføjer ikke anmodningsmuligheder. Understøttede parametre står ved den valgte metode.
- Hurtig tilstand
- Ikke angivet Når hurtig tilstand er valgt
- flex-tilstand
- Ikke angivet Når flex-tilstanden er valgt
- Maksimal ræsonneringsindsats
- Ikke angivet Når default-justeringen anvendes ved maksimal ræsonneringsindsats
- Priser for eksplicit caching
- Ikke aktiveret Når der anmodes om eksplicit caching
Ailoot-takster
Priser efter konfiguration
Knyt hver omkostning til de viste betingelser. Brug én takst for hver gruppe af alternative konfigurationer.
| Konfiguration | Takstplan | Konteksttokens, mere end | Konteksttokens, op til og med | Beløb |
|---|---|---|---|---|
| KonfigurationGrundtakster for tokens | TakstplanGrundtakst | Konteksttokens, mere end— | Konteksttokens, op til og medIngen øvre grænse | Beløb Input · Inputtokens $0.0009 / 1K tokens Output · Outputtokens $0.004 / 1K tokens Input · Cachelæsning $0.0002 / 1K tokens Input · Cacheskrivning — / 1K tokens Input · Cacheskrivning, 1 time — / 1K tokens |
| KonfigurationAnmodningslængde · niveau 1 | Takstplan— | Konteksttokens, mere end0 | Konteksttokens, op til og medIngen øvre grænse | Beløb Input · Inputtokens $0.0009 / 1K tokens Output · Outputtokens $0.004 / 1K tokens Input · Cachelæsning $0.0002 / 1K tokens Input · Cacheskrivning — / 1K tokens Input · Cacheskrivning, 1 time — / 1K tokens |
Ailoot reserverer et estimeret beløb før en anmodning. Efter resultatet afregnes det endelige beløb ud fra det målte forbrug. Ved streaming bruges den endelige forbrugsregistrering til afregningen. Sådan fungerer reservation og afregning →
Eksempelanmodninger
Ailoot Ultra · Batch
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json
from pathlib import Path
body=json.loads('{"endpoint":"/v1/chat/completions","model":"z-ai/glm-5.3:batch","requests":[{"custom_id":"req-0001","body":{"messages":[{"role":"user","content":"Hello!"}],"max_tokens":16}}]}')
Path("batch-request.json").write_text(json.dumps(body,ensure_ascii=False),encoding="utf-8")
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/batches \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @batch-request.json -D batch-response-headers.txt -o batch-create-response.json
import json, os
from pathlib import Path
from urllib.request import Request, urlopen
def prepare_requests(customer_path):
path = Path(customer_path)
if not path.is_file(): raise ValueError("Customer JSONL file is missing")
items = [json.loads(line) for line in path.read_text(encoding="utf-8").splitlines() if line.strip()]
if not items: raise ValueError("Customer JSONL contains no requests")
ids = set()
for item in items:
if set(item) != {"custom_id", "body"}: raise ValueError("Each item needs custom_id and body")
cid = item["custom_id"]
if not isinstance(cid, str) or not cid.strip() or cid in ids: raise ValueError("custom_id must be nonempty and unique")
ids.add(cid)
if not isinstance(item["body"], dict) or not item["body"].get("messages"): raise ValueError("Supply actual text messages")
supplied_model = item["body"].get("model")
if supplied_model is not None and supplied_model not in ['z-ai/glm-5.3:batch', 'z-ai/glm-5.3']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"z-ai/glm-5.3:batch", "requests":items}
if __name__ == "__main__":
material = os.environ.get("AILOOT_BATCH_REQUESTS_JSONL", "")
if not material: raise SystemExit("Set AILOOT_BATCH_REQUESTS_JSONL to your actual customer file")
body = prepare_requests(material)
key = os.environ.get("AILOOT_API_KEY", "")
if not key: raise SystemExit("Set AILOOT_API_KEY")
request = Request("https://api.ailoot.ai/v1/batches", data=json.dumps(body, ensure_ascii=False).encode("utf-8"), headers={"Authorization":"Bearer " + key, "Content-Type":"application/json"}, method="POST")
with urlopen(request) as response:
raw = response.read()
Path("batch-create-response.json").write_bytes(raw)
print(raw.decode("utf-8"))
import json
from pathlib import Path
raw = Path("batch-status-response.json").read_bytes()
response = json.loads(raw)
if response.get("status") != "completed":
raise SystemExit("Keep the original operation; read its status without resubmitting")
results = response.get("results")
if not isinstance(results, list) or not results:
raise SystemExit("Preserve the original response; completed results are missing")
Path("batch-results.jsonl").write_text("".join(json.dumps(item, ensure_ascii=False) + "\n" for item in results), encoding="utf-8")
# Preserve batch-status-response.json with aggregate usage and every result/error.
Hent og gem resultater
Ailoot Ultra · Batch
JSON direkte i results[].response.body
GET /v1/batches/{operation_id}
Kontrollér opgavestatus
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
BATCH_OPERATION_ID="$(python3 - <<'PY_ID'
import json
from pathlib import Path
from urllib.parse import quote
response = json.loads(Path("batch-create-response.json").read_text(encoding="utf-8"))
operation = response.get("id")
if not isinstance(operation, str) or not operation: raise SystemExit("No actual original operation ID; preserve the response and do not resubmit")
print(quote(operation, safe=""))
PY_ID
)"
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/batches/$BATCH_OPERATION_ID" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o batch-status-response.json
Behold alle færdige resultater
Gem hvert fuldstændigt returneret svar, hver fil og hver indholdsdel.
Gem hele den oprindelige status i JSON, hvert resultat/custom_id og det fulde svar- eller fejlindhold. Gem færdige results[] som JSONL uden filtrering.
Hvis det oprindelige svar skal kontrolleres
Gem det oprindelige operations-ID. 503 result_pending_check har X-Should-Retry:false; send aldrig en oprindelig batch igen, hvis dens udfald er ukendt.
Svarfelter
| Felt | Type |
|---|---|
Feltresults[].custom_id | Typestring |
Feltresults[].response.body.choices[].message.content | Typestring|null |
Feltresults[].error | Typeobject|null |
Feltusage | Typeobject|null |
Feltid | Typestring |
Feltmodel | Typestring |
Feltendpoint | Typestring |
Feltstatus | Typestring |
Feltrequest_counts | Typeobject |
Feltresults[].id | Typestring |
Feltresults[].response.status_code | Typeinteger |
Feltresults[].response.request_id | Typestring |
Fejl og næste trin
| Svar | Betingelse | Næste trin |
|---|---|---|
Svar400 · invalid_request_error | BetingelseUgyldig dokumenteret inline-struktur, dublerede nøgler, ugyldig elementidentitet eller konflikt med modellens konfigurerede funktioner. | Næste trinRet de angivne felter, før du sender en ny anmodning. |
Svar401 · authentication_error | BetingelseUgyldig API-nøgle. | Næste trinBrug den godkendte Ailoot-nøgle. |
Svar403 · permission_error | BetingelseBatch-gruppen er ikke tilgængelig. | Næste trinKontrollér nøglens/gruppens adgangsrettigheder. |
Svar422 · invalid_request_error | BetingelseBatch afregnes via saldoen; oprettelse via et abonnement afvises. | Næste trinBrug den godkendte gruppe med saldoafregning. |
Svar422 · price_unavailable | BetingelseDer kan ikke beregnes en pris for Batch-inputtet. | Næste trinGem svaret; brug det dokumenterede input for API-familien. |
Svar402 · billing_error | BetingelseReservationen til Batch er ikke tilgængelig. | Næste trinAfklar adgangen, før du sender en ny anmodning. |
Svar503 · price_unavailable | BetingelsePrisen for Batch-metoden eller de native satser er ikke tilgængelige. | Næste trinGem svaret; erstat ikke priserne med andre priser. |
Svar503 · api_error | BetingelseDen præcise leverandørrute er ikke tilgængelig. | Næste trinGem svaret, så ruten kan repareres. |
Svar503 · result_pending_check | BetingelseDet oprindelige resultat skal kontrolleres; X-Should-Retry:false. | Næste trinGem det oprindelige operation_id/id, og læs dets status; gentag aldrig den oprindelige POST. |
Svar404 · not_found | BetingelseOperationen til Batch-status findes ikke eller tilhører en anden identitet. | Næste trinBrug det nøjagtige oprindelige id og samme bruger/nøgle/gruppe. |
Aliaser
Modelaliaser
Ailoot Ultra z-ai/glm-5.3:batch
Aliaser for metodestier
Brug metodestierne vist ovenfor.
Relaterede kalder-ID’er
FAQ · Z.ai: GLM 5.3 (batch)
- Hvilke input og resultater er tilgængelige?
POST /v1/batches·z-ai/glm-5.3:batch:text→text- Hvilke felter bruger anmodningen?
POST /v1/batches·z-ai/glm-5.3:batch:endpoint,model,requests,completion_window,provider- Hvilke grænser gælder?
POST /v1/batches·z-ai/glm-5.3:batch:requests.min_items:1