pgvector

pgvector是一个开源的 PostgreSQL 扩展,用于高效地存储、查询和处理向量数据

通过在 PostgreSQL 数据库中引入向量数据类型、运算符和索引方法,让用户能够直接在数据库中进行向量相似性搜索和相关操作

https://github.com/pgvector/pgvector

docker安装

docker pull pgvector/pgvector:pg17

该镜像是基于 PostgreSQL 17 的官方镜像构建的,专门用于支持 pgvector 的功能

docker run --name pgvector -e POSTGRES_PASSWORD=pgvector -p 5432:5432 -d pgvector/pgvector:pg17

说明:

  -e POSTGRES_PASSWORD=pgvector:

    设置了数据库超级用户的密码为 pgvector

              默认 postgres 为超级用户,可以直接使用

  -p 5432:5432:

    将容器的 5432 端口映射到宿主机的 5432 端口

  -d pgvector/pgvector:pg17:

    后台运行 pgvector/pgvector:pg17 镜像

 连接到数据库

psql -h localhost -p 5432 -U postgres

注:

  需要有工具psql

sudo apt update
sudo apt install postgresql-client

sudo yum install postgresql

启用pgvector扩展

CREATE EXTENSION vector;

测试

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 5;

 

posted @ 2025-04-18 15:22  慕尘  阅读(598)  评论(0)    收藏  举报