dify+qwen3实现chatBI,问数功能
1、准备数据表结构文档并导到知识库
a、用typora创建表的数据结构文件

b、导入到dify的知识库

2、创建工作流

解释:
a、开始:接收一个名为“sql”的变量,类型是“段落”,长度“4800”。用于接收大模型传进来sql语句。

b、创建一个http请求:将上一步接收到的sql语句,传给http接口,http接口执行sql语句,返回执行后结果。(http接口里面逻辑一定要处好,避免误操作数据,我这边限制只能执行查询,不能做其它操作)

c、取到http返回body

d、结束:输出http返回的body,也就是上一步返回的结果

3、创建智能体

a、模型一定要用qwen3,试过deepseek14B,效果很不理想。
b、提示词参考:
##任务 1.查询提供的数据集(知识库)了解数据库表结构 2.梳理和理解用户需求 3.分析如何编写SQL语句使得以最少的SQL查询次数进行查询数据库 4.尝试编写仅仅一条或者五条以内的SQL来查询数据库 5.判断SQL语句是否符合sql server语句的语法 6.开始查询数据库 7.如果查询出现错误,可以尝试修改一下SQL语句,因为有一些语法可能sql server数据库不支持
4、原理分析
创建完智能体后,当用户输入提问题,大模型会先调用知识库,分析我们提供的表结构,然后根据用户提问生成对应的sql语句。接着用生成的sql调工作流,工作流会去http接口,执行传入的sql结果,并返回执行结果。大模型获取到执行结果,分析结果,并输出最后结果。

浙公网安备 33010602011771号