Эта страница поможет вам начать внедрять функции генеративного ИИ в ваше приложение. Она описывает функции и интеграции для Firestore, которые включают генеративный ИИ.
Краткое руководство по поиску векторов с помощью Cloud Firestore
Создание инновационных решений на базе ИИ для таких вариантов использования, как рекомендации продуктов и чат-боты, часто требует поиска по сходству векторов или, короче, поиска векторов. Вы можете выполнять поиск векторов в данных Firestore без хлопот по копированию данных в другое решение для поиска векторов, сохраняя при этом простоту и эффективность работы.
Основной рабочий процесс поиска векторов в Cloud Firestore состоит из 4 этапов.
Подробно о поиске векторов читайте в нашем блоге
Генерация векторных вложений
Первым шагом в использовании векторного поиска является генерация векторных вложений. Вложения — это представления различных типов данных, таких как текст, изображения и видео, которые фиксируют семантические или синтаксические сходства между сущностями, которые они представляют. Вложения можно вычислить с помощью сервиса, например API текстовых вложений Vertex AI.
Встраивание магазина в Firestore
После того, как вложения сгенерированы, вы можете сохранить их в Firestore, используя один из поддерживаемых SDK. Вот как эта операция выглядит в NodeJS SDK:
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
});
Создать векторный индекс
Следующий шаг — создание векторного индекса Firestore KNN, в котором хранятся векторные вложения. Во время предварительного выпуска вам нужно будет создать индекс с помощью инструмента командной строки gcloud
.
Выполнить поиск вектора
После добавления всех векторных вложений и создания векторного индекса вы готовы запустить поиск. Затем вы используете вызов find_nearest
для ссылки на коллекцию, чтобы передать векторное вложение запроса, с которым нужно сравнить сохраненные вложения, и указать функцию расстояния, которую вы хотите использовать.
Еще раз изучите рабочий процесс и другие варианты использования в нашей записи в блоге .
Решение: поиск вектора
Краткое описание: Хранение и запрос векторных вложений.
Вариант использования: эта функция используется другими инструментами и функциями.
См. руководство по поиску векторов
Решение: расширение для поиска векторов с помощью Firebase
Краткое описание: Используйте расширение Firebase для автоматического встраивания и запроса документов Firestore с помощью функции поиска векторных изображений.
Вариант использования: выполнение автоматического поиска векторов в проектах Firebase.
Ознакомьтесь с описанием расширения.
Решение: интеграция LangChain
Краткое описание: Используйте Firestore в качестве векторного хранилища, загрузчика документов или источника истории сообщений чата для LangChain.
Вариант использования: создание приложений генеративного ИИ или рабочих процессов генерации дополненной извлечения (RAG).
Решение: Genkit
Краткое описание: Genkit — это фреймворк с открытым исходным кодом, который помогает вам создавать, развертывать и отслеживать готовые к использованию приложения на базе искусственного интеллекта.
Вариант использования: используйте Genkit и Cloud Firestore для создания приложений, которые генерируют пользовательский контент, используют семантический поиск, обрабатывают неструктурированные входные данные, отвечают на вопросы с помощью ваших бизнес-данных и многое другое!