KI-Modellfamilie für Chat und Code

DONNA

Chat-Endpoint mit Reasoning, Streaming und Tool Calling. DONNA Cadenza ist Allzweck-Assistent, DONNA Coda ist auf Code spezialisiert.

Modelle

Alle Modelle sprechen dieselbe API und unterscheiden sich in Tiefe, Grenzen und Preis.

donna-cadenzaAllzweck-Assistent

Der Standard für nahezu alles: Wissensfragen, Texte, Zusammenfassungen, Übersetzungen, Auswertungen. Nimm dieses Modell, solange nichts dagegen spricht.

Preis je 1.000 Tokens
40 / 200 Credits (Input / Output)
Kontextfenster
256.000 Tokens
Max. Ausgabe
64.000 Tokens
Thinking
steuerbar, abschaltbar
Bildeingabe
ja
Tool Calling
ja
donna-codaCoding-Spezialist

Gleicher Preis und gleiche Grenzen wie donna-cadenza, aber auf Softwareentwicklung ausgerichtet — Code schreiben, Fehler suchen, refaktorieren.

Preis je 1.000 Tokens
40 / 200 Credits (Input / Output)
Kontextfenster
256.000 Tokens
Max. Ausgabe
64.000 Tokens
Thinking
steuerbar, abschaltbar
Bildeingabe
ja
Tool Calling
ja
donna-sinfoniaFlaggschiff für komplexe Aufgaben

Ausgelegt auf mehrstufige Analysen, sehr lange Dokumente und Aufgaben, die mehrere Schritte verbinden. Kostet das Fünffache von donna-cadenza — für Standardanfragen lohnt es sich nicht.

Preis je 1.000 Tokens
80 / 400 Credits (Input / Output)
Kontextfenster
1.000.000 Tokens
Max. Ausgabe
128.000 Tokens
Thinking
immer aktiv, Tiefe steuerbar
Bildeingabe
ja
Tool Calling
ja

Pricing

40Credits
donna-cadenza / donna-coda — pro 1.000 Input-Tokens
200Credits
donna-cadenza / donna-coda — pro 1.000 Output-Tokens

Reasoning-Tokens (Thinking-Phase) zählen als Output-Tokens und werden zum Output-Tarif abgerechnet.

80Credits
donna-sinfonia — pro 1.000 Input-Tokens
400Credits
donna-sinfonia — pro 1.000 Output-Tokens

Bei donna-sinfonia fallen Reasoning-Tokens bei jeder Anfrage an — das Modell ist auf mehrstufige Aufgaben ausgelegt.

Thinking und Kosten

DONNA denkt vor der Antwort. Diese Denkphase erzeugt Reasoning-Tokens, die als Output abgerechnet werden und ein Vielfaches der sichtbaren Antwort ausmachen können. Über reasoning_effort steuerst du die Tiefe: "none" für knappe Fakten, "high" für schwierige Aufgaben.

donna-sinfonia ist für komplexe Aufgaben gebaut und denkt deshalb bei jeder Anfrage. reasoning_effort steuert dort die Tiefe, schaltet die Denkphase aber nicht ab — die Reasoning-Tokens fallen in jedem Fall an. Wer eine Antwort ohne Thinking braucht, nutzt donna-cadenza mit reasoning_effort: "none".

Kontextfenster und Ausgabelänge

Ein- und Ausgabe teilen sich dasselbe Fenster. Wird max_tokens nicht gesetzt, wählt das Gateway automatisch ein Budget, das in den verbleibenden Platz passt — so kann eine lange Unterhaltung das Fenster nicht überbuchen.

GET/v1/models

Listet die Modelle auf, die dein Schlüssel verwenden darf — maschinenlesbar, mit Typ und Fähigkeiten pro Modell. Die Werte der Modellkarten oben kommen aus genau diesen Feldern.

Request

curl "https://api.centra.dbpg.io/v1/models" \
  -H "Authorization: Bearer sk_your_api_key"

Response

{
  "object": "list",
  "data": [
    {
      "id": "donna-cadenza",
      "object": "model",
      "type": "chat",
      "created": 1742083200,
      "owned_by": "dbpg",
      "capabilities": {
        "context_window": 256000,
        "max_output_tokens": 64000,
        "reasoning": "configurable",
        "vision": true,
        "tools": true
      }
    },
    {
      "id": "donna-sinfonia",
      "object": "model",
      "type": "chat",
      "created": 1742083200,
      "owned_by": "dbpg",
      "capabilities": {
        "context_window": 1000000,
        "max_output_tokens": 128000,
        "reasoning": "always",
        "vision": true,
        "tools": true
      }
    },
    {
      "id": "donna-chiodi-v20260320",
      "object": "model",
      "type": "embedding",
      "created": 1710892800,
      "owned_by": "dbpg",
      "capabilities": {
        "context_window": 512,
        "vision": false,
        "tools": false
      }
    }
  ]
}
Fähigkeiten lesen statt annehmen. type unterscheidet Chat- von Embedding-Modellen — behandle jeden anderen Wert als nicht chatfähig, damit ein künftiger Typ nicht ungewollt in einer Modellauswahl landet. context_window ist die Grundlage für deine Kompaktierungs- oder Trunkierungsschwelle; die Fenster unterscheiden sich pro Modell erheblich. reasoning ist "configurable", wenn reasoning_effort greift (einschließlich "none"), und "always", wenn das Modell in jedem Fall denkt — eine Oberfläche darf dann nichts anderes behaupten. vision und tools sagen, ob Bildteile im content-Array bzw. Tool-Definitionen angenommen werden. Modelle in der Erprobung erscheinen nicht in der Liste, sind aber unter ihrem Namen aufrufbar.
POST/v1/chat/completions

Chat-Endpoint mit Modellwahl über das `model`-Feld. Authentifizierung via Bearer-Token im Authorization-Header.

Parameter

NameTypStatusBeschreibung
modelstring
Ja
Modell-ID: 'donna-cadenza', 'donna-coda' oder 'donna-sinfonia'.
messagesarray
Ja
Konversations-Verlauf als Array von Message-Objekten mit den Feldern role und content. Roles: 'system', 'user', 'assistant', 'tool'.
temperaturenumberOptionalSampling-Temperatur (0–2). 0 = deterministisch.
streambooleanOptionalWenn true, wird die Antwort als Server-Sent Events (SSE) gestreamt.
stream_optionsobjectOptionalOptional, Objekt mit Feld include_usage. Wenn true gesetzt, liefert ein finaler Usage-Chunk im Stream.
reasoning_effortstringOptionalSteuerung der Thinking-Phase: 'none' | 'low' | 'medium' | 'high'. Default: 'high'. Bei donna-sinfonia steuert der Wert nur die Tiefe — die Denkphase entfällt dort nicht.
toolsarrayOptionalTool-Definitionen für Function Calling.
tool_choicestring | objectOptional'auto' | 'none' | Objekt mit Feldern type='function' und function.name — steuert ob/welches Tool aufgerufen wird.

Request

curl -X POST "https://api.centra.dbpg.io/v1/chat/completions" \
  -H "Authorization: Bearer sk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "donna-cadenza",
    "messages": [
      { "role": "user", "content": "Was ist die Hauptstadt von Frankreich?" }
    ],
    "reasoning_effort": "low"
  }'

Response

{
  "id": "donna-7c4e5f8a91b3d2e1",
  "object": "chat.completion",
  "created": 1778407200,
  "model": "donna-cadenza",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Paris.",
        "reasoning_content": "The user is asking about the capital of France. That is Paris."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 32,
    "completion_tokens": 18,
    "total_tokens": 50
  }
}
POST/v1/chat/completions

Vision: Bild als Base64 Data-URI im `content`-Array senden (keine Remote-URLs).

Request

curl -X POST "https://api.centra.dbpg.io/v1/chat/completions" \
  -H "Authorization: Bearer sk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "donna-cadenza",
    "messages": [
      { "role": "user", "content": [
        { "type": "text", "text": "Erkläre, was auf dem Bild zu sehen ist." },
        { "type": "image_url", "image_url": { "url": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAA..." } }
      ] }
    ]
  }'

Response

{
  "id": "donna-9f2a7c4e5f8a91b3",
  "object": "chat.completion",
  "model": "donna-cadenza",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Auf dem Bild ist … zu sehen."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": { "prompt_tokens": 1187, "completion_tokens": 94, "total_tokens": 1281 }
}
Rechtliches. Nutzungsbedingungen, AGB und Datenschutzhinweise zur DONNA-Modellfamilie unter buehnenproduktionsgesellschaft.de/donna.