Source: https://ailoot.ai/models/nl-be/codegeex-4/
Canonical: https://ailoot.ai/models/nl-be/codegeex-4/
Language: nl-be

# CodeGeeX-4

[Markdown](https://ailoot.ai/models/nl-be/codegeex-4/index.md) · [JSON](https://ailoot.ai/models/nl-be/codegeex-4/facts.json)

## [CodeGeeX-4](https://ailoot.ai/models/nl-be/codegeex-4/)

CodeGeeX4 is een meertalige familie van programmeermodellen voor codegeneratie, aanvulling, uitleg, herstel en repositoryvragen. De eigen gidsen behandelen taakspecifieke prompts, het opvullen van gaten tussen bestaande code en het gebruiken van gerelateerde bestanden om wijzigingen met expliciete bestandspaden voor te bereiden.

- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `codegeex-4`](https://ailoot.ai/models/nl-be/codegeex-4/#method-0)
- [**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `codegeex-4`](https://ailoot.ai/models/nl-be/codegeex-4/#method-1)

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.

CodeGeeX4 is een meertalige familie van programmeermodellen, opgebouwd rond programmeerhulp en werk over gerelateerde bronbestanden heen. De maker publiceert CodeGeeX4-ALL-9B als opensourcelid van de reeks, ontwikkeld door verdere training van GLM-4-9B. De documentatie behandelt codegeneratie en -aanvulling, programmeervragen, repositoryanalyse en verbonden workflows met een code-interpreter, webzoeken of functieaanroepen. De gewone uitvoer is tekst: code, uitleg, antwoorden of wijzigingen met bestandslabels, volgens de taakinstructie.

Begin met het kiezen van de bewerking en geef het model de code die het nodig heeft. De eigen gids voor systeemprompts bevat afzonderlijke instructies voor het toevoegen van commentaar, uitleggen van een programma, vertalen tussen programmeertalen, beoordelen of herstellen van code, genereren van tests en beantwoorden van vragen over een bestand. Voeg voor herstel de falende code, het waargenomen gedrag en het beoogde resultaat toe. Vermeld voor vertaling de doelprogrammeertaal en geef de volledige relevante functie mee. Voor commentaar behoudt de taakinstructie van de maker de code en voegt ze commentaar toe; voor verschillende taken die code opleveren, vraagt ze uitsluitend om code. Die verschillen helpen het resultaat bruikbaar te maken als codewerkstuk of uitleg, in plaats van het uitvoerformaat impliciet te laten.

De gidsen bieden Chinese en Engelse systeemprompts. De taal van de systeeminstructie bepaalt op zichzelf niet de antwoordtaal, dus vraag expliciet om de antwoordtaal wanneer uitleg nodig is. De gespecialiseerde beoordelingsrichtlijnen beschrijven Chinese uitvoer; de algemene prompt voor programmeerassistentie biedt een afzonderlijke manier om in een andere antwoordtaal om beoordeling te vragen. Sommige taaksjablonen stellen de commentaartaal gelijk aan de brontaal en sluiten gemengde Chinese en Engelse uitvoer uit. Herhaal in een doorlopend gesprek de relevante taakinstructie wanneer je van bewerking wisselt, zodat een aanvraag om uitleg niet wordt verward met de vorige aanvraag om uitsluitend code als uitvoer.

Voor contextuele aanvulling beschrijft het eigen formaat het doelbestand, de programmeertaal en de code aan beide kanten van het invoegpunt. Gebruik het relatieve bestandspad met ###PATH: en neem ###LANGUAGE: op; de gids staat een lege taalwaarde toe wanneer die onbekend is. ###MODE: selecteert LINE voor een aanvulling op één regel of BLOCK voor meerdere regels, met BLOCK als gedocumenteerde standaard. De fill-in-the-middle-volgorde bestaat eerst uit het achtervoegsel, dan het voorvoegsel en vervolgens het ontbrekende midden, gemarkeerd met \<|code\_suffix|\>, \<|code\_prefix|\> en \<|code\_middle|\>. Het invulsjabloon van de maker laat de systeemprompt weg. Door het achtervoegsel te behouden, krijgt het model de omringende controlestroom en de code die na de invoeging moet blijven bestaan. Het resultaat is de voorgestelde ontbrekende code, die vervolgens op de oorspronkelijke plaats kan worden gecontroleerd.

Aanvulling over meerdere bestanden voegt gerelateerde fragmenten als referentiemateriaal toe, elk ingeleid met ###REFERENCE: en een eigen ###PATH:. Houd die referenties gescheiden van het doelbestand en het invoegpunt. Geef bijvoorbeeld bij het aanvullen van een functie die een bestaande hulpfunctie aanroept de signatuur en implementatie van de hulpfunctie mee, naast het voorvoegsel en achtervoegsel van de doelfunctie. De gids voor aanvulling op projectniveau breidt deze aanpak uit naar het genereren van een nieuw bestand op basis van projectvereisten en relevante bestaande code. Duidelijke paden en geselecteerde afhankelijkheden maken het mogelijk om code die als bewijs wordt aangeleverd te onderscheiden van het bestand dat het model moet aanvullen.

Repositoryvragen gebruiken een andere eigen opmaak: vermeld elk bestand onder ###PATH:, voeg de code toe en stel vervolgens de vraag. Een bruikbare opdracht kan vragen waar een waarde wordt gedefinieerd of hoe een aanroep tussen de aangeleverde modules verloopt. Repositorybewerking gebruikt een eigen systeeminstructie voor het toevoegen, verwijderen of wijzigen van bestanden en vraagt om uitvoer in de vorm ###PATH: {PATH}, gevolgd door de code. Bereid de relevante bestanden voor en beschrijf de vereiste wijziging, inclusief het toe te voegen bestand of het te behouden gedrag. Lees de teruggegeven blokken met padlabels als voorgestelde wijzigingen; ze bewijzen niet dat een repository al is gewijzigd of dat de code is uitgevoerd.

Voor het gepubliceerde lid CodeGeeX4-ALL-9B documenteert de maker een context van 128K en beveelt hij aan relevante repository-inhoud te selecteren wanneer een project dat venster overschrijdt. Het ophalen van gerelateerde fragmenten en het inkorten van te grote invoer zijn voorbereidingsstappen in de repositorygids. De context moet plaats bieden aan de instructies, aangeleverde code en gegenereerde voortzetting, zodat een gerichte verzameling bestanden vaak nuttiger is dan een ongedifferentieerde projectdump. De voorbeeldinstellingen voor generatie van de maker regelen de lengte van één specifieke uitvoering; ze definiëren geen universele maximale antwoordlengte voor elke CodeGeeX4-editie.

De reeks beschrijft ook verbonden programmeerworkflows met interpreters, zoeken en functieaanroepen. Zo’n workflow vereist dat de omringende applicatie de genoemde tools aanbiedt en hun resultaten aan het gesprek teruggeeft. Vermeld bij een aanvraag om uitvoerbare code de beoogde taal, afhankelijkheden en het verwachte gedrag; vraag bij een analyse om de relevante bestands- of functieverwijzingen. Compileer of voer de voorgestelde wijzigingen uit in de beoogde omgeving en controleer het gedrag aan de hand van de aangeleverde vereiste voordat je ze in een project opneemt.

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `codegeex-4`

[`codegeex-4`](https://ailoot.ai/models/nl-be/#m=codegeex-4&route=Ultra&caller=codegeex-4&fmt=chat)

Zhipu /`codegeex-4`

### Aan de slag

CodeGeeX4 is een meertalige familie van programmeermodellen voor codegeneratie, aanvulling, uitleg, herstel en repositoryvragen. De eigen gidsen behandelen taakspecifieke prompts, het opvullen van gaten tussen bestaande code en het gebruiken van gerelateerde bestanden om wijzigingen met expliciete bestandspaden voor te bereiden.

Toegestane invoer

Tekst

Resultaten

Tekst

### Beschikbaar in Ailoot · invoer en methoden

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions`

Invoer

`text`

Uitvoer

`text`

Uitvoerformaat

json of SSE

| Veld | Type | Vereiste | Waarden en limieten | Standaard |
| --- | --- | --- | --- | --- |
| Veld`model` | Type`string` | VereisteVereist | Waarden en limieten codegeex-4 | Standaard— |
| Veld`messages` | Type`message[]` | VereisteVereist | Waarden en limieten Minimumaantal items: 1 | Standaard— |
| Veld`messages[].role` | Type`string` | VereisteVereist | Waarden en limieten Afhankelijk van het model | Standaard— |
| Veld`messages[].content` | Type`string` | VereisteOptioneel | Waarden en limieten Geldt wanneer: Tekstgesprek | Standaard— |
| Veld`stream` | Type`boolean` | VereisteOptioneel | Waarden en limieten | Standaardfalse |

Combinaties van invoermaterialen

**Tekst** · UTF8-tekst

`messages[].content`

Methodeparameters en levenscyclus

| Parameter | Contract |
| --- | --- |
| Parameter`content_type` | Contractapplication/json |
| Parameter`required` | Contractmodel, messages |
| Parameter`material_types` | Contracttext |
| Parameter`messages` | Contractberichtenarray met de structuur role/content |
| Parameter`file_material` | Contractwerkelijk UTF-8-document ingevoegd als letterlijke tekst; er wordt geen bestands-ID afgeleid |
| Parameter`optional_controls` | Contractstream |
| Parameter`control_scope` | ContractTekstgesprek; stream is een booleaanse waarde en is standaard false. |
| Parameter`output_modalities` | Contracttext |
| Parameter`hosted_operations` | Contractfalse |
| Parameter`multimodal_input_binding` | Contractnull |

Methodealiasnamen: `/chat/completions`

Levenscyclus: `synchronous_or_streamed`

Stuur het exacte model-ID mee met messages.

Contextlengte is geen uitvoerlimiet.

Een tekstbestand kan letterlijke tekst aanleveren; beeld-, audio- en bestandsobjectinvoer vereisen een exacte koppeling.

### 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

#### Ailoot-tarieven

#### Prijzen per configuratie

| Configuratie | Tariefstaffel | Kosten |
| --- | --- | --- |
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Kosten Invoer · Invoertokens **$0.028** / 1K tokens Uitvoer · Uitvoertokens **$0.028** / 1K tokens Invoer · Cache lezen **$0** / 1K tokens Invoer · Cache schrijven **$0** / 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 · OpenAI Chat

curlPython SDK

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"codegeex-4","messages":[{"role":"user","content":"hello"}],"stream":false}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
    if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
```

```python
from openai import OpenAI
import os

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model="codegeex-4", messages=[{"role":"user","content":"hello"}], stream=False)
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

save_result(result.to_dict(mode="json"))
```

### Resultaten ophalen en opslaan

#### Ailoot Ultra · OpenAI Chat

json of SSE

##### Alle voltooide resultaten bewaren

Bewaar elk volledig teruggegeven antwoord, bestand en inhoudsonderdeel.

Bewaar elke keuze en de bijbehorende inhoud, toolaanroepen en redeneringen. Voeg in SSE delta’s samen per keuze-/toolindex en bewaar de uiteindelijke reden van beëindiging en de verbruiksgegevens.

##### Als het oorspronkelijke antwoord moet worden gecontroleerd

Bewaar aanvraag-/antwoord-ID’s en headers. Er wordt geen algemene URL meegeleverd om teksttaken op te halen.

Antwoordvelden

| Veld | Type |
| --- | --- |
| Veld`choices[].index` | Typeinteger |
| Veld`choices[].message.content` | Typestring\|null |
| Veld`choices[].message.tool_calls` | Typetool\_call\[\] |
| Veld`choices[].message.reasoning_content` | Typestring |
| Veld`choices[].message.reasoning_details` | Typeobject\|array |
| Veld`choices[].finish_reason` | Typestring\|null |
| Veld`usage` | Typeobject |

Fouten en vervolgstappen

| Antwoord | Voorwaarde | Volgende stap |
| --- | --- | --- |
| Antwoord400 · `invalid_request_error` | VoorwaardeVerplichte velden, de materiaalrepresentatie of een parameterwaarde zijn ongeldig | Volgende stapCorrigeer de aangegeven velden vóór een nieuwe aanmaakaanvraag. |

### Aliasnamen

#### Modelaliasnamen

**Ailoot Ultra** [`codegeex-4`](https://ailoot.ai/models/nl-be/#m=codegeex-4&route=Ultra&caller=codegeex-4&fmt=chat)

#### Aliasnamen voor methodepaden

`/chat/completions`

#### Gerelateerde aanroeper-ID’s

[`codegeex-4`](https://ailoot.ai/models/nl-be/#m=codegeex-4&route=Ultra&caller=codegeex-4&fmt=chat)

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `codegeex-4`

[`codegeex-4`](https://ailoot.ai/models/nl-be/#m=codegeex-4&route=Ultra&caller=codegeex-4&fmt=messages)

Zhipu /`codegeex-4`

### Aan de slag

CodeGeeX4 is een meertalige familie van programmeermodellen voor codegeneratie, aanvulling, uitleg, herstel en repositoryvragen. De eigen gidsen behandelen taakspecifieke prompts, het opvullen van gaten tussen bestaande code en het gebruiken van gerelateerde bestanden om wijzigingen met expliciete bestandspaden voor te bereiden.

Toegestane invoer

Tekst

Resultaten

json · sse

### Beschikbaar in Ailoot · invoer en methoden

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages`

Invoer

`text`

Uitvoer

`json`, `sse`

Uitvoerformaat

JSON of SSE

| Veld | Type | Vereiste | Waarden en limieten | Standaard |
| --- | --- | --- | --- | --- |
| Veld`model` | Type`string` | VereisteVereist | Waarden en limieten codegeex-4 | Standaard— |
| Veld`messages` | Type`message[]` | VereisteVereist | Waarden en limieten | Standaard— |
| Veld`messages[].role` | Type`string` | VereisteVereist | Waarden en limieten user, assistant | Standaard— |
| Veld`messages[].content` | Type`string` | VereisteVereist | Waarden en limieten | Standaard— |
| Veld`max_tokens` | Type`integer` | VereisteVereist | Waarden en limieten | Standaard— |
| Veld`stream` | Type`boolean` | VereisteOptioneel | Waarden en limieten | Standaardfalse |

Combinaties van invoermaterialen

**Tekst** · UTF-8-tekst

`messages[].content als tekenreeks`

Methodeparameters en levenscyclus

| Parameter | Contract |
| --- | --- |
| Parameter`content_type` | Contractapplication/json |
| Parameter`required` | Contractmodel, messages, max\_tokens |
| Parameter`optional_controls` | Contractstream |
| Parameter`material_types` | Contracttext |
| Parameter`text_file_material` | ContractLees het werkelijke UTF-8-document en plaats de tekst ervan in de aangegeven invoer of in de inhoudstekenreeks van een bericht. |

Levenscyclus: `synchronous_or_streamed`

### 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

#### Ailoot-tarieven

#### Prijzen per configuratie

| Configuratie | Tariefstaffel | Kosten |
| --- | --- | --- |
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Kosten Invoer · Invoertokens **$0.028** / 1K tokens Uitvoer · Uitvoertokens **$0.028** / 1K tokens Invoer · Cache lezen **$0** / 1K tokens Invoer · Cache schrijven **$0** / 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 · Anthropic Messages

Volledige minimale JSON-bodycurl · gebruik je UTF-8-documentPython · sla het volledige resultaat op

```json
{
  "model": "codegeex-4",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'codegeex-4', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
```

```python
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'codegeex-4', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
```

### Resultaten ophalen en opslaan

#### Ailoot Ultra · Anthropic Messages

JSON of SSE

##### Alle voltooide resultaten bewaren

Bewaar elk volledig teruggegeven antwoord, bestand en inhoudsonderdeel.

Bewaar alle inhoudsblokken, handtekeningen van redeneringen en werkelijke toolgebruik-ID’s. Voeg alle SSE-blokdelta’s samen; het eerste tekstblok is niet de volledige uitvoer.

##### Als het oorspronkelijke antwoord moet worden gecontroleerd

Bewaar aanvraag-/antwoord-ID’s en headers. Er wordt geen algemene URL meegeleverd om teksttaken op te halen.

Antwoordvelden

| Veld | Type |
| --- | --- |
| Veld`id` | Typestring |
| Veld`model` | Typestring |
| Veld`content[]` | Typetext\|thinking\|tool\_use\|other content block |
| Veld`stop_reason` | Typestring\|null |
| Veld`usage` | Typeobject |

Fouten en vervolgstappen

| Antwoord | Voorwaarde | Volgende stap |
| --- | --- | --- |
| Antwoord400 · `invalid_request_error` | VoorwaardeVerplichte velden, de materiaalrepresentatie of een parameterwaarde zijn ongeldig | Volgende stapCorrigeer de aangegeven velden vóór een nieuwe aanmaakaanvraag. |

### Aliasnamen

#### Modelaliasnamen

**Ailoot Ultra** [`codegeex-4`](https://ailoot.ai/models/nl-be/#m=codegeex-4&route=Ultra&caller=codegeex-4&fmt=messages)

#### Aliasnamen voor methodepaden

`/chat/completions`

#### Gerelateerde aanroeper-ID’s

[`codegeex-4`](https://ailoot.ai/models/nl-be/#m=codegeex-4&route=Ultra&caller=codegeex-4&fmt=messages)

FAQ · CodeGeeX-4

Welke invoer en resultaten zijn beschikbaar?

`POST /v1/chat/completions` · `codegeex-4`: `text` → `text` `POST /v1/messages` · `codegeex-4`: `text` → `json`, `sse`

Welke velden gebruikt het verzoek?

`POST /v1/chat/completions` · `codegeex-4`: `model`, `messages`, `stream` `POST /v1/messages` · `codegeex-4`: `model`, `messages`, `max_tokens`, `stream`

Welke limieten gelden?

`POST /v1/chat/completions` · `codegeex-4`: `messages.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.
