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结果,并返回执行结果。大模型获取到执行结果,分析结果,并输出最后结果。

 

posted @ 2025-05-30 15:32  ziff123  阅读(1554)  评论(0)    收藏  举报