【AI】【向量】----本地程序对接云端知识库做 RAG!不用自建向量库,小白也能落地
·
在 Spring AI Alibaba 程序中,我们可以直接使用本地程序调用百炼平台的云知识库,实现知识库文档解析、分块、向量化存储等一条龙服务。
这样,开发者就不用本地部署搭建向量数据库、不用进行复杂的文档处理,以及开发文档管理等业务功能了,可以大大提升开发效率,非常哇塞。
那问题来了,如何对接百炼平台的云知识库呢?
本文我们基于最新版正式版 Spring AI Alibaba 和百炼平台带着大家一起操作一下。
1.百炼添加数据和知识库
-
导入数据(https://bailian.console.aliyun.com/console?tab=app#/data-center):


-
百炼创建知识库(https://bailian.console.aliyun.com/console?tab=app#/knowledge-base):





2.编写代码调用云知识库
编写代码操作云知识库
@RequestMapping("/rag")
public Flux<String> rag(@RequestParam String msg) {
DocumentRetriever retriever = new DashScopeDocumentRetriever(dashScopeApi,
DashScopeDocumentRetrieverOptions.builder().withIndexName(indexName).build());
return chatClient.prompt()
.system("你是一个Java助手,基于知识库的内容进行回答,知识库查询不到的信息,返回暂无信息")
.user(msg)
.advisors(new DocumentRetrievalAdvisor(retriever))
.stream().content();
}
其中 indexName 为知识库的名字,如下图所示:
在这里插入图片描述
小结
本地 Spring AI Alibaba 程序可以直接调用百炼平台的云知识库,实现知识库文档解析、分块、向量化存储等一条龙服务,大大提升 RAG 开发的效率,但同时也会带来数据隐私问题,所以我们需要根据自己的业务选择合适的方案。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)