最近看oisee/zvdb这个仓库,最吸引我的不是它把一个 Vector Database 写进了ABAP,而是它很有 SAP 老系统工程味道。它没有把问题直接丢给外部 Milvus、Pinecone、Qdrant 或 Elasticsearch KNN,也没有把检索过程藏在某个云服务后面,而是把 RAG 里最朴素的一段能力,向量保存、向量相似度比较、候选集缩小、最终排序,拆回到ABAP应用服务器和一张普通数据库表里完成。仓库 README 明确说它是一个完全用ABAP实现的 Vector Database,目标是提供一种不依赖外部向量数据库的方案,尤其面向「chat with your documents」这类把文档切块后检索相关片段,再注入 prompt 的场景。(GitHub)这个仓库的现实意义,放在 SAP 项目里会很清楚。很多 S/4HANA On-Premise 或 Private Cloud 客户,企业文档、业务配置、工单说明、审计说明、接口日志、字段含义解释都在系统内或系统旁边。团队想做一个面向内部顾问、关键用户、运维人员的问答入口,第一反应常常是把数据抽出去,进一个外部向量库,再由 LLM 做回答。这个链路当然能跑,但它带来额外的网络、鉴权、数据出境、运维、成本和合规问题。zvdb的路线刚好反过来,embedding 仍然可以由外部模型生成,但向量索引和相似度检索尽可能留在
用纯 ABAP 做向量检索,oisee/zvdb 仓库的设计思路、工程价值与 SAP 落地场景
发布时间:2026/5/21 10:31:34
最近看oisee/zvdb这个仓库,最吸引我的不是它把一个 Vector Database 写进了ABAP,而是它很有 SAP 老系统工程味道。它没有把问题直接丢给外部 Milvus、Pinecone、Qdrant 或 Elasticsearch KNN,也没有把检索过程藏在某个云服务后面,而是把 RAG 里最朴素的一段能力,向量保存、向量相似度比较、候选集缩小、最终排序,拆回到ABAP应用服务器和一张普通数据库表里完成。仓库 README 明确说它是一个完全用ABAP实现的 Vector Database,目标是提供一种不依赖外部向量数据库的方案,尤其面向「chat with your documents」这类把文档切块后检索相关片段,再注入 prompt 的场景。(GitHub)这个仓库的现实意义,放在 SAP 项目里会很清楚。很多 S/4HANA On-Premise 或 Private Cloud 客户,企业文档、业务配置、工单说明、审计说明、接口日志、字段含义解释都在系统内或系统旁边。团队想做一个面向内部顾问、关键用户、运维人员的问答入口,第一反应常常是把数据抽出去,进一个外部向量库,再由 LLM 做回答。这个链路当然能跑,但它带来额外的网络、鉴权、数据出境、运维、成本和合规问题。zvdb的路线刚好反过来,embedding 仍然可以由外部模型生成,但向量索引和相似度检索尽可能留在