Векторная база данных обеспечивает эффективный поиск сходства и индексацию высокоразмерных данных. Векторные базы данных особенно полезны для приложений машинного обучения, где точки данных часто представлены в виде высокоразмерных векторов. Эти базы данных позволяют пользователям выполнять поиск сходства на основе встроенных точек данных, что облегчает поиск соответствующей информации на основе контента или функций.
В этом эксплуатационном проекте я использовал Weaviate в качестве векторной базы данных и их интеграцию с Embedder OpenAI ( text-embedding-ada-002-v2 ) для создания и сохранения векторов набора данных. В качестве примера набора данных я скрещивал весь комбинатор Y с их веб-сайта (более 4000 компаний) и создал векторы из ключа DataPoint (см. /examples/y-combinator/schema.json Занятие/examples/y-combinator/schema.json для получения более подробной информации). Я также загрузил набор данных в Kaggle.
В качестве второго примера я загрузил набор данных персонажей «Властелин колец», созданный Полом Муни.
Создайте файл .env в корневом каталоге и добавьте переменные: openai_apikey и data_path. Переменная data_path должна быть пути к каталогу данных:
OPENAI_APIKEY=XXXXXXXXXXXXXXXXX
DATA_PATH=C:Usersyour-user-namepathtoprojectdata
Чтобы использовать этот код, вам нужно установить зависимости, используя:
npm install
Чтобы использовать базу данных, вам нужно будет настроить экземпляр Docker базы данных.
docker-compose up -d --build
Заполните базу данных Weaviate (убедитесь, что Docker работает). Вы можете использовать один из примеров наборов данных, представленных в каталоге /examples (в настоящее время y-combinator и lotr-character ).
Запуск populate создаст базу данных Weaviate с данными из примера набора данных (и удалите любые существующие данные с одним и тем же классом). Я заплатил ~ 0,20 долл. В использовании OpenAI, чтобы заполнить набор данных комбинатора Y
npm run populate --dataset=<example-name>
Если успешно вы можете легко просматривать и запросить свои данные через API Weaviate GraphQL. Вы можете использовать песочницу Apollo GraphQL для изучения данных и запуска запросов. Просто введите URL -адрес графика ( http://localhost:8080/v1/graphql ).
Если вы хотите повеселиться, вы можете использовать встроенный проектор TensorFlow для визуализации ваших данных. Для получения необходимых файлов .tsv Используйте следующую команду (поместит их в папку /example/<example-name> ):
npm run tsv --dataset=<example-name>
Они могут быть загружены на веб -сайт для визуализации ваших данных.
Чтобы создать свои собственные данные, следуйте примерам:
/examples с именем вашего набора данных.schema.json в корне папки вашего набора данных. Этот файл должен содержать схему ваших данных.data.json в корне папки вашего набора данных. Этот файл должен содержать данные вашего набора данных.npm run populate --dataset=<your-dataset-name> чтобы заполнить базу данных вашими данными.