Wie Artefakte erstellt werden
Jedes Tool, das einToolResult mit einer artifacts-Liste zurückgibt, generiert herunterladbare Dateien. Der Agent benötigt keine speziellen Anweisungen — die Artefakterstellung ist eine natürliche Nebenwirkung der Tool-Ausführung.
Häufige Produzenten:
| Tool | Artefakttyp | Beispiel |
|---|---|---|
python_exec | Bilder, HTML, CSV, JSON | Ein matplotlib-Diagramm gespeichert als PNG |
template_render | HTML | Ein formatierter Bericht |
| Code-Ausführungs-Tools | Beliebige Datei | Generierter Code, exportierte Daten |
| Bildgenerierung | Bilder | KI-generierte Illustrationen |
Die Galerie
Die Seite Artefakte (/artifacts) bietet eine einheitliche Ansicht aller Dateien, die Sie in allen Gesprächen generiert haben.
Filterung
Vier Typfilter grenzen die Ansicht ein:| Filter | Dateitypen |
|---|---|
| Alle | Alles |
| Bilder | PNG, JPG, GIF, SVG, WebP |
| HTML | HTML-Seiten und Berichte |
| Code | Python, JavaScript, TypeScript, JSON, YAML, XML, CSS, SQL, Markdown, Shell-Skripte |
| Dateien | Alles andere — CSV, PDF, Nur-Text, Binärdateien |
Vorschau
Klicken Sie auf ein beliebiges Artefakt, um eine Inline-Vorschau zu öffnen:- Bilder — werden in voller Auflösung angezeigt
- HTML — wird in einem isolierten Iframe angezeigt (Skripte isoliert)
- Code — syntaxhervorgehoben mit automatischer Spracherkennung
- Markdown — wird als formatierter Text angezeigt
- Sonstiges — wird als Klartext angezeigt oder als Download-Aufforderung
Metadaten
Jedes Artefakt zeigt:- Dateiname und Größe
- Erstellungszeitstempel
- Quellkonversation (klicken Sie, um zur Konversation zurückzukehren, in der es generiert wurde)
Speicher
Artefakte werden im Server-Dateisystem unteruploads/conversations/{conversation_id}/artifacts/ gespeichert. Jedes Artefakt erhält einen UUID-basierten Dateinamen, wodurch URLs nicht zu erraten sind. Dateien werden direkt bereitgestellt – es gibt keine Datenbankeinträge für einzelne Artefakte, was die Speicherschicht einfach und schnell hält.
API
| Endpoint | Description |
|---|---|
GET /api/artifacts | Listet alle Artefakte für den aktuellen Benutzer auf. Unterstützt ?page=, ?size=, ?type= Filter |
GET /api/conversations/{id}/artifacts | Listet Artefakte für ein bestimmtes Gespräch auf |
GET /api/conversations/{id}/artifacts/{artifact_id} | Lädt ein bestimmtes Artefakt herunter |