Как добавить расширение pg_embedding в PostgreSQL
Недавно было выпущено новое расширение pg_embedding
, обеспечивающее впечатляющие улучшения за счет увеличения скорости поиска ближайшего соседа на основе графа в 20 раз с точностью 99% для ваших баз данных Postgres.
Расширения с открытым исходным кодом, такие как pgvector
и pg_embedding
, облегчают поиск сходства векторов в Postgres, что делает его надежным выбором для хранения векторов и выполнения поиска сходства. Однако их методы индексации различаются, поэтому важно изучить их различия и выбрать наиболее подходящий для ваших нужд. Подробнее об этом здесь. Процесс установки обоих расширений остается одинаковым.
Вы также можете установить это на Postgres, работающем в Docker, перейдите к разделу ниже.
Давайте начнем.
Шаг 1: Начните с клонирования pg_embedding из репозитория и переместите его в каталог /tmp:
git clone https://github.com/neondatabase/pg_embedding.git
mv pg_embedding /tmp
Шаг 2: Перейдите в каталог pg_embedding:
cd /tmp/pg_embedding
Шаг 3: Чтобы обеспечить полную совместимость с вашей версией PostgreSQL, установите необходимые зависимости:
sudo apt install postgresql-server-dev-XX
(Замените XX версией PostgreSQL. Например, если вы используете Postgres 15.3, используйте 15)
Шаг 4: Затем соберите и установите проект с помощью команды make:
make
sudo make install
Шаг 5: Теперь давайте добавим расширение с помощью psql.
Примечание. Вам необходимо войти в систему как суперпользователь, чтобы иметь возможность добавлять расширения.
sudo su postgres # Login as super user
psql
Шаг 6: Следующая команда создает расширение
create extension embedding;
Шаг 7: Проверьте установку, проверив расширения с помощью команды \dx и \q, чтобы выйти из psql.
Если вы хотите добавить расширение для Postgres, работающего в Docker,
Получите имя или идентификатор вашего контейнера Postgres:
docker ps
Как только вы это сделаете, давайте погрузимся в контейнер, чтобы выполнить несколько сценариев оболочки:
docker exec -it <NAME | ID> sh
Вуаля! Вы получили доступ к сфере Docker. Выполняйте те же команды, что и на материке, чтобы творить чудеса в Docker.
Но обратите внимание на это предупреждение! 🚨 Установка Docker может быть затруднена из-за отсутствия дополнительных пакетов, таких как git, make, gcc и g++. Чтобы плыть плавно, установите их с помощью:
sudo apt-get install git make gcc g++
Совет для профессионалов: клонируйте репозиторий и скопируйте каталог pg_embedding
в контейнер докеров и пропустите установку git, используя:
docker cp pg_embedding <CONTAINER_ID>:/tmp
Продолжайте с шага 2, чтобы завершить установку.
Вот оно! 🌟 Вы успешно установили расширение pg_embedding
. Удачного кодирования и пусть ваши усилия будут волшебными! 🧚♀️