如何在 Windows 上安装 pgvector:三步跑通 PostgreSQL 向量搜索

📅 2026/8/24 2:25:06
如何在 Windows 上安装 pgvector:三步跑通 PostgreSQL 向量搜索
如何在 Windows 上安装 pgvector三步跑通 PostgreSQL 向量搜索【免费下载链接】pgvectorOpen-source vector similarity search for Postgres项目地址: https://gitcode.com/GitHub_Trending/pg/pgvectorpgvector 是 PostgreSQL 的开源向量相似性搜索扩展让你在业务数据库里直接存取向量、做近邻检索。本文面向在 Windows 上手装的用户先核对环境再走预编译或源码编译两条路线处理常见报错最后建表、插数、查出一条最近邻结果。 向量搜索到底能帮你做什么先想两个具体的活。一个是商品搜索框用户输入的不再是精确关键词而是意思相近的描述把文档或商品描述转成向量后靠向量距离就能排出最相关的结果这就是语义搜索。另一个是图库以图搜图每张图片经模型提取得到一组数值特征拿新图去库里比对特征距离最接近的就是相似图。这两类需求的共同点是向量需要和订单、商品、用户这些关系型数据放在一起查询。pgvector 把这件事做进了你熟悉的 PostgreSQL向量列可以直接和别的表 JOIN事务、备份、权限都沿用原有机制不用额外维护一套向量数据库。 pgvector 安装 Windows 前的核对清单动手前把这几项过一遍后面大部分报错都能避免操作系统Windows 10/11数据库PostgreSQL 16.1 或更高版本推荐用 EDB 官网的 Windows 安装包编译器Visual Studio 2019 或更新版本Community 版即可安装时勾选 C 支持GitGit for Windows用于拉取源码源码获取pgvector 源码通过 Git 克隆预编译文件则从项目发布页获取源码路线还需要确认 Visual Studio 的命令行工具可用编译脚本见 源码目录Windows 专用构建文件是 Makefile.win。⚡ 让 pgvector 跑起来的最短路径推荐路径预编译文件新手优先走这条。从项目发布页下载对应版本的 Windows 文件然后做两件事把.dll复制到C:\Program Files\PostgreSQL\16\lib\把.control和.sql文件复制到C:\Program Files\PostgreSQL\16\share\extension\注意.sql会有一批版本号命名的升级脚本它们决定扩展后续怎么升级对应仓库里的 sql/ 目录所以一并拷过去别只挑主文件。进阶路径源码编译想要最新特性或想动过代码再装就走编译。打开 Developer Command Prompt for VS管理员身份执行git clone https://gitcode.com/GitHub_Trending/pg/pgvector cd pgvector接着编译并安装nmake /f Makefile.win nmake /f Makefile.win install两条命令都成功文件就会进lib\和share\extension\目录效果和推荐路径一致。 pgvector 安装常见报错速查表报错现象可能原因解决办法process_begin: CreateProcess(NULL, uname -s, ...) failed. Makefile:16: pipe: No errornmake 读到了标准 Makefile其中uname是 Linux 命令确认用的是Makefile.win而非Makefile确认在 VS 的命令提示符里执行No such file or directory或make: *** No rule to make target ...PostgreSQL 安装路径或环境变量配置不正确核对安装目录、检查 PGROOT 相关变量必要时以管理员身份重新打开提示符 验证安装三步跑出第一条向量查询启动 PostgreSQL 服务打开 psql执行这条最小链路CREATE EXTENSION vector; CREATE TABLE items (id bigserial PRIMARY KEY, embedding vector(3)); INSERT INTO items (embedding) VALUES ([1,2,3]), ([4,5,6]), ([7,8,9]); SELECT * FROM items ORDER BY embedding - [3,1,2] LIMIT 5;四条全过说明类型、函数、距离计算都就位。想确认扩展状态可以查SELECT * FROM pg_extension WHERE extname vector;。距离算子不止一种-是 L2 距离#是内积是余弦距离按业务语义选一个。 从能用到好用HNSW 与 IVFFlat 索引选型数据量上几百条后全表算距离就撑不住了该建索引。pgvector 提供两种HNSW分层导航小世界图召回率和查询速度整体更好插入时不阻塞适合数据持续增长、查询延迟敏感的默认选择。IVFFlat倒排 平坦聚类建索引时需要先训练聚类lists 参数内存占用相对友好适合数据集比较稳定的场景。简单判断拿不准就先用 HNSW数据基本不更新、想省内存再考虑 IVFFlat。另外两点省心的事向量太大可以用半精度 halfvec 或量化压缩稀疏特征可以用 sparsevec都无需换架构。到这里pgvector 在 Windows 上从装到用已经闭环。接下来可以看三个方向向量近邻搜索的算法原理尤其 HNSW 的建图与查询过程、索引参数如 lists、ef的调优实践以及把语义搜索接到你自己的业务表上。【免费下载链接】pgvectorOpen-source vector similarity search for Postgres项目地址: https://gitcode.com/GitHub_Trending/pg/pgvector创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考