Source: https://ailoot.ai/models/nl/deepseek-v3-1-thinking/
Canonical: https://ailoot.ai/models/nl/deepseek-v3-1-thinking/
Language: nl

# DeepSeek: DeepSeek V3.1

[Markdown](https://ailoot.ai/models/nl/deepseek-v3-1-thinking/index.md) · [JSON](https://ailoot.ai/models/nl/deepseek-v3-1-thinking/facts.json)

## [DeepSeek: DeepSeek V3.1](https://ailoot.ai/models/nl/deepseek-v3-1-thinking/)

DeepSeek V3.1 is een hybride tekstmodel met denkmodi en modi voor directe antwoorden in één editie. De context van 128K en het verbeterde toolgebruiksprofiel ondersteunen programmeren, documentanalyse en zoekfunctionaliteit die door de applicatie wordt geleverd, met tekst of voorgestelde toolaanroepen als resultaat.

- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `deepseek-v3.1-thinking`](https://ailoot.ai/models/nl/deepseek-v3-1-thinking/#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.

DeepSeek V3.1 is het hybride tekstmodel van DeepSeek: dezelfde editie met deze specifieke naam ondersteunt antwoorden met en zonder redeneren via verschillende instellingen van het chatsjabloon. De producent benadrukt verbeterd toolgebruik, agenttaken en efficiënter redeneren ten opzichte van het eerdere model. Het accepteert schriftelijke instructies en tekstcontext en genereert een antwoord, code of inhoud voor toolaanroepen. De oorspronkelijke V3.1-identiteit staat los van Terminus, V3.2 en de V4-familie.

De modelkaart vermeldt in totaal 671 miljard parameters, 37 miljard actieve parameters en een context van 128K voor zowel de basis- als de natrainingseditie. V3.1 bouwt voort op de oorspronkelijke V3-basis met uitgebreide training op lange documenten vóór de natraining. De mixture-of-experts- en latent-attention-structuur volgt de V3-architectuur. Deze ontwerpfeiten verklaren het tekstprofiel met lange context zonder het contextgetal in een afzonderlijke specificatie voor maximale uitvoer te veranderen.

De modus zonder redeneren bereidt een direct antwoord voor, terwijl de denkmodus vóór het antwoord een redeneerfase start. Het sjabloon van de producent gebruikt een afsluitende denkmarkering voor directe antwoorden en een openende denkmarkering voor de huidige redeneerbeurt. In een gesprek met meerdere beurten wordt eerdere redeneerinhoud verwijderd, terwijl eindantwoorden en de afsluitende markering in de context blijven. Dit is de oorspronkelijke geschiedenisregel van V3.1, onderscheiden van de latere V3.2-regel die redeneringen over toolgerelateerde berichten heen behoudt.

Standaardtoolaanroepen zijn gedocumenteerd in de modus zonder redeneren. De applicatie levert functienamen, beschrijvingen en parameterschema's; het model geeft een geselecteerde toolnaam en JSON-argumenten terug in de representatie voor toolaanroepen van de producent. De applicatie voert de bewerking uit en geeft het resultaat terug. Geef tools specifieke doelen en houd de teruggegeven waarneming gekoppeld aan de aanroep, zodat de volgende modelstap bewijs heeft in plaats van een aanname dat een handeling heeft plaatsgevonden.

Zoeken in denkmodus gebruikt een afzonderlijk gespecialiseerd zoekagentformaat. DeepSeek documenteert een door de gebruiker geleverde zoektool voor vragen die externe of actuele informatie vereisen, met herhaalde aanroepen en waarnemingen over meerdere beurten. Zoeken maakt daarom deel uit van de omringende workflow en is geen bewering dat een tekstantwoord zelfstandig het web heeft doorzocht. Definieer de vraag, de broncriteria en het benodigde eindantwoord voordat de zoektaak begint.

Lever voor programmeren het relevante fragment of de bestanden, het waargenomen gedrag, het verwachte gedrag en de te behouden beperkingen aan. Een voorbeeldopdracht is: “Identificeer de oorzaak van deze fout voor de aangeleverde invoer, stel een gerichte correctie voor en leg de voorwaarde uit die de wijziging afhandelt.” Label bij een documenttaak bronsecties en vraag om een vergelijking aan de hand van expliciete vereisten. Eis dat het eindantwoord de door bronnen ondersteunde conclusie onderscheidt van een voorgestelde volgende handeling.

De producent traint V3.1 met het UE8M0 FP8-schaalformaat voor gewichten en activaties. De lokale aanbevelingen benoemen ook precisiegevoelige parameters die correct moeten worden behandeld. Dit zijn kenmerken van de gepubliceerde referentie van de producent, geen bewering over de gekozen precisie of implementatie van elke applicatie. Een afgeleid model, een gekwantiseerde variant en het latere Terminus-checkpoint blijven afzonderlijke keuzes naast de oorspronkelijke V3.1-editie met deze specifieke naam.

Bereid langer werk voor met een duidelijke vraag, bronlabels en een afgebakend eindresultaat. Plan het gesprek, de brontekst, het redeneren en de uitvoer binnen de gedocumenteerde context en behoud alleen relevant bewijs terwijl de taak groeit. Specificeer voor een agent de toegestane handelingen en het criterium dat het resultaat als voltooid markeert. Het bruikbare eindresultaat is een controleerbaar tekstantwoord, codevoorstel of door bronnen onderbouwde analyse die gekoppeld is aan de invoer en de waarnemingen die de applicatie daadwerkelijk heeft teruggegeven.

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `deepseek-v3.1-thinking`

[`deepseek-v3.1-thinking`](https://ailoot.ai/models/nl/#m=deepseek-v3.1-thinking&route=Ultra&caller=deepseek-v3.1-thinking&fmt=chat)

DeepSeek /`deepseek-v3.1-thinking`

### Aan de slag

DeepSeek V3.1 is een hybride tekstmodel met denkmodi en modi voor directe antwoorden in één editie. De context van 128K en het verbeterde toolgebruiksprofiel ondersteunen programmeren, documentanalyse en zoekfunctionaliteit die door de applicatie wordt geleverd, met tekst of voorgestelde toolaanroepen als resultaat.

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 deepseek-v3.1-thinking | 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

| Configuratie | Tariefstaffel | Kosten |
| --- | --- | --- |
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Kosten Invoer · Invoertokens **$0.000572** / 1K tokens Uitvoer · Uitvoertokens **$0.0023** / 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/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":"deepseek-v3.1-thinking","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="deepseek-v3.1-thinking", 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** [`deepseek-v3.1-thinking`](https://ailoot.ai/models/nl/#m=deepseek-v3.1-thinking&route=Ultra&caller=deepseek-v3.1-thinking&fmt=chat)

#### Aliasnamen voor methodepaden

`/chat/completions`

#### Gerelateerde aanroeper-ID’s

[`deepseek-v3.1-thinking`](https://ailoot.ai/models/nl/#m=deepseek-v3.1-thinking&route=Ultra&caller=deepseek-v3.1-thinking&fmt=chat)

FAQ · DeepSeek: DeepSeek V3.1

Welke invoer en resultaten zijn beschikbaar?

`POST /v1/chat/completions` · `deepseek-v3.1-thinking`: `text` → `text`

Welke velden gebruikt het verzoek?

`POST /v1/chat/completions` · `deepseek-v3.1-thinking`: `model`, `messages`, `stream`

Welke limieten gelden?

`POST /v1/chat/completions` · `deepseek-v3.1-thinking`: `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.
