Pierwsze kroki z generatywną AI

Na tej stronie dowiesz się, jak wdrożyć funkcje generatywnej AI na swoim aplikacji. Opisano w nim funkcje i integracje dla Firestore obejmujące i generatywnej AI.

Krótkie wprowadzenie do wyszukiwania wektorowego w Cloud Firestore

Tworzenie innowacyjnych rozwiązań opartych na AI na potrzeby przypadków użycia takich jak usługi rekomendacje i czatboty często wymagają wyszukiwania podobieństw wektorowych, w skrócie. Dane Firestore można przeszukiwać wektorowo bez problemów związanych z kopiowaniem danych do innego rozwiązania do wyszukiwania wektorowego, co pozwala dla prostoty i wydajności operacyjnej.

Podstawowy przepływ pracy wyszukiwania wektorowego w Cloud Firestore składa się z 4 kroków.

Więcej informacji na temat wyszukiwania wektorowego znajdziesz w poście na blogu

Wygeneruj wektory dystrybucyjne wektorów

Pierwszym krokiem przy korzystaniu z wyszukiwania wektorowego jest wygenerowanie wektorów dystrybucyjnych wektorów. Wektory dystrybucyjne to reprezentacja różnego rodzaju danych, takich jak tekst, obrazy, i filmy uwydatniające podobieństwa semantyczne lub składniowe między elementami; reprezentowanych przez nich. Wektory dystrybucyjne można obliczać za pomocą usługi, takiej jak Interfejs Vertex AI text-embeddings API.

Sklep wektory dystrybucyjne w Firestore

Po wygenerowaniu wektorów dystrybucyjnych możesz je przechowywać w Firestore przy użyciu jednej z z obsługiwanych pakietów SDK. Tak 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 wektorów

Następnym krokiem jest utworzenie indeksu wektorów KNN Firestore, w którym wektory dystrybucyjne są przechowywane. Podczas korzystania z wersji testowej musisz utworzyć w indeksie za pomocą narzędzia wiersza poleceń gcloud.

Po dodaniu wszystkich wektorów dystrybucyjnych wektorów i utworzeniu indeksu wektorów mogą rozpocząć wyszukiwanie. Następnie będziesz używać wywołania find_nearest w odniesienie do kolekcji w celu przekazania wektora dystrybucyjnego zapytania, z którym ma być porównywany zapisanych wektorów dystrybucyjnych oraz do określania funkcji odległości, której chcesz użyć.

Ponownie omawiamy przepływ pracy i inne przypadki użycia w naszym poście na blogu.

Podsumowanie: przechowywanie wektorów dystrybucyjnych i zapytań.

Przypadek użycia: ta funkcja jest wykorzystywana przez inne narzędzia i funkcje.

Zobacz przewodnik po wyszukiwaniu wektorowym

Rozwiązanie: rozszerzenie wyszukiwania wektorowego w Firebase

Podsumowanie: Użyj rozszerzenia Firebase, aby automatycznie osadzić Dokumenty Firestore z funkcją wyszukiwania wektorowego.

Przykład zastosowania: automatyczne wyszukiwanie wektorowe w projektach Firebase.

Sprawdzanie opisu rozszerzenia

Rozwiązanie: integracje LangChain

Podsumowanie: używanie Firestore jako magazynu wektorów, modułu ładowania dokumentów lub wiadomości czatu źródłem historii dla LangChain.

Przypadek użycia: tworzenie aplikacji generatywnej AI lub generowania rozszerzonego przez pobieranie danych (RAG).

Zobacz przewodnik po LangChain

Rozwiązanie: Genkit

Podsumowanie: Firebase Genkit to platforma open source ułatwiająca tworzenie, wdrażać i monitorować aplikacje oparte na AI gotowe do wykorzystania w środowisku produkcyjnym.

Przypadek użycia: tworzenie aplikacji generujących wygenerowanie danych za pomocą usług Genkit oraz Cloud Firestore niestandardowa treść, użyj wyszukiwania semantycznego, obsługa nieuporządkowanych danych wejściowych, odpowiedź związane z firmowymi bazami danych i nie tylko.

Zobacz dokumentację Firebase Genkit