在 Linux 上安装 `pgvector`(这是一个 PostgreSQL 的向量类型扩展,常用于处理嵌入向量,便于进行向量相似度搜索)
1. 安装 PostgreSQL
确保你已经安装好 PostgreSQL 数据库。
例如在 Ubuntu 上:
sudo apt update
sudo apt install postgresql postgresql-contrib
2. 安装依赖
pgvector
扩展用的是 make
、gcc
等开发工具,因此你需要先安装 PostgreSQL 的开发包和编译工具:
Ubuntu/Debian 系统:
sudo apt install postgresql-server-dev-all git make gcc
CentOS/RHEL 系统:
sudo dnf install postgresql-devel git make gcc
3. 安装 pgvector
方式一:从源码安装(推荐方式)
# 克隆 pgvector 的源码仓库
git clone https://github.com/pgvector/pgvector.git
cd pgvector# 编译并安装
make
sudo make install
方式二:通过包管理(部分发行版或已有 PGDG 源)
某些 Linux 发行版仓库已经有了 pgvector
包:
Ubuntu(如果已添加 PostgreSQL 官方仓库):
sudo apt install postgresql-15-pgvector
请把 15 替换为你的 PostgreSQL 版本(如 14、16 等)
4. 在数据库中启用 pgvector
连接到你的数据库,例如用 psql
:
sudo -u postgres psql # 或
psql -h <host> -U <user> -d <database>
然后在你要使用的数据库中运行:
CREATE EXTENSION IF NOT EXISTS vector;
5. 测试
为表添加一个向量字段、向量检索等操作(举例):
CREATE TABLE items (id bigserial PRIMARY KEY, embedding vector(3));
INSERT INTO items (embedding) VALUES ('[1,2,3]'), ('[4,5,6]');
SELECT * FROM items ORDER BY embedding <-> '[3,1,2]' LIMIT 1;
参考
-
官方仓库: https://github.com/pgvector/pgvector
如需用 Docker,可以参考官方文档或 issue,部分 Postgres 镜像已经集成了 pgvector 扩展。
如有具体报错或需求(如编译报错、PostgreSQL 版本问题)欢迎补充说明!