基于Dify的知识库实现问题排查FAQ
1、环境搭建
2、知识库创建
2.1、数据准备
由下图可知,Dify知识库支持的数据源格式以MARKDOWN、CSV、TXT等格式,如下图,此处我们以csv格式数据为样例,准备几条测试数据。
问题,答案
就诊记录同步失败原因,1、先检查医院网关配置是否正确【管理端-》功能配置:模型版本+服务地址】;2、然后检查科室是否配置【UAP科室,业务侧config_dept表【是否存在科室医院编码为空情况】】;3、查看服务调用日志【xxl-job上任务是否成功,再看pcm-data->pcm-data-gateway调用日志】
患者就诊记录路径匹配失败原因,1、检查科室是否下发对应路径;2、检查诊断是否标化成功;3、检查路径匹配记录日志[日志表path_match_fail_log,pcm-followup日志]
任务执行失败原因,1、检查xxl-job任务是否成功执行;2、查看任务日志【pcm-followup日志和pcm-channel日志】
手动任务创建失败原因,"1、是否数据量较大【服务调用参数问题,已有解决方案:https://www.baidu.com】;2、异步生产者或消费者配置是否缺失【event_info,event_consumer_info表】;3、检查调用日志【异步处理pcm-management日志,就诊信息校验pcm-server日志】"
导出功能失败原因,"1、异步生产者或消费者配置是否缺失【event_info,event_consumer_info表】;2、查看导出任务日志【pcm-management日志或pcm-statistics日志】"
2.2、创建知识库
将上面的测试数复制存储到【XX系统问题排查FAQ.csv】文件中,然后进入Dify后台选择知识库Tab如下图
- 创建知识库
- 选择文件
选择文件后,点击下一步
- 设置分段方式选择向量模型
- 嵌入处理
- 处理完毕后点击查看文档
- 查看分段情况
2.3、知识库-》新增分段
手动补充QA信息,可以点击【添加分段】功能进行补充,后续新增问题QA时使用
- 分段格式-》参考已有分段【编辑可查看】
新增方式,参考下图即可
参考格式
QUESTION
当就诊记录同步失败时,首先应该检查什么配置?
ANSWER
首先应该检查医院网关配置是否正确,具体包括在管理端的功能配置中,确认模型版本和服务地址的设置是否准确无误。
3、知识库验证
3.1、创建chatflow流程
- 选择工作室,创建空白应用
- 选择chatflow类型
输入应用名称及描述,如下图
- 创建后应用流程如下
- 编辑流程增加知识库检索
- 编辑知识库检索,选择知识库
- 设置检索方式
选择向量模型及检索方式
- 编辑大模型配置
选择问题及检索内容加工处理模型,及提示词信息
提示词
你是一个全栈开发及运维技术专家,根据用户的需求对检索出的结果进行加工处理成专业的技术文档
用户输入信息引用
- 发布应用
3.2、检索测试
运行应用,输入关键词,查看效果如下图所示:
- 问题1
关键词:导出功能失败原因
- 问题2
关键词:就诊记录同步失败可能的原因是啥?
- 问题3 注意:由于上面的检索出来的内容扩展性太多,所以提示词做了优化如下
任务:你是一个全栈开发及运维技术专家,根据用户的需求对检索出的结果进行加工处理成专业的技术文档。
输出要求:依据检索内容进行整理,不要过多扩展。
关键词:手动任务创建失败原因