Na tej stronie znajdziesz informacje, które pomogą Ci zacząć wdrażać w aplikacji funkcje generatywnej AI. 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 dotyczące usług czy chatboty 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 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 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 zastępcze. W wersji testowej 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: przechowuj wektory dystrybucyjne i wysyłaj zapytania o nie.
Przykład zastosowania: ta funkcja jest używana przez inne narzędzia i funkcje.
Przewodnik po wyszukiwaniu wektorowym
Rozwiązanie: rozszerzenie umożliwiające wyszukiwanie 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, narzędzia do ładowania dokumentów lub historii wiadomości w czacie dla LangChain.
Przypadek użycia: tworzenie aplikacji generatywnej AI lub przepływów pracy do generowania rozszerzonego przez wyszukiwanie (RAG).
Zobacz przewodnik po LangChain
Rozwiązanie: Genkit
Podsumowanie: Genkit to platforma open source, która ułatwia tworzenie, wdrażanie i monitorowanie gotowych do wdrożenia aplikacji korzystających z 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.