Questa pagina ti aiuta a iniziare a implementare le funzionalità di AI generativa nella tua app. Descrive le funzionalità e le integrazioni per Firestore che coinvolgono l'AI generativa.
Guida rapida per la ricerca vettoriale con Cloud Firestore
La creazione di soluzioni innovative basate sull'AI per casi d'uso come i suggerimenti sui prodotti e i chatbot spesso richiede la ricerca di similarità vettoriale, o ricerca vettoriale in breve. Puoi eseguire la ricerca vettoriale sui dati di Firestore senza l'onere di copiare i dati in un'altra soluzione di ricerca vettoriale, mantenendo la semplicità e l'efficienza operative.
Il flusso di lavoro principale per la ricerca vettoriale in Cloud Firestore è composto da 4 passaggi.
Scopri di più sulla ricerca vettoriale nel nostro blog post
Genera vector embedding
Il primo passo per utilizzare la ricerca vettoriale è generare vector embedding. Gli embedding sono rappresentazioni di diversi tipi di dati come testo, immagini e video che acquisiscono similarità semantiche o sintattiche tra le entità che rappresentano. Gli embedding possono essere calcolati utilizzando un servizio, ad esempio l'API text-embeddings di Vertex AI.
Archivia gli embedding in Firestore
Una volta generati gli embedding, puoi archiviarli in Firestore utilizzando uno degli SDK supportati. Ecco come appare l'operazione nell'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
});
Crea un indice vettoriale
Il passaggio successivo consiste nel creare un indice vettoriale KNN di Firestore in cui vengono archiviati i vector embedding. Durante la release di anteprima, dovrai creare l'indice utilizzando lo strumento a riga di comando gcloud.
Esegui la ricerca vettoriale
Dopo aver aggiunto tutti i vector embedding e creato l'indice vettoriale, puoi eseguire la ricerca. Dovrai quindi utilizzare la chiamata find_nearest su un riferimento alla raccolta per passare il vector embedding della query con cui confrontare gli embedding archiviati e per specificare la funzione di distanza che vuoi utilizzare.
Ancora una volta, esplora il flusso di lavoro e altri casi d'uso nel nostro blog post.
Soluzione: ricerca vettoriale
Riepilogo: archivia ed esegui query su vector embedding.
Caso d'uso: questa funzionalità viene utilizzata dagli altri strumenti e funzionalità.
Consulta la guida per la ricerca vettoriale
Soluzione: estensione per la ricerca vettoriale con Firebase
Riepilogo: utilizza l'estensione Firebase per incorporare ed eseguire automaticamente query sui documenti Firestore con la funzionalità di ricerca vettoriale.
Caso d'uso: esegui la ricerca vettoriale automatica nei tuoi progetti Firebase.
Esamina la descrizione dell'estensione
Soluzione: integrazioni con LangChain
Riepilogo: utilizza Firestore come archivio vettoriale, loader di documenti o origine della cronologia dei messaggi della chat per LangChain.
Caso d'uso: crea applicazioni di AI generativa o flussi di lavoro di Retrieval-Augmented Generation (RAG).
Consulta la guida per LangChain
Soluzione: Genkit
Riepilogo: Genkit è un framework open source che ti aiuta a creare, eseguire il deployment e monitorare app basate sull'AI pronte per la produzione.
Caso d'uso: utilizza Genkit e Cloud Firestore per creare app che generano contenuti personalizzati, utilizzano la ricerca semantica, gestiscono input non strutturati, rispondono alle domande con i dati aziendali e molto altro ancora.
Consulta la documentazione di Genkit