Diese Seite hilft Ihnen bei den ersten Schritten mit der Implementierung generativer KI-Features in Ihrer Anwendung. Es werden die Features und Integrationen für Firestore beschrieben, die Generative AI beinhalten.
Kurzanleitung für die Vektorsuche mit Cloud Firestore
Um innovative KI-gestützte Lösungen für Anwendungsfälle wie Produktempfehlungen und Chatbots zu erstellen, ist oft eine Suche nach Vektorähnlichkeiten oder kurz Vektorsuche erforderlich. Sie können die Vektorsuche in Firestore-Daten ausführen, ohne dass Sie Daten in eine andere Vektorsuchlösung kopieren müssen. So bleiben die Betriebseffizienz und -einfachheit erhalten.
Der grundlegende Workflow für die Vektorsuche in Cloud Firestore besteht aus vier Schritten.
Vektorsuche in unserem Blogpost
Vektoreinbettungen generieren
Der erste Schritt bei der Verwendung der Vektorsuche besteht darin, Vektoreinbettungen zu generieren. Einbettungen sind Darstellungen verschiedener Arten von Daten wie Text, Bildern und Videos, die semantische oder syntaktische Ähnlichkeiten zwischen den dargestellten Entitäten erfassen. Einbettungen können mit einem Dienst wie der Vertex AI Text Embeddings API berechnet werden.
Embeddings in Firestore speichern
Nachdem die Einbettungen generiert wurden, können Sie sie mit einem der unterstützten SDKs in Firestore speichern. So sieht dieser Vorgang im NodeJS SDK aus:
const db = new Firestore();
let collectionRef = db.collection("beans");
await collectionRef.add({
name: "Kahawa coffee beans",
type: "arabica",
description: "Information about the Kahawa coffee beans.",
embedding_field: FieldValue.vector([0.1, 0.3, ..., 0.2]), // a vector with 768 dimensions
});
Vektorindex erstellen
Im nächsten Schritt erstellen Sie einen Firestore-KNN-Vektorindex, in dem die Vektor-Ebenen gespeichert werden. Während der Vorabversion müssen Sie den Index mit dem gcloud
-Befehlszeilentool erstellen.
Vektorsuche durchführen
Nachdem Sie alle Vektoreinbettungen hinzugefügt und den Vektorindex erstellt haben, können Sie die Suche ausführen. Anschließend verwenden Sie den find_nearest
-Aufruf für eine Sammlungsreferenz, um die Abfragevektoreinbettung zu übergeben, mit der die gespeicherten Einbettungen verglichen werden können, und um die zu verwendende Entfernungsfunktion anzugeben.
Weitere Informationen zum Workflow und zu Anwendungsfällen findest du in unserem Blogpost.
Lösung: Vektorsuche
Zusammenfassung: Vektoreinbettungen speichern und abfragen.
Anwendungsfall:Diese Funktion wird von den anderen Tools und Funktionen verwendet.
Lösung: Erweiterung für die Vektorsuche mit Firebase
Zusammenfassung: Mit der Firebase-Erweiterung können Sie Ihre Firestore-Dokumente automatisch mit der Vektorsuchfunktion einbetten und abfragen.
Anwendungsfall: Sie möchten in Ihren Firebase-Projekten eine automatische Vektorsuche durchführen.
Erweiterungsbeschreibung prüfen
Lösung: LangChain-Integrationen
Zusammenfassung: Verwenden Sie Firestore als Vektorspeicher, Dokument-Ladeprogramm oder Chatnachrichtenverlaufsquelle für LangChain.
Anwendungsfall: Erstellen von generativen KI-Anwendungen oder RAG-Workflows (Retrieval Augmented Generation).
Leitfaden für LangChain ansehen
Lösung: Genkit
Zusammenfassung:Firebase Genkit ist ein Open-Source-Framework, mit dem Sie produktionsreife KI-gestützte Apps erstellen, bereitstellen und überwachen können.
Nutzungsfall: Mit Genkit und Cloud Firestore können Sie Apps erstellen, die benutzerdefinierte Inhalte generieren, die semantische Suche nutzen, unstrukturierte Eingaben verarbeiten, Fragen mit Ihren Geschäftsdaten beantworten und vieles mehr.
Siehe Firebase Genkit-Dokumentation