OpenAI: GPT-4.1 Nano (batch)
A GPT-4.1 Nano a GPT-4.1 család kompakt, gyorsan reagáló tagja szigorúan meghatározott szöveges és képi feladatokhoz. Nagy kontextusa, Structured Outputs támogatása és függvényhívása osztályozást, adatkinyerést és célzott alkalmazási lépéseket segít.
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 Nano az OpenAI GPT-4.1 családjának leggyorsabb tagja, külön következtetési lépés nélküli utasításkövetésre és eszközhívásra tervezve. Szöveget és képeket fogad, és szöveget állít elő. A Nano jól meghatározott művelethez alkalmas, amelyben az alkalmazás tömör választ, mezők halmazát vagy a következő eszközkérést igényli, nem terjedelmes vizsgálatot.
Hasznos példa lehet beérkező üzenetek besorolása megadott kategóriák szerint. Magyarázza el a kategóriákat, mutassa meg a kétértelmű vagy a feladatkörön kívüli üzenetek megjelenítését, és kérje a kategóriát az azt alátámasztó forráskifejezéssel együtt. Adatkinyeréshez határozza meg a mezőneveket, az engedélyezett értékeket és a hiányzó információ kezelését. Rövid szövegírási feladathoz adja meg a tényeket, és kérje az alkalmazás következő szakaszához szükséges konkrét szövegrészt. A példák és korlátok legyenek elég rövidek és körülhatároltak ahhoz, hogy nagy forrásgyűjtemény mellett is egyértelműek maradjanak.
A gyártó 1 047 576 tokenes kontextusablakot, legfeljebb 32 768 tokenes kimenetet és 2024. június 1-jei tudáshatárt sorol fel. Ezek a specifikációk megegyeznek a GPT-4.1 Mini ablakával, miközben megőrzik a Nano különálló modellidentitását és a gyors válaszra összpontosító szerepét. Jelölje meg a dokumentumokat és beszélgetési szakaszokat, csak a művelethez releváns kontextust használja, és hagyjon helyet a teljes válasznak. Lekérdezési eredmények vagy megadott referenciaszöveg a modell tanult tudásánál újabb tényeket is adhatnak.
A Nano streamelést és Structured Outputs támogatást biztosít. A séma szerint korlátozott végső válasz más célt szolgál, mint a függvényhívás: az egyik befejezett eredményt ad az alkalmazásnak, a másik művelet elvégzését kéri tőle. A Structured Outputs a JSON Schema egy részhalmazát támogatja; határozza meg a szükséges tulajdonságokat és az ismeretlen értékek egyértelmű megjelenítését. A visszautasításokat és hiányos válaszokat külön kezelje, a kinyert értékeket pedig a bemenet alapján ellenőrizze, ne azonosítsa az érvényes szerkezetet a helyes következtetéssel.
A dokumentált eszközkészlet függvényhívást, fájlkeresést, kódértelmezést, MCP-kapcsolatokat és külön képgeneráló eszközt tartalmaz. Az alkalmazás megadja az eszközleírásokat és sémákat, végrehajtja az egyedi függvényeket, és visszaadja a tényleges eredményeiket. A 2025. április 14-i Nano modellpillanatképnél az OpenAI kifejezetten a párhuzamos eszközhívások kikapcsolását ajánlja, mert a modell egy fordulóban többször is kérheti ugyanazt az eszközt. Ez a konkrét pillanatkép végrehajtási szempontja, nem indok több javasolt hívás végrehajtott műveletként történő értelmezésére.
A képbemenet vizuális bizonyítékot ad egy szöveges feladathoz, például látható felirat elolvasásához vagy képernyőképen szereplő állapot leírásához. Támogatott PNG, JPEG, WebP vagy nem animált GIF képet használjon, a szöveg maradjon olvasható, és magyarázza el a fontos megfigyelést. A képi útmutató kis vagy elforgatott szövegnél, pontos térbeli összefüggéseknél, objektumszámlálásnál és egyes nem latin írásrendszereknél nehézségeket jelez. Adjon környező kontextust, ha egy kivágás önmagában kétértelművé tenné a feliratot vagy ábrát. A Nano saját válasza szöveg; a képgeneráló eszköz külön képi eredményt ad vissza. Az OpenAI dokumentált képi munkafolyamatában a kérés teljes adatmennyiségének korlátja 512 MB, és egy kérés legfeljebb 1 500 képet tartalmazhat; a képeknek és a szövegnek a modell kontextusába is bele kell férniük.
A gyártó fájlmunkafolyamatában a képeket is értelmező modell a PDF-ekből kinyert szöveget és az oldalak képeit egyaránt megkapja. Más dokumentumformátumok kinyert szöveget adnak, a táblázatok kiegészítő feldolgozása pedig munkalaponként legfeljebb az első 1 000 sort veszi figyelembe. Egy fájlnak 50 MB alatt kell lennie, a kérés teljes fájlkerete pedig 50 MB. A Chat Completions PDF-fájlrészeket támogat, a dokumentált Responses munkafolyamat további fájltípusokat fogad. Nem PDF dokumentumok beágyazott grafikonjai nem kerülnek át képi tartalomként, ezért a PDF-reprezentáció hasznos, ha fontos a vizuális bizonyíték.
Az OpenAI bemeneti gyorsítótárazást dokumentál a Nano modellhez és Predicted Outputs támogatást a GPT-4.1 Nano sorozathoz. A bemeneti gyorsítótárazás a gyártó szolgáltatásában alkalmas bemeneti előtagot használ újra. A Predicted Outputs ezzel szemben nagyrészt ismert kimeneti szöveget ad egy módosításhoz, például dokumentum vagy kódfájl átdolgozásához a változatlan részek megőrzésével. A predikciós út csak szöveges, és többek között kizárja a függvényhívást, a logprobs és max_completion_tokens használatát. A tényleges műveletnek megfelelő utat válassza, és eredményét tartsa az eredeti forráshoz kötve.
A gyártó a Nano megnevezett GPT-4.1 modellpillanatképéhez felügyelt finomhangolást és közvetlen preferenciaoptimalizálást is dokumentál. Tanítópéldák és előnyben részesített, illetve elutasított válaszok ismétlődő feladathoz igazítanak egy modellt; ezek különböznek a szokásos kéréshez megadott kontextustól. Gyakorlati adatkinyerési vagy osztályozási szakasznál világos kategóriákkal, példákkal és egyértelmű végső formátummal kezdjen, majd vizsgálja meg, hogy a visszaadott mezők megőrzik-e a következő szakaszban felhasznált tényeket.
Ailoot Ultra · Kötegelt feldolgozás POST /v1/batches openai/gpt-4.1-nano:batch
openai/gpt-4.1-nano:batchKezdő lépések
A GPT-4.1 Nano a GPT-4.1 család kompakt, gyorsan reagáló tagja szigorúan meghatározott szöveges és képi feladatokhoz. Nagy kontextusa, Structured Outputs támogatása és függvényhívása osztályozást, adatkinyerést és célzott alkalmazási lépéseket segít.
- 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-nano: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-nano:batch, openai/gpt-4.1-nano | 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.0001 / 1K token Kimenet · Kimeneti tokenek $0.0004 / 1K token Bemenet · Gyorsítótár olvasása $0.000025 / 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.0001 / 1K token Kimenet · Kimeneti tokenek $0.0004 / 1K token Bemenet · Gyorsítótár olvasása $0.000025 / 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-nano: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-nano:batch', 'openai/gpt-4.1-nano']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"openai/gpt-4.1-nano: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-nano:batch
Metódusútvonalak álnevei
Használja a fent látható metódusútvonalakat.
Kapcsolódó modellazonosítók
FAQ · OpenAI: GPT-4.1 Nano (batch)
- Milyen bemenetek és eredmények érhetők el?
POST /v1/batches·openai/gpt-4.1-nano:batch:text→text- Mely mezőket használja a kérés?
POST /v1/batches·openai/gpt-4.1-nano:batch:endpoint,model,requests,completion_window,provider- Milyen korlátok érvényesek?
POST /v1/batches·openai/gpt-4.1-nano:batch:requests.min_items:1