Z.ai: GLM 5.3 (batch)
Z.ai GLM 5.3 je model besedilnega sklepanja za zahtevno programsko inženirstvo, delo v terminalu in agente za dolgotrajne naloge. Podpira proizvajalčevo dokumentirano kontekstno okno 1M žetonov, do 128K izhodnih žetonov, klicanje funkcij ter intenzivnost sklepanja low/high/max, pri čemer je sklepanje ves čas omogočeno.
O modelu
Ta opis zajema zmožnosti modela. Vhodi, izhodi in možnosti, ki so na voljo v Ailoot, so spodaj navedeni za izbrano metodo.
Z.ai GLM 5.3 je obsežen model besedilnega sklepanja, zasnovan za zahtevno programsko inženirstvo in dolgotrajno delo agentov. Proizvajalec navaja, da uporablja isti osnovni model kot GLM 5.2, nove izboljšave pa izhajajo iz naknadnega učenja. Izdaja se osredotoča na boljše programiranje, terminalske operacije in širše naloge z več medsebojno odvisnimi koraki. Sprejema besedilo in ustvarja besedilo, vključno s kodo, razlagami, načrti in zahtevami za klice orodij v aplikaciji, povezani z orodji.
Dokumentirani način sklepanja je vedno omogočen. GLM 5.3 ponuja tri ravni intenzivnosti: low, high in max, pri čemer je max privzet. Proizvajalec priporoča max za zahtevno programiranje; low ponuja manj intenzivno možnost sklepanja za preprostejše korake. Izbrano raven uporabite skupaj z jasnim končnim izdelkom in merili dokončanja. Na primer: »Preglej te datoteke in neuspešne rezultate, izsledi vzrok v prizadetih modulih, predlagaj popravek, ki ohrani javni vmesnik, in razloži, katera preverjanja dokazujejo odpravo regresije.«
Proizvajalec določa kontekstno okno 1M žetonov in največjo dolžino izhoda 128K žetonov. Dolgo gradivo uredite okrog razmerja, ki ga mora model raziskati. Ohranite imena datotek, ustrezne definicije, oznake virov in vrstni red opažanj ter znotraj veljavnega delovnega konteksta pustite prostor za sklepanje in končni odgovor. Veliko okno je uporabno za odvisnosti med moduli ali dolgo zaporedje opažanj agenta; neusmerjenega arhiva nepovezanega gradiva pa ne spremeni v dobro opredeljeno nalogo.
Pri delu z repozitorijem priložite pričakovano vedenje, ustrezno izvorno besedilo, različice odvisnosti in dejanski izpis napake. Zahtevajte, da model pred predlogom popravka opredeli prizadeto vedenje. Pri prestrukturiranju poimenujte vmesnik in invariante, ki morajo ostati nedotaknjeni. Uporaben odgovor vsebuje popravljeno kodo, pojasnilo, zakaj sprememba odpravlja opaženo težavo, in primere, potrebne za preverjanje rezultata. Dejanske rezultate vrnite v delovni postopek, povezan z orodji, da bo naslednji korak temeljil na spremenjenem stanju in ne na prejšnjem predlogu.
Pri izboljševanju zmogljivosti priložite delovno obremenitev, izhodišče in meritve, kot so časi, profili ali zapisi dodeljevanja pomnilnika. Z.ai opisuje učne naloge, ki vključujejo diagnosticiranje ozkih grl, optimizacijo, poskuse in rezultate, ki ohranijo pravilnost. Praktičen zahtevek je: »S tem profilom opredeli najpomembnejše ozko grlo, predlagaj eno merljivo spremembo in razloži, kateri rezultat bi upravičil njeno ohranitev.« Hipotezo o zmogljivosti ločite od zabeleženega izboljšanja. Pri pregledu rezultata ohranite isto delovno obremenitev in ustrezne pogoje.
Izdaja razvija tudi zmožnost analize ranljivosti. Pri obrambnem pregledu izvorne kode priložite ustrezno kodo, predvidene meje zaupanja in pogoje njenega izvajanja. Zahtevajte ugotovitev, ki domnevno težavo poveže s prizadetim vhodom, vedenjem in usmerjenim popravkom. Morebitno slabost ločite od dejansko reproducirane napake in ohranite opažanje, s katerim ste jo potrdili. Poročilo je uporabnejše, če daje prednost konkretnim dokazom in predlaganim popravkom, namesto da vsak sumljiv vzorec obravnava kot potrjeno ranljivost.
Klicanje funkcij omogoča okoliški aplikaciji, da modelu izpostavi zunanje operacije. Opredelite namen, argumente in pričakovani rezultat vsakega orodja, nato pa vrnite dejansko opažanje orodja za naslednji korak. Model lahko sklepa o tem rezultatu in presodi, kako spreminja nalogo. Predlagana dejanja, izvedene operacije in nerešena preverjanja naj ostanejo jasno razločljivi. Proizvajalec dokumentira tudi pretočne odgovore, ki ločeno vračajo delčke sklepanja in odgovora; sestavite dokončan odgovor, preden ga obravnavate kot končno poročilo ali razlago kode.
Lokalna kartica modela navaja konkretno podrobnost nastavitve zgodovine: njena predloga za klepet privzeto ohranja razmišljanje, proizvajalec pa za običajne pogovorne primere priporoča izrecno brisanje starega razmišljanja. Uporabite ustrezno strukturo pogovora za primer uporabe in ohranite dejanske dokončane odgovore ter rezultate orodij, potrebne za nadaljevanje. Nastavitev sklepanja iz GLM 5.2 ali ločenih različic GLM 5.3 Flash ne obravnavajte kot zamenljivih z nastavitvami low/high/max tega modela.
Pri strukturiranih rezultatih določite pričakovana polja, tipe in pravila glede virov. Uporaben izdelek je lahko tabela napak, načrt sprememb ali objekt JSON, ki povzema opažanja. Pred uporabo v aplikaciji preverite strukturo in vrednosti. Končni rezultat naj opredeli odgovor ali popravljeni izdelek, podporne dokaze in preostale predpostavke. Večja intenzivnost sklepanja ne dokazuje, da je bilo orodje izvedeno, da je predlagani popravek prestal preverjanja ali da ima trditev o dejstvih podporo zunaj priloženega gradiva.
Ailoot Ultra · Paketna obdelava POST /v1/batches z-ai/glm-5.3:batch
z-ai/glm-5.3:batchZačetek
Z.ai GLM 5.3 je model besedilnega sklepanja za zahtevno programsko inženirstvo, delo v terminalu in agente za dolgotrajne naloge. Podpira proizvajalčevo dokumentirano kontekstno okno 1M žetonov, do 128K izhodnih žetonov, klicanje funkcij ter intenzivnost sklepanja low/high/max, pri čemer je sklepanje ves čas omogočeno.
- Dovoljeni vhodi
- Besedilo
- Rezultati
- Besedilo
Na voljo v Ailoot · vhodi in metode
Ailoot Ultra · Paketna obdelava POST /v1/batches
- Vhod
text- Izhod
text- Izhodni format
- Neposredno vključeni podatki JSON v results[].response.body
| Polje | Vrsta | Zahteva | Vrednosti in omejitve | Privzeto |
|---|---|---|---|---|
Poljeendpoint | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve /v1/chat/completions | Privzeto— |
Poljemodel | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve z-ai/glm-5.3:batch | Privzeto— |
Poljerequests | Vrstabatch_item[] | ZahtevaObvezno | Vrednosti in omejitve Najmanjše število elementov: 1 | Privzeto— |
Poljerequests[].custom_id | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve | Privzeto— |
Poljerequests[].body.messages | Vrstamessage[] | ZahtevaObvezno | Vrednosti in omejitve | Privzeto— |
Poljecompletion_window | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve 24h | Privzeto— |
Poljeprovider | Vrstaobject|null | ZahtevaIzbirno | Vrednosti in omejitve | Privzeto— |
Poljerequests[].body.model | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve z-ai/glm-5.3:batch, z-ai/glm-5.3 | Privzeto— |
Poljeprovider.only | Vrstastring[] | ZahtevaIzbirno | Vrednosti in omejitve deepinfra/fp4 | Privzeto— |
Poljeprovider.allow_fallbacks | Vrstaboolean|null | ZahtevaIzbirno | Vrednosti in omejitve false, null | Privzeto— |
Parametri in življenjski cikel metode
| Parameter | Specifikacija |
|---|---|
Parametercontent_type | Specifikacijaapplication/json |
Parameterrequired | Specifikacijaendpoint, model, requests |
Parametermaterial_types | Specifikacijatext |
Parameterrepresentation | SpecifikacijaNeposredno vključene zahteve v requests[]; vsak element ima custom_id in body |
Parameterrequest_endpoint_profile | Specifikacija/v1/chat/completions |
Parameterfile_material | SpecifikacijaKlicatelj lahko dejansko datoteko JSONL v kodiranju UTF-8 lokalno prebere v requests[]. Namen nalaganja, input_file_id ali sklic na datoteko se ne uporablja. Če gradivo stranke manjka ali je prazno, se priprava ustavi pred POST. |
Parameterserialization_order | Specifikacijaendpoint, model, provider (če je podan), completion_window (če je podan), requests na koncu |
Parameteroptional_controls | Specifikacijaprovider.only, provider.allow_fallbacks, completion_window |
Parameterschema_scope | SpecifikacijaTelesa besedilnih zahtev Chat Completions v dokumentiranem ovoju za paketno obdelavo, ki zahteve vsebuje neposredno. |
Življenjski cikel: asynchronous
GET /v1/batches/{operation_id} · Dejanski response.id iz izvirnega odgovora na zahtevo za ustvarjanje; isti uporabnik, isti ključ in ista skupina
Cenik
Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.
- Hitri način
- Ni navedeno Ko je izbran hitri način
- Način flex
- Ni navedeno Ko je izbran način flex
- Najvišja raven razmišljanja
- Ni navedeno Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)
- Cene izrecnega predpomnjenja
- Ni omogočeno Ko je zahtevano eksplicitno predpomnjenje
Cene Ailoot
Cene po nastavitvah
Vsak strošek povežite s prikazanimi pogoji. Za vsak nabor alternativnih nastavitev uporabite eno ceno.
| Nastavitev | Cenovna lestvica | Žetonov konteksta več kot | Žetonov konteksta do vključno | Strošek |
|---|---|---|---|---|
| NastavitevOsnovne cene za žetone | Cenovna lestvicaOsnovna cena | Žetonov konteksta več kot— | Žetonov konteksta do vključnoBrez zgornje meje | Strošek Vhod · Vhodni žetoni $0.0009 / 1K žetonov Izhod · Izhodni žetoni $0.004 / 1K žetonov Vhod · Branje predpomnilnika $0.0002 / 1K žetonov Vhod · Zapis v predpomnilnik — / 1K žetonov Vhod · Zapis v predpomnilnik, 1 ura — / 1K žetonov |
| NastavitevRazred 1 glede na dolžino zahteve | Cenovna lestvica— | Žetonov konteksta več kot0 | Žetonov konteksta do vključnoBrez zgornje meje | Strošek Vhod · Vhodni žetoni $0.0009 / 1K žetonov Izhod · Izhodni žetoni $0.004 / 1K žetonov Vhod · Branje predpomnilnika $0.0002 / 1K žetonov Vhod · Zapis v predpomnilnik — / 1K žetonov Vhod · Zapis v predpomnilnik, 1 ura — / 1K žetonov |
Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →
Primeri zahtev
Ailoot Ultra · Paketna obdelava
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.
Prejmi in shrani rezultate
Ailoot Ultra · Paketna obdelava
Neposredno vključeni podatki JSON v results[].response.body
GET /v1/batches/{operation_id}
Preveri stanje opravila
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
Ohrani vse dokončane rezultate
Shranite vsak v celoti vrnjen odgovor, datoteko in del vsebine.
Shranite celoten izvirni JSON s stanjem, vsak rezultat/custom_id in celotno telo odgovora ali napake. Dokončane rezultate iz results[] shranite kot JSONL brez filtriranja.
Če je treba preveriti izvirni odgovor
Shranite izvirni ID operacije. Odgovor 503 result_pending_check vsebuje X-Should-Retry:false; izvirnega paketa z neznanim izidom nikoli ne pošiljajte znova.
Polja odgovora
| Polje | Vrsta |
|---|---|
Poljeresults[].custom_id | Vrstastring |
Poljeresults[].response.body.choices[].message.content | Vrstastring|null |
Poljeresults[].error | Vrstaobject|null |
Poljeusage | Vrstaobject|null |
Poljeid | Vrstastring |
Poljemodel | Vrstastring |
Poljeendpoint | Vrstastring |
Poljestatus | Vrstastring |
Poljerequest_counts | Vrstaobject |
Poljeresults[].id | Vrstastring |
Poljeresults[].response.status_code | Vrstainteger |
Poljeresults[].response.request_id | Vrstastring |
Napake in naslednji koraki
| Odgovor | Pogoj | Naslednji korak |
|---|---|---|
Odgovor400 · invalid_request_error | PogojNeveljaven dokumentirani ovoj z neposredno vključenimi zahtevami, podvojeni ključi, neveljavna identiteta elementa ali neskladje z nastavljenimi zmogljivostmi modela. | Naslednji korakPred vsakim novim pošiljanjem popravite navedena polja. |
Odgovor401 · authentication_error | PogojNeveljaven ključ API. | Naslednji korakUporabite odobreni ključ Ailoot. |
Odgovor403 · permission_error | PogojSkupina za paketno obdelavo ni na voljo. | Naslednji korakPreverite pravice ključa/skupine. |
Odgovor422 · invalid_request_error | PogojPaketna obdelava uporablja obračunavanje iz dobroimetja; ustvarjanje v okviru naročnine se zavrne. | Naslednji korakUporabite odobreno skupino z obračunavanjem iz dobroimetja. |
Odgovor422 · price_unavailable | PogojZa vhodne podatke paketa ni mogoče izračunati predračuna. | Naslednji korakShranite odgovor; uporabite dokumentirani vhod za to družino metod. |
Odgovor402 · billing_error | PogojRezervacija sredstev za paketno obdelavo ni na voljo. | Naslednji korakPred novo zahtevo uredite pogoje za njen sprejem. |
Odgovor503 · price_unavailable | PogojCena metode paketne obdelave oziroma izvorne tarife niso na voljo. | Naslednji korakShranite odgovor; cen ne nadomeščajte z drugimi. |
Odgovor503 · api_error | PogojTočno določena pot do dobavitelja ni na voljo. | Naslednji korakShranite odgovor za odpravo napake v usmerjanju. |
Odgovor503 · result_pending_check | PogojIzvirni rezultat je treba preveriti; X-Should-Retry:false. | Naslednji korakShranite izvirni operation_id/id in preberite njegovo stanje; izvirnega POST nikoli ne ponovite. |
Odgovor404 · not_found | PogojOperacija za preverjanje stanja paketa ne obstaja ali pripada drugi identiteti. | Naslednji korakUporabite natančen izvirni id ter istega uporabnika, isti ključ in isto skupino. |
Druga imena
Druga imena modelov
Ailoot Ultra z-ai/glm-5.3:batch
Druga imena poti metod
Uporabite zgoraj navedene poti metod.
Povezani ID-ji za klic
FAQ · Z.ai: GLM 5.3 (batch)
- Kateri vhodi in rezultati so na voljo?
POST /v1/batches·z-ai/glm-5.3:batch:text→text- Katera polja uporablja zahteva?
POST /v1/batches·z-ai/glm-5.3:batch:endpoint,model,requests,completion_window,provider- Katere omejitve veljajo?
POST /v1/batches·z-ai/glm-5.3:batch:requests.min_items:1