Cette page vous aide à commencer à implémenter des fonctionnalités d'IA générative dans votre application. Elle décrit les fonctionnalités et les intégrations de Firestore qui impliquent l'IA générative.
Guide de démarrage rapide de la recherche vectorielle avec Cloud Firestore
La création de solutions innovantes basées sur l'IA pour des cas d'utilisation tels que les recommandations de produits et les chatbots nécessite souvent une recherche de similarité vectorielle, ou recherche vectorielle pour faire court. Vous pouvez effectuer une recherche vectorielle sur les données Firestore sans avoir à copier les données vers une autre solution de recherche vectorielle, ce qui vous permet de maintenir la simplicité et l'efficacité opérationnelles.
Le workflow de base pour la recherche vectorielle dans Cloud Firestore comporte quatre étapes.
Pour en savoir plus sur la recherche vectorielle, consultez notre article de blog.
Générer des embeddings vectoriels
La première étape de l'utilisation de la recherche vectorielle consiste à générer des embeddings vectoriels. Les embeddings sont des représentations de différents types de données, comme du texte, des images et des vidéos, qui capturent les similitudes sémantiques ou syntaxiques entre les entités qu'ils représentent. Les embeddings peuvent être calculés à l'aide d'un service, tel que l'API d'embeddings de texte de Vertex AI.
Stocker les embeddings dans Firestore
Une fois les embeddings générés, vous pouvez les stocker dans Firestore à l'aide de l'un des SDK compatibles. Voici à quoi ressemble cette opération dans le SDK NodeJS :
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
});
Créer un index vectoriel
L'étape suivante consiste à créer un index vectoriel KNN Firestore dans lequel les embeddings vectoriels sont stockés. Pendant la version preview, vous devrez créer l'index à l'aide de l'outil de ligne de commande gcloud.
Effectuer la recherche vectorielle
Une fois que vous avez ajouté tous les embeddings vectoriels et créé l'index vectoriel, vous êtes prêt à exécuter la recherche. Vous utiliserez ensuite l'appel find_nearest sur une référence de collection pour transmettre l'embedding vectoriel de la requête avec lequel comparer les embeddings stockés et spécifier la fonction de distance que vous souhaitez utiliser.
Pour en savoir plus sur le workflow et d'autres cas d'utilisation, consultez notre article de blog.
Solution : recherche vectorielle
Résumé : stocker et interroger des embeddings vectoriels.
Cas d'utilisation : cette fonctionnalité est utilisée par les autres outils et fonctionnalités.
Consultez le guide de la recherche vectorielle.
Solution : extension pour la recherche vectorielle avec Firebase
Résumé : utilisez l'extension Firebase pour intégrer et interroger automatiquement vos documents Firestore avec la fonctionnalité de recherche vectorielle.
Cas d'utilisation : effectuez une recherche vectorielle automatique dans vos projets Firebase.
Consultez la description de l'extension.
Solution : intégrations LangChain
Résumé : utilisez Firestore comme magasin de vecteurs, chargeur de documents ou source d'historique des messages de chat pour LangChain.
Cas d'utilisation : créez des applications d'IA générative ou des workflows de génération augmentée par récupération (RAG).
Consultez le guide de LangChain.
Solution: Genkit
Résumé : Genkit est un framework Open Source qui vous aide à créer, déployer et surveiller des applications basées sur l'IA prêtes pour la production.
Cas d'utilisation : utilisez Genkit et Cloud Firestore pour créer des applications qui génèrent du contenu personnalisé, utilisent la recherche sémantique, gèrent des entrées non structurées, répondent aux questions à l'aide de vos données d'entreprise, et bien plus encore.
Consultez la documentation Genkit.