← Projekte
Powerpoint Buddy Icon

Powerpoint Buddy

KI-gestützter Chatbot für automatisierte PowerPoint-Erstellung im Corporate Design. Firmenwahl, iterative Folienentwicklung und PPTX-Export – vollständig Dify-nativ.

▶ Demo ansehen

Chatflow · Dokumentengenerierung · 2026

KI-gestützter Chatbot für automatisierte PowerPoint-Erstellung im Corporate Design. Firmenwahl per Dropdown, iterative Folienentwicklung mit HTML-Vorschau und PPTX-Download – vollständig Dify-nativ mit eigenem FastAPI-Renderer.


Phase 1 – Firmenwahl & Kontext

Der Nutzer wählt per Dropdown eine von drei Firmen. Ein Code-Node mappt die Auswahl auf Farben, Fonts und Template-Datei. Der LLM erhält die Firmenidentität als feste Variable – das JSON-Schema erzwingt den korrekten company-Wert in jedem Output.

Firmenwahl (Dropdown) · design_provider Code-Node · JSON-Schema-Validierung

Phase 2 – Inhaltsentwicklung & HTML-Vorschau

Der LLM-Node führt den Nutzer durch Thema und Zielgruppe, dann generiert er einen |||PREVIEW_JSON|||-Block mit 3–8 Folien. Ein Extractor-Code-Node parst den Block und sendet das JSON direkt an den FastAPI-Renderer, der eine HTML-Präsentation erzeugt. Der Link erscheint sofort im Chat – kein Rendering-Umweg über LibreOffice.

Claude Sonnet 4 – Slide-Assistent · FastAPI + Jinja2 Renderer · HTML-Vorschau (files.gedinger.org) · Konversations-Memory (20 Nachrichten)

Phase 3 – Iteration

Nutzer können einzelne Folien anpassen, kürzen oder ergänzen – beliebig oft vor der Finalisierung. Nach jeder Änderung erzeugt der LLM einen neuen |||PREVIEW_JSON|||-Block, ein WENN/SONST-Node prüft ob es Vorschau oder Finale ist, und der Renderer liefert einen aktualisierten Preview-Link. Klartext-Antworten des LLM (z. B. Rückfragen) werden direkt angezeigt ohne HTTP-Aufruf.

WENN/SONST-Routing (3 Pfade) · Marker-Prüfung (Code-Node) · Iterative Vorschau-URLs

Phase 4 – Finalisierung & PPTX-Export

Sobald der Nutzer „Erstellen" bestätigt, erkennt der Extractor-Node den |||FINAL_JSON|||-Marker. Das JSON geht per HTTP-Request an den FastAPI-Renderer, der mit python-pptx und den Firmen-PPTX-Templates eine fertige Präsentation baut. Der Download-Link erscheint direkt im Chat.

Marker-Extraktion · python-pptx PPTX-Export · Firmen-Templates (firma_a/b/c.pptx) · Download-Link im Chat


FastAPI Renderer statt LibreOffice

Statt des üblichen Wegs JSON → PPTX → LibreOffice → JPG trennt das System Preview und Export sauber: Die HTML-Preview entsteht serverseitig via Jinja2 mit 7 Slide-Typen und 3 Firmen-Themes in CSS-Variablen. Der PPTX-Export nutzt python-pptx direkt auf den Firmen-Templates – kein LibreOffice, kein Zwischenformat.

Alle generierten Dateien liegen unter files.gedinger.org (Nginx, Docker-Volume-Mount). Der FastAPI-Service läuft via PM2 auf Port 5001 und ist aus dem Dify-Docker-Netz erreichbar.

FastAPI + Jinja2 (Preview) · python-pptx (Export) · Nginx · files.gedinger.org · PM2 · Port 5001


Was das System ausgibt

PPTX im Corporate Design

Fertige PowerPoint-Datei mit firmenspezifischen Templates, Schriften und Farbpaletten – sofort einsetzbar ohne Nachbearbeitung.

HTML-Vorschau

Interaktive Slide-Vorschau im Browser – mit Chart.js-Diagrammen, allen 7 Slide-Typen und Firmen-Branding, generiert in unter einer Sekunde.

7 Slide-Typen

TITLE, SECTION, BULLETS, TWO_COLUMN, QUOTE, IMAGE, CHART – automatisch dem richtigen Layout und Firmen-Template zugeordnet.

Strukturiertes JSON-Schema

Normalisierter, validierter Slide-Output – robust gegen LLM-Halluzinationen durch server-seitige Typprüfung und Feld-Defaults.


Welche Modelle welche Aufgaben übernehmen

Claude Sonnet 4 – Slide-Assistent: Gesprächsführung, Folienstruktur, JSON-Generierung. Temperatur 0.4 für konsistente Struktur bei natürlicher Sprache.


Technischer Hintergrund

Chatbot-Plattform

Dify im Advanced-Chat-Modus. 10+ Nodes: LLM mit Memory, drei Code-Nodes (design_provider, Extractor, URL-Parser), WENN/SONST-Routing (3 Pfade), HTTP-Request-Nodes und Answer-Nodes für Klartext, Vorschau und Download.

HTML-Renderer

FastAPI + Jinja2-Templates. Alle 7 Slide-Typen als Makros, 3 Firmen-Themes via CSS-Variablen. Chart.js für BAR, LINE und PIE. Ausgabe unter files.gedinger.org/previews/.

PPTX-Generierung

python-pptx mit direkter lxml-Manipulation. Template-basierter Ansatz: Firma-PPTX als Basis, neue Slides via add_slide, _blob-Commit für korrekte Serialisierung, Template-Slides aus sldIdLst entfernt.

Infrastruktur

Hetzner Cloud Server (Ubuntu, Docker). Dify und n8n als Container. FastAPI via PM2. Nginx als Docker-Container mit Volume-Mounts für files.gedinger.org. Cloudflare DNS.

Zuletzt aktualisiert: 27. Mai 2026