PostgreSQL向量数据库支持
起因 AI so hit
LLM
PostgreSQL
install
https://www.postgresql.org/download/linux/debian/
PostgreSQL 内置支持
从 PostgreSQL 16 开始,内置了对向量操作的支持:
新增 vector数据类型 支持基本的向量运算
pgvector 扩展
pgvector 是 PostgreSQL 最流行的向量搜索扩展,它允许:
on u24.04
Ubuntu 24.04 sudo apt install -y curl gnupg lsb-release 2002 curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/postgresql.gpg 2003 echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list 2004 sudo apt update 2006 psgl --version 2007 sudo apt install -y postgresql-13 postgresql-client-13 postgresql-server-dev-13 2010 psql --version 2011 sudo systemctl start postgresql 2012 sudo apt install -y git make gcc 2015 git clone https://github.com/pgvector/pgvector.git 2016 cd pgvector/ 2018 git checkout v0.7.0 2020 make 2022 make install 2023 sudo -i -u postgres 2024 sudo systemctl start postgresql 2025 sudo -i -u postgres postgres@racknerd-0955f20:~$ sudo systemctl start postgresql [sudo] password for postgres: sudo: a password is required postgres@racknerd-0955f20:~$ logout root@racknerd-0955f20:~/pgvector# sudo systemctl start postgresql root@racknerd-0955f20:~/pgvector# sudo -i -u postgres postgres@racknerd-0955f20:~$ psql psql (13.22 (Ubuntu 13.22-1.pgdg22.04+1)) Type "help" for help. postgres=# CREATE DATABASE testdb; ERROR: database "testdb" already exists postgres=# \c testdb You are now connected to database "testdb" as user "postgres". testdb=# CREATE EXTENSION vector; CREATE EXTENSION testdb=# CREATE TABLE items (id bigserial PRIMARY KEY, embedding vector(3)); CREATE TABLE testdb=# INSERT INTO items (embedding) VALUES ('[1,2,3]'); INSERT 0 1 testdb=# SELECT * FROM items; id | embedding ----+----------- 1 | [1,2,3] (1 row) testdb=#