Zum Hauptinhalt springen
Lektion 9 von 12 · Strukturierte JSON-Ausgaben

Strukturierte Ausgaben und Code-Ausführung

Lektion 9 von 12 Aktualisiert am 2. November 2026 Entwickler
Auf dieser Seite
  1. Code ausführen und Ergebnisse strukturieren
  2. Feature für Grok 4 und neuere Modelle
  3. Typischer Anwendungsfall: Präzise Berechnungen
  4. Beispiel: Statistische Analyse
  5. Websuche und Code-Ausführung kombinieren
  6. Grenzen der Code-Ausführung
  7. Kernaussagen

Aktualisiert am 2. November 2026. Basierend auf der xAI-Dokumentation: Mit dem xai-sdk kombinieren strukturierte Ausgaben und Werkzeuge, indem man zunächst das Gespräch erstellt (client.chat.create(..., tools=[code_execution()])) und dann chat.parse(Schema) aufruft, was die Antwort und das typisierte Objekt zurückgibt. Das vorherige Beispiel rief client.chat.parse(...) mit Argumenten für Chat-Completions auf, eine Methode, die in keinem SDK existiert. Quellen: Strukturierte Ausgaben · Code-Ausführung.

Code ausführen und Ergebnisse strukturieren

Die Kombination aus strukturierten Ausgaben und Code-Ausführung ermöglicht es dem Modell, Ergebnisse zu berechnen und sie in einem strukturierten Format zurückzugeben. Das Modell schreibt Code, führt ihn in einer sandboxierten Umgebung aus und formatiert die Ausgabe gemäß Ihrem Schema.

Feature für Grok 4 und neuere Modelle

Wie die Websuche ist diese Kombination für Grok 4 und neuere Modelle reserviert – das heißt, das gesamte aktuelle Modellangebot (Grok 4.5, Grok 4.3, grok-4.20-Varianten). Frühere Modelle unterstützten die Kombination von Werkzeugen mit strukturierten Ausgaben nicht.

Typischer Anwendungsfall: Präzise Berechnungen

Der Hauptvorteil von Code-Ausführung mit strukturierten Ausgaben liegt in der Berechnungsgenauigkeit. LLMs machen regelmäßig arithmetische Fehler. Durch die Ausführung von Code sind die Ergebnisse mathematisch exakt.

from pydantic import BaseModel
from xai_sdk import Client
from xai_sdk.chat import user
from xai_sdk.tools import code_execution

client = Client()  # Schlüssel wird aus XAI_API_KEY gelesen

class FinancialAnalysis(BaseModel):
    total_revenue: float
    total_cost: float
    gross_margin: float
    margin_percentage: float
    most_profitable_product: str
    least_profitable_product: str

chat = client.chat.create(
    model="grok-4.20-0309-reasoning",
    tools=[code_execution()],
)
chat.append(user("""Hier sind die vierteljährlichen Umsätze:
- Produkt A: 150 Einheiten à 45 €, Herstellkosten pro Einheit 28 €
- Produkt B: 320 Einheiten à 22 €, Herstellkosten pro Einheit 15 €
- Produkt C: 85 Einheiten à 120 €, Herstellkosten pro Einheit 78 €

Berechnen Sie die vollständige Finanzanalyse."""))

response, parsed = chat.parse(FinancialAnalysis)

print(f"Bruttomarge: €{parsed.gross_margin}")
print(f"Marge: {parsed.margin_percentage}%")
print(f"Bestes Produkt: {parsed.most_profitable_product}")

Das Modell wird ein Python-Skript schreiben, um die Berechnungen durchzuführen, dieses ausführen und die Ergebnisse anschließend in das FinancialAnalysis-Schema formatieren.

Beispiel: Statistische Analyse

class DescriptiveStatistics(BaseModel):
    mean: float
    median: float
    std_dev: float
    minimum: float
    maximum: float
    quartile_1: float
    quartile_3: float
    value_count: int

chat = client.chat.create(
    model="grok-4.20-0309-reasoning",
    tools=[code_execution()],
)
chat.append(user("""Berechnen Sie die deskriptiven Statistiken für diese Daten:
[23, 45, 12, 67, 34, 89, 56, 78, 41, 33, 61, 25,
 72, 48, 55, 39, 64, 71, 28, 50]"""))

response, parsed = chat.parse(DescriptiveStatistics)

print(f"Mittelwert: {parsed.mean}")
print(f"Standardabweichung: {parsed.std_dev}")

Websuche und Code-Ausführung kombinieren

Sie können beide Werkzeuge gleichzeitig aktivieren:

class MarketAnalysis(BaseModel):
    company: str
    current_price: float
    change_30d: float
    avg_volume: float
    trend: str
    recommendation: str

from xai_sdk.tools import web_search

chat = client.chat.create(
    model="grok-4.20-0309-reasoning",
    tools=[web_search(), code_execution()],
)
chat.append(user("Analysieren Sie den Apple-Aktienkurs der letzten 30 Tage"))

response, parsed = chat.parse(MarketAnalysis)

Das Modell holt aktuelle Daten aus dem Web und verwendet die Code-Ausführung, um Änderungen und Durchschnittswerte zu berechnen.

Grenzen der Code-Ausführung

  • Die Ausführungsumgebung ist isoliert und ephemer
  • Häufige Python-Pakete sind vorinstalliert (NumPy, Pandas, Matplotlib, SciPy)
  • Ausführungszeit und Speicher sind begrenzt
  • Keine Netzwerkanbindung für ausgeführten Code
  • Erstellte Dateien persistieren nicht zwischen Aufrufen

Kernaussagen

  • Code-Ausführung plus strukturierte Ausgaben erfordert mindestens Grok 4 – das gesamte aktuelle Modellangebot ist kompatibel
  • Das Modell schreibt und führt Code für präzise Berechnungen aus
  • Aktivieren Sie das Werkzeug mit code_execution() im xAI SDK oder {"type": "code_interpreter"} in der Responses API und erhalten Sie das typisierte Objekt mit chat.parse(Schema)
  • Kombinierbar mit web_search, um zu suchen und anschließend zu berechnen
  • Ideal für finanzielle, statistische und mathematische Analysen
  • Berechnete Ergebnisse sind exakt, im Gegensatz zu LLM-Schätzungen