OpenAI: o3 Mini (batch)
OpenAI o3-mini je textový model na uvažovanie pre vedu, matematiku a programovanie. Ponúka úsilie pri uvažovaní low, medium a high, kontext 200K, štruktúrované výstupy a postupy s pomocou nástrojov s maximálnym rozpočtom generovaného výstupu 100K tokenov.
O modeli
Tento opis pokrýva možnosti modelu. Dostupné vstupy, výstupy a voľby v Ailoot sú uvedené nižšie pre vybranú metódu.
OpenAI o3-mini je menší model z radu o-series na uvažovanie so zameraním na riešenie technických problémov vrátane vedy, matematiky a programovania. Prijíma text a vytvára text s dodatočným interným uvažovaním pred viditeľnou odpoveďou. Použite ho pre jasne určený matematický problém, algoritmickú analýzu, úpravu kódu alebo technické porovnanie, ktorého záver závisí od viacerých podmienok. Pre základnú edíciu o3-mini možno nastaviť úsilie pri uvažovaní; predvoľba o3-mini High volí úsilie high namiesto samostatných váh modelu.
Výrobca dokumentuje úsilie pri uvažovaní low, medium a high. Vyššie úsilie môže pomôcť pri náročnom probléme a vyžadovať dlhší čas generovania, pričom požadovaná viditeľná odpoveď môže zostať stručná. Dajte modelu úlohu, obmedzenia a požiadavky na výstup namiesto predpisovania dlhého reťazca priebežných myšlienok. Pri algoritmickom probléme dodajte hranice vstupu, požadované správanie a prípady určujúce správnosť. Pri matematike definujte premenné, obory, notáciu a požadovaný výsledok.
OpenAI uvádza kontextové okno 200,000 tokenov, maximálny rozpočet výstupu 100,000 tokenov a hranicu znalostí k 1. októbru 2023. Tokeny uvažovania spotrebúvajú dostupný kontext aj rozpočet generovaného výstupu ešte pred konečnou odpoveďou, takže maximum nie je prísľubom rovnakého počtu viditeľných tokenov odpovede. Nechajte miesto pre analýzu aj požadovaný výsledok. Ak je rozpočet pre daný problém príliš malý, požiadavka môže vyčerpať limit generovaných tokenov ešte pred vrátením užitočného viditeľného textu.
Natívnou vstupnou modalitou je text, nie obrazové vnímanie. Ak úloha vychádza z diagramu alebo snímky obrazovky, dodajte jej relevantné podmienky písomne. Výrobca uvádza podporu nahrávania súborov a vyhľadávania v súboroch v postupoch s pomocou nástrojov, ktoré môžu dodať relevantný textový materiál bez zmeny natívnej modality modelu. Určte zdrojové pasáže alebo obsah súborov potrebné na zodpovedanie otázky namiesto predpokladu, že každá príloha automaticky prináša užitočné podklady.
Model podporuje Structured Outputs, volanie funkcií a streamovanie a karta modelu výrobcu uvádza rozhrania Responses, Chat Completions, Assistants a Batch. Pri štruktúrovanej úlohe určte povinné polia a spôsob vyjadrenia chýbajúcich informácií. Pri postupe s nástrojmi model navrhuje funkciu a argumenty; aplikácia vykonáva akciu a vracia skutočné pozorovanie. Navrhovanú operáciu odlišujte od operácie, ktorej výsledok už bol prijatý.
Aktuálna sada nástrojov výrobcu uvádza aj vyhľadávanie v súboroch, interpretáciu kódu, pripojenia MCP a nástroje na generovanie obrázkov. Tieto nakonfigurované nástroje majú vlastné operácie; nemenia priamu textovú odpoveď o3-mini na natívny obrazový či zvukový výstup. Pri programovacej úlohe dodajte kód, pozorované zlyhanie a požiadavky a potom žiadajte návrh zmeny s vysvetlením prípadov, ktoré rieši. Ak sú k dispozícii výsledky vykonania, dodajte ich ako podklady pre ďalšiu úpravu namiesto považovania nevykonaného kódu za dokončený výsledok.
Užitočným konečným výstupom môže byť vzorec, odôvodnené porovnanie, návrh kódu alebo štruktúrovaný technický výsledok, ktorý spája záver s pôvodnými podmienkami. Pri pokračovaní pomenujte nové podklady a časť odpovede, ktorú treba upraviť. Zachovajte relevantnú konverzáciu a pozorovania nástrojov, aby ďalšia odpoveď mohla pracovať so skutočnými výsledkami. Úloha menšieho modelu na uvažovanie je praktická, keď treba analýzu, jasné obmedzenia a sústredený textový výstup namiesto nepodložených predpokladov o externých akciách.
Ailoot Ultra · Dávkové spracovanie POST /v1/batches openai/o3-mini:batch
openai/o3-mini:batchÚvod
OpenAI o3-mini je textový model na uvažovanie pre vedu, matematiku a programovanie. Ponúka úsilie pri uvažovaní low, medium a high, kontext 200K, štruktúrované výstupy a postupy s pomocou nástrojov s maximálnym rozpočtom generovaného výstupu 100K tokenov.
- Povolené vstupy
- Text
- Výsledky
- Text
Dostupné v Ailoot · vstupy a metódy
Ailoot Ultra · Dávkové spracovanie POST /v1/batches
- Vstup
text- Výstup
text- Výstupný formát
- JSON priamo vložený v results[].response.body
| Pole | Typ | Požiadavka | Hodnoty a limity | Predvolené |
|---|---|---|---|---|
Poleendpoint | Typstring | PožiadavkaPovinné | Hodnoty a limity /v1/chat/completions | Predvolené— |
Polemodel | Typstring | PožiadavkaPovinné | Hodnoty a limity openai/o3-mini:batch | Predvolené— |
Polerequests | Typbatch_item[] | PožiadavkaPovinné | Hodnoty a limity Minimálny počet položiek: 1 | Predvolené— |
Polerequests[].custom_id | Typstring | PožiadavkaPovinné | Hodnoty a limity | Predvolené— |
Polerequests[].body.messages | Typmessage[] | PožiadavkaPovinné | Hodnoty a limity | Predvolené— |
Polecompletion_window | Typstring | PožiadavkaVoliteľné | Hodnoty a limity 24h | Predvolené— |
Poleprovider | Typobject|null | PožiadavkaVoliteľné | Hodnoty a limity | Predvolené— |
Polerequests[].body.model | Typstring | PožiadavkaVoliteľné | Hodnoty a limity openai/o3-mini:batch, openai/o3-mini | Predvolené— |
Poleprovider.only | Typstring[] | PožiadavkaVoliteľné | Hodnoty a limity openai | Predvolené— |
Poleprovider.allow_fallbacks | Typboolean|null | PožiadavkaVoliteľné | Hodnoty a limity false, null | Predvolené— |
Parametre a životný cyklus metódy
| Parameter | Špecifikácia |
|---|---|
Parametercontent_type | Špecifikáciaapplication/json |
Parameterrequired | Špecifikáciaendpoint, model, requests |
Parametermaterial_types | Špecifikáciatext |
Parameterrepresentation | Špecifikáciapriamo vložené requests[]; každá položka obsahuje custom_id a body |
Parameterrequest_endpoint_profile | Špecifikácia/v1/chat/completions |
Parameterfile_material | ŠpecifikáciaVolajúci môže lokálne načítať skutočný súbor UTF-8 JSONL do requests[]. Nepoužíva sa účel nahrávania, input_file_id ani odkaz na súbor. Chýbajúce alebo prázdne podklady zákazníka zastavia prípravu pred POST. |
Parameterserialization_order | Špecifikáciaendpoint, model, provider (ak je zadaný), completion_window (ak je zadaný), requests na konci |
Parameteroptional_controls | Špecifikáciaprovider.only, provider.allow_fallbacks, completion_window |
Parameterschema_scope | ŠpecifikáciaTelá textových požiadaviek Chat Completions v zdokumentovanom obale dávky s priamo vloženými požiadavkami. |
Životný cyklus: asynchronous
GET /v1/batches/{operation_id} · skutočná hodnota response.id z pôvodnej odpovede na vytvorenie; rovnaký používateľ/kľúč/skupina
Cenník
Tarifné údaje nepridávajú možnosti požiadavky. Podporované parametre sú uvedené pri vybranej metóde.
- Rýchly režim
- Neuvedené Keď je zvolený rýchly režim
- Režim Flex
- Neuvedené Keď je zvolený režim flex
- Maximálna úroveň uvažovania
- Neuvedené Keď sa pri maximálnej úrovni uvažovania používa predvolená úprava (default)
- Ceny explicitnej cache
- Nie je zapnuté Keď sa požaduje explicitná cache
Sadzby Ailoot
Ceny podľa konfigurácie
Každý poplatok priraďte k zobrazeným podmienkam. Pre každú skupinu alternatívnych konfigurácií použite jednu sadzbu.
| Konfigurácia | Sadzobník | Počet tokenov kontextu väčší než | Tokeny kontextu, najviac (vrátane hranice) | Poplatok |
|---|---|---|---|---|
| KonfiguráciaZákladné sadzby za tokeny | SadzobníkZákladná sadzba | Počet tokenov kontextu väčší než— | Tokeny kontextu, najviac (vrátane hranice)Bez hornej hranice | Poplatok Vstup · Vstupné tokeny $0.0011 / 1K tokenov Výstup · Výstupné tokeny $0.0044 / 1K tokenov Vstup · Čítanie cache $0.00055 / 1K tokenov Vstup · Zápis do cache — / 1K tokenov Vstup · Zápis do cache, 1 hod — / 1K tokenov |
| KonfiguráciaPásmo dĺžky požiadavky 1 | Sadzobník— | Počet tokenov kontextu väčší než0 | Tokeny kontextu, najviac (vrátane hranice)Bez hornej hranice | Poplatok Vstup · Vstupné tokeny $0.0011 / 1K tokenov Výstup · Výstupné tokeny $0.0044 / 1K tokenov Vstup · Čítanie cache $0.00055 / 1K tokenov Vstup · Zápis do cache — / 1K tokenov Vstup · Zápis do cache, 1 hod — / 1K tokenov |
Ailoot pred požiadavkou rezervuje odhadovanú sumu. Po získaní výsledku vyúčtuje konečný poplatok podľa nameraného využitia. Pri streamovaní sa vyúčtovanie riadi konečným záznamom využitia. Ako funguje rezervácia a vyúčtovanie →
Príklady požiadaviek
Ailoot Ultra · Dávkové spracovanie
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/o3-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/o3-mini:batch', 'openai/o3-mini']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"openai/o3-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.
Prijať a uložiť výsledky
Ailoot Ultra · Dávkové spracovanie
JSON priamo vložený v results[].response.body
GET /v1/batches/{operation_id}
Skontrolovať stav úlohy
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
Uchovať všetky dokončené výsledky
Uložte každú úplnú vrátenú odpoveď, súbor a časť obsahu.
Uchovajte úplný pôvodný stav vo formáte JSON, každý výsledok/custom_id a úplné telo odpovede alebo chyby. Dokončené results[] uložte ako JSONL bez filtrovania.
Ak treba overiť pôvodnú odpoveď
Uchovajte pôvodné ID operácie. Odpoveď 503 result_pending_check obsahuje X-Should-Retry:false; pôvodnú dávku s neznámym výsledkom nikdy znova neodosielajte.
Polia odpovede
| Pole | Typ |
|---|---|
Poleresults[].custom_id | Typstring |
Poleresults[].response.body.choices[].message.content | Typstring|null |
Poleresults[].error | Typobject|null |
Poleusage | Typobject|null |
Poleid | Typstring |
Polemodel | Typstring |
Poleendpoint | Typstring |
Polestatus | Typstring |
Polerequest_counts | Typobject |
Poleresults[].id | Typstring |
Poleresults[].response.status_code | Typinteger |
Poleresults[].response.request_id | Typstring |
Chyby a ďalšie kroky
| Odpoveď | Podmienka | Ďalší krok |
|---|---|---|
Odpoveď400 · invalid_request_error | PodmienkaNeplatný zdokumentovaný obal s priamo vloženými požiadavkami, duplicitné kľúče alebo konflikt identity položky či nastavených schopností modelu. | Ďalší krokPred akýmkoľvek novým odoslaním opravte označené polia. |
Odpoveď401 · authentication_error | PodmienkaNeplatný kľúč API. | Ďalší krokPoužite kľúč Ailoot, ktorý ste oprávnení používať. |
Odpoveď403 · permission_error | PodmienkaSkupina pre dávkové spracovanie nie je dostupná. | Ďalší krokSkontrolujte oprávnenie kľúča/skupiny. |
Odpoveď422 · invalid_request_error | PodmienkaDávkové spracovanie sa účtuje zo zostatku; vytvorenie cez predplatné sa odmieta. | Ďalší krokPoužite skupinu s účtovaním zo zostatku, ktorú ste oprávnení používať. |
Odpoveď422 · price_unavailable | PodmienkaPre vstup dávky nemožno vypočítať cenovú ponuku. | Ďalší krokUchovajte odpoveď; použite zdokumentovaný vstup pre danú rodinu metód. |
Odpoveď402 · billing_error | PodmienkaRezerva pre dávkové spracovanie nie je dostupná. | Ďalší krokPred novou požiadavkou vyriešte podmienky prijatia. |
Odpoveď503 · price_unavailable | PodmienkaCena metódy dávkového spracovania alebo natívne sadzby nie sú dostupné. | Ďalší krokUchovajte odpoveď; nenahrádzajte ceny inými. |
Odpoveď503 · api_error | PodmienkaPresná trasa k dodávateľovi nie je dostupná. | Ďalší krokUchovajte odpoveď na účely opravy smerovania. |
Odpoveď503 · result_pending_check | PodmienkaPôvodný výsledok je potrebné skontrolovať; X-Should-Retry:false. | Ďalší krokUchovajte pôvodné operation_id/id a čítajte jeho stav; pôvodný POST nikdy neopakujte. |
Odpoveď404 · not_found | PodmienkaOperácia na zisťovanie stavu dávky neexistuje alebo patrí inej identite. | Ďalší krokPoužite presné pôvodné id a rovnakého používateľa/kľúč/skupinu. |
Aliasy
Aliasy modelov
Ailoot Ultra openai/o3-mini:batch
Aliasy ciest metód
Použite cesty metód uvedené vyššie.
Súvisiace ID na volanie
FAQ · OpenAI: o3 Mini (batch)
- Aké vstupy a výsledky sú dostupné?
POST /v1/batches·openai/o3-mini:batch:text→text- Aké polia používa požiadavka?
POST /v1/batches·openai/o3-mini:batch:endpoint,model,requests,completion_window,provider- Aké limity platia?
POST /v1/batches·openai/o3-mini:batch:requests.min_items:1