Na tej stronie znajdziesz informacje, które pomogą Ci zacząć wdrażać funkcje generatywnej AI w aplikacji. Znajdziesz tu opisy funkcji i integracji Firestore, które wykorzystują generatywną AI.
Krótki przewodnik po wyszukiwaniu wektorowym za pomocą Cloud Firestore
Tworzenie innowacyjnych rozwiązań opartych na AI do zastosowań takich jak rekomendacje produktów i czatboty często wymaga wyszukiwania wektorowego opartego na podobieństwie. Możesz wykonywać wyszukiwanie wektorów w danych Firestore bez konieczności kopiowania danych do innego rozwiązania do wyszukiwania wektorów, zachowując przy tym prostotę i wydajność operacyjną.
Podstawowy proces wyszukiwania wektorowego w Cloud Firestore składa się z 4 etapów.
Więcej informacji o wyszukiwaniu wektorowym znajdziesz w naszym poście na blogu
Generowanie wektorów dystrybucyjnych
Pierwszym krokiem w wykorzystaniu wyszukiwania wektorowego jest wygenerowanie wektorów dystrybucyjnych. Reprezentacje właściwościowe to reprezentacje różnych rodzajów danych, takich jak tekst, obrazy i filmy, które rejestrują podobieństwa semantyczne lub składniowe między reprezentowanymi przez nie elementami. Wektory dystrybucyjne można obliczyć za pomocą usługi, takiej jak interfejs Vertex AI Text-Embedding API.
Zapisywanie wektorów w Firestore
Po wygenerowaniu elementów zastępczych możesz je zapisać w Firestore, korzystając z jednego z obsługiwanych pakietów SDK. Oto jak wygląda ta operacja w pakiecie 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
});
Utwórz indeks wektorowy
Kolejnym krokiem jest utworzenie w Firestore indeksu wektorowego KNN, w którym są przechowywane wektory dystrybucyjne. Podczas wersji wstępnej musisz utworzyć indeks za pomocą narzędzia wiersza poleceń gcloud
.
Wykonaj wyszukiwanie wektorowe
Po dodaniu wszystkich wektorów zastępczych i utworzeniu indeksu wektorowego możesz przeprowadzić wyszukiwanie. Następnie użyjesz wywołania find_nearest
w odniesieniu do odwołania do zbioru, aby przekazać wektor osadzania zapytań, który ma służyć do porównania zapisanych wektorów, oraz określić funkcję odległości, której chcesz użyć.
Więcej informacji o procesie i przypadkach użycia znajdziesz w tym poście na blogu.
Rozwiązanie: wyszukiwanie wektorowe
Podsumowanie: przechowywanie wektorów dystrybucyjnych i wysyłanie zapytań do nich.
Przypadek użycia: ta funkcja jest używana przez inne narzędzia i funkcje.
Przewodnik po wyszukiwaniu wektorowym
Rozwiązanie: rozszerzenie do wyszukiwania wektorów w Firebase
Podsumowanie: użyj rozszerzenia Firebase, aby automatycznie umieszczać dokumenty Firestore i wysyłać do nich zapytania za pomocą funkcji wyszukiwania wektorowego.
Przykład zastosowania: automatyczne wyszukiwanie wektorów w projektach Firebase.
Sprawdzanie opisu rozszerzenia
Rozwiązanie: integracja z LangChain
Podsumowanie: używaj Firestore jako źródła wektorów, dokumentu lub historii wiadomości czatu dla LangChain.
Przykład zastosowania: tworzenie aplikacji generatywnej AI lub przepływów pracy do generowania rozszerzonego przez wyszukiwanie w zapisanych informacjach (RAG).
Zobacz przewodnik po LangChain
Rozwiązanie: Genkit
Podsumowanie: Firebase Genkit to platforma open source, która ułatwia tworzenie, wdrażanie i monitorowanie gotowych do wdrożenia aplikacji wykorzystujących AI.
Przykład zastosowania: korzystaj z Genkit i Cloud Firestore, aby tworzyć aplikacje, które generują treści niestandardowe, korzystają z wyszukiwania semantycznego, obsługują dane wejściowe nieustrukturyzowane, odpowiadają na pytania za pomocą danych biznesowych i wiele więcej.
Zapoznaj się z dokumentacją Firebase Genkit