AI bringt die magische Suche in 4D Write Pro Dokumente

Automatisch übersetzt von Deepl

In vielen 4D-Unternehmensanwendungen sind Dokumente das A und O – technische Notizen, Berichte, Handbücher, interne Leitfäden. Aber wenn Benutzer sich nicht an den genauen Wortlaut erinnern können, wird die Suche nach dem richtigen Dokument langsam, frustrierend oder – schlimmer noch – unmöglich.

Mit 4D 20 R10 ändert sich das mit der semantischen Suche auf Basis von KI-Vektoren. Anstelle von Schlüsselwörtern wird die Bedeutung abgeglichen. Die Benutzer erhalten das richtige Dokument, auch wenn sie mit anderen Worten oder in einer anderen Sprache suchen. Dies ist ein intelligenter Weg, das in Ihren Dokumenten verborgene Wissen zu erschließen – schnell, genau und so, wie Menschen tatsächlich suchen.

Betrachten wir ein konkretes Beispiel: Ein Benutzer möchte einen technischen Hinweis finden, der erklärt, wie man ein Bild in ein 4D Write Pro Dokument einfügt. Er kann sich jedoch nicht an die genaue Formulierung in diesem Dokument erinnern.

HDI_4DWP_AI_Vector

Wie man in 4D Write Pro Dokumenten sucht

Das Durchsuchen von Dokumenten, die in einer Datenbank gespeichert sind, ist kein neues Konzept. Traditionell haben 4D Entwickler diese Funktion mit Hilfe einer stichwortbasierten Suche realisiert. Die künstliche Intelligenz ermöglicht heute jedoch einen weitaus flexibleren und leistungsfähigeren Ansatz: die semantische Suche mit Vektoren.

Schauen wir uns beide Techniken einmal genauer an und sehen wir, wie Vektoren die Art und Weise, wie wir suchen, revolutionieren.

Traditionelle Suchmethoden mit Schlüsselwörtern

Bei dieser Methode werden die Schlüsselwörter eines Dokuments extrahiert und in einem Textfeld gespeichert. Eine Suchanfrage wird dann anhand der vom Benutzer eingegebenen Schlüsselwörter durchgeführt.

Dieser Ansatz ist schnell und effektiv, wenn die Abfrage genau mit dem Wortlaut des Dokuments übereinstimmt. Wenn sich der Wortlaut auch nur geringfügig ändert, schlägt die Suche fehl. Zum Beispiel würde eine Suche nach „Bild einfügen“ keine Dokumente finden, die „Bild hinzufügen“ enthalten.

Semantische Suche mit AI Vektoren

Ab 4D 20 R10 steht eine leistungsstarke neue Funktion zur Verfügung: KI-Vektor-Unterstützung. Diese ermöglicht eine semantische Suche, die auf künstlicher Intelligenz basiert.

Im Gegensatz zur Stichwortsuche konzentriert sich die semantische Suche auf die Bedeutung und nicht auf exakte Wörter. Sie ermöglicht es Benutzern, Dokumente zu finden, die dieselbe Idee auf unterschiedliche Weise ausdrücken. Zum Beispiel vermitteln Sätze wie „Bild einfügen“ oder „Bild hinzufügen“ denselben Gedanken.

Benutzer können sogar Suchanfragen in einer anderen Sprache als dem Dokumentinhalt eingeben. Die Bedeutung bleibt erhalten und wird abgeglichen – etwas, das die Stichwortindizierung nicht leisten kann.

Wie funktioniert das?

  1. Jedes Dokument wird analysiert und mit Hilfe der 4D AIKit Komponente in einen Vektor umgewandelt. Dieser Vektor stellt die semantische Bedeutung des Textes dar.
  2. Eine Benutzeranfrage wird ebenfalls in einen Vektor umgewandelt.
  3. Die Ähnlichkeit zwischen dem Abfragevektor und den Dokumentenvektoren wird berechnet.
  4. Die Dokumente werden zurückgegeben, sortiert von der höchsten bis zur geringsten Relevanz.

Beispiel für die Implementierung

Zur Veranschaulichung dieser Funktion wurde eine Demo-Datenbank erstellt. Sie enthält mehrere 4D Write Pro Dokumente, die technische Notizen darstellen.

Schritt 1 – Generierung von Vektoren für jedes Dokument

Die Erzeugung von Vektoren kann ausgelöst werden, wenn ein Dokument in der Datenbank gespeichert wird. In unserem Beispiel wurde eine Methode erstellt, um alle Vektoren auf einmal zu erzeugen:

var $document : cs.NoteEntity
var $documents :=ds.Note.all()
For each ($document; $documents)
$txt :=WP Get text($document.Document)
$document .Vector:=cs.AIManagement.new($apiKey).generateVector($txt)
$document .save()
End for each

Schritt 2 – Generierung des Vektors aus der Benutzeranfrage

Wenn der Benutzer auf eine Suchschaltfläche klickt, erstellen wir einen Vektor aus der Eingabeaufforderung des Benutzers

var $vector:=cs.AIManagement.new($apiKey).generateVector($prompt)

Schritt 3 – Vektoren vergleichen und nach Ähnlichkeit sortieren

Schließlich geben wir eine Liste von Dokumenten zurück, die nach der semantischen Relevanz für die Suchanfrage des Benutzers sortiert sind.

var $formula:=Formula(This.Vector.cosineSimilarity($vector)
$documents:=ds.Note.all().orderByFormula($formula); dk descending)

In diesem Beispiel werden alle Dokumente in der Reihenfolge der höchsten bis geringsten Relevanz angezeigt. Sie können die dem Benutzer angezeigten Ergebnisse auch einschränken, z. B. auf die ersten fünf.

Live-Aktion

Schlussfolgerung

Die semantische Suche mit KI-Vektoren stellt eine bedeutende Entwicklung in der Art und Weise dar, wie Benutzer mit dokumentenbasierten Daten in 4D interagieren. Sie bietet mehr Flexibilität, höhere Genauigkeit und eine intuitivere Benutzererfahrung – ohne sich auf eine strikte Stichwortsuche zu verlassen.

Ob für interne Notizen, Dokumentationen oder Wissensdatenbanken, die Vektorsuche erschließt eine neue Ebene der Intelligenz in Ihren 4D Anwendungen.

In einer kommenden 4D Version (in nicht allzu ferner Zukunft) wird ein spezieller Vektorindex-Typ für die schnelle Analyse großer Datensätze eingeführt.

Und Sie? Hat dieser Blog Ideen für Ihre eigenen Projekte geweckt? Welche Arten von Dokumenten könnten von der semantischen Suche in Ihren Anwendungen profitieren?

Vanessa Talbot
Product Owner - Vanessa Talbot kam im Juni 2014 zum 4D Programmteam. Als Product Owner ist sie für das Schreiben der User Stories und deren Umsetzung in funktionale Spezifikationen zuständig. Ihre Aufgabe ist es auch, sicherzustellen, dass die Implementierung der Funktionen den Anforderungen des Kunden entspricht. Seit ihrer Ankunft hat sie an der Definition der wichtigsten Funktionen in 4D gearbeitet. Sie hat an den meisten der neuen Funktionen für präemptives Multi-Threading gearbeitet und auch an einem sehr komplexen Thema: der neuen Architektur für erstellte Anwendungen. Vanessa hat einen Abschluss von der Telecom Saint-Etienne. Sie begann ihre Karriere am Criminal Research Institute als Entwicklerin für die audiovisuelle Abteilung. Sie hat auch in den Bereichen Medien und Medizin als Expertin für technischen Support, Produktion und die Dokumentation neuer Funktionen gearbeitet.