智能知识库调优
本篇文章介绍如何基于AgentCraft构建智能知识库以及进行效果调优, 其中知识库的问答效果是最被关注的,决定着该类应用的成功失败,当前业内基于RAG技术做了非常多的技术上的优化,期望来提升知识库的问答效果,AgentCraft内置了一个基础的RAG模型,本篇文章不准备深入这项技术去探讨知识库的效果优化, 而是从数据源和反馈校正两个方向来提升知识库的问答效果
数据预处理
数据高质量能够提升问答效果这是一个业内的共识,大多数用户的非结构化数据可能包含非常的的无效数据,我们可以首先用AgentCraft构建一个清晰数据的智能体,然后利用这个智能体进行数据清洗,再把返回的数据重新写入数据库
QA 提取智能体设置
将输入的内容进行QA对提取, 结果输出为json,json的格式如下:
(第一次创建无反应,请刷新页面) 输入 输出
注意,上面是用了chat的方式进行演示,实际上我们在业务生产的时候,想实现自动化还是使用api的方式,因此,我们可以通过智能体的接入访问获得api,然后把他集成到自己的处理流程中
反馈校正
基于智能系统的问答结果可以从历史记录中查看,我们可以根据结果的反馈去校正原始的数据信息,以及可以加入一些明确的QA问答,来不断地收敛问答的失败率,最后达到一个较好的问答效果。 比如我们提问”AgentCraft有哪些使用场景“,如果问题不符合我们的预期,我们可以有两种方式进行修正
修改文章知识库的源数据
去掉多余的文章内容,接下来我们再次测试看效果:
修改进准问答的数据
因为进准数据的召回权重大于文档数据,当我们希望命中一个精准问题的时候给定优化的答案,我们可以引入精准问答,比如我们先提问,AgentCraft的特色有哪些,看一下常规的答案: 这个问题回答的比较泛,并不出彩,我们希望AgentCraft能够更加形象具体的回答这个问题,这个时候可以增加一个精准类的数据集 创建好数据集我们将其关联到智能体,重新提问 可以看到,针对这个精准的问题,AgentCraft可以给定精准的答案,我们的答案设定不仅仅是纯文本,甚至是丰富的图文展示