MyScale как векторная база для эмбеддингов

Урок 266 из 299 курса «OpenAI Cookbook»: официальный курс OpenAI Academy (ОпенАИ) на русском языке. Урок входит в платный доступ; первые уроки курса бесплатно.

О чём урок

Этот notebook представляет пошаговое руководство по использованию MyScale в качестве векторной базы данных для OpenAI embeddings. Процесс включает: Использование предварительно вычисленных embeddings, сгенерированных OpenAI API. Хранение этих embeddings в облачном экземпляре MyScale. Преобразование необработанного текстового запроса в embedding с использованием OpenAI API. Использование MyScale для выполнения поиска ближайших соседей в созданной коллекции. MyScale — это база данных, построенная на Clickhouse, которая сочетает векторный поиск и SQL-аналитику для обеспечения высокопроизводительного, оптимизированного и полностью управляемого опыта. Она разработана для облегчения совместных запросов и анализов как структурированных, так и векторных данных, с полной поддержкой SQL для всей обработки данных. Разверните и выполните векторный поиск с помощью SQL на вашем кластере в течение двух минут, используя MyScale Console. Чтобы следовать этому руководству, вам потребуется следующее: Развернутый кластер MyScale в соответствии с руководством по быстрому старту. Библиотека 'clickhouse-connect' для взаимодействия с MyScale. Ключ OpenAI API для векторизации запросов. Этот notebook требует наличия openai, clickhouse-connect, а также некоторых других зависимостей. Используйте следующую команду для их установки: Чтобы использовать OpenAI API, вам потребуется настроить ключ API. Если у вас его еще нет, вы можете получить его на OpenAI. Следуйте разделу сведений о подключении, чтобы получить информацию о хосте кластера, имени пользователя и пароле из консоли MyScale, и используйте ее для создания подключения к вашему кластеру, как показано ниже: Нам необходимо загрузить набор данных предварительно вычисленных векторных embeddings для статей Википедии, предоставленный OpenAI. Используйте пакет wget для загрузки набора данных. После завершения загрузки извлеките файл с помощью пакета zipfile: Теперь мы можем загрузить данные из vector_database_wikipedia_articles_embedded.csv в Pandas DataFrame: Мы создадим SQL-таблицу с именем articles в MyScale для хранения данных embeddings. Таблица будет включать векторный индекс с метрикой косинусного расстояния и ограничением на длину embeddings.

План урока

  1. Что такое MyScale
  2. Варианты развертывания
  3. Предварительные требования
  4. Установка требований
  5. Подготовьте ваш ключ OpenAI API
  6. Подключение к MyScale
  7. Загрузка данных
  8. Индексация данных

Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.

Урок входит в темы

Полезные гиды