Source: https://ailoot.ai/models/nl-be/openai-gpt-oss-20b-u003a-batch/
Canonical: https://ailoot.ai/models/nl-be/openai-gpt-oss-20b-u003a-batch/
Language: nl-be

# OpenAI: gpt-oss-20b (batch)

[Markdown](https://ailoot.ai/models/nl-be/openai-gpt-oss-20b-u003a-batch/index.md) · [JSON](https://ailoot.ai/models/nl-be/openai-gpt-oss-20b-u003a-batch/facts.json)

## [OpenAI: gpt-oss-20b (batch)](https://ailoot.ai/models/nl-be/openai-gpt-oss-20b-u003a-batch/)

OpenAI’s kleinere, algemeen inzetbare gpt-oss-model accepteert tekst en geeft tekst terug voor redeneren, programmeren en gespecialiseerde werkwijzen. Het ondersteunt instelbaar redeneren, functieaanroepen, Structured Outputs en fijnafstemming van de gepubliceerde open gewichten.

- [**Ailoot Ultra · Batchverwerking** `POST /v1/batches` `openai/gpt-oss-20b:batch`](https://ailoot.ai/models/nl-be/openai-gpt-oss-20b-u003a-batch/#method-0)

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-oss-20b is OpenAI’s kleinere, algemeen inzetbare model met open gewichten voor redeneren en ontwikkelaarswerkwijzen. Het accepteert tekst en geeft tekst terug. De maker publiceert 21 miljard totale parameters en 3,6 miljard actieve parameters per token. Het is de 20b-editie van de gpt-oss-familie, onderscheiden van de grotere 120b-editie en het Safeguard-model voor beleidsclassificatie.

De maker beschrijft lokale en gespecialiseerde toepassingen en een trainingsverzameling met uitsluitend tekst, gericht op STEM, programmeren en algemene kennis. Een voorbeeldtaak is een codefragment onder expliciete aannames uit te leggen en een gerichte wijziging voor te stellen. Een tekstanalysetaak kan in plaats daarvan beschrijvingen aan de hand van expliciete criteria vergelijken of werknotities in een bruikbare verzameling bevindingen omzetten. Geef het model het bronmateriaal en het resultaat dat de lezer of de volgende toepassingsstap nodig heeft.

De gepubliceerde mixture-of-experts-architectuur heeft 24 lagen, 32 experts en vier actieve experts per token. OpenAI’s oorspronkelijke MXFP4-uitgave van de expertgewichten is ontworpen om binnen 16 GB geheugen te passen. De gewichten zijn onder Apache 2.0 uitgebracht en kunnen voor gespecialiseerd werk worden fijnafgestemd. Deze eigenschappen van de maker beschrijven het gepubliceerde model, zodat een ontwikkelaar de omvang en aanpasbaarheid kan onderscheiden zonder aan te nemen welke inrichting een bepaalde toepassing gebruikt.

OpenAI’s documentatie vermeldt een contextvenster van 131.072 tokens, een maximale gegenereerde uitvoer van 131.072 tokens en een kennisgrens van 1 juni 2024. De beschikbare context moet ruimte bieden voor het aangeleverde materiaal, de analyse en het eindantwoord. Het model ondersteunt redeneerniveaus low, medium en high. Het vereiste Harmony-formaat houdt interne analyse en het eindantwoord in verschillende kanalen; de maker stelt dat ruwe analyse niet rechtstreeks aan eindgebruikers moet worden getoond.

De maker documenteert functieaanroepen, webbrowsen, uitvoering van Python-code via hulpmiddelen en Structured Outputs. De vermelde modelfuncties omvatten ook streaming; de gedocumenteerde hulpmiddelomgeving omvat functies, code-interpretatie, MCP-verbindingen en zoeken op het web. Toepassingen stellen hun bewerkingen beschikbaar, voeren ze uit en geven werkelijke resultaten terug voor de volgende beslissing. De uiteindelijke tekst moet een voorgestelde actie onderscheiden van een voltooide bewerking en het bijbehorende bewijs.

Definieer voor een gerichte werkwijze de vereiste velden, voorwaarden en het voltooiingscriterium. Vraag om een uitleg die bij de code aansluit of een conclusie op basis van de aangeleverde tekst en gebruik vervolgens een vervolg om één ontbrekend detail te behandelen. Een bruikbaar eindresultaat is een specifiek bewerkingsvoorstel, vergelijking, briefing of gestructureerd resultaat dat de noodzakelijke feiten behoudt en elke nog onopgeloste voorwaarde benoemt.

**Ailoot Ultra · Batchverwerking** `POST /v1/batches` `openai/gpt-oss-20b:batch`

[`openai/gpt-oss-20b:batch`](https://ailoot.ai/models/nl-be/#m=openai%2Fgpt-oss-20b%3Abatch&route=Ultra&caller=openai%2Fgpt-oss-20b%3Abatch&fmt=batches)

OpenAI /`openai/gpt-oss-20b:batch`

### Aan de slag

OpenAI’s kleinere, algemeen inzetbare gpt-oss-model accepteert tekst en geeft tekst terug voor redeneren, programmeren en gespecialiseerde werkwijzen. Het ondersteunt instelbaar redeneren, functieaanroepen, Structured Outputs en fijnafstemming van de gepubliceerde open gewichten.

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 |
| --- | --- | --- | --- | --- |
| Veld`endpoint` | Type`string` | VereisteVereist | Waarden en limieten /v1/chat/completions | Standaard— |
| Veld`model` | Type`string` | VereisteVereist | Waarden en limieten openai/gpt-oss-20b:batch | Standaard— |
| Veld`requests` | Type`batch_item[]` | VereisteVereist | Waarden en limieten Minimumaantal items: 1 | Standaard— |
| Veld`requests[].custom_id` | Type`string` | VereisteVereist | Waarden en limieten | Standaard— |
| Veld`requests[].body.messages` | Type`message[]` | VereisteVereist | Waarden en limieten | Standaard— |
| Veld`completion_window` | Type`string` | VereisteOptioneel | Waarden en limieten 24h | Standaard— |
| Veld`provider` | Type`object\|null` | VereisteOptioneel | Waarden en limieten | Standaard— |
| Veld`requests[].body.model` | Type`string` | VereisteOptioneel | Waarden en limieten openai/gpt-oss-20b:batch, openai/gpt-oss-20b | Standaard— |
| Veld`provider.only` | Type`string[]` | VereisteOptioneel | Waarden en limieten deepinfra/bf16 | Standaard— |
| Veld`provider.allow_fallbacks` | Type`boolean\|null` | VereisteOptioneel | Waarden en limieten false, null | Standaard— |

Methodeparameters en levenscyclus

| Parameter | Contract |
| --- | --- |
| Parameter`content_type` | Contractapplication/json |
| Parameter`required` | Contractendpoint, model, requests |
| Parameter`material_types` | Contracttext |
| Parameter`representation` | Contractinline requests\[\]; elk item bevat custom\_id en body |
| Parameter`request_endpoint_profile` | Contract/v1/chat/completions |
| Parameter`file_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. |
| Parameter`serialization_order` | Contractendpoint, model, provider (indien opgegeven), completion\_window (indien opgegeven), requests als laatste |
| Parameter`optional_controls` | Contractprovider.only, provider.allow\_fallbacks, completion\_window |
| Parameter`schema_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.000048** / 1K tokens Uitvoer · Uitvoertokens **$0.000224** / 1K tokens Invoer · Cache lezen **—** / 1K tokens Invoer · Cache schrijven **—** / 1K tokens Invoer · Cache schrijven, 1 uur **—** / 1K tokens |
| ConfiguratieAanvraaglengte · niveau 1 | Tariefstaffel— | Contexttokens, meer dan0 | Contexttokens, tot en metGeen bovengrens | Kosten Invoer · Invoertokens **$0.000048** / 1K tokens Uitvoer · Uitvoertokens **$0.000224** / 1K tokens Invoer · Cache lezen **—** / 1K tokens Invoer · Cache schrijven **—** / 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 →](https://ailoot.ai/docs/nl-be/billing/reserve/)

### Voorbeeldverzoeken

#### Ailoot Ultra · Batchverwerking

curl · bewaarde fixturePython HTTP · daadwerkelijke JSONL van de klantPython · sla elk voltooid resultaat op

```bash
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-oss-20b: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
```

```python
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-oss-20b:batch', 'openai/gpt-oss-20b']: raise ValueError("body.model must be an exact documented caller or wire ID")
    return {"endpoint":"/v1/chat/completions", "model":"openai/gpt-oss-20b: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"))
```

```python
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

curl · Status van de oorspronkelijke bewerking

```bash
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 |
| --- | --- |
| Veld`results[].custom_id` | Typestring |
| Veld`results[].response.body.choices[].message.content` | Typestring\|null |
| Veld`results[].error` | Typeobject\|null |
| Veld`usage` | Typeobject\|null |
| Veld`id` | Typestring |
| Veld`model` | Typestring |
| Veld`endpoint` | Typestring |
| Veld`status` | Typestring |
| Veld`request_counts` | Typeobject |
| Veld`results[].id` | Typestring |
| Veld`results[].response.status_code` | Typeinteger |
| Veld`results[].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-oss-20b:batch`](https://ailoot.ai/models/nl-be/#m=openai%2Fgpt-oss-20b%3Abatch&route=Ultra&caller=openai%2Fgpt-oss-20b%3Abatch&fmt=batches)

#### Aliasnamen voor methodepaden

Gebruik de hierboven getoonde methodepaden.

#### Gerelateerde aanroeper-ID’s

[`openai/gpt-oss-20b:batch`](https://ailoot.ai/models/nl-be/#m=openai%2Fgpt-oss-20b%3Abatch&route=Ultra&caller=openai%2Fgpt-oss-20b%3Abatch&fmt=batches)

FAQ · OpenAI: gpt-oss-20b (batch)

Welke invoer en resultaten zijn beschikbaar?

`POST /v1/batches` · `openai/gpt-oss-20b:batch`: `text` → `text`

Welke velden gebruikt het verzoek?

`POST /v1/batches` · `openai/gpt-oss-20b:batch`: `endpoint`, `model`, `requests`, `completion_window`, `provider`

Welke limieten gelden?

`POST /v1/batches` · `openai/gpt-oss-20b:batch`: `requests.min_items`: `1`

Verbind Ailoot met Claude Code, OpenCode, Hermes of je eigen applicatie.

## Het bedrijf en zijn projectenportefeuille

Het bedrijf en zijn projectenportefeuille: miljoenen klanten; maandelijkse verkopen in de miljarden.

## Koop tokens met korting.

Abonnementsvoordeel voor regelmatig gebruik. Promotiecodes geven tot 50% korting op tokens.

Abonnement

Kies een abonnement met korting voor je terugkerende verzoeken.

Promotiecode tot 50%

Vul de code bij aankoop in. De prijs wordt volgens de lopende actie herberekend.

Kosten in de geschiedenis

Model, tokens en bedrag worden per verzoek bewaard.

[Kies een abonnement](https://ailoot.ai/docs/nl-be/billing/subscriptions/) · [Bekijk modelprijzen](https://ailoot.ai/models/nl-be/)

## Verbind de API met het product dat je verkoopt.

SaaS, apps en bots volgens de openbare aanbodvoorwaarden en licentieovereenkomst van Ailoot. Vraag voor doorverkoop een resellerlicentie aan.

Commerciële applicatie

Voeg tekst-, beeld-, video- en geluidsgeneratie aan betaalde functies van je service toe.

Resellerlicentie

Stuur een projectbeschrijving en toegangsschema. Vraag schriftelijke voorwaarden voor gebruik en doorverkoop.

Documenten op de site

Aanbodvoorwaarden, licentieovereenkomst en gegevensbeleid zijn vóór het verbinden beschikbaar.

[Vraag een resellerlicentie aan](mailto:support@ailoot.ai) · [Aanbodvoorwaarden en licentieovereenkomst](https://ailoot.ai/legal/offer?lang=nl-be)

## Ailoot · Het bedrijf en zijn projectenportefeuille





Ailoot bouwt op opgebouwde operationele ervaring, een groot klantenbestand, een stabiele dienst en doorlopende KPI-controle.





Het bedrijf en zijn projectenportefeuille: miljoenen klanten; maandelijkse verkopen in de miljarden.





Ailoot gebruikt die operationele ervaring voor API-toegang tot AI-functies in klantproducten, agents, applicaties en automatiseringen.
