如何在Dify中利用大模型结合SQL节点生成直观的可视化图表数据

P粉328763957

P粉328763957

2026-07-30

466人浏览

原创

要实现自然语言生成图表,需在dify中配置知识检索(含带注释的ddl)、数据库连接(测试通过)、text2sql链路(插件或手动编排+参数提取)、数据转echarts格式(mcp服务或模板转换),并用条件分支区分有图/无图场景。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如何在dify中利用大模型结合sql节点生成直观的可视化图表数据

你想让数据库听懂人话,输入一句“近三个月销售额最高的五个城市”,立刻返回柱状图——这需要Dify工作流把自然语言转成SQL、查出数据、再喂给图表工具生成可视化结果。整个链路不能断,任何一个节点输出格式错位,图表就出不来。

配置数据库连接与元数据注入

第一步不是写SQL,而是让大模型“认识”你的表。在Dify工作流开头添加【知识检索】节点,上传或粘贴数据库DDL语句,必须包含字段名、类型、注释(例如:score FLOAT COMMENT '电影评分')。【缺少注释会导致LLM误判字段含义,生成SELECT * 或错误WHERE条件】

接着添加【数据库】节点,选择MySQL类型,填入连接串:mysql+pymysql://用户名:密码@IP:端口/库名。端口不填默认3306,但如果你用的是Docker部署的SQL Server,端口必须显式填1433。

这一步做完后,别急着连LLM——先点“测试连接”,看到绿色对勾再继续。连接失败时Dify不会报具体错误,只会卡在执行环节,浪费半小时排查不如多点一次测试。

搭建Text2SQL核心链路

方法一:用内置插件快速启动

在工作流中拖入【Text to SQL】插件节点,它会自动调用你已授权的大模型(如Qwen3或DeepSeek V3),并内置表结构上下文。点击节点→“配置”→勾选“启用SQL语法校验”,这个开关能拦截90%的非法语句(比如SELECT没加FROM、WHERE里用中文引号)。

方法二:手动编排LLM+参数提取

① 添加LLM节点,模型选qwen-coder-turbo-latest,提示词严格按以下结构写:

你是一个数据分析师,擅长使用SQL查询数据库。数据库表结构如下:[知识检索节点输出]。用户需求是:[开始节点输入]。请只输出可直接执行的SQL语句,不要任何解释、换行、markdown符号。

② 接着加【参数提取器】节点,正则表达式填```sql([\s\S]*?)```——因为LLM常把SQL包在代码块里,不提取就直接传给数据库节点会报错。

③ 最后接【SQL Execute】节点,输入参数绑定为上一步提取出的SQL字符串。注意:这个节点返回的是JSON数组,不是纯文本,后续图表节点必须能解析数组结构。

php获得文件的mime type类
php获得文件的mime type类

php获得文件的mime type类

下载

将原始数据转为Echarts可用格式

传统做法要写Python脚本转换字段名、计算聚合值、拼装series数据,现在用两种轻量方案:

方案A:接入mcp-server-chart MCP服务

在Dify插件市场搜索并安装mcp-server-chart,添加服务器时地址填http://你的IP:8000/mcp。然后拖入该插件节点,输入参数设为“原始数据”→绑定SQL Execute节点输出,“图表类型”留空让AI自动判断。它会直接返回图片URL,不用处理坐标轴或颜色配置。

方案B:用模板转换节点硬编码适配

如果数据结构固定(比如永远查city, sales_amount),就用【模板转换】节点,内容写:

{"title": {"text": "销售额TOP5城市"}, "xAxis": {"data": {{data|map(attribute='city')|join(',')}}}, "series": [{"data": {{data|map(attribute='sales_amount')|list}}, "type": "bar"}]}

注意:这里用了Jinja2语法,【data必须是列表,且每个元素是字典,键名要和SQL SELECT字段完全一致】。字段名大小写错一个,整个series就是空数组。

分支处理有图/无图场景

用户问“北京票房是多少”不需要图表,而“各城市销量对比”必须出图。加【条件分支】节点,判断逻辑写:"图表" in input or "对比" in input or "排名" in input

分支1(需图表):走mcp-server-chart → 回复节点,输出![图表]({{chart_url}})

分支2(纯数据):接另一个LLM节点,提示词:“请用简洁中文总结以下数据:{{data}}。不要表格,不要代码块,直接说结论。”

这一步必须做,否则用户问“上海销量”,系统强行返回一张空柱状图,体验直接崩坏。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
数据分析的方法
数据分析的方法

数据分析的方法有:对比分析法,分组分析法,预测分析法,漏斗分析法,AB测试分析法,象限分析法,公式拆解法,可行域分析法,二八分析法,假设性分析法。php中文网为大家带来了数据分析的相关知识、以及相关文章等内容。

2023.07.04

964

6

数据分析方法有哪几种
数据分析方法有哪几种

数据分析方法有:1、描述性统计分析;2、探索性数据分析;3、假设检验;4、回归分析;5、聚类分析。本专题为大家提供数据分析方法的相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.07

1099

5

网站建设功能有哪些
网站建设功能有哪些

网站建设功能包括信息发布、内容管理、用户管理、搜索引擎优化、网站安全、数据分析、网站推广、响应式设计、社交媒体整合和电子商务等功能。这些功能可以帮助网站管理员创建一个具有吸引力、可用性和商业价值的网站,实现网站的目标。

2023.10.16

2628

14

数据分析网站推荐
数据分析网站推荐

数据分析网站推荐:1、商业数据分析论坛;2、人大经济论坛-计量经济学与统计区;3、中国统计论坛;4、数据挖掘学习交流论坛;5、数据分析论坛;6、网站数据分析;7、数据分析;8、数据挖掘研究院;9、S-PLUS、R统计论坛。想了解更多数据分析的相关内容,可以阅读本专题下面的文章。

2024.03.13

1165

8

Python 数据分析处理
Python 数据分析处理

本专题聚焦 Python 在数据分析领域的应用,系统讲解 Pandas、NumPy 的数据清洗、处理、分析与统计方法,并结合数据可视化、销售分析、科研数据处理等实战案例,帮助学员掌握使用 Python 高效进行数据分析与决策支持的核心技能。

2025.09.08

1323

12

Python 数据分析与可视化
Python 数据分析与可视化

本专题聚焦 Python 在数据分析与可视化领域的核心应用,系统讲解数据清洗、数据统计、Pandas 数据操作、NumPy 数组处理、Matplotlib 与 Seaborn 可视化技巧等内容。通过实战案例(如销售数据分析、用户行为可视化、趋势图与热力图绘制),帮助学习者掌握 从原始数据到可视化报告的完整分析能力。

2025.10.14

1966

24

Python 数据分析与可视化合集
Python 数据分析与可视化合集

聚焦 Python 在数据分析领域的核心应用,讲解 NumPy 数组运算、Pandas 数据清洗与聚合统计、缺失值与异常值处理、数据透视表生成,以及使用 Matplotlib、Seaborn、Pyecharts 制作折线图、柱状图、热力图、地图等多种可视化图表,适合数据分析师和运营人员快速掌握用 Python 从原始数据中挖掘洞察的能力。

2026.04.08

65

25

Python数据分析与Pandas高级实战
Python数据分析与Pandas高级实战

本专题围绕 Python 数据分析展开,系统讲解 Pandas 的高级用法,包括数据清洗、透视表、时间序列分析以及多表合并与分组操作。通过实战案例,帮助开发者掌握高效处理与分析数据的方法,提高数据处理效率与分析能力。

2026.04.13

69

25

Dify 本地部署与企业配置
Dify 本地部署与企业配置

本专题系统讲解 Dify 从零开始的本地部署方法与企业环境配置实践,涵盖 Docker 安装、依赖准备、数据库初始化、反向代理、参数调优、安全加固与多用户开通,帮助开发者与企业团队快速搭建稳定可用的 Dify 平台。

2026.06.05

72

15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Dify零基础教程
Dify零基础教程

共0课时 | 98人学习

学习Agent,从Dify开始
学习Agent,从Dify开始

共0课时 | 94人学习

Dify 部署与运维指南
Dify 部署与运维指南

共0课时 | 0人学习