OpenAI: GPT-4.1 Mini (batch)
Paketna obdelava neodvisnih besedilnih zahtev s povezovanjem custom_id in izbirnim zaključnim oknom 24h.
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.
openai/gpt-4.1-mini:batch je paketni vnos za neodvisne besedilne naloge. Konkretna uporaba je izluščanje enakega nabora polj iz številnih priloženih podpornih pogovorov z enim rezultatom na pogovor. Pot izberite, kadar poteku ustreza poznejši prevzem namesto sprotnega odgovora pomočnika.
Vgrajeno polje requests oddajte na /v1/batches z endpoint=/v1/chat/completions in enoličnim custom_id za vsak element. Vsak body vsebuje messages; completion_window sprejema 24h. Metoda uporablja obračunavanje iz dobroimetja in zavrne ustvarjanje paketnega opravila z obračunavanjem iz naročnine. Sprejeti paketni vhod je besedilo; ne izpostavlja nalaganja prek Files/input_file_id. Širšega opisa modela Mini ne razumite kot obljubo interaktivne zakasnitve te paketne poti.
Ailoot Ultra · Paketna obdelava POST /v1/batches openai/gpt-4.1-mini:batch
openai/gpt-4.1-mini:batchZačetek
Paketna obdelava neodvisnih besedilnih zahtev s povezovanjem custom_id in izbirnim zaključnim oknom 24h.
- 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 openai/gpt-4.1-mini: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 openai/gpt-4.1-mini:batch, openai/gpt-4.1-mini | Privzeto— |
Poljeprovider.only | Vrstastring[] | ZahtevaIzbirno | Vrednosti in omejitve openai | 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.0004 / 1K žetonov Izhod · Izhodni žetoni $0.0016 / 1K žetonov Vhod · Branje predpomnilnika $0.0001 / 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.0004 / 1K žetonov Izhod · Izhodni žetoni $0.0016 / 1K žetonov Vhod · Branje predpomnilnika $0.0001 / 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":"openai/gpt-4.1-mini: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-mini:batch', 'openai/gpt-4.1-mini']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"openai/gpt-4.1-mini: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 openai/gpt-4.1-mini:batch
Druga imena poti metod
Uporabite zgoraj navedene poti metod.
Povezani ID-ji za klic
FAQ · OpenAI: GPT-4.1 Mini (batch)
- Kateri vhodi in rezultati so na voljo?
POST /v1/batches·openai/gpt-4.1-mini:batch:text→text- Katera polja uporablja zahteva?
POST /v1/batches·openai/gpt-4.1-mini:batch:endpoint,model,requests,completion_window,provider- Katere omejitve veljajo?
POST /v1/batches·openai/gpt-4.1-mini:batch:requests.min_items:1