OpenAI: GPT-4o-mini (batch)
GPT-4o Mini håndterer afgrænsede tekst- og billedopgaver, herunder dokumentudtræk, korte svar og værktøjskald i applikationer. Modellens kontekst på 128.000 tokens og Structured Outputs understøtter gentagelige arbejdsgange med et klart defineret resultat.
Om modellen
Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.
GPT-4o Mini er OpenAIs lille model i GPT-4o-familien til afgrænsede opgaver. Den modtager tekst og billeder og producerer tekst, herunder Structured Outputs. Modellen er nyttig, når en applikation har brug for et kort svar på en veldefineret anmodning: udtræk af felter, udarbejdelse af et svar ud fra leveret referencemateriale eller udførelse af et afgrænset trin i en større proces.
Til et supportsvar skal du levere den indgående besked, relevante uddrag af retningslinjer og de fakta, der allerede er fastlagt i samtalen. Bed om et kort svarforslag, og angiv, hvilke oplysninger der stadig mangler fra afsenderen. Til dokumentudtræk skal du definere felterne, forklare håndteringen af manglende værdier og bevare en etiket, der forbinder hvert resultat med dets kilde. Samme fremgangsmåde kan give en klassifikation, en redigeret passage eller en forklaring af en lille kodeændring uden at behandle modellen som en erstatning for applikationens omgivende logik.
Leverandøren angiver et kontekstvindue på 128.000 tokens, et maksimalt output på 16.384 tokens og en vidensgrænse den 1. oktober 2023. Kildemateriale, samtale og genereret output optager tilsammen denne kontekst. Hold væsentlige tidligere fakta synlige, og angiv det ønskede endelige resultat. GPT-4o Mini er en separat lille model, ikke en tilstand til at regulere outputlængden i den fulde GPT-4o; dens egen identitet og funktioner skal styre opgaven, også hvor de to modeller deler specifikationer.
Billeder kan levere et skærmbillede, en dokumentside, et fotografi eller et diagram. OpenAIs arbejdsgang til billedforståelse accepterer PNG, JPEG, WebP og ikke-animerede GIF-filer med detaljeniveauet low, high eller auto for denne familie. Højere detaljeniveau følger leverandørens behandling baseret på billedfliser. Hold vigtige etiketter læsbare og oprette, og forklar, hvilken del af billedet der skal indgå i svaret. Fine rumlige relationer, præcise optællinger af genstande, usædvanlige billedprojektioner og visse ikke-latinske tekster er dokumenterede udfordringer. Et afgrænset spørgsmål gør et visuelt svar lettere at sammenholde med det oprindelige kildemateriale. I OpenAIs dokumenterede arbejdsgang til billedforståelse er den samlede anmodnings nyttelast begrænset til 512 MB, og en anmodning kan indeholde op til 1.500 billeder; billederne og teksten skal også passe ind i modellens kontekst.
Leverandørens filarbejdsgang sender udtrukket tekst og sidebilleder fra PDF-dokumenter til modeller med billedforståelse. Andre kontor- og tekstfiler bidrager med udtrukket tekst, så deres indlejrede billeder og diagrammer kræver en PDF-gengivelse, når det visuelle indhold er vigtigt. Berigelse af regneark bruger op til de første 1.000 rækker pr. ark. Hver fil skal være under 50 MB, og den samlede grænse for filerne i en anmodning er 50 MB. Chat Completions accepterer PDF-fildele; den dokumenterede Responses-arbejdsgang accepterer flere filformater. Bevar identifikatorer for sider, rækker eller afsnit i det materiale, du bruger til udtræk.
Streaming returnerer tekst gradvist. Structured Outputs begrænser et færdigt svar til den understøttede delmængde af JSON Schema, mens en anmodning om JSON-tilstand kun sikrer gyldig JSON. Navngiv de påkrævede felter og tilladte værdier, herunder en udtrykkelig repræsentation af manglende kildeoplysninger. Applikationer skal håndtere afvisninger og ufuldstændige svar separat. Et skema kan gøre resultatet egnet til næste trin, men værdierne skal stadig afspejle den faktiske kilde frem for at udfylde et tomt felt med opdigtet indhold.
GPT-4o Mini understøtter funktionskald og leverandørens værktøjsorienterede arbejdsgange med websøgning, filsøgning, kodefortolkning og MCP-forbindelser. Beskriv en tilgængelig funktion, lad applikationen udføre den ønskede handling og returnere sin observation, før modellen udarbejder et opfølgende svar. OpenAI understøtter også et separat billedgenereringsværktøj i den konfigurerede Responses-arbejdsgang. Billeder, der er produceret af dette værktøj, er separate resultater; modellens dokumenterede native output er fortsat tekst. Søgning og værktøjsbrug er konfigurerede aktiviteter og beviser ikke, at alle svar har anvendt aktuelle oplysninger.
Predicted Outputs understøtter gendannelse af et stort set kendt dokument eller en kodefil med en lille ændring. Lever det tidligere indhold og den præcise redigering, og sammenhold derefter resultatet med anmodningen. Denne fremgangsmåde med forudsagt output understøtter kun tekst og kan ikke kombineres med funktionskald; logprobs, max_completion_tokens og flere andre kontroller er også udelukket. En almindelig anmodning med værktøjsbrug er en anden fremgangsmåde, når svaret afhænger af et nyt opslag eller en ny beregning.
OpenAI dokumenterer finjustering af denne model og beskriver brug af en større models output til at lære en mindre GPT-4o Mini-model en specialiseret opgave. Denne destillationsarbejdsgang producerer en tilpasset model; den ændrer ikke identiteten af et almindeligt Mini-svar. Til en almindelig anmodning skal du fastlægge opgaven og outputformatet med tydelige eksempler og derefter bruge en afgrænset opfølgning til at revidere samme resultat. Et nyttigt endeligt resultat bevarer forbindelsen til kildefakta, den tilsigtede læser og det applikationstrin, der skal anvende det.
Ailoot Ultra · Batch POST /v1/batches openai/gpt-4o-mini:batch
openai/gpt-4o-mini:batchStart
GPT-4o Mini håndterer afgrænsede tekst- og billedopgaver, herunder dokumentudtræk, korte svar og værktøjskald i applikationer. Modellens kontekst på 128.000 tokens og Structured Outputs understøtter gentagelige arbejdsgange med et klart defineret resultat.
- 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 openai/gpt-4o-mini: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 openai/gpt-4o-mini:batch, openai/gpt-4o-mini | Standard— |
Feltprovider.only | Typestring[] | KravValgfrit | Værdier og grænser openai | 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.00015 / 1K tokens Output · Outputtokens $0.0006 / 1K tokens Input · Cachelæsning $0.000075 / 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.00015 / 1K tokens Output · Outputtokens $0.0006 / 1K tokens Input · Cachelæsning $0.000075 / 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":"openai/gpt-4o-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-4o-mini:batch', 'openai/gpt-4o-mini']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"openai/gpt-4o-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.
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 openai/gpt-4o-mini:batch
Aliaser for metodestier
Brug metodestierne vist ovenfor.
Relaterede kalder-ID’er
FAQ · OpenAI: GPT-4o-mini (batch)
- Hvilke input og resultater er tilgængelige?
POST /v1/batches·openai/gpt-4o-mini:batch:text→text- Hvilke felter bruger anmodningen?
POST /v1/batches·openai/gpt-4o-mini:batch:endpoint,model,requests,completion_window,provider- Hvilke grænser gælder?
POST /v1/batches·openai/gpt-4o-mini:batch:requests.min_items:1