Эта страница поможет вам начать работу с функциями генеративного ИИ в вашем приложении. Здесь описаны функции и интеграции 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 для создания приложений, которые генерируют пользовательский контент, используют семантический поиск, обрабатывают неструктурированные входные данные, отвечают на вопросы с помощью ваших бизнес-данных и многое другое!