Zum Hauptinhalt springen
Lektion 3 von 16 · Chat Completions: Beherrschung der API

Grundlegende Parameter

Lektion 3 von 16 Aktualisiert am 2. November 2026 Entwickler
Auf dieser Seite
  1. Ihre API-Aufrufe konfigurieren
  2. Der Parameter model
  3. Der Parameter max_tokens
  4. Der Parameter temperature
  5. Der Parameter top_p
  6. Vollständiges Beispiel mit allen Parametern
  7. Kernaussagen

Ihre API-Aufrufe konfigurieren

Neben den erforderlichen Feldern model und messages akzeptiert die Chat-Completions-API eine Reihe von Parametern, die das Generierungsverhalten steuern. Diese Einstellungen unterscheiden einen Datenauswerter, der für dieselbe Rechnung stets identische Ergebnisse liefert, von einem Slogan-Generator, der sich nie wiederholt. Der Aufrufcode bleibt von einem Anwendungsfall zum nächsten unverändert; lediglich die Einstellungen verschieben sich, weshalb es genau darauf ankommt, zu verstehen, was jeder einzelne Parameter bewirkt.

Hier sind die Parameter, die Sie täglich handhaben werden, inklusive ihrer Typen und Standardwerte.

ParameterTypStandardwertBeschreibung
modelstring—Modell-Identifikator (erforderlich)
messagesarray—Array von Nachrichten (erforderlich)
max_tokensintegervariabelMaximale Anzahl an Ausgabe-Token
temperaturefloat0,7Steuert Kreativität (0,0 bis 1,5)
top_pfloat1,0Nucleus-Sampling (0,0 bis 1,0)
streambooleanfalseAktiviert SSE-Streaming
safe_promptbooleanfalseAktiviert Sicherheitsvorkehrungen

Der Parameter model

Ihre Modellwahl bestimmt sofort die Fähigkeiten, die Geschwindigkeit und die Kosten jedes Aufrufs – drei Kompromisse, die Sie an anderer Stelle nicht wiederherstellen können. Stand April 2026 sind die primären Modelle:

# Flaggschiff-Modell – komplexes Reasoning, mehrsprachig
model = "mistral-large-latest"

# Kompaktes Modell – schnell, wirtschaftlich, ideal für Produktion
model = "mistral-small-latest"

# Miniaturmodell – ultraschnell, Edge Computing
model = "ministral-3b-latest"

# Code-Modell – spezialisiert für Programmierung
model = "codestral-latest"

Der Suffix -latest ist während der Entwicklung praktisch: er verweist stets auf die neueste Version, ohne dass Codeänderungen erforderlich sind. In der Produktion wird diese Bequemlichkeit jedoch zu einem Risiko, da ein Update auf Seiten von Mistral das Verhalten Ihrer Anwendung subtil verschieben kann. Bevorzugen Sie versionierte Identifikatoren wie mistral-large-2512, um die Reproduzierbarkeit Ihrer Tests zu garantieren.

Der Parameter max_tokens

Dieser Parameter legt die Obergrenze für die Anzahl der Token fest, die das Modell in seiner Antwort generieren kann. Er zwingt das Modell nicht, genau diese Anzahl zu produzieren; er definiert lediglich eine Decke, nichts weiter.

response = client.chat.complete(
    model="mistral-large-latest",
    messages=[{"role": "user", "content": "Fassen Sie diesen Text in einem Satz zusammen."}],
    max_tokens=100  # Die Antwort wird 100 Token nicht überschreiten
)

Trifft das Modell auf dieses Limit, wird die Antwort abrupt abgeschnitten, und finish_reason gibt "length" statt "stop" zurück. Dies ist die häufigste Ursache für Antworten, die mitten im Satz abbrechen, und niemand bemerkt dies, bis dieses Feld überwacht wird. Die richtige Reflexion besteht darin, die Decke an die Aufgabe anzupassen: Klassifizierung passt in 10 bis 50 Token, da Sie nur eine Kennzeichnung erwarten; eine Zusammenfassung benötigt 200 bis 500 Token; freies Schreiben erfordert 1.000 bis 4.000 Token; und Code-Generierung erreicht leicht 2.000 oder 8.000 Token, da eine vollständige Datei lang ist.

Der Parameter temperature

Die Temperatur steuert den Grad der Randomisierung bei der Token-Auswahl. Je niedriger der Wert, desto deterministischer und vorhersehbarer wird das Modell; je höher er steigt, desto mehr unternimmt es unwahrscheinliche Fortsetzungen. Bei faktischen Fragen wünschen Sie sich den ersten Ansatz; bei Namensübungen den zweiten.

# Niedrige Temperatur – Extraktion, Klassifizierung, Fakten
response = client.chat.complete(
    model="mistral-large-latest",
    messages=[{"role": "user", "content": "Was ist die Hauptstadt Frankreichs?"}],
    temperature=0,1
)

# Hohe Temperatur – Kreativität, Brainstorming
response = client.chat.complete(
    model="mistral-large-latest",
    messages=[{"role": "user", "content": "Erfinden Sie einen Namen für eine KI-Start-up."}],
    temperature=1,2
)

Der Bereich erstreckt sich von 0,0 bis 1,5. Verlassen Sie sich nicht auf temperature=0 für perfekte Determiniertheit: leichte Variationen bestehen aufgrund von Rundungsfehlern auf Hardware-Ebene fort.

Der Parameter top_p

Nucleus-Sampling, oder Top P, greift über denselben Hebel, jedoch über einen anderen Weg: Es begrenzt Kandidaten-Token durch eine kumulative Wahrscheinlichkeitsschwelle. Bei top_p=0,5 bleiben nur die wahrscheinlichsten Token im Spiel, deren zusammengefasste Wahrscheinlichkeiten 50 % erreichen; der Rest wird sofort verworfen.

response = client.chat.complete(
    model="mistral-large-latest",
    messages=[{"role": "user", "content": "Vervollständigen Sie: Der Katze sitzt auf dem..."}],
    temperature=0,7,
    top_p=0,9  # Berücksichtigt Token, die 90 % der Wahrscheinlichkeit abdecken
)

Mistral empfiehlt, nur einen Parameter gleichzeitig anzupassen, entweder Temperatur oder top_p, niemals beide zusammen. Der Grund ist pragmatisch: Wenn eine Ausgabe nach dem Verschieben beider Regler seltsam wird, weiß man nicht, welcher Parameter dafür verantwortlich ist, und man verliert sowohl die Debuggierbarkeit als auch die Reproduzierbarkeit.

Vollständiges Beispiel mit allen Parametern

In einem einzigen Aufruf kombiniert, schaffen diese Einstellungen einen Slogan-Generator, der absichtlich knapp und etwas mutig ist, während er gleichzeitig den Tokenverbrauch verfolgt:

from mistralai.client import Mistral
import os

client = Mistral(api_key=os.getenv("MISTRAL_API_KEY"))

response = client.chat.complete(
    model="mistral-large-latest",
    messages=[
        {
            "role": "system",
            "content": "Sie sind ein knapper und prägnanter Marketing-Schriftsteller."
        },
        {
            "role": "user",
            "content": "Schreiben Sie einen Slogan für eine Meditations-App."
        }
    ],
    max_tokens=50,
    temperature=0,9,
    top_p=1,0
)

print(response.choices[0].message.content)
print(f"Verwendete Token: {response.usage.total_tokens}")

Führen Sie dieses Skript dreimal hintereinander aus, ersetzen Sie dann temperature=0,9 durch 0,1 und führen Sie es erneut drei Mal aus. Der Unterschied zwischen den beiden Serien wird Ihnen mehr über diesen Parameter lehren als jede Definition.

Kernaussagen

  • model und messages sind die einzigen erforderlichen Parameter
  • max_tokens ist eine Decke, kein Ziel – prüfen Sie finish_reason, um Abschnitte zu erkennen
  • Verwenden Sie niedrige temperature für faktische Aufgaben, hohe für Kreativität
  • top_p verfeinert die Token-Verteilung – passen Sie es nicht gleichzeitig mit temperature an
  • Verwenden Sie versionierte Modell-Identifikatoren in der Produktion für Reproduzierbarkeit