Übersicht
- Eine promptbasierte Extraktionsaktivität erstellen.
- Eine LLM-Verbindung konfigurieren.
- Effektive Extraktions-Prompts schreiben.
- Ausgabeformat und -struktur definieren.
- Strenge und Validierungsregeln anwenden.
- Ihre Extraktion testen und optimieren.
- Extraktion von Vendor-Informationen aus Rechnungen
- Erfassung von Dokumentdaten auf Kopfzeilenebene
- Verarbeitung semi-strukturierter Dokumente
- Dokumente mit variablen Layouts
Voraussetzungen
- Zugriff auf ABBYY Vantage Advanced Designer.
- Eine konfigurierte LLM-Verbindung. Siehe LLM-Verbindungen konfigurieren.
- Einen Document-Skill mit geladenen Beispieldokumenten.
- Grundlegende Kenntnisse der JSON-Struktur.
- Felddefinitionen für die Daten, die Sie extrahieren möchten.
Diese Anleitung behandelt die Extraktion auf Kopfzeilenebene. Die Unterstützung für die Tabellenextraktion kann variieren.
Promptbasierte Extraktion verstehen
Was ist promptbasierte Extraktion?
- Rolle: Welche Rolle das LLM einnehmen soll (z. B. „Modell zur Datenextraktion“).
- Anweisungen: Wie Daten extrahiert und formatiert werden sollen.
- Ausgabestruktur: Das exakte JSON-Format für die Ergebnisse.
- Regeln: Richtlinien für den Umgang mit mehrdeutigen oder fehlenden Daten.
Schritt 1: Eine promptbasierte Aktivität hinzufügen
- Öffnen Sie Ihren Document-Skill in ABBYY Vantage Advanced Designer.
- Suchen Sie im linken Bereich nach EXTRACT FROM TEXT (NLP).
- Klicken Sie auf promptbasiert.

- Die Aktivität wird auf Ihrer Workflow-Arbeitsfläche angezeigt.
- Verbinden Sie sie zwischen Ihren Input- und Output-Aktivitäten.
promptbasierte Aktivitäten finden Sie unter „EXTRACT FROM TEXT (NLP)“ im Activities-Bereich zusammen mit anderen Extraktionsmethoden wie Named Entities (NER) und Deep Learning.
Schritt 2: Die LLM-Verbindung konfigurieren
- Wählen Sie die promptbasierte Aktivität in Ihrem Workflow aus.
- Suchen Sie im rechten Bereich Activity Properties nach LLM Connection.
- Klicken Sie auf das Dropdown-Menü.

- Wählen Sie Ihre konfigurierte LLM-Verbindung aus der Liste aus.
- Beispiel:
Nick-ChatGPT,Microsoft Foundry,Production GPT-4
- Beispiel:
- Vergewissern Sie sich, dass die Verbindung ausgewählt ist.
Wenn in der Liste keine Verbindungen angezeigt werden, müssen Sie zuerst über Konfiguration → Verbindung eine LLM-Verbindung konfigurieren.
Wenn Sie den Skill veröffentlichen, wird die hier ausgewählte Verbindung im Vantage Web Portal zur Default-Verbindung für diesen Skill. Unter Skill Catalog → [your skill] → Parameters wird die Verbindung bereits vorausgefüllt angezeigt. Mandantenadministratoren können sie auf eine andere Verbindung umstellen (zum Beispiel, um einen Produktions-Skill je nach Umgebung auf einen anderen LLM-Endpunkt zu verweisen), ohne den Skill erneut zu veröffentlichen — siehe Document-Skill-Parameter.
Schritt 3: Ausgabefelder definieren
- Suchen Sie im Bereich Activity Properties den Abschnitt Output.
- Dort sehen Sie eine hierarchische Liste mit Feldgruppen und Feldern.
- In diesem Beispiel extrahieren wir Vendor-Informationen:
- Vendor
- Name
- Adresse
- TaxID
- Kontonummer
- Sort Code
- IBAN
- BIC_SWIFT
- Geschäftsbereich
- Name
- Adresse
- Rechnungsdatum
- Rechnungsnummer
- Summen
- Nettobetrag
- Vendor

- Klicken Sie auf die Schaltfläche Activity Editor, um mit der Konfiguration des Prompts zu beginnen.
Definieren Sie alle Felder, bevor Sie Ihren Prompt schreiben. Die Feldnamen werden in der Struktur Ihres Prompts verwendet.
Schritt 4: Verfassen Sie die Rollendefinition
- Im Activity Editor sehen Sie die Oberfläche Prompt Text
- Beginnen Sie mit dem Abschnitt ROLE:

- Seien Sie präzise: “Modell zur Datenextraktion” verdeutlicht dem LLM seinen Zweck.
- Definieren Sie den Umfang: “vendorbezogene Felder” grenzt ein, was extrahiert werden soll.
- Setzen Sie klare Erwartungen: “Werttext wortgetreu” verhindert eine Neuformatierung.
- Gehen Sie mit fehlenden Daten um: “Lassen Sie jedes Feld aus, das nicht eindeutig vorhanden ist”.
- Halten Sie die Rolle klar und prägnant.
- Verwenden Sie Imperativformulierungen (“Extrahieren Sie”, “Treffen Sie keine Annahmen”).
- Machen Sie ausdrücklich klar, was NICHT getan werden soll.
- Legen Sie fest, wie mit Randfällen umzugehen ist.
Schritt 5: Ausgabeformat definieren
- Fügen Sie unterhalb des Abschnitts ROLE die Überschrift OUTPUT FORMAT hinzu.
- Definieren Sie die JSON-Struktur:

- FieldName: Muss exakt mit Ihren Felddefinitionen übereinstimmen (z. B.
Vendor.Name). - Text: Der extrahierte Wert als String.
- Line: Nullbasierter Zeilenindex, in dem der Wert im Dokument vorkommt.
- Verwenden Sie die exakten Feldnamen aus Ihrer Output-Konfiguration.
- Schließen Sie alle Felder ein, auch wenn einige leer sein können.
- Die Struktur muss gültiges JSON sein.
- Zeilennummern helfen bei der Verifizierung und Fehlerbehebung.
Schritt 6: Feldspezifische Extraktionsregeln hinzufügen

- Erkennungsmuster: Führen Sie für jedes Feld alternative Bezeichnungen auf.
- Formatspezifikationen: Beschreiben Sie das exakt zu extrahierende Format.
- Hinweise zum Fundort: Wo die Daten typischerweise zu finden sind.
- Ausschlüsse: Was NICHT extrahiert werden soll.
- Nummerieren Sie Ihre Regeln zur besseren Übersicht.
- Geben Sie mehrere Varianten der Bezeichnungen an.
- Geben Sie an, wem die Daten zuzuordnen sind (Vendor-Seite vs. Kundenseite).
- Fügen Sie Formatbeispiele in Klammern ein.
- Seien Sie bei verwandten Feldern explizit (z. B. “IBAN ignorieren — dafür gibt es ein eigenes Feld”).
Schritt 7: Strenge-Regeln anwenden

- Verhindert Halluzinationen: LLMs können plausible, aber falsche Daten erzeugen.
- Gewährleistet Konsistenz: Klare Regeln verringern die Unterschiede zwischen einzelnen Ausführungen.
- Regelt fehlende Daten: Legt fest, was zu tun ist, wenn Felder nicht gefunden werden.
- Wahrt die Datenintegrität: Die wortgetreue Extraktion bewahrt die ursprüngliche Formatierung.
- Erzeugen Sie niemals Daten, die nicht im Dokument enthalten sind.
- Lassen Sie unsichere Extraktionen lieber weg, statt zu raten.
- Geben Sie eine leere Struktur zurück, wenn keine Felder gefunden werden.
- Feldnamen müssen exakt übereinstimmen.
- Bewahren Sie die ursprüngliche Textformatierung.
Schritt 8: Dokumentformat auswählen
- Suchen Sie im Activity Editor das Dropdown-Menü Prompt.
- Dort sehen Sie die Optionen dafür, wie das Dokument dem LLM bereitgestellt wird.

-
PDF: Ursprüngliche PDF-Datei
- Geeignet für: Dokumente, bei denen das Layout entscheidend ist
- Zu beachten: Größere Dateigröße; einige LLMs unterstützen PDF nur eingeschränkt
-
Klartext: Unformatierte Textextraktion
- Geeignet für: Einfache Dokumente, die nur Text enthalten
- Zu beachten: Alle Formatierungs- und Layoutinformationen gehen verloren
-
Annotated Text ⭐ (Empfohlen)
- Geeignet für: Die meisten Dokumenttypen
- Zu beachten: Bewahrt die Struktur und bleibt gleichzeitig textbasiert
- Vorteile: Beste Balance zwischen Struktur und Leistung
-
Formatierter Text: Text mit beibehaltener grundlegender Formatierung
- Geeignet für: Dokumente, bei denen eine gewisse Formatierung wichtig ist
- Zu beachten: Ein Mittelweg zwischen Klartext und Annotated Text
- Wählen Sie Annotated Text aus, um die besten Ergebnisse zu erzielen
Tests haben gezeigt, dass Annotated Text für Extraktionsaufgaben die konsistentesten und zuverlässigsten Ergebnisse liefert. Es bewahrt die Dokumentstruktur und kann gleichzeitig effizient von LLMs verarbeitet werden.
Schritt 9: Testen Sie Ihre Extraktion
Führen Sie die Activity aus
- Schließen Sie den Activity Editor.
- Wechseln Sie zur Registerkarte All Documents.
- Wählen Sie ein Testdokument aus.
- Klicken Sie auf Test Activity oder Run.

- Warten Sie, bis das LLM das Dokument verarbeitet
- Verarbeitungszeit: in der Regel 5–30 Sekunden, abhängig von der Komplexität des Dokuments.
- Während Sie auf die API-Antwort warten, wird ein Ladeindikator angezeigt.
Ergebnisse prüfen
- Die Benutzeroberfläche wechselt zur Predictive View.
- Prüfen Sie den Bereich Output mit den extrahierten Feldern.
- Klicken Sie auf jedes Feld, um Folgendes anzuzeigen:
- Extrahierter Wert
- Konfidenzwert (falls vorhanden)
- Hervorgehobene Region im Dokumentbild

- ✅ Alle erwarteten Felder sind ausgefüllt
- ✅ Die Werte stimmen exakt mit dem Dokument überein
- ✅ Keine halluzinierten oder erschlossenen Daten
- ✅ Mehrzeilige Felder werden korrekt verarbeitet
- ✅ Fehlende Felder werden weggelassen (nicht mit falschen Daten ausgefüllt)
Typische Ergebnismuster
Schritt 10: Verfeinern Sie Ihren Prompt
Häufige Probleme und Lösungen
- Lösung: Fügen Sie spezifischere Positionshinweise hinzu.
- Beispiel: “Nur auf der Vendor-Seite; Kunden-/Käuferadressen ausschließen”
- Lösung: Betonen Sie die wortgetreue Extraktion.
- Beispiel: “Extrahieren Sie das Zahlenformat exakt so, wie es gedruckt ist (z. B. ‘12-34-56’)”
- Lösung: Verschärfen Sie die Strenge-Regeln.
- Beispiel: “Werte niemals generieren oder ableiten. Weglassen, wenn nicht vorhanden.”
- Lösung: Geben Sie Escape-Sequenzen an.
- Beispiel: “Verwenden Sie für mehrzeilige Werte
\nfür Zeilenumbrüche”
- Lösung: Prüfen Sie, ob die Feldnamen exakt übereinstimmen.
- Beispiel: Verwenden Sie
Vendor.Account Numberund nichtAccountNumber
Iterativer Verbesserungsprozess
- An mehreren Dokumenten testen: Optimieren Sie nicht nur für ein einzelnes Beispiel.
- Muster dokumentieren: Halten Sie fest, welche Regeln funktionieren und welche weiter verfeinert werden müssen.
- Spezifische Beispiele hinzufügen: Fügen Sie Formatbeispiele in Klammern ein.
- Strenge anpassen: Passen Sie sie anhand von Mustern bei Über- bzw. Unterextraktion an.
- Grenzfälle testen: Probieren Sie Dokumente mit fehlenden Feldern und ungewöhnlichen Layouts aus.
Beispielanpassungen
Den Extraktionsprozess verstehen
Wie die promptbasierte Extraktion funktioniert
- Dokumentkonvertierung: Ihr Dokument wird in das ausgewählte Format konvertiert (Annotated Text empfohlen).
- Prompt-Zusammenstellung: Ihre Rolle, das Ausgabeformat, Feldregeln und Strengevorgaben werden kombiniert.
- API-Aufruf: Der Prompt und das Dokument werden über Ihre Verbindung an das LLM gesendet.
- LLM-Verarbeitung: Das LLM liest das Dokument und extrahiert die Daten gemäß Ihren Anweisungen.
- JSON-Antwort: Das LLM gibt strukturierte Daten im angegebenen JSON-Format zurück.
- Feldzuordnung: Vantage ordnet die JSON-Antwort Ihren definierten Ausgabefeldern zu.
- Verifizierung: Zeilennummern und Konfidenzwerte (falls vorhanden) helfen dabei, die Genauigkeit zu prüfen.
Token-Nutzung und Kosten
- Dokumentlänge: Längere Dokumente verbrauchen mehr Tokens.
- Komplexität des Prompts: Detaillierte Prompts erhöhen die Token-Anzahl.
- Formatwahl: Annotated Text ist in der Regel effizienter als PDF.
- Anzahl der Felder: Mehr Felder = längere Prompts.
- Formulieren Sie Prompts knapp, aber klar.
- Vermeiden Sie doppelte Anweisungen.
- Entfernen Sie unnötige Beispiele.
- Erwägen Sie die Gruppierung von Feldern für zusammengehörige Daten.
Bewährte Methoden
Prompts formulieren
- ✅ Verwenden Sie klare Anweisungen im Imperativ („Extrahieren“, „Erkennen“, „Auslassen“).
- ✅ Geben Sie für jedes Feld mehrere Bezeichnungsvarianten an.
- ✅ Fügen Sie Formatbeispiele in Klammern ein.
- ✅ Geben Sie an, was NICHT extrahiert werden soll (Ausschlüsse).
- ✅ Nummerieren Sie Ihre Regeln, damit leicht auf sie verwiesen werden kann.
- ✅ Verwenden Sie durchgängig eine einheitliche Terminologie.
- ❌ Verwenden Sie keine vagen Anweisungen („Name abrufen“).
- ❌ Gehen Sie nicht davon aus, dass ein LLM domänenspezifische Konventionen kennt.
- ❌ Schreiben Sie keine unnötig langen, komplexen Sätze.
- ❌ Widersprechen Sie sich nicht in verschiedenen Abschnitten.
- ❌ Lassen Sie keine Regeln zur Strenge aus.
Felddefinitionen
- Beginnen Sie mit Erkennungsmustern (alternativen Bezeichnungen).
- Geben Sie das exakt zu bewahrende Format an.
- Geben Sie Positionshinweise an (übliche Platzierung).
- Definieren Sie die Datenzuordnung (Vendor vs. Kunde).
- Berücksichtigen Sie die Behandlung mehrzeiliger Werte.
- Verweisen Sie auf verwandte Felder, um Verwechslungen zu vermeiden.
Teststrategie
- Beginnen Sie mit einfachen Dokumenten: Testen Sie zuerst die grundlegende Extraktion.
- Auf Variationen ausweiten: Probieren Sie verschiedene Layouts und Formate aus.
- Grenzfälle testen: Fehlende Felder, ungewöhnliche Positionen, mehrere Treffer.
- Fehlschläge dokumentieren: Halten Sie Beispiele fest, bei denen die Extraktion fehlschlägt.
- Systematisch iterieren: Ändern Sie jeweils nur eine Sache.
Leistungsoptimierung
- Halten Sie Prompts kurz.
- Verwenden Sie das Format Annotated Text.
- Minimieren Sie die Anzahl der Felder pro Aktivität.
- Erwägen Sie, komplexe Dokumente aufzuteilen.
- Definieren Sie umfassende Feldregeln.
- Fügen Sie Formatbeispiele hinzu.
- Definieren Sie strenge Regeln.
- Testen Sie mit unterschiedlichen Dokumentbeispielen.
- Optimieren Sie die Länge des Prompts.
- Verwenden Sie effiziente Dokumentformate.
- Speichern Sie Ergebnisse bei Bedarf zwischen.
- Überwachen Sie die Tokennutzung im Dashboard des LLM-Providers.
Fehlerbehebung
Extraktionsprobleme
- Prüfen Sie, ob der Feldname exakt richtig geschrieben ist.
- Vergewissern Sie sich, dass sich die Daten im ausgewählten Dokumentformat befinden.
- Fügen Sie den Erkennungsmustern weitere Label-Varianten hinzu.
- Verringern Sie die Strenge vorübergehend, um zu prüfen, ob das LLM die Daten dann findet.
- Prüfen Sie, ob die Dokumentqualität die OCR-/Textextraktion beeinträchtigt.
- Präzisieren Sie die Spezifikationen für die Vendor-Seite.
- Fügen Sie explizite Ausschlüsse für Kunden-/Käuferdaten hinzu.
- Geben Sie Positionshinweise an (z. B. „oben im Dokument“, „Abschnitt des Ausstellers“).
- Fügen Sie Beispiele für korrekte und falsche Extraktion hinzu.
- Geben Sie das Format der Escape-Sequenz (
\n) explizit an. - Geben Sie Beispiele für die korrekte mehrzeilige Ausgabe an.
- Vergewissern Sie sich, dass das Dokumentformat Zeilenumbrüche beibehält.
- Fügen Sie die Anweisung hinzu: „Behalten Sie die ursprünglichen Zeilenumbrüche mit
\nbei“.
- Betonen Sie „wortgetreu“ und „genau wie gedruckt“.
- Fügen Sie eine Strenge-Regel hinzu: „Keine Normalisierung oder Inferenz“.
- Geben Sie konkrete Beispiele an, die die Beibehaltung der Formatierung zeigen.
- Fügen Sie Negativbeispiele hinzu: „Nicht ‚12-34-56‘, sondern ‚12 34 56‘ beibehalten“.
Leistungsprobleme
- Wechseln Sie zum Format Annotated Text, wenn Sie PDF verwenden.
- Vereinfachen Sie den Prompt, ohne wichtige Anweisungen zu verlieren.
- Reduzieren Sie die Dokumentauflösung, wenn die Bilder sehr groß sind.
- Prüfen Sie den Status des LLM-Providers und die Ratenlimits.
- Ziehen Sie für einfache Dokumente die Verwendung eines schnelleren Modells in Betracht.
- Verschärfen Sie die Strenge-Regeln.
- Formulieren Sie die Anweisungen spezifischer und eindeutiger.
- Fügen Sie mehr Formatbeispiele hinzu.
- Verringern Sie die Komplexität des Prompts, die zu Interpretationsspielraum führen könnte.
- Testen Sie höhere Temperatureinstellungen (falls in der Verbindung verfügbar).
- Optimieren Sie die Länge des Prompts.
- Verwenden Sie Annotated Text anstelle von PDF.
- Verarbeiten Sie Dokumente außerhalb der Spitzenzeiten in Batches.
- Ziehen Sie für einfache Dokumente die Verwendung kleinerer/günstigerer Modelle in Betracht.
- Überwachen Sie Budgetwarnungen und richten Sie sie im Dashboard des LLM-Providers ein.
Fortgeschrittene Methoden
Bedingte Extraktion
Unterstützung mehrerer Sprachen
Validierungsregeln
Beziehungen zwischen Feldern
Einschränkungen und Hinweise
Aktuelle Möglichkeiten
- ✅ Feldextraktion auf Kopfzeilenebene
- ✅ Ein- und mehrzeilige Werte
- ✅ Mehrere Felder pro Dokument
- ✅ Bedingte Extraktionslogik
- ✅ Mehrsprachige Dokumente
- ✅ Unterschiedliche Dokumentlayouts
- ⚠️ Tabellenextraktion (variiert je nach Implementierung)
- ⚠️ Komplexe verschachtelte Strukturen
- ⚠️ Sehr große Dokumente (Token-Limits)
- ⚠️ Echtzeitverarbeitung (API-Latenz)
- ⚠️ Garantiert deterministische Ergebnisse
Wann Sie promptbasierte Extraktion verwenden sollten
Integration mit Document-Skills
Verwenden extrahierter Daten
- Validierungsaktivitäten: Wenden Sie Geschäftsregeln auf extrahierte Werte an.
- Skript-Aktivitäten: Verarbeiten oder transformieren Sie extrahierte Daten.
- Export-Aktivitäten: Senden Sie Daten an externe Systeme.
- Prüfoberfläche: Manuelle Verifizierung extrahierter Felder.
Kombination mit anderen Aktivitäten
Feldzuordnung
"FieldName": "Vendor.Name"→ Wird dem AusgabefeldVendor.Namezugeordnet.- Die Feldhierarchie bleibt in der Ausgabestruktur erhalten.
- Zeilennummern helfen bei der Verifizierung und Fehlerbehebung.
Zusammenfassung
- ✅ Eine promptbasierte Extraktionsaktivität erstellt.
- ✅ Eine LLM-Verbindung konfiguriert.
- ✅ Einen umfassenden Extraktions-Prompt mit Rolle, Format und Regeln verfasst.
- ✅ Das optimale Dokumentformat (Annotated Text) ausgewählt.
- ✅ Strenge-Regeln zur Sicherung der Datenqualität angewendet.
- ✅ Die Extraktion getestet und die Ergebnisse überprüft.
- ✅ Best Practices für Prompt Engineering kennengelernt.
- Die promptbasierte Extraktion verwendet Anweisungen in natürlicher Sprache.
- Das Format Annotated Text liefert die besten Ergebnisse.
- Klare, spezifische Prompts sorgen für eine konsistente Extraktion.
- Strenge-Regeln verhindern Halluzinationen und sichern die Datenqualität.
- Iteratives Testen und Verfeinern verbessern die Genauigkeit.
Nächste Schritte
- Mit unterschiedlichen Dokumenten testen: Validieren Sie die Lösung mit verschiedenen Dokumentlayouts und Varianten.
- Ihre Prompts verfeinern: Verbessern Sie sie kontinuierlich auf Grundlage der Ergebnisse.
- Kosten überwachen: Verfolgen Sie die Token-Nutzung im Dashboard Ihres LLM-Anbieters.
- Leistung optimieren: Optimieren Sie Ihre Prompts hinsichtlich Geschwindigkeit und Genauigkeit.
- Tabellenextraktion erkunden: Experimentieren Sie mit der Extraktion von Positionen (sofern unterstützt).
- In Workflows integrieren: Kombinieren Sie dies mit anderen Aktivitäten für eine vollständige Verarbeitung.
Weitere Ressourcen
- ABBYY Vantage Advanced Designer-Dokumentation: https://docs.abbyy.com
- Leitfaden zum Einrichten von LLM-Verbindungen: LLM-Verbindungen konfigurieren.
- Best Practices für Prompt Engineering: Siehe die Dokumentation Ihres LLM-Providers.
- Support: Wenden Sie sich an den ABBYY-Support, wenn Sie technische Unterstützung benötigen.
