Source: https://ailoot.ai/models/nl/liquid-lfm-2-5-24b-a2b/
Canonical: https://ailoot.ai/models/nl/liquid-lfm-2-5-24b-a2b/
Language: nl

# LiquidAI: LFM2.5-24B-A2B

[Markdown](https://ailoot.ai/models/nl/liquid-lfm-2-5-24b-a2b/index.md) · [JSON](https://ailoot.ai/models/nl/liquid-lfm-2-5-24b-a2b/facts.json)

## [LiquidAI: LFM2.5-24B-A2B](https://ailoot.ai/models/nl/liquid-lfm-2-5-24b-a2b/)

LFM2.5-24B-A2B is LiquidAI's tekstredeneermodel voor toolgestuurde agents, met in totaal 24 miljard en 2,45 miljard actieve parameters. Het redeneert vóór het antwoorden, ondersteunt toolaanroepen en schemagestuurde uitvoer en is gepubliceerd met een context van 128.000 tokens en een completionlimiet van 8.192 tokens.

- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `liquid/lfm-2.5-24b-a2b`](https://ailoot.ai/models/nl/liquid-lfm-2-5-24b-a2b/#method-0)
- [**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `liquid/lfm-2.5-24b-a2b`](https://ailoot.ai/models/nl/liquid-lfm-2-5-24b-a2b/#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.

LFM2.5-24B-A2B is een mixture-of-experts-model van LiquidAI voor tekstgebaseerd redeneren en agents die tools gebruiken. Het heeft in totaal 24 miljard parameters, waarvan 2,45 miljard actief zijn voor een token. Redenering is onderdeel van elk antwoord, dus de taak zou het doel, het te gebruiken bewijs en het resultaat dat de applicatie nodig heeft moeten definiëren.

#### Geef een agent een afgebakend doel

Het model past bij workflows waarin een taalmodel een volgende stap kiest, de resulterende observatie leest en daarna verdergaat naar een te leveren resultaat. Formuleer het doel in termen die de applicatie kan controleren: zoek het relevante record, vergelijk twee configuraties, bereid een wijzigingsvoorstel voor of maak een gestructureerde beoordeling.

Bied tools met duidelijke doelen aan en bewaar hun teruggegeven observaties in de taakcontext. Het model publiceert ondersteuning voor toolaanroepen, inclusief het selecteren van een tool wanneer de interface die mogelijkheid biedt. Uitvoering behoort tot de applicatie die deze tools beheert. Houd een teruggegeven observatie gescheiden van een door het model geschreven instructie, vooral wanneer een latere stap afhangt van het resultaat van een zoekactie of opzoeking.

#### Retrieval voor kennisintensief werk

De uitgever beveelt retrieval of webzoekacties aan voor taken die afhankelijk zijn van gedetailleerde externe kennis. Bouw de bewijsstap in de workflow in plaats van het model te vragen feiten te verzinnen die het niet heeft ontvangen. Identificeer de opgehaalde passages en vraag het antwoord de conclusies met die passages te verbinden.

Voor een supportworkflow kan dit betekenen dat het relevante beleid wordt opgezocht en wordt uitgelegd hoe het op het aangeleverde geval van toepassing is. Voor een technische taak kan het betekenen dat documentatie en configuratie worden vergeleken voordat een wijziging wordt voorgesteld. Houd belangrijke opgehaalde inhoud in de context, zodat het eindantwoord kan worden gecontroleerd zonder elke opzoeking te herhalen.

#### Gestructureerde antwoorden en samplingkeuzes

Het gepubliceerde model ondersteunt schemagestuurde gestructureerde uitvoer. Definieer een kleine resultaatstructuur rond wat de applicatie gebruikt, zoals een geselecteerde categorie, uitleg, bewijsverwijzingen en een volgende actie. Scheid het redeneerproces van het model van de velden die de volgende component moet opslaan of weergeven.

LiquidAI vermeldt temperatuur 0,1, top\_k 50 en repetition\_penalty 1,05 als gepubliceerde samplingaanbevelingen en de opgeslagen catalogus herhaalt die standaardwaarden. Ze vormen een herhaalbaar startpunt voor het beoordelen van een specifieke workflow. Houd de gekozen instellingen consistent wanneer u representatieve taken vergelijkt.

#### Capaciteit en taal

Het gepubliceerde servicerecord vermeldt een contextvenster van 128.000 tokens en een completionlimiet van 8.192 tokens. Bereid een beknopte antwoordspecificatie voor, zodat het eindresultaat binnen die uitvoerruimte past. Houd relevant bewijs samen en laat voldoende uitvoerruimte over voor het gevraagde resultaat.

De fabrikant vermeldt een meertalige set met onder meer Engels, Russisch, Chinees, Spaans, Arabisch en andere talen. Behoud bronterminologie en te behouden namen wanneer u het model voor meertalig werk gebruikt. Een taak met een vaste woordenschat heeft baat bij een expliciete woordenlijst en dezelfde uitvoerconventies in alle talen.

#### Mogelijkheden

- Mixture-of-experts-redenering met uitsluitend tekst: in totaal 24 miljard parameters, waarvan 2,45 miljard actief.
- Verplicht redeneren vóór het eindantwoord.
- Gepubliceerde tools, toolselectie en gestructureerde uitvoer met JSON-schema.
- Retrievalgerichte workflows voor kennisafhankelijke taken.
- Gepubliceerde context van 128.000 tokens en completionlimiet van 8.192 tokens.

#### Toepassingen

- **Assistent ondersteund door retrieval** — Een vraag, opgehaalde passages en een vereiste antwoordindeling. Resultaat: Een aan bewijs gekoppeld antwoord dat aan de passages kan worden getoetst.
- **Toolgestuurde triage** — Een afgebakend geval en gecontroleerde opzoektools. Resultaat: Een gestructureerde beoordeling en een voorgestelde volgende actie.
- **Configuratievergelijking** — Relevante configuratie, documentatie en vergelijkingscriteria. Resultaat: Een geïdentificeerde verzameling verschillen met ondersteunend bewijs.
- **Meertalige gestructureerde analyse** — Brontekst, een woordenlijst en consistente resultaatvelden. Resultaat: Vergelijkbare records die te behouden terminologie bewaren.

#### Limieten

- **Context** — Gepubliceerd servicecontextvenster: 128.000 tokens.
- **Antwoord** — Gepubliceerde completionlimiet: 8.192 tokens.
- **Redenering** — Het model redeneert vóór het antwoorden; verplicht redeneren is onderdeel van de gepubliceerde configuratie.
- **Invoer/uitvoer** — Het gepubliceerde model accepteert tekst en geeft tekst terug.

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `liquid/lfm-2.5-24b-a2b`

[`liquid/lfm-2.5-24b-a2b`](https://ailoot.ai/models/nl/#m=liquid%2Flfm-2.5-24b-a2b&route=Ultra&caller=liquid%2Flfm-2.5-24b-a2b&fmt=chat)

LiquidAI /`liquid/lfm-2.5-24b-a2b`

### Aan de slag

LFM2.5-24B-A2B is LiquidAI's tekstredeneermodel voor toolgestuurde agents, met in totaal 24 miljard en 2,45 miljard actieve parameters. Het redeneert vóór het antwoorden, ondersteunt toolaanroepen en schemagestuurde uitvoer en is gepubliceerd met een context van 128.000 tokens en een completionlimiet van 8.192 tokens.

Toegestane invoer

Tekst

Resultaten

Tekst

### Beschikbaar in Ailoot · invoer en methoden

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

Invoertypen

`text`

Uitvoertypen

`text`

Uitvoerformaat

json of SSE

| Veld | Type | Vereiste | Waarden en limieten | Standaard |
| --- | --- | --- | --- | --- |
| Veld`model` | Type`string` | VereisteVereist | Waarden en limieten liquid/lfm-2.5-24b-a2b | 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 is geselecteerd

Flexmodus

Niet opgegeven Wanneer de modus flex is geselecteerd

Maximale redeneerinspanning

Niet opgegeven Wanneer bij maximale redeneerinspanning de default-aanpassing wordt gebruikt

#### 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.0014** / 1K tokens Invoer · Cache lezen **$0.00005** / 1K tokens Invoer · Cache schrijven **—** / 1K tokens Invoer · Cache schrijven, 1 uur **—** / 1K tokens |
| ConfiguratieNiveau 1 voor aanvraaglengte | Tariefstaffel— | Contexttokens, meer dan0 | Contexttokens, tot en metGeen bovengrens | Kosten Invoer · Invoertokens **$0.0001** / 1K tokens Uitvoer · Uitvoertokens **$0.0014** / 1K tokens Invoer · Cache lezen **$0.00005** / 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/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":"liquid/lfm-2.5-24b-a2b","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="liquid/lfm-2.5-24b-a2b", 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** [`liquid/lfm-2.5-24b-a2b`](https://ailoot.ai/models/nl/#m=liquid%2Flfm-2.5-24b-a2b&route=Ultra&caller=liquid%2Flfm-2.5-24b-a2b&fmt=chat)

#### Aliasnamen voor methodepaden

`/chat/completions`

#### Gerelateerde aanroeper-ID’s

[`liquid/lfm-2.5-24b-a2b`](https://ailoot.ai/models/nl/#m=liquid%2Flfm-2.5-24b-a2b&route=Ultra&caller=liquid%2Flfm-2.5-24b-a2b&fmt=chat)

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `liquid/lfm-2.5-24b-a2b`

[`liquid/lfm-2.5-24b-a2b`](https://ailoot.ai/models/nl/#m=liquid%2Flfm-2.5-24b-a2b&route=Ultra&caller=liquid%2Flfm-2.5-24b-a2b&fmt=messages)

LiquidAI /`liquid/lfm-2.5-24b-a2b`

### Aan de slag

LFM2.5-24B-A2B is LiquidAI's tekstredeneermodel voor toolgestuurde agents, met in totaal 24 miljard en 2,45 miljard actieve parameters. Het redeneert vóór het antwoorden, ondersteunt toolaanroepen en schemagestuurde uitvoer en is gepubliceerd met een context van 128.000 tokens en een completionlimiet van 8.192 tokens.

Toegestane invoer

Tekst

Resultaten

json · sse

### Beschikbaar in Ailoot · invoer en methoden

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

Invoertypen

`text`

Uitvoertypen

`json`, `sse`

Uitvoerformaat

JSON of SSE

| Veld | Type | Vereiste | Waarden en limieten | Standaard |
| --- | --- | --- | --- | --- |
| Veld`model` | Type`string` | VereisteVereist | Waarden en limieten liquid/lfm-2.5-24b-a2b | 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 is geselecteerd

Flexmodus

Niet opgegeven Wanneer de modus flex is geselecteerd

Maximale redeneerinspanning

Niet opgegeven Wanneer bij maximale redeneerinspanning de default-aanpassing wordt gebruikt

#### 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.0014** / 1K tokens Invoer · Cache lezen **$0.00005** / 1K tokens Invoer · Cache schrijven **—** / 1K tokens Invoer · Cache schrijven, 1 uur **—** / 1K tokens |
| ConfiguratieNiveau 1 voor aanvraaglengte | Tariefstaffel— | Contexttokens, meer dan0 | Contexttokens, tot en metGeen bovengrens | Kosten Invoer · Invoertokens **$0.0001** / 1K tokens Uitvoer · Uitvoertokens **$0.0014** / 1K tokens Invoer · Cache lezen **$0.00005** / 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/billing/reserve/)

### Voorbeeldverzoeken

#### Ailoot Ultra · Anthropic Messages

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

```json
{
  "model": "liquid/lfm-2.5-24b-a2b",
  "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': 'liquid/lfm-2.5-24b-a2b', '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': 'liquid/lfm-2.5-24b-a2b', '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** [`liquid/lfm-2.5-24b-a2b`](https://ailoot.ai/models/nl/#m=liquid%2Flfm-2.5-24b-a2b&route=Ultra&caller=liquid%2Flfm-2.5-24b-a2b&fmt=messages)

#### Aliasnamen voor methodepaden

`/chat/completions`

#### Gerelateerde aanroeper-ID’s

[`liquid/lfm-2.5-24b-a2b`](https://ailoot.ai/models/nl/#m=liquid%2Flfm-2.5-24b-a2b&route=Ultra&caller=liquid%2Flfm-2.5-24b-a2b&fmt=messages)

FAQ · LiquidAI: LFM2.5-24B-A2B

Welke invoer en resultaten zijn beschikbaar?

`POST /v1/chat/completions` · `liquid/lfm-2.5-24b-a2b`: `text` → `text` `POST /v1/messages` · `liquid/lfm-2.5-24b-a2b`: `text` → `json`, `sse`

Welke velden gebruikt het verzoek?

`POST /v1/chat/completions` · `liquid/lfm-2.5-24b-a2b`: `model`, `messages`, `stream` `POST /v1/messages` · `liquid/lfm-2.5-24b-a2b`: `model`, `messages`, `max_tokens`, `stream`

Welke limieten gelden?

`POST /v1/chat/completions` · `liquid/lfm-2.5-24b-a2b`: `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/billing/subscriptions/) · [Bekijk modelprijzen](https://ailoot.ai/models/nl/)

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

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