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ą narzędzia 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żna wyszukiwać wektorowe dane Firestore bez konieczności kopiowania danych do innego rozwiązania do wyszukiwania wektorowego, zachowując prostotę i wydajność operacyjną.
Podstawowy proces wyszukiwania wektorowego w Cloud Firestore składa się z 4 etapów.
Więcej informacji na temat wyszukiwania wektorowego znajdziesz w 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. Wpisy można obliczać za pomocą usługi, takiej jak interfejs Vertex AI Text Embeddings API.
Zapisywanie wektorów w Firestore
Po wygenerowaniu elementów zastępczych możesz je zapisać w Firestore za pomocą 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
Następnym krokiem jest utworzenie w Firestore indeksu wektorowego KNN, w którym są przechowywane wektory dystrybucyjne. W wersji wstępnym musisz utworzyć indeks za pomocą narzędzia wiersza poleceń gcloud
.
Wykonaj wyszukiwanie wektorowe
Gdy dodasz wszystkie wektory zastępcze i utworzysz indeks wektorowy, możesz przeprowadzić wyszukiwanie. Następnie użyjesz wywołania find_nearest
w odniesieniu do odwołania do zbioru, aby przekazać wektor zapytań, który ma służyć do porównywania 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 wykorzystywana przez inne narzędzia i funkcje.
Przewodnik po wyszukiwaniu wektorowym
Rozwiązanie: rozszerzenie wyszukiwania wektorowego 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 w czacie w przypadku 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.
Zobacz dokumentację Firebase Genkit