OpenAI: GPT-6.1 Sol (batch)
GPT-6.1 Sol is OpenAI’s redeneermodel voor complex programmeren, computergebruik en professionele analyse. Het accepteert tekst en afbeeldingen en produceert tekst, met een context van 1.050.000 tokens en inspanningsinstellingen die op basis van aangeleverd bewijs en hulpmiddelwaarnemingen een antwoord uitwerken.
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.1 Sol is OpenAI’s redeneermodel voor complex programmeren, computergebruik en professioneel werk. Het volgt op GPT-6 Sol en biedt een evenwichtig profiel voor veeleisende taken die uitgebreide analyse vergen. Het model van de maker accepteert tekst en afbeeldingen en genereert tekst, waaronder uitleg, code en gestructureerde resultaten. Dit standaardprofiel blijft onderscheiden van de redeneermodus Pro en van GPT-6 Sol.
Taak en voorbereiding van de invoer
Lever voor softwarewerk de relevante code, het verwachte gedrag, de waargenomen fout en de contracten aan die de wijziging moet behouden. Specificeer het eindresultaat en wat voltooiing zou aantonen. Een praktische opdracht is: “Vergelijk deze twee implementaties met de vereisten, benoem de afhankelijkheden die elk beïnvloedt en geef een gerichte correctie met het ondersteunende bewijs terug.” Een repositorytaak moet bestandsnamen en modulegrenzen ook in vervolgberichten zichtbaar houden.
Benoem voor professionele analyse de bronnen en de te nemen beslissing. Geef de vergelijkingscriteria, vereiste terminologie en behandeling van ontbrekende informatie aan. Als een afbeelding bewijs bevat, benoem dan of het een grafiek, diagram of interfacetoestand is en welk detail van belang is. Vraag het resultaat onderscheid te maken tussen een zichtbare of door bronnen ondersteunde bevinding en een interpretatie.
Context en redeneren
OpenAI vermeldt een context van 1.050.000 tokens, een maximale invoer van 922.000 tokens en een maximale uitvoer van 128.000 tokens. De gedocumenteerde kennisgrens is 30 april 2026. Redeneren neemt ruimte in naast bronmateriaal en het zichtbare antwoord; het uitputten van het voltooiingsbudget kan een antwoord onvolledig laten. Bereid relevante context voor en laat ruimte voor de analyse en het eindresultaat, in plaats van het invoerplafond als het volledige taakbudget te behandelen.
Dit specifieke model ondersteunt redeneerinspanning low, medium, high, xhigh en max, met medium als standaard. Het ondersteunt none of minimal niet. De inspanning bepaalt hoeveel redeneerwerk wordt ingezet, terwijl standaard en Pro-modus een afzonderlijke uitvoeringskeuze beschrijven. Definieer het antwoord onafhankelijk van die diepte: een codewijziging, beslisnota, procedure of gespecificeerd record.
Interfaces en hulpmiddelen
De maker gebruikt Responses voor hulpmiddelaanroepen; de interface Chat Completions accepteert GPT-6.1 Sol-aanvragen zonder hulpmiddelen. De modelkaart vermeldt Structured Outputs, streaming en functieaanroepen, samen met 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. De eigen uitvoer van het model blijft tekst, terwijl een hulpmiddel voor afbeeldingsgeneratie een afzonderlijk resultaat produceert.
De omringende toepassing levert haar bewerkingen, voert ze uit en geeft waarnemingen terug. Houd elk resultaat gekoppeld aan de bijbehorende aanroep en bron, zodat de doorlopende taak werkelijk bewijs kan gebruiken. De handleiding voor de GPT-6-familie beschrijft ook asynchroon hulpmiddelwerk, bijsturing tijdens een beurt, behoud van redeneerwerk en contextcompressie voor langere werkwijzen; dit zijn werkwijzemogelijkheden van de maker, geen aanname dat elke gewone aanvraag ze activeert.
Bruikbare resultaten
Geef de voorwaarden aan die de taak voltooid maken en het bewijs dat voor een conclusie nodig is. Inspecteer voor code de implementatie en geef werkelijke validatiewaarnemingen terug. Vraag voor documenten om in het eindantwoord de aangeleverde feiten, aannames en onopgeloste vragen te benoemen. Het bruikbare resultaat is een beoordeelbaar tekst- of coderesultaat, verbonden met het oorspronkelijke doel en de bronnen, met behoud van het exacte GPT-6.1 Sol-profiel.
Ailoot Ultra · Batchverwerking POST /v1/batches openai/gpt-6.1-sol:batch
openai/gpt-6.1-sol:batchAan de slag
GPT-6.1 Sol is OpenAI’s redeneermodel voor complex programmeren, computergebruik en professionele analyse. Het accepteert tekst en afbeeldingen en produceert tekst, met een context van 1.050.000 tokens en inspanningsinstellingen die op basis van aangeleverd bewijs en hulpmiddelwaarnemingen een antwoord uitwerken.
- Toegestane invoer
- Tekst
- Resultaten
- Tekst
Beschikbaar in Ailoot · invoer en methoden
Ailoot Ultra · Batchverwerking POST /v1/batches
- Invoer
text- Uitvoer
text- Uitvoerformaat
- inline JSON uit results[].response.body
| 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.1-sol: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.1-sol:batch, openai/gpt-6.1-sol | 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 kan de daadwerkelijke UTF-8 JSONL lokaal in requests[] inlezen. Er wordt geen uploaddoel, 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 | ContractAanvraagbodies voor tekst via Chat Completions in de gedocumenteerde inline Batch-structuur. |
Levenscyclus: asynchronous
GET /v1/batches/{operation_id} · daadwerkelijke response.id uit de oorspronkelijke aanmaakrespons; 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 geselecteerd is
- Flex-modus
- Niet opgegeven Wanneer de flex-modus geselecteerd is
- Maximale redeneerinspanning
- Niet opgegeven Wanneer voor 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.002 / 1K tokens Uitvoer · Uitvoertokens $0.01 / 1K tokens Invoer · Cache lezen $0.0001 / 1K tokens Invoer · Cache schrijven $0.0025 / 1K tokens Invoer · Cache schrijven, 1 uur — / 1K tokens |
| ConfiguratieAanvraaglengte · niveau 1 | Tariefstaffel— | Contexttokens, meer dan0 | Contexttokens, tot en met272.000 | Kosten Invoer · Invoertokens $0.002 / 1K tokens Uitvoer · Uitvoertokens $0.01 / 1K tokens Invoer · Cache lezen $0.0001 / 1K tokens Invoer · Cache schrijven $0.0025 / 1K tokens Invoer · Cache schrijven, 1 uur — / 1K tokens |
| ConfiguratieAanvraaglengte · niveau 2 | Tariefstaffel— | Contexttokens, meer dan272.000 | Contexttokens, tot en metGeen bovengrens | Kosten Invoer · Invoertokens $0.004 / 1K tokens Uitvoer · Uitvoertokens $0.015 / 1K tokens Invoer · Cache lezen $0.0002 / 1K tokens Invoer · Cache schrijven $0.005 / 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 · Batchverwerking
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.1-sol: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.1-sol:batch', 'openai/gpt-6.1-sol']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"openai/gpt-6.1-sol: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 · Batchverwerking
inline JSON uit results[].response.body
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 respons- of foutbody. Sla voltooide results[] op als JSONL, zonder te filteren.
Als het oorspronkelijke antwoord moet worden gecontroleerd
Bewaar de oorspronkelijke bewerkings-ID. 503 result_pending_check bevat X-Should-Retry:false; dien een oorspronkelijke batch met onbekende status 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 structuur, dubbele sleutels, ongeldige itemidentiteit of conflict met de geconfigureerde modelmogelijkheden. | Volgende stapCorrigeer de aangegeven velden vóór elke nieuwe indiening. |
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 | VoorwaardeBatch wordt via het saldo gefactureerd; aanmaken via een abonnement wordt geweigerd. | Volgende stapGebruik de geautoriseerde groep die via het saldo wordt gefactureerd. |
Antwoord422 · price_unavailable | VoorwaardeVoor de Batch-invoer kan geen prijsraming worden gemaakt. | Volgende stapBewaar de respons; gebruik de gedocumenteerde invoer voor deze familie. |
Antwoord402 · billing_error | VoorwaardeReservering voor Batch niet beschikbaar. | Volgende stapLos het toelatingsprobleem op vóór een nieuwe aanvraag. |
Antwoord503 · price_unavailable | VoorwaardePrijs voor de Batch-methode/native tarieven niet beschikbaar. | Volgende stapBewaar de respons; vervang de prijzen niet. |
Antwoord503 · api_error | VoorwaardeDe exacte leveranciersroute is niet beschikbaar. | Volgende stapBewaar de respons voor het herstel van de route. |
Antwoord503 · result_pending_check | VoorwaardeHet oorspronkelijke resultaat moet gecontroleerd worden; 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 | VoorwaardeBewerking voor de Batch-status ontbreekt of behoort toe aan een andere identiteit. | Volgende stapGebruik de exacte oorspronkelijke id en dezelfde gebruiker/sleutel/groep. |
Aliasnamen
Modelaliasnamen
Ailoot Ultra openai/gpt-6.1-sol:batch
Aliasnamen voor methodepaden
Gebruik de hierboven getoonde methodepaden.
Gerelateerde aanroeper-ID’s
FAQ · OpenAI: GPT-6.1 Sol (batch)
- Welke invoer en resultaten zijn beschikbaar?
POST /v1/batches·openai/gpt-6.1-sol:batch:text→text- Welke velden gebruikt het verzoek?
POST /v1/batches·openai/gpt-6.1-sol:batch:endpoint,model,requests,completion_window,provider- Welke limieten gelden?
POST /v1/batches·openai/gpt-6.1-sol:batch:requests.min_items:1