На этой странице вы узнаете, как начать внедрять функции на основе генеративного ИИ в свое приложение. В нем описываются функции и интеграции Firestore, включающие генеративный искусственный интеллект.
Краткое руководство по векторному поиску с помощью Cloud Firestore
Для создания инновационных решений на основе искусственного интеллекта, например рекомендаций товаров и чат-ботов, часто требуется поиск по сходству векторов, или просто векторный поиск. Вы можете выполнять векторный поиск по данным Firestore, не копируя их в другое решение для векторного поиска, что обеспечивает простоту и эффективность работы.
Основной рабочий процесс векторного поиска в Cloud Firestore состоит из четырех шагов.
Создание векторных эмбеддингов
Первый шаг в использовании векторного поиска – создание векторных представлений. Векторные представления – это представления различных типов данных, таких как текст, изображения и видео, которые отражают семантическое или синтаксическое сходство между сущностями, которые они представляют. Эмбеддинги можно рассчитать с помощью сервиса, например Vertex AI text-embeddings API.
Сохранение эмбеддингов в 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 для ссылки на коллекцию, чтобы передать векторное встраивание запроса, с которым будут сравниваться сохраненные встраивания, и указать функцию расстояния, которую вы хотите использовать.
Подробнее о рабочем процессе и других примерах использования читайте в нашем блоге.
Решение: поиск векторов
Краткое описание. Хранение и запрос векторных эмбеддингов.
Пример использования. Эта функция используется другими инструментами и функциями.
Руководство по векторному поиску
Решение: интеграции LangChain
Краткое описание. Используйте Firestore в качестве векторного хранилища, загрузчика документов или источника истории сообщений чата для LangChain.
Пример использования. Создание приложений на основе генеративного искусственного интеллекта или рабочих процессов генерации с дополненной выборкой (RAG).
Решение: Genkit
Краткое описание. Genkit – это фреймворк с открытым исходным кодом, который помогает создавать, развертывать и отслеживать готовые к работе приложения на основе ИИ.
Пример использования. С помощью Genkit и Cloud Firestore можно создавать приложения, которые генерируют персонализированный контент, используют семантический поиск, обрабатывают неструктурированные входные данные, отвечают на вопросы, используя коммерческие данные, и многое другое.