从零开始学习Dify-数据库数据可视化(五)

概述

上一篇文章我们围绕 Excel 文件展开数据可视化教学,逐步掌握了数据导入、图表构建和 AI 智能分析。在实际业务环境中,很多数据并不是保存在表格中,而是存储于数据库系统中,尤其是最常见的 MySQL。本篇作为本系列的第五篇,将聚焦于如何在 Dify 中连接 MySQL 数据库,动态获取数据,并将其可视化展示。相比静态的 Excel 文件,MySQL 的实时性和结构化特征将为可视化带来更大价值。本篇将一步步带你完成从数据库接入到图表生成,再到智能分析的完整流程。

构建工作流

  • 开始节点:就是一个输入框,告诉AI我们要干什么,需求是什么。

  • 知识检索:提供详细的数据库表的DDL,包含注释等,这样大模型才能正确理解我们的数据字段,才可以根据自然语言生成查询数据的SQL,以便去数据库查询。

  • LLM节点:这个节点负责把我们的自然语言转换成SQL语句,可以选择多家模型进行测试,看哪个效果好,我这里用的是qwen-coder-turbo-latest。
    • promt如下:
你是一个数据分析师,擅长使用SQL查询数据库,根据用户
数据库的表结构 当 上下文 和用户的查询要求给出对应的
sq|语句。用户的查间要求是:[变量]。
注意生成的SQL必须经过严格的校验。你可以使用函数在用
户输入类似于”求和”或”总和”时,则在sq/语句中使用
SUM0。用户输入类似于”平均数”或”平均”时,在在sql语句
中使用AVG0。
要求
1.如果用户输入的内容无法生成为sq|语
句,请直接说“抱歉,该命令无法形成数据库查询操作”。
2.当可以生成sql语句时,请确保输出的内容为完整正确的sql语句,除此以外不要输出其他任何信息,不要注释和说明,也不要格式化,不要用markdown格式来输出,直接输出纯文本,也不要输出 \n 这样的回车换行符,确保你生成的sql
语句可以直接执行查询操作。
3.对于字符串内容的查询请使用LIKE操作而不是等于操作。
4.禁止中间过程输出。
  • 参数提取器:节点的作用是从LLM节点的输出里提取出合法SQL语句,上一个节点返回的数据可能会被包装成md的格式,这里要根据实际的情况调整一下。上一个节点我使用qwen-coder-turbo-latest生成SQL的时候。
  • HTTP请求节点:把上一个节点的SQL语句发给后台,让后台执行这个SQL查询数据库,然后拿到数据。这里的参数要和后台接口一致,包括接口url,方法,body的返回格式等。

  • 解析数据库数据:从上一个节点的输出里解析出我们需要的,方便下一个节点处理的数据。

  • Echarts 数据提取节点:该节点的作用是从前一个节点的输出中提取出 Echarts 所需的数据,过滤掉无关内容,仅保留用于图表渲染的核心信息。
  • LLM 处理节点:此节点将上一步输出的数据转换为 Echarts 可识别的图表数据结构。提示词的设计可以参考上一期的内容。
  • 参数提取器节点:负责从上一个节点的输出中抓取 Echarts 执行所必需的参数,其他无关数据会被剔除。多个参数提取器节点的功能类似,都是从 Markdown 格式或其他结构化内容中提取出图表渲染所需的关键数据。
  • 代码执行节点:在该节点中编写代码以接收前一节点的数据,并生成 Echarts 图表的最终结构。
  • 最终回复节点:将上一节点生成的 Echarts 图表内容作为最终结果进行输出和展示。

预览结果

总结

通过本篇学习,我们掌握了如何将 MySQL 数据库接入 Dify,实现实时图表的构建与自动更新。相比 Excel 数据,MySQL 的动态性与结构化优势让数据可视化更具实用价值,特别适合销售监控、订单跟踪、客户分析等场景。Dify 强大的图表引擎与 AI 问答系统,让非技术人员也能轻松操作数据库数据,快速洞察业务趋势。下一篇我们将探索如何通过自动化工具(如 Webhook、API)让 Dify 接收来自第三方系统的数据更新,进一步实现全流程自动化的数据分析体验。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/91195.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/91195.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用vue2和 element-ui 做一个点餐收银台系统前端静态项目

今天给大家分享一个 关于点餐收银台的静态网站,最近一直在练习前端项目,就使用vue2和 element-ui 做了一个 这样简单的 收银台系统。先给大家看一下 做出来的样子。 因为是练习项目 所以页面功能还是比较简单的。 使用的技术是: 技术栈 Vu…

Spring Boot自动配置原理深度解析

Spring Boot自动配置原理深度解析 一、自动配置核心概念 1.1 什么是自动配置 Spring Boot自动配置(Auto-Configuration)是其核心特性之一,能够根据项目依赖自动配置Spring应用程序。例如: 当检测到H2数据库依赖时,自动配置内存数据库当存在Sp…

关于 Apache Ignite 中 Job 调度(Job Scheduling)与冲突控制(Collision Control) 的机制说明

这段内容是关于 Apache Ignite 中 Job 调度(Job Scheduling)与冲突控制(Collision Control) 的机制说明。我来为你逐段解析,帮助你深入理解其原理和使用方式。🔍 一、核心概念:Job 调度与 Colli…

网络资源模板--基于Android Studio 实现的课程管理App

目录 一、测试环境说明 二、项目简介 三、项目演示 四、部设计详情(部分) 登录页 首页 五、项目源码 一、测试环境说明 电脑环境 Windows 11 编写语言 JAVA 开发软件 Android Studio (2020) 开发软件只要大于等于测试版本即可(近几年官网直接下载也可…

ROUGE-WE:词向量化革新的文本生成评估框架

一、ROUGE 基础与核心局限 ROUGE(Recall-Oriented Understudy for Gisting Evaluation) 是自动文本摘要与机器翻译的主流评估指标,由 Chin-Yew Lin 在2004年发表的论文中首次系统提出。其核心变体包括: ROUGE-N:基于…

MGER综合实验

一.拓扑二、实验需求 1、R5为ISP,只能进行IP地址配置,其所有地址均配为公有IP地址; 2、R1和R5间使用PPP的PAP认证,R5为主认证方; R2与R5之间使用ppp的CHAP认证,R5为主认证方; R3与R5之间使用HDLC封装; 3、R1、R2、R3构建一个MGRE环…

高可用集群Keepalived、Redis、NoSQL数据库Redis基础管理

1. 总结负载均衡常见的算法 轮询 (Round Robin):按顺序将请求依次分配给后端服务器,适合服务器性能相近的场景。 加权轮询 (Weighted Round Robin):在轮询的基础上,根据服务器的权重分配请求。 随机 (Random):随机选…

【深度学习】独热编码(One-Hot Encoding)

独热编码(One-Hot Encoding) 在机器学习中,数据预处理是不可或缺的关键一步。面对各种非数值类型的分类数据(Categorical Data),如何将其转换为机器学习模型能够“理解”的语言呢?独热编码&…

Promise完全体总结

我们在上篇文章提到了异步会导致无法通过返回值来获取函数的执行结果,我们通过传入一个回调函数的方式,以参数的形式获取到了我们想要获取的数据,但是这样如果需要对数据进行多次操作导致形成回调地狱那种不便于阅读以及护理的代码。为了解决…

SpringJDBC源码初探-DataSource类

一、DataSource接口核心作用 DataSource是JDBC规范的核心接口,位于javax.sql包中,用于替代传统的DriverManager获取数据库连接。Spring框架通过org.springframework.jdbc.datasource包对该接口进行了增强,提供连接池管理、事务绑定等高级特性…

C语言(08)——关于指针(逐渐清晰版)

为了更好地理解本篇文章的知识内容,读者可以将以下文章作为补充知识进行阅读 : C语言————原码 补码 反码 (超绝详细解释)-CSDN博客 C语言————二、八、十、十六进制的相互转换-CSDN博客 C语言————斐波那契数列的理解…

LeetCode 1616.分割两个字符串得到回文串

给你两个字符串 a 和 b ,它们长度相同。请你选择一个下标,将两个字符串都在 相同的下标 分割开。由 a 可以得到两个字符串: aprefix 和 asuffix ,满足 a aprefix asuffix ,同理,由 b 可以得到两个字符串 …

算法【1】

网址:主站 工具补充 1. sort 函数的使用规则 作用:对容器元素进行排序,默认升序。语法:sort(起始迭代器, 结束迭代器, 比较规则) 前两个参数是排序范围:[begin, end)(包含begin,不包含end&am…

信创国产Linux操作系统汇总:从桌面到服务器,百花齐放

在数字化浪潮席卷全球的今天,操作系统作为信息产业的基石,其战略地位日益凸显。曾经由国外巨头垄断的格局正悄然改变——中国本土Linux操作系统历经多年沉淀,已形成了百花齐放的局面。无论是日常办公、专业开发,还是关键行业应用&…

claudia for claude code

一.安装所有必需的依赖项 1.安装 Git for Windows 步骤: 访问 Git 的官方网站 git-scm.com。 下载适用于 Windows 的最新版本安装程序。 运行安装程序。在安装向导的各个步骤中,建议保留所有默认设置,这些设置对于本指南的后续操作已经足够。 验证…

企业内外网文件安全传输解决方案

企业内外网文件安全传输解决方案 基于零信任架构的智能中转系统设计 一、业务背景与挑战分析 1.1 企业网络安全现状 在数字化转型浪潮下,企业面临着前所未有的安全挑战。传统的"城墙式"网络防护已无法满足现代企业灵活协作的需求。根据《2024年中国企业…

《HCIA-Datacom 认证》希赛三色笔记:详解 VLAN 间通信的 3 种实现方式

标记说明:■掌握内容 ■次重点 ■理解内容 在局域网部署中,VLAN 技术通过隔离广播域提升了网络安全性和稳定性,但不同 VLAN 间的通信需求又成了新的难题。比如财务部门的电脑(VLAN 10)需要访问服务…

Windows 10 系统下的编程字体安装与配置(VSCode)教程

Windows 10 系统下的编程字体安装与配置教程 常见的优秀编程字体 开发者社区中有许多备受推崇的编程字体,它们都致力于提升代码的可读性和舒适度。以下是一些常见的选择: Fira Code: 以其丰富的编程连字(ligatures)而闻名&…

ITIL 4 高速IT:解耦架构——构建快速迭代的技术基座

一、为什么要解耦:从“架构”谈到“速度”1.高速IT的真正瓶颈:不是能力,而是架构在我们深入学习ITIL 4 高速IT的时候,大家可能都会有个疑问:为什么有些组织在数字化转型过程中推得动,有些却始终难以突破&am…

网络协议——MPLS(多协议标签转发)

一,基本概述1. mpls基本概念MPLS位于二三层之间,可以向所有网络层提供服务。通过在数据链路层和网络层之间增加额外的MPLS头部,基于MPLS头部实现数据快速转发。2. 控制平面和转发平面控制平面:负责产生和维护路由信息以及标签信息…