pgvector 安装及使用示例

文章目录

环境

系统平台:Linux x86-64 Red Hat Enterprise Linux 7

版本:4.5.10

文档用途

本文介绍pgvector的安装及使用示例。

详细信息

简介

pgvector是PostgreSQL扩展,用于处理向量数据。用户可以在关系型数据库中直接存储高维向量,并执行相关查询搜索,对于需要相似性搜索的应用非常有用,例如:

  • 推荐系统
  • 图像识别
  • 自然语言处理
  • 语义搜索

安装

pgvector安装包:pgvector0.-hgdb-see-4.5.-e4f5471-2025****.x86_64.rpm

pgvector安装包需与数据库版本匹配。

安装:

复制代码
#rpm包执行:
rpm -ivh pgvector0.*-hgdb-see-4.5.*-e4f5471-2025****.x86_64.rpm
#deb包执行:
dpkg -i pgvector0.*-hgdb-see-4.5.*-e4f5471-2025****.arm64.deb

安装完成后,安全版数据库使用sysdba用户,企业版使用highgo用户登录数据库创建vector扩展,如下:

sql 复制代码
psql highgo sysdba
highgo=# create extension vector;
highgo=# \dx
 List of installed extensions
  Name   | Version | Schema
---------+---------+-------------
 plpgsql | 1.0     | pg_catalog   
 vector  | 0.7.4   | public     

使用示例

下面使用pgvector查询相似项。

例子步骤如下:

1、 创建包含向量列的表

sql 复制代码
CREATE TABLE items (
    id serial PRIMARY KEY,
    embedding vector(3) --三维向量
);

2、 插入向量数据

sql 复制代码
INSERT INTO items (embedding) VALUES ('[1,2,3]'), ('[4,5,6]');

3、 查询最相似的项

sql 复制代码
SELECT id, embedding, 
       (embedding <-> '[3,3,3]') AS distance -- 计算与目标向量的距离
FROM items
ORDER BY embedding <-> '[3,3,3]' -- 按距离排序
LIMIT 1; 

id  | embedding |     distance
-----+--------------+------------------
  1 | [1,2,3]    | 2.23606797749979
(1 row)

以上查询向量'[3,3,3]'最相似的值是[1,2,3],实现了pgvector的特性-相似性查询。

总结

本文档介绍了pgvector的安装,使用pgvector实现了相似性查询特性。

相关推荐
披着羊皮不是狼2 小时前
(9)批量生成文章并同步存入 MySQL 和 Redis
数据库·redis·mysql
2401_887724502 小时前
Pandas 中使用交叉表为分类列生成计数型宽表结构
jvm·数据库·python
justjinji2 小时前
PHP函数如何识别PCI设备厂商ID_PHP获取扩展卡硬件标识【说明】
jvm·数据库·python
2201_761040592 小时前
怎么监控MongoDB副本集的复制缓冲区积压_复制流速率评估
jvm·数据库·python
2402_854808372 小时前
Layui tab选项卡如何动态根据ID值进行程序化切换
jvm·数据库·python
m0_377618232 小时前
mysql如何设置字段为自动递增_使用alter table添加auto increment
jvm·数据库·python
Wyz201210242 小时前
Navicat导入HTML网页报错怎么跳过_忽略错误记录高级选项
jvm·数据库·python
InfinteJustice2 小时前
CSS Grid布局如何实现响应式卡片网格_结合媒体查询调整列数
jvm·数据库·python
2301_813599552 小时前
HTML函数开发用金属机身笔记本散热更好吗_材质对温控影响【指南】
jvm·数据库·python