Эта страница поможет вам начать работу с реализацией функций генеративного искусственного интеллекта в вашем приложении. В нем описаны функции и интеграции 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).
Решение: Генкит
Краткое описание: Firebase Genkit — это платформа с открытым исходным кодом, которая помогает создавать, развертывать и отслеживать готовые к использованию приложения на базе искусственного интеллекта.
Вариант использования: используйте Genkit и Cloud Firestore для создания приложений, которые генерируют индивидуальный контент, используют семантический поиск, обрабатывают неструктурированные входные данные, отвечают на вопросы, используя ваши бизнес-данные, и многое другое!
См. документацию Firebase Genkit.