OpenAI: GPT-6 Luna (batch)
GPT-6 Luna is OpenAI’s gerichte redeneermodel voor herhaalde taken in grote aantallen. Tekst en afbeeldingen kunnen classificatie, extractie, assistentie en werk met hulpmiddelen ondersteunen, met een context van 1.050.000 tokens, gestructureerde tekstuitvoer en een optionele inspanningsinstelling zonder redeneren.
Over het model
Deze beschrijving gaat over de mogelijkheden van het model. De via Ailoot beschikbare invoer, uitvoer en opties staan hieronder voor de geselecteerde methode.
GPT-6 Luna is OpenAI’s gerichte model voor herhaalde taken in grote aantallen. Het accepteert tekst en afbeeldingen en produceert tekst, waardoor het bruikbaar is voor omschreven bewerkingen zoals classificatie, extractie, herschrijven, vragen op basis van afbeeldingen en afzonderlijke stappen in een assistentwerkwijze. Luna behoudt een eigen profiel binnen GPT-6, onderscheiden van Sols rol bij complex programmeren, Astra’s meest veeleisende werk en Luna’s uitvoeringsinstelling Pro.
Definieer een herhaalbare bewerking
Geef elke taak een duidelijk resultaat: een categorie, klein record, uitleg of herziene passage. Lever voor classificatie de betekenis van de categorieën en een conventie voor items die in geen enkele categorie passen aan. Definieer voor extractie de velden, eenheden en behandeling van ontbrekende informatie. Een bruikbare opdracht is: “Benoem het belangrijkste probleem van de gebruiker, kies één van deze categorieën en geef de zin terug die de keuze ondersteunt.”
Lever voor een ondersteuningsantwoord de vraag en het relevante goedgekeurde bronmateriaal aan en benoem vervolgens de antwoordtaal en de te behouden details. Behoud bij een afbeelding zichtbare labels en vertel het model waarover de vraag gaat. Houd geëxtraheerde formuleringen gescheiden van interpretatie, zodat het resulterende record aan de invoer kan worden getoetst.
Inspanning en uitvoerformaat
De maker ondersteunt redeneerinspanning none, low, medium, high, xhigh en max; medium is de standaard. De instelling none maakt taken mogelijk die geen tussentijds redeneerwerk nodig hebben, terwijl grotere inspanning analyse kan uitwerken voor een complexere vraag. Redeneerinspanning en de uitvoeringsmodus standaard of Pro zijn onafhankelijke keuzes. Op elk inspanningsniveau blijft een afgebakend uitvoercontract nodig.
Structured Outputs kan een omschreven record begrenzen en gewone tekst kan een kort antwoord of uitleg overbrengen. Specificeer de betekenis van velden en conventies voor ontbrekende waarden. Een geldig formaat toont niet aan dat een geëxtraheerde waarde in de bron aanwezig is; controleer daarom de inhoud én de structuur.
Context en kennis
De modelkaart vermeldt een context van 1.050.000 tokens, maximaal 922.000 invoertokens en maximaal 128.000 uitvoertokens. De kennisgrens is 18 mei 2026. Bronmateriaal, gesprek, redeneren en het zichtbare antwoord hebben samen ruimte nodig. Behoud voor herhaald werk de relevante criteria en bronlabels, in plaats van de bewerking door niet-gerelateerde geschiedenis te laten verhullen.
Hulpmiddelen en toepassingsresultaten
OpenAI documenteert Responses voor ingebouwde hulpmiddelen en functieaanroepen. Chat Completions ondersteunt voor dit model alleen functieaanroepen wanneer de redeneerinspanning none is. De hulpmiddelenlijst van de maker omvat zoeken op het web en in bestanden, hulpmiddelen voor afbeeldingsgeneratie, een code-interpreter, shell- en patchhulpmiddelen, skills, computergebruik, MCP-verbindingen en het zoeken naar hulpmiddelen. Luna’s eigen uitvoer is tekst; afbeeldingen of uitgevoerde acties van hulpmiddelen zijn afzonderlijke resultaten.
De toepassing voert geselecteerde bewerkingen uit en geeft de waarneming voor de volgende modelstap terug. Een productzoekopdracht kan het ontbrekende veld leveren voordat het antwoord wordt opgesteld; een extractietaak kan een werkelijk opgehaalde passage gebruiken. De GPT-6-handleiding beschrijft ook asynchroon hulpmiddelwerk, bijsturing en contextbeheer op familieniveau.
Een bruikbaar eindresultaat is een gericht antwoord of record dat met het aangeleverde bewijs verbonden is. Controleer de waarden, behoud verplichte terminologie en houd vragen over actuele informatie gekoppeld aan gezaghebbend materiaal of werkelijke hulpmiddelwaarnemingen. Luna’s rol is de omschreven bewerking te voltooien, niet een grote bronverzameling in een ongespecificeerde taak te veranderen.
Ailoot Ultra · Batch POST /v1/batches openai/gpt-6-luna:batch
openai/gpt-6-luna:batchAan de slag
GPT-6 Luna is OpenAI’s gerichte redeneermodel voor herhaalde taken in grote aantallen. Tekst en afbeeldingen kunnen classificatie, extractie, assistentie en werk met hulpmiddelen ondersteunen, met een context van 1.050.000 tokens, gestructureerde tekstuitvoer en een optionele inspanningsinstelling zonder redeneren.
- Toegestane invoer
- Tekst
- Resultaten
- Tekst
Beschikbaar in Ailoot · invoer en methoden
Ailoot Ultra · Batch POST /v1/batches
- Invoertypen
text- Uitvoertypen
text- Uitvoerformaat
- inline results[].response.body JSON
| Veld | Type | Vereiste | Waarden en limieten | Standaard |
|---|---|---|---|---|
Veldendpoint | Typestring | VereisteVereist | Waarden en limieten /v1/chat/completions | Standaard— |
Veldmodel | Typestring | VereisteVereist | Waarden en limieten openai/gpt-6-luna:batch | Standaard— |
Veldrequests | Typebatch_item[] | VereisteVereist | Waarden en limieten Minimumaantal items: 1 | Standaard— |
Veldrequests[].custom_id | Typestring | VereisteVereist | Waarden en limieten | Standaard— |
Veldrequests[].body.messages | Typemessage[] | VereisteVereist | Waarden en limieten | Standaard— |
Veldcompletion_window | Typestring | VereisteOptioneel | Waarden en limieten 24h | Standaard— |
Veldprovider | Typeobject|null | VereisteOptioneel | Waarden en limieten | Standaard— |
Veldrequests[].body.model | Typestring | VereisteOptioneel | Waarden en limieten openai/gpt-6-luna:batch, openai/gpt-6-luna | Standaard— |
Veldprovider.only | Typestring[] | VereisteOptioneel | Waarden en limieten openai | Standaard— |
Veldprovider.allow_fallbacks | Typeboolean|null | VereisteOptioneel | Waarden en limieten false, null | Standaard— |
Methodeparameters en levenscyclus
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractendpoint, model, requests |
Parametermaterial_types | Contracttext |
Parameterrepresentation | Contractinline requests[]; elk item bevat custom_id en body |
Parameterrequest_endpoint_profile | Contract/v1/chat/completions |
Parameterfile_material | ContractDe aanroeper mag daadwerkelijke JSONL-inhoud in UTF-8 lokaal in requests[] inlezen. Er wordt geen uploaddoel (purpose), input_file_id of bestandsverwijzing gebruikt. Ontbrekend of leeg klantmateriaal stopt de voorbereiding vóór POST. |
Parameterserialization_order | Contractendpoint, model, provider (indien opgegeven), completion_window (indien opgegeven), requests als laatste |
Parameteroptional_controls | Contractprovider.only, provider.allow_fallbacks, completion_window |
Parameterschema_scope | ContractBody’s voor tekstaanvragen via Chat Completions in de gedocumenteerde inline Batch-envelop. |
Levenscyclus: asynchronous
GET /v1/batches/{operation_id} · de daadwerkelijke response.id uit het oorspronkelijke aanmaakantwoord; dezelfde gebruiker/sleutel/groep
Tarieven
Tariefverwijzingen voegen geen verzoekopties toe. Ondersteunde parameters staan bij de geselecteerde methode.
- Snelle modus
- Niet opgegeven Wanneer de snelle modus is geselecteerd
- Flexmodus
- Niet opgegeven Wanneer de modus flex is geselecteerd
- Maximale redeneerinspanning
- Niet opgegeven Wanneer bij maximale redeneerinspanning de default-aanpassing wordt gebruikt
- Tarieven voor expliciete caching
- Niet ingeschakeld Wanneer expliciete caching wordt aangevraagd
Ailoot-tarieven
Prijzen per configuratie
Koppel elke kostenpost aan de getoonde voorwaarden. Gebruik één tarief voor elke groep alternatieve configuraties.
| Configuratie | Tariefstaffel | Contexttokens, meer dan | Contexttokens, tot en met | Kosten |
|---|---|---|---|---|
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Contexttokens, meer dan— | Contexttokens, tot en metGeen bovengrens | Kosten Invoer · Invoertokens $0.0001 / 1K tokens Uitvoer · Uitvoertokens $0.0005 / 1K tokens Invoer · Cache lezen $0.00001 / 1K tokens Invoer · Cache schrijven $0.000125 / 1K tokens Invoer · Cache schrijven, 1 uur — / 1K tokens |
| ConfiguratieNiveau 1 voor aanvraaglengte | Tariefstaffel— | Contexttokens, meer dan0 | Contexttokens, tot en met272.000 | Kosten Invoer · Invoertokens $0.0001 / 1K tokens Uitvoer · Uitvoertokens $0.0005 / 1K tokens Invoer · Cache lezen $0.00001 / 1K tokens Invoer · Cache schrijven $0.000125 / 1K tokens Invoer · Cache schrijven, 1 uur — / 1K tokens |
| ConfiguratieNiveau 2 voor aanvraaglengte | Tariefstaffel— | Contexttokens, meer dan272.000 | Contexttokens, tot en metGeen bovengrens | Kosten Invoer · Invoertokens $0.0002 / 1K tokens Uitvoer · Uitvoertokens $0.00075 / 1K tokens Invoer · Cache lezen $0.00002 / 1K tokens Invoer · Cache schrijven $0.00025 / 1K tokens Invoer · Cache schrijven, 1 uur — / 1K tokens |
Ailoot reserveert vóór een verzoek een geschat bedrag. Na het resultaat worden de uiteindelijke kosten afgerekend op basis van het gemeten verbruik. Bij streaming gebeurt de afrekening op basis van de definitieve verbruiksregistratie. Zo werken reservering en afrekening →
Voorbeeldverzoeken
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-6-luna: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-6-luna:batch', 'openai/gpt-6-luna']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"openai/gpt-6-luna: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.
Resultaten ophalen en opslaan
Ailoot Ultra · Batch
inline results[].response.body JSON
GET /v1/batches/{operation_id}
Taakstatus controleren
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
Alle voltooide resultaten bewaren
Bewaar elk volledig teruggegeven antwoord, bestand en inhoudsonderdeel.
Bewaar de volledige oorspronkelijke status-JSON, elk resultaat/custom_id en de volledige antwoord- of foutbody. Sla voltooide results[] zonder filtering op als JSONL.
Als het oorspronkelijke antwoord moet worden gecontroleerd
Bewaar de oorspronkelijke bewerkings-ID. Bij 503 result_pending_check hoort X-Should-Retry:false; dien een oorspronkelijke batch met onbekende uitkomst nooit opnieuw in.
Antwoordvelden
| Veld | Type |
|---|---|
Veldresults[].custom_id | Typestring |
Veldresults[].response.body.choices[].message.content | Typestring|null |
Veldresults[].error | Typeobject|null |
Veldusage | Typeobject|null |
Veldid | Typestring |
Veldmodel | Typestring |
Veldendpoint | Typestring |
Veldstatus | Typestring |
Veldrequest_counts | Typeobject |
Veldresults[].id | Typestring |
Veldresults[].response.status_code | Typeinteger |
Veldresults[].response.request_id | Typestring |
Fouten en vervolgstappen
| Antwoord | Voorwaarde | Volgende stap |
|---|---|---|
Antwoord400 · invalid_request_error | VoorwaardeOngeldige gedocumenteerde inline envelop, dubbele sleutels, ongeldige itemidentiteit of een conflict met de geconfigureerde modelmogelijkheden. | Volgende stapCorrigeer de aangegeven velden voordat u een nieuwe aanvraag indient. |
Antwoord401 · authentication_error | VoorwaardeOngeldige API-sleutel. | Volgende stapGebruik de geautoriseerde Ailoot-sleutel. |
Antwoord403 · permission_error | VoorwaardeBatch-groep niet beschikbaar. | Volgende stapControleer de toegangsrechten van de sleutel/groep. |
Antwoord422 · invalid_request_error | VoorwaardeBij Batch worden kosten van het saldo afgeschreven; aanmaken via een abonnement wordt geweigerd. | Volgende stapGebruik de geautoriseerde groep waarvoor kosten van het saldo worden afgeschreven. |
Antwoord422 · price_unavailable | VoorwaardeVoor de Batch-invoer kan geen prijsopgave worden berekend. | Volgende stapBewaar het antwoord; gebruik de gedocumenteerde invoer voor deze familie. |
Antwoord402 · billing_error | VoorwaardeBatch-reservering niet beschikbaar. | Volgende stapLos het toelatingsprobleem op voordat u een nieuwe aanvraag indient. |
Antwoord503 · price_unavailable | VoorwaardePrijs voor de Batch-methode/native tarieven niet beschikbaar. | Volgende stapBewaar het antwoord; vervang de prijzen niet. |
Antwoord503 · api_error | VoorwaardeDe exacte leveranciersroute is niet beschikbaar. | Volgende stapBewaar het antwoord voor herstel van de route. |
Antwoord503 · result_pending_check | VoorwaardeHet oorspronkelijke resultaat moet worden gecontroleerd; X-Should-Retry:false. | Volgende stapBewaar de oorspronkelijke operation_id/id en lees de status ervan uit; herhaal de oorspronkelijke POST nooit. |
Antwoord404 · not_found | VoorwaardeDe bewerking voor de Batch-status ontbreekt of is eigendom van een andere identiteit. | Volgende stapGebruik exact de oorspronkelijke id en dezelfde gebruiker/sleutel/groep. |
Aliasnamen
Modelaliasnamen
Ailoot Ultra openai/gpt-6-luna:batch
Aliasnamen voor methodepaden
Gebruik de hierboven getoonde methodepaden.
Gerelateerde aanroeper-ID’s
FAQ · OpenAI: GPT-6 Luna (batch)
- Welke invoer en resultaten zijn beschikbaar?
POST /v1/batches·openai/gpt-6-luna:batch:text→text- Welke velden gebruikt het verzoek?
POST /v1/batches·openai/gpt-6-luna:batch:endpoint,model,requests,completion_window,provider- Welke limieten gelden?
POST /v1/batches·openai/gpt-6-luna:batch:requests.min_items:1