Code Execution
Code Execution gibt dem LLM Chat ein abgeschottetes Terminal. Das Modell schreibt ein kurzes Programm, führt es auf den an Ihre Unterhaltung angehängten Dateien aus, und was dieses Programm ausgibt oder schreibt, kommt zurück in den Chat — als Ausgabe, die Sie lesen, und als Dateien, die Sie herunterladen können. So summiert der Chat die Zeilen einer Tabelle, konvertiert zwischen Formaten und erzeugt Dokumente, Arbeitsmappen, Präsentationen und Diagramme.
Wofür es verwendet wird
Für alles, was berechnet oder geschrieben statt beschrieben werden muss:
- Rechnen über Daten — Summen, Differenzen, Prozentsätze und verstrichene Zeiten über die Zeilen einer Datei — also genau dort, wo das Ablesen und Zusammenzählen im Kopf schiefgeht.
- Konvertieren und Bereinigen — CSV nach Excel, eine breite Tabelle ins lange Format umgeformt, Duplikate entfernt, Datumsangaben normalisiert, zwei Exporte verglichen.
- Dateien erzeugen — ein Word-Bericht, eine ausgefüllte Vorlage, eine Präsentation, ein JSON- oder Markdown-Export oder ein ZIP-Archiv, wenn es zu viele Dateien sind, um sie einzeln anzuhängen.
- Diagramme — ein Balken- oder Liniendiagramm Ihrer Daten, als Bild gespeichert und an die Unterhaltung angehängt.
- Bilder und PDFs — Seitenzahlen, Textextraktion, PDFs zusammenführen oder teilen, Bilder stapelweise skalieren, eine Kontaktbogen-Übersicht erstellen.
Eine einzelne Rechnung, die schon in der Frage steht — 15 % von 200 — wird direkt beantwortet, ohne Ausführung. Die Sandbox ist für Arbeit an Daten gedacht, die das Modell nicht zuverlässig im Kopf erledigen kann, und für alles, was als Datei enden soll.
Wie man es aktiviert
Code Execution ist eine eingebaute Fähigkeit und steht mit den übrigen Werkzeugen in der Werkzeugauswahl des Chats. Schalten Sie sie für eine Unterhaltung aus, antwortet das Modell ohne sie; schalten Sie sie wieder ein, kann die nächste Frage sie erneut nutzen.
Beispiele
Das sind echte Anfragen, so formuliert, wie Menschen sie formulieren — keine einzige erwähnt Code, eine Sandbox oder eine Programmiersprache. Jede endet in einer überprüfbaren Antwort und, wo es sinnvoll ist, in einer Datei zum Herunterladen.
Tabellen und Daten
- „Entferne die exakten Duplikate aus der angehängten sales_dirty.csv, wandle jedes order_date ins ISO-Format um und gib sie als sales_clean.xlsx zurück.“ Drei Datumsformate gehen hinein, eine saubere Arbeitsmappe kommt heraus, und die Zeilenzahl wird genannt, damit Sie es überprüfen können.
- „Füge eine Spalte margin hinzu, berechnet als (price − cost) / price, und schicke die Datei als products_with_margin.xlsx zurück, mit hervorgehobenen Zeilen geringer Marge. Welche SKUs liegen unter 10 %?“
- „Verknüpfe orders.csv über customer_id mit customers.csv und sag mir genau, welche Bestellungen keinen passenden Kunden haben.“ Beide Anhänge erreichen denselben Lauf, und die Abweichungen werden benannt statt übergangen.
- „Die angehängte quarterly_wide.csv hat eine Spalte pro Quartal. Forme sie ins lange Format um, mit product, quarter und revenue.“
- „Vergleiche catalogue_v1.csv und catalogue_v2.csv anhand von sku: Was kam hinzu, was fiel weg, und wo änderte sich der Preis — mit altem und neuem Wert.“
- „Prüfe contacts_dirty.csv — eine E-Mail muss genau ein @ und keine Leerzeichen enthalten, eine Postleitzahl darf nur aus Ziffern bestehen. Melde die Probleme und nenne mir die fehlerhaften Zeilen-IDs.“
Zahlen, die stimmen müssen
- „Die angehängte Rechnung nennt eine Nettosumme von 8000,00 EUR. Ergeben die Positionen tatsächlich diesen Betrag? Nenne mir das korrekte Netto, die 20 % Mehrwertsteuer und den Bruttobetrag.“ Sie summieren sich auf 9090,00 — die Rechnung weist das Netto also um 1090,00 zu niedrig aus. Genau die Art Frage, bei der das Zusammenzählen mit dem Auge schiefgeht.
- „Berechne für jedes Ticket die verstrichenen Stunden zwischen opened_at und resolved_at und sag mir, welche länger als 24 Stunden gedauert haben.“ Datumsrechnung über Tage und ein Wochenende hinweg — leicht falsch zu machen und leicht zu überprüfen.
Dokumente, Präsentationen und Briefe
- „Erstelle aus der angehängten KPI-Tabelle eine PowerPoint: eine Titelfolie plus eine Folie je KPI, jeweils mit einem kleinen Liniendiagramm der vier Quartale.“
- „Fülle die Platzhalter unserer northwind_template.pptx mit einem aus der CSV erstellten Rückblick auf Q1–Q4, unter Beibehaltung des Layouts und der Farben der Vorlage.“ Ihre Unternehmensvorlage bleibt erhalten — nur die Platzhalter ändern sich.
- „Schreibe je Empfänger ein Word-Angebotsschreiben, sprich sie namentlich an und nenne Unternehmen, Rolle und Rabatt, und bündle alles in offers.zip.“ Mehr Dokumente, als sich einzeln anhängen lassen — also packt der Lauf sie in ein ZIP-Archiv.
- „Fülle die Vorlage des Audit-Berichts aus, ersetze den Platzhalter für die Feststellungen durch eine echte Word-Tabelle und ergänze ein Diagramm der Feststellungen nach Schweregrad.“
PDFs
- „Wie viele Seiten hat das angehängte PDF? Gib mir außerdem die Seiten 1 bis 5 als neue Datei zurück.“
- „Führe diese beiden PDFs zusammen, Paracetamol zuerst, und nenne mir die Seitenzahl jeder Eingabe und des Ergebnisses.“
- „Auf wie vielen Seiten kommt ‚escalation‘ vor, unabhängig von Groß- und Kleinschreibung, und wie viele erwähnen ‚KPI‘? Gib mir eine CSV der passenden Seitenzahlen.“
- „Gib mir für das angehängte PDF eine Tabelle mit der Wortzahl pro Seite als page_stats.xlsx und sag mir, welche Seite die meisten Wörter hat.“
Bilder, Audio und Vektorgrafiken
- „Skaliere beide angehängten Bilder unter Beibehaltung des Seitenverhältnisses auf 800 Pixel Breite und nenne mir die ursprünglichen und die neuen Abmessungen.“
- „Erstelle aus den drei angehängten Bildern einen einzigen Kontaktbogen: Miniaturen nebeneinander, jede 300 Pixel breit, auf Weiß.“
- „Füge unten rechts in diesem Bild ein Wasserzeichen mit dem Text (c) QAnswer ein.“ Direkt gefragt, nachdem der Chat das Bild erzeugt hatte — ein vom Assistenten erzeugtes Bild ist eine Datei in der Unterhaltung wie jede andere und lässt sich daher nachträglich bearbeiten.
- „Erzeuge einen 3 Sekunden langen 440-Hz-Sinuston als Audiodatei zum Herunterladen.“
- „Erzeuge ein SVG eines Balls und gib mir die Datei.“ Auszeichnungscode, den das Modell auch einfach hinschreiben könnte, kommt trotzdem als Datei an statt als Text in der Antwort.
Mehrere Schritte nacheinander
Dateien bleiben zwischen Läufen erhalten, sodass eine Aufgabe über eine Unterhaltung hinweg aufgebaut werden kann:
- „Füge der angehängten catalogue.csv eine Spalte margin_pct hinzu, auf eine Nachkommastelle gerundet, und speichere sie als catalogue.csv.“
- „Sortiere catalogue.csv jetzt absteigend nach margin_pct und speichere sie zurück.“
- „Exportiere die sortierte catalogue.csv nach catalogue.xlsx und sag mir, wie viele Zeilen sie hat.“
Jede Runde liest, was die vorherige geschrieben hat, sodass der dritte Lauf die sortierte Datei exportiert und nicht den ursprünglichen Upload.
Zusammen mit anderen Werkzeugen
„Sieh dir https://qanswer.ai an und erstelle dazu eine Präsentation mit 2 Folien.“ Die Seite wird über das URL-Scraping der Web Search gelesen und die Präsentation in der Sandbox geschrieben, in einer einzigen Runde. Code Execution hat kein eigenes Netzwerk; die Kombination beider Werkzeuge ist also der Weg, wie Live-Daten in einer erzeugten Datei landen.
Was in der Sandbox verfügbar ist
Die Sandbox ist ein kleiner Linux-Container mit einem Interpreter und einem festen Satz an Bibliotheken. Zur Laufzeit lässt sich nichts installieren, das hier Aufgeführte ist also alles, was ein Lauf nutzen kann:
- Python 3.11 — pandas, numpy und matplotlib für Daten und Diagramme; scipy für Statistik, Signal- und Audioverarbeitung; mpmath für Arithmetik mit beliebiger Genauigkeit; openpyxl, xlsxwriter, xlrd und odfpy für Tabellen; pypdf, python-docx und python-pptx für Dokumente, PDFs und Präsentationen; Pillow für Bilder; tabulate für Texttabellen.
- Weitere Sprachen — Auch JavaScript, Java, C++, Go, Ruby und R laufen, jeweils nur mit ihren Standardbibliotheken. Für die Arbeit an Ihren Dateien wird Python verwendet, denn dort liegen die Lese- und Schreibbibliotheken.
Grenzen
- Kein Netzwerk — die Sandbox hat überhaupt keinen Internetzugang. Ein Lauf kann keine URL abrufen, keine API aufrufen und kein Paket installieren.
- Zeit und Speicher — ein Lauf wird nach 30 Sekunden abgebrochen und erhält 512 MB Arbeitsspeicher und eine CPU. Die Ausgabe wird nach etwa 8.000 Zeichen abgeschnitten.
- Dateigrößen — bis zu zehn Dateien gehen hinein (je 25 MB, 50 MB insgesamt) und bis zu zehn kommen heraus (je 25 MB).
- Kein Zustand zwischen Läufen — Variablen, installierte Pakete und alles im Arbeitsspeicher Gehaltene sind nach dem Ende eines Laufs verschwunden. Nur Dateien werden übernommen — deshalb schreibt eine mehrstufige Aufgabe alles Nötige in eine Datei.
Isolation
Jeder Lauf findet in einem Container ohne Netzwerkzugang statt, und dessen Arbeitsverzeichnis wird sowohl vor dem Start des Programms als auch nach dessen Ende gelöscht — nichts aus einer Unterhaltung ist also in der nächsten sichtbar. Ihre Dateien werden aus Ihrer eigenen Unterhaltung hineinkopiert und niemals an einen Dritt-Dienst gesendet.







