“Erstelle mir den regionalen Verkaufsbericht aus sales.csv” ist eine Anfrage, die ein Sprachmodell gerne beantwortet, indem es eine Markdown‑Tabelle ausgibt, ein oder zwei Zahlen rundet und ein Diagramm beschreibt, das es nicht zeichnen kann. Mit GroupDocs.Assembly.Mcp, das lokal läuft (dnx GroupDocs.Assembly.Mcp --yes), übergibt Claude Desktop, Cursor oder Copilot die Datendatei stattdessen an die Engine: Ihre Word‑ oder PowerPoint‑Vorlage enthält die Tabelle, die Summen und ein echtes Diagramm, und der Server füllt sie aus der CSV‑ oder Tabellendatei, ohne dass die Zahlen jemals durch das Modell gehen:
Erstelle den regionalen Verkaufsbericht aus sales.xlsx mit sales-report.docx als PDF und die Diagramm‑Folien mit sales-chart.pptx.
Die schrittweise Version mit Konfiguration und Fehlersuche finden Sie in der Dokumentation: Wie man einen Bericht mit Tabellen und Diagrammen aus einer CSV‑ oder Tabellendatei mit einem KI‑Agenten erstellt.
Warum sollten die Zahlen das Modell überspringen?
Weil ein Modell ein Textgenerator ist und ein Bericht aus Arithmetik und Layout besteht. Wenn ein Agent eine CSV liest und den Bericht selbst schreibt, wird jeder Wert durch die nächste‑Token‑Vorhersage neu getippt. Die meisten sind korrekt. Der eine, der es nicht ist, bleibt unsichtbar, bis jemand ihn mit der Quelle prüft – genau das, wofür der Bericht eigentlich Zeit sparen sollte. Diagramme sind noch schlimmer: Das Modell kann eines beschreiben oder Code dafür ausgeben, aber das Diagramm in Ihrer Quartalspräsentation ist ein Objekt in einer PowerPoint‑Datei, gestaltet von jemandem aus dem Marketing.
Also teilen Sie die Arbeit nach den Stärken beider Seiten auf. Die Vorlage bestimmt, wie der Bericht aussieht. Die Engine liest die Datei und führt die Berechnungen durch. Der Agent wählt die Vorlage und die Daten aus und teilt Ihnen das Ergebnis mit.
Was der Agent übergibt und was die Engine sieht
Hier die Aufteilung in einer Tabelle:
der Agent entscheidet die Engine erledigt die Vorlage bestimmt
--------------------------- ----------------------------- -------------------------
welche Vorlage liest sales.xlsx/.csv das Tabellenlayout
welche Datendatei typisiert die Spalten das Diagramm und dessen Stil
Ausgabeformat (pdf) summiert, sortiert, wählt das Maximum Überschriften, Schriftarten, Logo
füllt Tabellenzeilen, Diagramm was "total" bedeutet
Bevor die Generierung startet, kann der Agent die Datendatei ansehen. Für unsere Tabelle meldete der Server eine Tabelle mit drei Spalten:
-> get_document_info {"file":{"filePath":"sales.xlsx"}}
<- { "dataKind": "table",
"data": { "tableCount": 1, "tables": [ { "number": 1,
"columns": [ "Region", "Quarter", "Revenue" ] } ] } }
Der Tabellen‑Bericht
Die Word‑Vorlage enthält eine Tabellenzeile mit <<foreach [r in sales]>> in ihrer ersten Zelle und <</foreach>> in der letzten, plus zwei Zeilen darunter: <<[sales.Sum(r => r.Revenue)]>> und <<[sales.OrderByDescending(r => r.Revenue).First().Region]>>. Ein Aufruf:
-> assemble_document {"template":{"filePath":"sales-report.docx"},
"data":{"filePath":"sales.xlsx"},"format":"pdf"}
<- Assembled 'sales-report.docx' with 'sales.xlsx' (table 1 (3
column(s): Region, Quarter, Revenue) as 'sales') as PDF
Saved to: .../sales-report_assembled.pdf
Der Bericht enthält vier Zeilen (North 182000, South 146500, East 98250, West 211900), “Gesamtumsatz: 638650 EUR” und “Beste Region: West”. Der Server nannte die Daten sales, weil die Vorlage darüber iteriert; niemand musste das explizit angeben. Die gleiche Vorlage mit sales.csv ergab dieselben Summen; für CSV decken hasHeaders und csvDelimiter Dateien ohne Kopfzeile bzw. mit Semikolons ab.
Das Diagramm
Ein Diagramm in einer GroupDocs.Assembly‑Vorlage ist ein gewöhnliches Diagramm mit Tags an zwei Stellen. Der Diagrammtitel lautet Revenue by region<<foreach [r in sales]>><<x [r.Region]>>: Schleife über die Zeilen, eine Kategorie pro Region. Der Serienname lautet Revenue<<y [r.Revenue]>>: ein Wert pro Zeile. Die Platzhalter‑Daten im Diagramm dienen nur dazu, dass der Designer sie sehen kann.
-> assemble_document {"template":{"filePath":"sales-chart.pptx"},
"data":{"filePath":"sales.xlsx"}}
<- Assembled 'sales-chart.pptx' with 'sales.xlsx' (table 1 (3
column(s): Region, Quarter, Revenue) as 'sales') as PPTX
Saved to: .../sales-chart_assembled.pptx
Wir öffneten das Ergebnis: ein Säulendiagramm mit dem Titel Revenue by region, Kategorien North, South, East und West, Werte 182000, 146500, 98250 und 211900, wobei die Tags entfernt und das Styling der Vorlage erhalten ist. Die gleichen Tags funktionieren in Word‑ und Excel‑Diagrammen.
Warum nicht den Agenten nach einem Diagrammbild fragen?
Sie können das, und für eine einmalige Antwort im Chat ist das in Ordnung. Für einen Bericht hat das drei Probleme: Das Bild ist ein Foto, sodass niemand hinein klicken und einen Wert prüfen kann; sein Stil ist das, was der Plot‑Code standardmäßig liefert, nicht Ihr Haus‑Style; und die Zahlen darauf sind über das Modell gelaufen. Ein Vorlagen‑Diagramm ist ein natives Diagramm‑Objekt, das aus der Datei gefüllt und einmal von demjenigen gestylt wird, dem die Vorlage gehört.
Ehrliche Grenzen
- Die Tabellen‑ und Diagramm‑Tags müssen bereits in der Vorlage vorhanden sein; der Agent entwirft sie nicht.
get_template_fieldszeigt, welche Daten die Vorlage liest. - Evaluierungsmodus: Jede Ausgabe beginnt mit “Evaluation Only. Created with GroupDocs.Assembly 26.7…”, und gespeicherte Arbeitsmappen erhalten ein zusätzliches Arbeitsblatt.
- Eine Liste, die in den Daten leer ist, hat keine Spaltentypen, sodass arithmetische Operationen fehlschlagen, selbst mit
allowMissingMembers. Prüfen Sie, dass der von Ihnen angeforderte Filter Zeilen zurückgibt. - Präsentations‑Vorlagen unter Linux benötigen
libgdiplus, wenn sie überdnxausgeführt werden; das Docker‑Image enthält es. - Datumsangaben in Datendateien: behalten Sie sie als Datum oder vollständiges ISO‑Format mit Zeit und formatieren Sie sie in der Vorlage.
FAQ
Kann ein KI‑Agent aus meiner CSV ein Diagramm erstellen, ohne sie hochzuladen?
Ja. Der Server läuft lokal, liest die CSV‑ oder Tabellendatei aus Ihrem Speicherordner und schreibt den Bericht dort; die Zahlen gehen von der Datei zum Dokument, ohne das Modell zu passieren.
Welche Datendateien kann die Vorlage lesen?
JSON, XML, CSV und TSV sowie eine Tabelle in einer Tabellendatei, Word‑ oder PowerPoint‑Datei; dataTable wählt die Tabelle, wenn mehrere vorhanden sind.
Kann der Bericht eine Excel‑Datei statt eines PDFs sein?
Ja, verwenden Sie eine XLSX‑Vorlage; die Tags werden in Zellen des Arbeitsblatts eingefügt. Im Evaluierungsmodus erhält die gespeicherte Arbeitsmappe ein zusätzliches Arbeitsblatt.
Weiterführendes
- Dokumentation, kanonische Anleitung: Wie man einen Bericht mit Tabellen und Diagrammen aus einer CSV‑ oder Tabellendatei mit einem KI‑Agenten erstellt
- Dokumentations‑Hub: GroupDocs.Assembly MCP Server
- Einstieg: Lassen Sie das Modell die Daten ausfüllen, nicht das Dokument schreiben
- Verwandt: Hundert personalisierte PDFs aus einem Prompt: Seriendruck mit einem KI‑Agenten
- Verwandt: Was braucht diese Vorlage? Fragen Sie sie.
- Verwandt: Ihr Repository enthält bereits die Daten; lassen Sie den Agenten das PDF erzeugen
- On‑Premise‑ und Sicherheitsmodell: 3 Architekturen für KI‑Dokumentenverarbeitung und die, die Dateien innerhalb Ihres Netzwerks hält
- Fragen: GroupDocs Assembly Forum
- Quelle: GroupDocs.Assembly.Mcp auf GitHub