Windows下安装postgresql扩展pg_vector实现向量存储

postgresql在windows下安装,可以选择编译好的免安装包。这样,下载下来可以直接初始化,启动。

下载链接如下:https://www.enterprisedb.com/download-postgresql-binaries

需要注意的是,pgsql版本,我开始使用pgsql12.14版本,发现添加插件之后启动失败。后来下载16.11版本,同样的插件,就没有问题。

扩展包,也有编译好的vector.dll,pg_vector.conf配置文件等。下载地址:https://github.com/portalcorp/pgvector_compiled

扩展包下载好,解压之后有三个文件夹lib,share,include,直接拷贝到pgsql目录下,合并原来的目录即可。

我看到好多文章里面提到要修改配置文件data/postgresql.conf,把shared_preload_libraries = 'vector'配置上,我反正添加了。

重启pgsql。不报错。就表示pg_vector插件安装成功。

插件有了,并不表示我们创建的数据库就支持这扩展,我们需要手动创建这个扩展。

通过命令行进入数据库,我们创建扩展:

sql 复制代码
create extension if not exists vector;

在扩展基础上,创建表。

sql 复制代码
create table documents (
id bigserial primary key,
embedding vector(3));

插入数据,并查询记录:

sql 复制代码
test=# insert into documents (embedding) values ('[1,2,3]'),('[4,5,6]'),('[4,0,5]');
INSERT 0 3
test=# select id,embedding <-> '[1,2,3]' as score,embedding from documents order by embedding <-> '[1,2,3]';
 id |       score       | embedding
----+-------------------+-----------
  1 |                 0 | [1,2,3]
  3 | 4.123105625617661 | [4,0,5]
  2 | 5.196152422706632 | [4,5,6]
(3 行记录)

直观的看,[4,0,5]和[4,5,6]还是做了一个简单的比较排序。

相关推荐
Jul1en_8 小时前
【Redis】List列表命令、编码方式及应用场景
数据库·redis·list
21439658 小时前
如何利用RMAN修复逻辑坏块_VALIDATE CHECK LOGICAL验证块内结构损坏
jvm·数据库·python
qq_206901398 小时前
如何使用 AWS Lambda 和 Python 获取 EMR 集群的标签列表
jvm·数据库·python
2301_777599378 小时前
JavaScript中利用类语法模拟实现单例模式的方案
jvm·数据库·python
qq_342295828 小时前
Bootstrap制作后台管理系统布局 Bootstrap如何搭建Dashboard框架
jvm·数据库·python
m0_640309308 小时前
SQL报表容灾与备份设计_灾备恢复策略
jvm·数据库·python
a9511416428 小时前
golang如何设计分布式ID生成系统_golang分布式ID生成系统设计指南
jvm·数据库·python
2301_782659188 小时前
Go 中高效过滤结构体切片:基于用户名映射去重的最优实践
jvm·数据库·python
2301_813599558 小时前
Golang怎么处理HTTP响应_Golang HTTP响应处理教程【对比】
jvm·数据库·python
m0_748839498 小时前
C#怎么将集合分块处理_C#如何使用Chunk方法【实战】
jvm·数据库·python