OpenAI: GPT-4.1 (batch)
Az OpenAI GPT-4.1 külön következtetési lépés nélküli modell pontos utasításkövetéshez, programozáshoz és eszközhíváshoz. Szöveget és képeket fogad, és szöveget ad vissza, nagy kontextusablakkal, Structured Outputs támogatással és a nagyrészt változatlan szöveg vagy kód újragenerálását segítő Predicted Outputs funkcióval.
A modellről
Ez a leírás a modell képességeit ismerteti. Az Ailootban elérhető bemenetek, kimenetek és lehetőségek alább, a kiválasztott metódusnál láthatók.
A GPT-4.1 az OpenAI külön következtetési lépés nélküli modellje utasításkövetéshez és eszközhíváshoz, sok területre kiterjedő tudással. Szöveget és képeket fogad, és külön következtetési szakasz nélkül ad vissza szöveget. Nagy kontextusa akkor hasznos, ha a feladat egyértelműen meghatározott, de a releváns anyag terjedelmes dokumentumokat vagy kódot fog át. Nevezze meg a kívánt műveletet, a rá vonatkozó forrásanyagot és a végső eredmény formáját.
Dokumentumfeldolgozásnál a feladat utasításait címsorokkal vagy más egyértelmű határokkal különítse el az anyagtól. A dokumentumokat jelölje meg, és őrizze meg a válaszban hivatkozandó azonosítókat. Határozza meg az adatkinyerés mezőit, az összehasonlítás szempontjait vagy az átdolgozás célközönségét és terjedelmét. Példakimenet lehet követelménytáblázat a forráshelyekkel, meghatározott kérdések szerint rendezett összefoglaló vagy a hiányzó információt a kifejezett értéktől megkülönböztető strukturált rekord.
Programozáshoz adja meg a releváns fájlokat, a kért változtatást és a változatlanul megőrzendő működést. A ténylegesen szükséges eredményt kérje: átdolgozott függvényt, teljes fájlt, javasolt eszközargumentumokat vagy az érintett logika magyarázatát. Példák pontosíthatnak egy formázási szabályt vagy határesetet, de ugyanazokat a követelményeket kell követniük, mint a valódi feladatnak. Az OpenAI utasításírási útmutatója a közvetlen utasításokat, szerepeket, forráshatárokat és reprezentatív példákat hangsúlyozza, nem azt a feltételezést, hogy egy hosszú utasítás automatikusan pontos.
A GPT-4.1 pontos specifikációja 1 047 576 tokenes kontextusablakot, legfeljebb 32 768 tokenes kimenetet és 2024. június 1-jei tudáshatárt sorol fel. A nagy bemeneti kontextus nem jelent ugyanilyen nagy kimenetet, ezért terjedelmes anyag átdolgozásakor meg kell nevezni a szükséges részt és végső eredményt. Hagyjon elegendő helyet a válasznak, és adjon aktuális információt, ha a feladat a tudáshatár utáni tényektől függ. A GPT-4.1 dokumentált modelltípusa chat; újabb következtetési modellek erőfeszítés-beállításai nem tartoznak ehhez a profilhoz.
Az OpenAI Chat Completions, Responses, Assistants, Batch és finomhangolási felületeket dokumentál a GPT-4.1 modellhez. A felsorolt funkciók streamelést, Structured Outputs támogatást, függvényhívást, fájlfeltöltést, képbemenetet, webes és fájlkeresést, finomhangolást és a bemenet gyorsítótárazását tartalmazzák. Eszközei a keresés és függvények mellett kódértelmezést, képgenerálást és MCP-kapcsolatokat is biztosítanak. A modell saját kimenete szöveg, míg egy eszköz külön eredményt vagy megfigyelést adhat vissza. Határozza meg az alkalmazásbeli művelet célját és argumentumait, és a ténylegesen visszaadott eredményét használja; a modell által generált kérés nem igazolja egy külső művelet befejezését.
Jellegzetes funkció a Predicted Outputs az OpenAI Chat Completions felületén. Ha a kívánt szöveg vagy kód nagy része már ismert, a meglévő tartalom predikcióként megadható, segítve a teljes eredmény kis változtatással történő újragenerálását. Például adjon meg egy jelenlegi fájlt, és kérjen egy szűken meghatározott tulajdonságátnevezést a környező kód megőrzésével. A predikció elvárt kimeneti tartalom, nem utasítás vagy garancia a változatlan részek helyességére. Az újragenerált eredményt vesse össze a kért módosítással és az eredeti anyaggal.
A Predicted Outputs saját kompatibilitási korlátokkal rendelkezik. Az OpenAI csak szöveges használatot dokumentál, hangbemenet, hangkimenet és az adott kérésben függvényhívás nélkül. Nem támogatja a több választási lehetőséget, ha n nagyobb mint 1, a logaritmikus valószínűségeket, a pozitív jelenléti vagy gyakorisági büntetéseket, illetve a max_completion_tokens paramétert. Ezt az újragenerálási munkafolyamatot különítse el az eszközhívásokat igénylő feladattól. A predikciós szöveg a kimenet egyes részeivel egyezhet, és a gyártó elfogadott és elutasított predikciós tokeneket jelent; egy nem megfelelő predikció részben kihasználatlan maradhat, ezért a funkció nem garantál meghatározott gyorsulást vagy eredményt.
Szokásos utasításkövetési feladatnál hasznos GPT-4.1 eredmény lehet meghatározott specifikációt követő dokumentum vagy kód, egyértelmű mezőkből álló adatkinyerés vagy a megadott műveletnek megfelelő argumentumokat tartalmazó eszközkérés. Nagyrészt változatlan fájl kis módosításához a predikciós kimeneti munkafolyamat pontosabb lehetőséget ad az elvárt eredmény előkészítésére. Mindkét esetben őrizze meg a válasz ellenőrzéséhez szükséges forrásanyagot, és tegye egyértelművé a bizonytalanságot. A modell kontextuskapacitása és eszközei támogatják a munkafolyamatot; továbbra is a feladatleírás határozza meg, mit tartalmaz egy teljes, használható válasz.
Ailoot Ultra · Kötegelt feldolgozás POST /v1/batches openai/gpt-4.1:batch
openai/gpt-4.1:batchKezdő lépések
Az OpenAI GPT-4.1 külön következtetési lépés nélküli modell pontos utasításkövetéshez, programozáshoz és eszközhíváshoz. Szöveget és képeket fogad, és szöveget ad vissza, nagy kontextusablakkal, Structured Outputs támogatással és a nagyrészt változatlan szöveg vagy kód újragenerálását segítő Predicted Outputs funkcióval.
- Elfogadott bemenetek
- Szöveg
- Eredmények
- Szöveg
Elérhető az Ailootban · bemenetek és metódusok
Ailoot Ultra · Kötegelt feldolgozás POST /v1/batches
- Bemenet
text- Kimenet
text- Kimeneti formátum
- Beágyazott results[].response.body JSON-adatok
| Mező | Típus | Követelmény | Értékek és korlátok | Alapértelmezett |
|---|---|---|---|---|
Mezőendpoint | Típusstring | KövetelményKötelező | Értékek és korlátok /v1/chat/completions | Alapértelmezett— |
Mezőmodel | Típusstring | KövetelményKötelező | Értékek és korlátok openai/gpt-4.1:batch | Alapértelmezett— |
Mezőrequests | Típusbatch_item[] | KövetelményKötelező | Értékek és korlátok Minimális elemszám: 1 | Alapértelmezett— |
Mezőrequests[].custom_id | Típusstring | KövetelményKötelező | Értékek és korlátok | Alapértelmezett— |
Mezőrequests[].body.messages | Típusmessage[] | KövetelményKötelező | Értékek és korlátok | Alapértelmezett— |
Mezőcompletion_window | Típusstring | KövetelményOpcionális | Értékek és korlátok 24h | Alapértelmezett— |
Mezőprovider | Típusobject|null | KövetelményOpcionális | Értékek és korlátok | Alapértelmezett— |
Mezőrequests[].body.model | Típusstring | KövetelményOpcionális | Értékek és korlátok openai/gpt-4.1:batch, openai/gpt-4.1 | Alapértelmezett— |
Mezőprovider.only | Típusstring[] | KövetelményOpcionális | Értékek és korlátok openai | Alapértelmezett— |
Mezőprovider.allow_fallbacks | Típusboolean|null | KövetelményOpcionális | Értékek és korlátok false, null | Alapértelmezett— |
Metódus paraméterei és életciklusa
| Paraméter | Szerződés |
|---|---|
Paramétercontent_type | Szerződésapplication/json |
Paraméterrequired | Szerződésendpoint, model, requests |
Paramétermaterial_types | Szerződéstext |
Paraméterrepresentation | SzerződésA kérésbe ágyazott requests[]; minden elemhez custom_id és body tartozik |
Paraméterrequest_endpoint_profile | Szerződés/v1/chat/completions |
Paraméterfile_material | SzerződésA hívó helyben beolvashatja a tényleges UTF-8 JSONL-adatokat a requests[] tömbbe. A kérés nem használ feltöltési célt, input_file_id mezőt vagy fájlhivatkozást. Hiányzó vagy üres ügyfélanyag esetén az előkészítés még a POST előtt leáll. |
Paraméterserialization_order | Szerződésendpoint, model, provider (ha meg van adva), completion_window (ha meg van adva), requests utoljára |
Paraméteroptional_controls | Szerződésprovider.only, provider.allow_fallbacks, completion_window |
Paraméterschema_scope | SzerződésText Chat Completions-kéréstörzsek a dokumentált, kérésbe ágyazott Batch-borítékban. |
Életciklus: asynchronous
GET /v1/batches/{operation_id} · Az eredeti létrehozási válasz tényleges response.id értéke; ugyanaz a felhasználó/kulcs/csoport
Díjcsomagok
A díjszabás nem ad új kérési lehetőségeket. A támogatott paraméterek a kiválasztott módszernél szerepelnek.
- Gyors mód
- Nincs megadva Ha a gyors mód van kiválasztva
- Flex mód
- Nincs megadva Ha a flex mód van kiválasztva
- Maximális gondolkodási ráfordítás
- Nincs megadva Ha a maximális gondolkodási ráfordításra a default beállításhoz tartozó korrekció vonatkozik
- Explicit gyorsítótárazás díjai
- Nincs engedélyezve Ha explicit gyorsítótárazást kérnek
Ailoot-díjak
Árak beállításonként
Minden díjat a megjelenített feltételekhez rendeljen. Az alternatív beállítások minden csoportjához egy díjtételt használjon.
| Beállítás | Díjtáblázat | Kontextustokenek, több mint | Kontextustokenek, legfeljebb | Díj |
|---|---|---|---|---|
| BeállításTokenenkénti alapárak | DíjtáblázatAlapdíj | Kontextustokenek, több mint— | Kontextustokenek, legfeljebbNincs felső korlát | Díj Bemenet · Bemeneti tokenek $0.002 / 1K token Kimenet · Kimeneti tokenek $0.008 / 1K token Bemenet · Gyorsítótár olvasása $0.0005 / 1K token Bemenet · Írás a gyorsítótárba — / 1K token Bemenet · Írás a gyorsítótárba, 1 óra — / 1K token |
| BeállításA kéréshossz szerinti 1. ársáv | Díjtáblázat— | Kontextustokenek, több mint0 | Kontextustokenek, legfeljebbNincs felső korlát | Díj Bemenet · Bemeneti tokenek $0.002 / 1K token Kimenet · Kimeneti tokenek $0.008 / 1K token Bemenet · Gyorsítótár olvasása $0.0005 / 1K token Bemenet · Írás a gyorsítótárba — / 1K token Bemenet · Írás a gyorsítótárba, 1 óra — / 1K token |
Az Ailoot a kérés előtt becsült összeget foglal le. Az eredmény után a mért használat alapján elszámolja a végső díjat. Folyamatos átvitel esetén a végső használati rekordot használja. A foglalás és az elszámolás működése →
Példakérések
Ailoot Ultra · Kötegelt feldolgozás
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":"openai/gpt-4.1: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 ['openai/gpt-4.1:batch', 'openai/gpt-4.1']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"openai/gpt-4.1: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.
Eredmények fogadása és mentése
Ailoot Ultra · Kötegelt feldolgozás
Beágyazott results[].response.body JSON-adatok
GET /v1/batches/{operation_id}
Feladatállapot ellenőrzése
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
Őrizzen meg minden elkészült eredményt
Őrizzen meg minden teljes visszaadott választ, fájlt és tartalomrészt.
Őrizze meg a teljes eredeti állapot-JSON-t, minden eredményt/custom_id értéket, valamint a teljes válasz- vagy hibatörzset. A befejezett results[] elemeket szűrés nélkül mentse JSONL-ként.
Ha az eredeti választ ellenőrizni kell
Őrizze meg az eredeti műveletazonosítót. A 503 result_pending_check válasz X-Should-Retry:false fejlécet tartalmaz; soha ne küldje be újra az ismeretlen kimenetelű eredeti köteget.
Válaszmezők
| Mező | Típus |
|---|---|
Mezőresults[].custom_id | Típusstring |
Mezőresults[].response.body.choices[].message.content | Típusstring|null |
Mezőresults[].error | Típusobject|null |
Mezőusage | Típusobject|null |
Mezőid | Típusstring |
Mezőmodel | Típusstring |
Mezőendpoint | Típusstring |
Mezőstatus | Típusstring |
Mezőrequest_counts | Típusobject |
Mezőresults[].id | Típusstring |
Mezőresults[].response.status_code | Típusinteger |
Mezőresults[].response.request_id | Típusstring |
Hibák és következő lépések
| Válasz | Feltétel | Következő lépés |
|---|---|---|
Válasz400 · invalid_request_error | FeltételÉrvénytelen a dokumentált, kérésbe ágyazott boríték, ismétlődő kulcsok vagy az elemek azonosságával kapcsolatos hiba található benne, vagy ütközés van a beállított modellképességekkel. | Következő lépésBármilyen új beküldés előtt javítsa ki a megjelölt mezőket. |
Válasz401 · authentication_error | FeltételÉrvénytelen API-kulcs. | Következő lépésHasználja az engedélyezett Ailoot-kulcsot. |
Válasz403 · permission_error | FeltételA Batch-csoport nem érhető el. | Következő lépésEllenőrizze a kulcs/csoport jogosultságát. |
Válasz422 · invalid_request_error | FeltételA Batch az egyenlegből számol el; az előfizetés terhére indított létrehozási kérés elutasításra kerül. | Következő lépésHasználja az engedélyezett, egyenlegből elszámoló csoportot. |
Válasz422 · price_unavailable | FeltételA Batch-bemenethez nem készíthető árajánlat. | Következő lépésŐrizze meg a választ; használja az API-család dokumentált bemenetét. |
Válasz402 · billing_error | FeltételA Batch költségfedezeti foglalása nem érhető el. | Következő lépésAz új kérés előtt rendezze a befogadási feltételeket. |
Válasz503 · price_unavailable | FeltételA Batch-módszer ára vagy natív díjtételei nem érhetők el. | Következő lépésŐrizze meg a választ; ne helyettesítse az árakat más árakkal. |
Válasz503 · api_error | FeltételA pontos szolgáltatói útvonal nem érhető el. | Következő lépésŐrizze meg a választ az útvonal javításához. |
Válasz503 · result_pending_check | FeltételAz eredeti eredmény ellenőrzést igényel; X-Should-Retry:false. | Következő lépésŐrizze meg az eredeti operation_id/id értéket, és kérdezze le az állapotát; soha ne ismételje meg az eredeti POST kérést. |
Válasz404 · not_found | FeltételA Batch állapotlekérdezési művelete nem létezik, vagy más identitáshoz tartozik. | Következő lépésHasználja az eredeti id pontos értékét és ugyanazt a felhasználót/kulcsot/csoportot. |
Álnevek
Modell álnevei
Ailoot Ultra openai/gpt-4.1:batch
Metódusútvonalak álnevei
Használja a fent látható metódusútvonalakat.
Kapcsolódó modellazonosítók
FAQ · OpenAI: GPT-4.1 (batch)
- Milyen bemenetek és eredmények érhetők el?
POST /v1/batches·openai/gpt-4.1:batch:text→text- Mely mezőket használja a kérés?
POST /v1/batches·openai/gpt-4.1:batch:endpoint,model,requests,completion_window,provider- Milyen korlátok érvényesek?
POST /v1/batches·openai/gpt-4.1:batch:requests.min_items:1