Generative KI bezieht sich auf die Verwendung künstlicher Intelligenz zur Erstellung neuer Inhalte wie Text, Bilder, Musik, Audio und Videos. Generative KI stützt sich auf ein Modell für maschinelles Lernen (ML), um die Muster und Beziehungen in einem Datensatz mit von Menschen erstellten Inhalten zu lernen.
Diese Technologie hat durch Anwendungen wie Gemini unglaubliche Fähigkeiten bewiesen. Sie fragen sich vielleicht, wie ich generative KI-Tools in meine Webprodukte implementieren kann?
Ein gängiger Anwendungsfall ist die Bereitstellung einer besseren Schnittstelle für Nutzer, um Fragen zum Inhalt einer Website zu stellen. Mit Hilfe des maschinellen Lernens können Sie die Suchergebnisse Ihrer Nutzer erheblich verbessern.
Sie könnten eine Schnittstelle einrichten, auf der die Benutzer ihre Frage schreiben, die dann an ein großes Sprachmodell (LLM) wie Gemini gesendet wird, und dann die Antworten für Ihre Benutzer anzeigen.
Angenommen, eine solche Funktion existiert auf dieser Website. Ein Benutzer möchte wissen, welche APIs in Interop 2024 enthalten sind, und gibt die folgende Abfrage ein:
What are the features included in Interop 24?
Leider wird die Ausgabe aus mehreren Gründen wahrscheinlich falsch sein:
Es ist zwar möglich, dass LLMs aktuellere Informationen finden, aber LLM-Trainingsdatensätze sind von Natur aus veraltet. Die Aufrechterhaltung aktueller Ergebnisse kann unglaublich zeitaufwendig und teuer sein.
Prompt-Engineering ist eine Reihe von Techniken, um die beste Ausgabe aus einem LLM herauszuholen.
Eine Technik ist die Bereitstellung von zusätzlichem Kontext in der Eingabeaufforderung, wodurch es wahrscheinlicher wird, dass der LLM Inhalte ausgibt, die mit dem Kontext in Zusammenhang stehen.
Um mit unserem Interop-Beispiel fortzufahren, besteht unser erster Schritt darin, den vollständigen Inhalt des Artikels als Kontext bereitzustellen. Dann fügen Sie die Frage als Eingabe hinzu, die der LLM beantworten soll. Zum Beispiel:
Context:
Following on from the success of Interop 2022 and Interop 2023, we
are excited about the opportunity to collaborate once again with
all key browser vendors and other relevant stakeholders...
(trimmed to fit in this article)
Input:
What are the features included in Interop 2024?
Sie können erwarten, dass Gemini etwas wie das Folgende ausgibt:
The features included in Interop 24 are Accessibility, CSS Nesting, Custom
Properties, Declarative Shadow DOM, font-size-adjust, HTTPS URLs for
WebSocket, IndexedDB, Layout, Pointer and Mouse Events, Popover, Relative
Color Syntax, requestVideoFrameCallback, Scrollbar Styling, @starting-style
and, transition-behavior, Text Directionality, text-wrap: balance,URL
Hinweis: LLM-Ausgaben sind nicht deterministisch und die Antwort kann sich ändern, wenn Sie versuchen, diese Eingabeaufforderung selbst auszuführen.
Diese Antwort ist wahrscheinlich viel besser als bei einer Aufforderung ohne Kontext, da die Antwort auf dem vorgegebenen Kontext basiert.
Retrieval Augmented Generation (RAG) ist eine Technik zur Verbesserung von Antworten, die von generativer KI geliefert werden, indem sie auf zusätzliche Quellen außerhalb der Trainingsdaten zurückgreifen.
Anstatt beispielsweise eine Frage zu einem einzelnen Artikel zu beantworten, möchten wir, dass das LLM mehr Fragen zu web.dev beantwortet und dabei jeden Artikel als zusätzlichen Kontext verwendet. Während dies für kleinere Sites möglich sein mag, sind größere Prompts angesichts des Kontextfensters von Gemini 1.5 von 1 Million Token langsamer und teurer in der Ausführung.
Die Eingabe- und Ausgabelängen von LLMs werden in Token gemessen und berechnet, die eine gemeinsame Folge von Zeichen in einer Texteingabe darstellen. Die Anzahl der Token ist im Allgemeinen größer als die Anzahl der Wörter. Die Eingabe im ersten Beispiel bestand beispielsweise aus 775 Wörtern, die durch 1097 Token dargestellt wurden. Verschiedene LLMs können die Anzahl der Token unterschiedlich berechnen und die meisten bieten eine API oder einen Endpunkt an, um die Anzahl der Token für Texteingaben zu berechnen.
Eine Lösung besteht darin, dem LLM prompt-relevante Artikel zur Verfügung zu stellen. Diese Aufgabe sollte in zwei Teile aufgeteilt werden:
Wir möchten, dass die Gemini-Ergebnisse Inhalte zurückgeben, die auf den folgenden Artikeln basieren:
Die Eingabe sollte wie folgt aussehen:
Context:
Article 1:
Over the past two years... (trimmed)
Article 2:
At the end of last year Interop 2023 wrapped up. This effort... (trimmed)
Article 3:
Following on from the success of Interop 2022... (trimmed)
Input:
What are the features included in Interop 2024?
Hinweis: Ihr Kontext sollte den gesamten Inhalt dieser Artikel enthalten.
Dieser Kontext führt zu dem erwarteten Ergebnis.
* Accessibility * CSS Nesting * Custom Properties
* Declarative Shadow DOM * font-size-adjust
* HTTPS URLs for WebSocket * IndexedDB * Layout
* Pointer and Mouse Events * Popover * Relative Color Syntax
* requestVideoFrameCallback * Scrollbar Styling
* @starting-style and transition-behavior * Text Directionality
* text-wrap: balance * URL
Für diejenigen, die mit KI-Techniken vertraut sind: Dieser Ansatz verwendet RAG, eine gängige Praxis, um die Wahrscheinlichkeit echter Antworten von generativen KI-Tools zu verbessern.
Die RAG-Technik kann zwar mit der regulären Volltextsuche funktionieren, hat aber auch ihre Schwächen.
Die semantische Suche ist eine Technik zur Verbesserung der Suchgenauigkeit durch Konzentration auf diese Schlüsselaspekte:
Wenn Sie also Tools mit semantischer Suche entwickeln, basiert die Suchausgabe auf dem allgemeinen Zweck der Anfrage und nicht auf Schlüsselwörtern. Das bedeutet, dass ein Tool relevante Dokumente ermitteln kann, auch wenn das genaue Schlüsselwort nicht vorhanden ist. Es kann auch Ergebnisse vermeiden, bei denen das Wort zwar vorhanden ist, aber eine andere Bedeutung hat.
Derzeit können Sie zwei Suchwerkzeuge einsetzen, die die semantische Suche verwenden: Vertex AI Search und Algolia AI Search.
Sie haben gelernt, wie man Prompt-Engineering einsetzt, damit ein LLM Antworten auf Inhalte geben kann, die es noch nie gesehen hat, indem es den Prompt mit Kontext versieht. Und Sie haben gelernt, wie man diesen Ansatz von einzelnen Artikeln auf ein ganzes Korpus von Inhalten skalieren kann, indem man die Retrieval-Augmented Generation (RAG) Technik verwendet. Sie haben gelernt, wie die semantische Suche die Ergebnisse für Suchanfragen von Benutzern weiter verbessern kann, indem Sie RAG besser in Ihr Produkt implementieren.
Es ist ein bekanntes Problem, dass generative KI-Tools "halluzinieren" können, was sie im besten Fall unzuverlässig und im schlimmsten Fall aktiv schädlich für ein Unternehmen macht. Mit diesen Techniken können sowohl Nutzer als auch Entwickler die Zuverlässigkeit verbessern und vielleicht auch Vertrauen in die Ergebnisse dieser Anwendungen aufbauen.