2024 - topfact KI Funktionen - Automatische Verschlagwortung im QuickIndex
topfact KI Funktionen (QuickIndex)
Stand: 06.06.2024 (PS)

Ziel: Spezifikation einer Dokumenten-Kontext-Funktion im QuickIndex
Nutzen: Die Anwender können direkt im Dokument auf KI-Funktionen, ZugFerd Funktionen oder OCR Funktionen zugreifen um die Verschlagwortung zu vereinfachen
Nutzer-Anforderungen
- Der Nutzer kann über einen Rechtsklick auf das Dokument im QuickIndex ein Kontextmenü öffnen welches Funktionen für die halb-automatischen Verschlagwortung bereitstellt
- Der Nutzer kann in diesem Menü wählen
- Funktion a) geklickten Text in ein Archivfeld kopieren (live OCR-Erkennung)
- Funktion b) gesamtes Dokument mit KI verschlagworten
- Funktion c) gesamtes Dokument mit ZugFerd/XRechnung Daten verschlagworten
System-Anforderungen
- Das System präsentiert diese neuen Funktionen prominent im QuickIndex Menüband (siehe Interface 1)
- Das System präsentiert diese neuen Funktionen beim Rechtsklick auf ein Dokument im QuickIndex (siehe Interface 2)
- Das System kann erkennen ob ein Dokument ZugFerd oder XRechnung Informationen angehängt hat
- Das System kann für topfact6/MyWork konfigurieren welches Archiv-Feld mit welchem ZugFerd (bzw. XRechnung) Feld verknüpft wird
- Das System hat sinnvolle Standardwerte zur Verknüpfung zwischen ZugFerd und ArchivFeldern
- Das System kann beim Klick eine kleinere OCR Box ziehen (geklickte Zeile) und nur den Text um den geklickten Bereich herum erkennen
- Das System kann erkennen welcher Variablentyp der erkannten OCR Text hat und welches Archivfeld das wahrscheinlichste Ziel ist
- Das System merkt sich Nutzerbezogen die zuletzt genutzten Zielfelder
Funktionsabläufe
Funktion a) - Selektion in Archivfeld
Name: Selektion in ein Archivfeld übernehmen
Kurzbeschreibung: Diese Funktion ermöglicht es dem Nutzer einen Textbaustein, Datum oder eine Zahl von der Ansicht des Dokuments direkt mit einem Klick in ein Archivfeld zu kopieren.
Ablauf:
Schritt 1. Der Nutzer klickt mit rechts auf einen sichtbaren Text des Dokuments (z.B. eine Rechnungsnummer, ein Datum oder einen Namen)
Schritt 2.1. ein visueller "loading-indikator" wird am geklickten Punkt (roter Pfeil) oder direkt als Cursor-Waiting-Symbol angezeigt
Hinweis: Wenn es technisch möglich ist, den Inhalt des Kontextmenüs im Nachhinein zu ändern wäre es auch eine Möglichkeit den Loading-Indicator direkt im Menü zu zeigen, die OCR Prüfung asynchron zu machen, und nach abgeschlossener OCR Prüfung den Text des Kontextmenüs zu ändern...

Schritt 2.1. für den geklickten Punkt wird durch die Anwendung MyWork eine lokale OCR Erkennung durchgeführt
Für den geklickten Punkt ist nur eine gewisse Umgebung auf dem Dokument relevant. Diese Umgebung erstreckt sich über die komplette Zeile von 0% bis 100% da wir nicht wissen ob der Nutzer am Anfang oder am Ende eines Satzes geklickt hat. Die Umgebung hat aber keine große Höhe da immer nur eine Zeile erkannt werden muss. Folgendes Bild zeigt den relevanten Bereich (orange) zur OCR Erkennung bei einem Klick (roter Pfeil).

Schritt 2.2. die OCR Erkennung liefert Textblöcke die einer Zwischenanalyse unterzogen werden:
Nur der tatsächlich geklickte Textblock "Absatz" wird genutzt. Auf welchen der Textblöcke hat der Nutzer geklickt?


Logikerkennung in Stufen nach der live OCR Erkennung
a. Welches "Wort" wurde geklickt? Wollte der Nutzer ein Wort selektieren oder mehrere Worte hintereinander?
Ist dieses Wort bei Umwandlung vom Variablentyp DATUM oder NUMERIC -> dann wird als erkannter Wert direkt mit diesen Variablen weiter gearbeitet
b. Wenn das geklickte Wort ein VARCHAR ist, wird ggf. der gesamte Absatz oder Block als selektierter Wert verwendet.
Ziel ist, dass folgende Elemente sinnvoll extrahiert werden können (Beispiele)
- "Theo Prosel Weg 7" als ein Begriff VARCHAR (auch bei Klick auf ein Wort des Straßennamens)
- "Rehe Versorgnungstechnik GmbH" als ein Begriff VARCHAR (auch bei Klick auf nur eines der Wörter)
- "32400418" als eine Zahl NUMERIC
- "31.05.2024" als ein Datum DATE
- "RE-12345" als ein Begriff VARCHAR
c. welche Felder des Archivs sind potenzielle Ziele?
Gibt es Archivfelder die eindeutig zum Variablentyp passen (z.B. Datum, Beträge, etc.)
Welche weiteren Archivfelder wurden zuletzt häufig genutzt?
Schritt 2.2. Das Dokumenten-Kontextmenü wird angezeigt
Im Kontextmenü erscheint direkt der erkannte Wert "32400418" und als Submenü die möglichen Zielfelder
Die möglichen Zielfelder im Submenü setzen sich wie folgt zusammen:
PRIO 1: durch Logikprüfung wahrscheinliche Zielfelder (Variablentyp passt)
PRIO 2: durch "bisherige Nutzung" wahrscheinliche Zielfelder (die 5 zuletzt benutzten Felder)
PRIO 3: alle Zielfelder des Änderungsdialogs als Sub-Sub-Menü, alphabetisch sortiert

Schritt 2.3 Der Nutzer selektiert ein Zielfeld aus dem Submenü
Der erkannte Wert wird direkt in das selektierte Zielfeld des Änderungsdialogs eingetragen.
Der Änderungsdialog bekommt den Hinweis, dass sich die Indexdaten geändert haben (onvaluechange/onkeypress?)
Optionale Nachprüfung bei vorhandener Datenauswahl im Zielfeld:
Wenn als Zielfeld ein Feld im Dialog gewählt wird, welches eine Datenauswahl hinterlegt hat muss eine zusätzliche Prüfung erfolgen:
Vergleichbar mit der existierenden Funktion "freie Eingabe und ENTER" im Feld selbst.
gibt es in der Datenauswahl zu dem erkannten und ausgefüllten Wert einen Treffer? Müssen weitere Felder aus der Datenauswahl gesetzt werden?
Beispielsweise wird eine Projektnummer oder KTR Nummer selektiert und ins Archivfeld KTRNUMMER übertragen. Es existiert zu diesem Feld eine Datenauswahl.
Entsprechend muss das Feld KTRBEZEICHNUNG ebenfalls automatisch ausgefüllt werden.
Wenn in der Datenauswahl kein eindeutiger Treffer existiert, wird der erkannte Wert genutzt und damit die Datenauswahl geöffnet
Funktion b) - Dokument mit KI verschlagworten
Name: gesamtes Dokument mit KI verschlagworten
Kurzbeschreibung: Diese Funktion ermöglicht es dem Nutzer die Inhalte des gesamten Dokuments automatisiert auf die vorhandenen Archivfelder zu matchen. Die Daten werden anhand des Volltextes durch eine externe KI API ausgelesen. Der Nutzer erhält den KI generierten Vorschlag und kann manuell ändern oder einfach bestätigen.
Ablauf:
Schritt 1. Der Nutzer klickt mit rechts auf eine beliebige Stelle des Dokuments und wählt die Funktion oder startet die Funktion direkt über das Menüband
Schritt 2. Ein Dialog öffnet sich, auf dem der Nutzer bestätigen muss dass er die Erkennung für dieses Dokument ausführen möchte.
Ein Hinweis zur Kostenpflichtigkeit bzw. zum Kontingent des Kunden wird mit eingeblendet. z.B. 0,15 € pro Dokument oder eigener API Key in Verwendung, etc.
Evtl. wird auch anhand der OCR Textlänge oder der Seitenzahl des Dokuments eine Abschätzung zu den Kosten gegeben.
Schritt 3: Der Nutzer bestätigt/startet den Erkennungsvorgang und muss warten.
Der Dialog bleibt geöffnet, ein Loading-Indikator erscheint.
Im Hintergrund wird der Volltext des Dokuments oder das Dokument selbst zur topfact KI API übergeben.
Der Prompt definiert das erwartete Ergebnis als JSON mit Matching-Vorschlägen zu Archivfeldern
Schritt 4: Das Ergebnis wird von der topfact KI API als JSON zurückgegeben
Schritt 5: Es wird ein Zuordnungsdialog eingeblendet bei dem der Nutzer das Ergebnis prüfen und übernehmen kann.
Erkannte Werte werden entsprechend den Zielfeldern zugeordnet.
Der Nutzer kann Werte manuell ändern
Der Nutzer kann die Werte und Zuordnungen übernehmen und akzeptieren.
Schritt 6: Die Werte werden in den Änderungsdialog des QuickIndex übertragen, die Indexdaten werden gespeichert, das Zuordnungsfenster schließt sich.
Funktion c) - Dokument mit XML Daten verschlagworten
Name: gesamtes Dokument mit ZugFerd/xRechnung verschlagworten
Kurzbeschreibung: Diese Funktion ermöglicht es dem Nutzer die Inhalte des gesamten Dokuments automatisiert auf die vorhandenen Archivfelder zu matchen. Die Daten werden aus der vorhandenen ZugFerd XML ausgelesen. Der Nutzer erhält den KI generierten Vorschlag und kann manuell ändern oder einfach bestätigen.
Ablauf:
Schritt 0. Vor dem Klick prüft das System, ob die angezeigte Datei eine angehängte ZugFerd oder xRechnung XML hat. Falls keine XML vorhanden ist, wird diese Funktion in beiden Menüs ausgegraut inaktiv dargestellt. Beim Blättern durch Dokumente oder durch Dateien eines Dokuments aktualisiert sich dieser Status jedes mal wenn eine andere "file" angezeigt wird.
Schritt 1. Der Nutzer klickt mit rechts auf eine beliebige Stelle des Dokuments und wählt die Funktion oder startet die Funktion direkt über das Menüband
Schritt 2: Das Ergebnis wird von der internen MyWork Funktion "extract like ZugFerdReader" als JSON zurückgegeben (Vergleiche JSON Struktur, identisch mit Ergebnis aus KI Erkennung!)
Schritt 3: Es wird ein Zuordnungsdialog eingeblendet bei dem der Nutzer das Ergebnis prüfen und übernehmen kann.
Erkannte Werte werden entsprechend den Zielfeldern zugeordnet.
Der Nutzer kann Werte manuell ändern
Der Nutzer kann die Werte und Zuordnungen übernehmen und akzeptieren.
Schritt 4: Die Werte werden in den Änderungsdialog des QuickIndex übertragen, die Indexdaten werden gespeichert, das Zuordnungsfenster schließt sich.
Interface
1. Prominenter Funktionsbutton "KI" im QuickIndex Menüband

Über diesen prominenten Funktionsbutton im QuickIndex sind folgende KI Funktionen verfügbar:
- Funktion a) Text auf Dokument in Archivfeld übernehmen (Rechtsklick) (in diesem Menü ausgegraut, nur als Marketing-Hinweis)
- Funktion b) gesamtes Dokument mit KI verschlagworten
- Funktion c) gesamtes Dokument mit ZugFerd/XRechnung Daten verschlagworten
2. Dokumenten-Kontext Menü mit Funktionen

Beim Rechtsklick auf eine beliebige Stelle im Dokument erscheint folgendes Kontextmenü
- Funktion a) Selektion "xxx" übernehmen in ein Archivfeld > (falls ein Textobjekt angeklickt wurde, sonst ausgegraut oder waiting...)
- Funktion b) gesamtes Dokument mit KI verschlagworten
- Funktion c) gesamtes Dokument mit ZugFerd/XRechnung Daten verschlagworten (nur anzeigen, wenn das originale Dokument auch ZugFerd/XRechnung hat, sonst ausgegraut)
3. Zuordnungsdialog der Erkennung zu Archivfeldern

Der Zuordnungsdialog ist für beide Funktionen (KI Erkennung und ZugFerd Erkennung) identisch.
Der Nutzer kann dort "Werte manuell ändern", "Verwerfen" oder die "Werte übernehmen / akzeptieren"
Sonstiges
-