发布时间:2026/9/6 17:23:03
5分钟在Windows装好PostgreSQL pgvector:从零到向量相似搜索 5分钟在Windows装好PostgreSQL pgvector从零到向量相似搜索【免费下载链接】pgvectorOpen-source vector similarity search for Postgres项目地址: https://gitcode.com/GitHub_Trending/pg/pgvectorpgvector Windows 安装比想象中简单这个开源扩展给 PostgreSQL 带来向量数据类型与 HNSW/IVFFlat 近邻搜索文本嵌入、图像向量都能直接用 SQL 查相似。下面按真实任务走一遍——编译装好扩展、建表查相似、给慢查询加索引。️ 一、Windows 上装 pgvectornmake 两行命令跑通编译先确认两件事PostgreSQL 是 13 以上版本装 16 及以上最省心Visual Studio 装了 C 桌面开发组件。漏装后者是新手最常见的卡点nmake 会直接报找不到编译器 cl.exe。以管理员身份打开 x64 Native Tools Command Prompt for VS整段贴入下面的命令。它在干什么设置 PGROOT 指向 PostgreSQL 安装目录克隆 v0.8.6 源码用 nmake 编译并安装——Windows 的构建规则就写在仓库根目录的 Makefile.win 里。set PGROOTC:\Program Files\PostgreSQL\16 git clone --branch v0.8.6 https://gitcode.com/GitHub_Trending/pg/pgvector cd pgvector nmake /F Makefile.win nmake /F Makefile.win install预期看到什么几屏编译信息后安静结束、没有任何 ERROR 就是成功vector.dll 已进 lib 目录.control 和 .sql 已进 share\extension。顺手验证打开 psql 执行CREATE EXTENSION vector;返回 CREATE EXTENSION 就说明扩展可用了。二、建表、塞数据、查相似三步验证扩展真的能用建表时把 embedding 列的类型写成vector(3)3 就是维度。psql 里依次执行下面三段建表、插两条数据、按 L2 距离找出离[3,1,2]最近的记录。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;预期看到什么最后一条返回 id1——[1,2,3] 离 [3,1,2] 比 [4,5,6] 近说明距离算子工作正常。要按语义相似度搜把-换成余弦距离就行。这个阶段不加索引也能查pgvector 默认做精确近邻搜索召回 100%只是数据上万后会变慢。vector 类型的实现可以看 src/vector.c。 三、搜得慢HNSW 还是 IVFFlat向量索引配置一次讲清先给结论多数场景选 HNSW。它查询快、召回高空表也能建IVFFlat 建得快、占内存少但必须先有数据做聚类空表上建出来效果很差。数据上万后全表扫描扛不住了该加近似索引。下面这段先给建图留足内存、建 HNSW 索引再用 EXPLAIN 确认查询真的走上了索引。SET maintenance_work_mem 2GB; CREATE INDEX ON items USING hnsw (embedding vector_l2_ops); EXPLAIN (ANALYZE, BUFFERS) SELECT * FROM items ORDER BY embedding - [3,1,2] LIMIT 5;预期看到什么EXPLAIN 输出里出现Index Scan using ... hnsw说明索引生效。两个坑提醒一下近似索引会牺牲一点点召回加索引后结果和精确搜索略有差异是正常的若返回行数偏少把hnsw.ef_search从默认的 40 调大即可。四、装完之后接下来可以做什么到这一步向量数据已经和关系数据在同一个数据库里能 JOIN、能走事务。三个方向值得马上动手一是接入真实嵌入把模型输出的文本或图像 embedding 存进 halfvec 列存储体积直接减半二是给带 WHERE 条件的查询配好过滤索引必要时开启 0.8.0 引入的迭代扫描解决近似索引过滤后结果变少的问题三是定期用 EXPLAIN 看线上查询确认索引没被优化器绕过。不用再引入额外的向量数据库PostgreSQL 一个就够了。【免费下载链接】pgvectorOpen-source vector similarity search for Postgres项目地址: https://gitcode.com/GitHub_Trending/pg/pgvector创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

2026/9/6 17:18:03

现代农业物联网建设方案:五大场景与四层架构实战解析

简介:这是一份面向智慧农业、设施农业相关从业者与学习者的专业课件,完整呈现“现代农业物联网建设方案”项目的总体思路。内容以八卦洲这一全国最大的野生蔬菜生产基地为实例,围绕设施农业智能化改造,依次讲解项目背景、总体规划…

2026/9/6 18:03:07

Some script

Some script 【免费下载链接】zx A tool for writing better scripts 项目地址: https://gitcode.com/GitHub_Trending/zx/zx ls — is an unix command to get directory contents. Lets see how to use it in zx: // ts, js, cjs, mjs, etc const {stdout} await $l…

2026/9/6 18:03:07

猫抓插件完整使用教程:3 步装好,网页视频音频轻松下载

猫抓插件完整使用教程:3 步装好,网页视频音频轻松下载 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 猫抓(cat-catch)是一…

2026/9/6 18:03:07

IRB120运动学分析:D-H参数、正逆解与MATLAB仿真全解析

简介:面向机器人运动学分析与仿真研究的一份PDF文档,以ABB irb120六自由度串联机器人为对象,系统讲解D-H坐标系建立、运动学正解与逆解推导,并借助Matlab Robotics Toolbox完成连杆建模、轨迹动态仿真与关节角度变化记录。该文为期…

2026/9/6 17:58:06

VDA 6.3 2022版过程审核变化解析与落地实施指南

简介:VDA 6.3-EN-2022 黄皮书是德国汽车工业协会(VDA)发布的第四版质量管理过程审核标准,属于最新修订的英文原版,面向汽车行业质量工程师、供应商审核员及项目管理团队。该标准围绕潜在分析、产品和生产过程开发、产品…

2026/9/6 0:06:59

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

开头先不绕弯子。“#斯坦李吐槽dc 所以超人是无缘无故会飞的嘛哈哈哈哈哈哈哈锤哥真是技术人才啊!#雷神 #复联”这类调侃式短标题,第一波冲击力在于它把两个宇宙的角色塞进同一个吐槽箱里,但细想一下就能发现,它真正碰到的根本不是…

2026/9/6 0:06:59

超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

把“蜘蛛侠 vs 超人”放在 CSDN 上聊,可能很多人第一反应是走错片场了。但如果把这两个角色看成“两个持续运营了 80 多年的文化产品”,你会发现,这场比较本质上是两个不同 IP 策略的长期结果对比:超人赢在定义了整个超级英雄题材…

2026/9/6 0:06:59

基于CNN的调制信号识别:MATLAB实现时频图分类实战

简介:本资源是一套面向通信工程与信号处理方向学习者、研究者的深度学习实践方案,聚焦调制信号自动检测与识别这一典型无线通信任务,解决传统方法依赖人工特征、低信噪比下性能下降等痛点。压缩包共12个文件(10.73MB)&…

2026/9/6 0:06:59

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

开头先不绕弯子。“#斯坦李吐槽dc 所以超人是无缘无故会飞的嘛哈哈哈哈哈哈哈锤哥真是技术人才啊!#雷神 #复联”这类调侃式短标题,第一波冲击力在于它把两个宇宙的角色塞进同一个吐槽箱里,但细想一下就能发现,它真正碰到的根本不是…

2026/9/6 0:06:59

超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

把“蜘蛛侠 vs 超人”放在 CSDN 上聊,可能很多人第一反应是走错片场了。但如果把这两个角色看成“两个持续运营了 80 多年的文化产品”,你会发现,这场比较本质上是两个不同 IP 策略的长期结果对比:超人赢在定义了整个超级英雄题材…

2026/9/6 0:06:59

基于CNN的调制信号识别:MATLAB实现时频图分类实战

简介:本资源是一套面向通信工程与信号处理方向学习者、研究者的深度学习实践方案,聚焦调制信号自动检测与识别这一典型无线通信任务,解决传统方法依赖人工特征、低信噪比下性能下降等痛点。压缩包共12个文件(10.73MB)&…

2026/9/6 11:40:10

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/5 2:30:42

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/6 10:19:40

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…