【AI智能体】Dify 搭建数据分析应用实战操控详解
<style>pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace !important; font-size: 14px !important; line-height: 1.6 !important; padding: 16px !important; margin: 16px 0 !important; background-color: rgba(248, 248, 248, 1) !important; border: 1px solid rgba(225, 228, 232, 1) !important; border-radius: 6px !important; tab-size: 4 !important; -moz-tab-size: 4 !important; max-width: 100% !important; box-sizing: border-box !important }code { font-family: "Consolas", "Monaco", "Courier New", monospace !important; font-size: 14px !important; white-space: pre !important; word-wrap: normal !important; word-break: normal !important; overflow-wrap: normal !important; display: inline !important; background: rgba(0, 0, 0, 0) !important; border: none !important; padding: 0 !important; margin: 0 !important; line-height: inherit !important }
pre code { background: rgba(0, 0, 0, 0) !important; border: 0 !important; border-radius: 0 !important; display: block !important; line-height: 1.6 !important; margin: 0 !important; max-width: none !important; overflow: visible !important; padding: 0 !important; white-space: pre !important; word-wrap: normal !important; word-break: normal !important; color: inherit !important }
.token.comment, .token.prolog, .token.doctype, .token.cdata { color: rgba(112, 128, 144, 1) !important; font-style: italic !important }
.token.punctuation { color: rgba(153, 153, 153, 1) !important }
.token.atrule, .token.attr-value, .token.keyword { color: rgba(0, 119, 170, 1) !important; font-weight: bold !important }
.token.function, .token.class-name { color: rgba(221, 74, 104, 1) !important; font-weight: bold !important }
.token.selector, .token.attr-name, .token.string, .token.char, .token.builtin, .token.inserted { color: rgba(102, 153, 0, 1) !important }
.token.property, .token.tag, .token.boolean, .token.number, .token.constant, .token.symbol, .token.deleted { color: rgba(153, 0, 85, 1) !important }
.cnblogs-markdown pre, .cnblogs-post-body pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; background-color: rgba(248, 248, 248, 1) !important; border: 1px solid rgba(225, 228, 232, 1) !important; border-radius: 6px !important; padding: 16px !important; margin: 16px 0 !important }
pre, pre, pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important }</style>
<style>pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace !important; font-size: 14px !important; line-height: 1.6 !important; padding: 16px !important; margin: 16px 0 !important; background-color: rgba(248, 248, 248, 1) !important; border: 1px solid rgba(225, 228, 232, 1) !important; border-radius: 6px !important; tab-size: 4 !important; -moz-tab-size: 4 !important; max-width: 100% !important; box-sizing: border-box !important }
code { font-family: "Consolas", "Monaco", "Courier New", monospace !important; font-size: 14px !important; white-space: pre !important; word-wrap: normal !important; word-break: normal !important; overflow-wrap: normal !important; display: inline !important; background: rgba(0, 0, 0, 0) !important; border: none !important; padding: 0 !important; margin: 0 !important; line-height: inherit !important }
pre code { background: rgba(0, 0, 0, 0) !important; border: 0 !important; border-radius: 0 !important; display: block !important; line-height: 1.6 !important; margin: 0 !important; max-width: none !important; overflow: visible !important; padding: 0 !important; white-space: pre !important; word-wrap: normal !important; word-break: normal !important; color: inherit !important }
.token.comment, .token.prolog, .token.doctype, .token.cdata { color: rgba(112, 128, 144, 1) !important; font-style: italic !important }
.token.punctuation { color: rgba(153, 153, 153, 1) !important }
.token.atrule, .token.attr-value, .token.keyword { color: rgba(0, 119, 170, 1) !important; font-weight: bold !important }
.token.function, .token.class-name { color: rgba(221, 74, 104, 1) !important; font-weight: bold !important }
.token.selector, .token.attr-name, .token.string, .token.char, .token.builtin, .token.inserted { color: rgba(102, 153, 0, 1) !important }
.token.property, .token.tag, .token.boolean, .token.number, .token.constant, .token.symbol, .token.deleted { color: rgba(153, 0, 85, 1) !important }
.cnblogs-markdown pre, .cnblogs-post-body pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; background-color: rgba(248, 248, 248, 1) !important; border: 1px solid rgba(225, 228, 232, 1) !important; border-radius: 6px !important; padding: 16px !important; margin: 16px 0 !important }
pre, pre, pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important }</style><div class="htmledit_views atom-one-light" id="content_views"><p id="main-toc" name="tableOfContents"><strong>目录</strong></p><p id="-toc" name="tableOfContents" style="margin-left: 0"></p><p id="%E4%B8%80%E3%80%81%E5%89%8D%E8%A8%80-toc" name="tableOfContents" style="margin-left: 0">一、前言</p><p id="%E4%BA%8C%E3%80%81Dify%20%E4%BB%8B%E7%BB%8D-toc" name="tableOfContents" style="margin-left: 0">二、Dify 介绍</p><p id="2.1%20Dify%E6%98%AF%E4%BB%80%E4%B9%88-toc" name="tableOfContents" style="margin-left: 40px">2.1 Dify是什么</p><p id="2.2%20Dify%20%E6%A0%B8%E5%BF%83%E7%89%B9%E6%80%A7-toc" name="tableOfContents" style="margin-left: 40px">2.2 Dify 核心特性</p><p id="2.2.1%20Dify%20%E7%89%B9%E7%82%B9-toc" name="tableOfContents" style="margin-left: 80px">2.2.1 Dify 特点</p><p id="2.2.2%20%E5%A4%9A%E6%A8%A1%E5%9E%8B%E6%94%AF%E6%8C%81-toc" name="tableOfContents" style="margin-left: 80px">2.2.2 多模型支持</p><p id="2.2.3%20Dify%20%E9%80%82%E5%BA%94%E5%9C%BA%E6%99%AF-toc" name="tableOfContents" style="margin-left: 80px">2.2.3 Dify 适应场景</p><p id="2.3%20Dify%20%E5%9C%A8%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E5%9C%BA%E6%99%AF%E4%B8%AD%E4%BB%8B%E7%BB%8D-toc" name="tableOfContents" style="margin-left: 40px">2.3 Dify 在数据分析应用场景中介绍</p><p id="2.3.1%20Dify%20%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E7%9A%84%E6%A0%B8%E5%BF%83%E8%83%BD%E5%8A%9B-toc" name="tableOfContents" style="margin-left: 80px">2.3.1 Dify 数据分析应用的核心能力</p><p id="2.3.2%20%E5%9F%BA%E4%BA%8EDify%20%E6%90%AD%E5%BB%BA%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E4%B8%80%E8%88%AC%E6%B5%81%E7%A8%8B-toc" name="tableOfContents" style="margin-left: 80px">2.3.2 基于Dify 搭建数据分析应用一般流程</p><p id="2.3.3%20%E5%9F%BA%E4%BA%8EDify%E6%90%AD%E5%BB%BA%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E5%9C%BA%E6%99%AF-toc" name="tableOfContents" style="margin-left: 80px">2.3.3 基于Dify搭建数据分析应用场景</p><p id="%E4%B8%89%E3%80%81%E5%9F%BA%E4%BA%8EDify%20%E6%90%AD%E5%BB%BA%E4%B8%80%E4%B8%AA%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E5%AE%8C%E6%95%B4%E6%93%8D%E4%BD%9C%E8%BF%87%E7%A8%8B-toc" name="tableOfContents" style="margin-left: 0">三、基于Dify 搭建一个数据分析应用完整操作过程</p><p id="3.1%20%E5%89%8D%E7%BD%AE%E5%87%86%E5%A4%87-toc" name="tableOfContents" style="margin-left: 40px">3.1 前置准备</p><p id="3.1.1%20%E9%85%8D%E7%BD%AE%E5%A4%A7%E6%A8%A1%E5%9E%8B-toc" name="tableOfContents" style="margin-left: 80px">3.1.1 配置大模型</p><p id="3.1.2%20%E5%AE%89%E8%A3%85%E5%B7%A5%E5%85%B7%E5%92%8C%E6%8F%92%E4%BB%B6-toc" name="tableOfContents" style="margin-left: 80px">3.1.2 安装工具和插件</p><p id="3.1.3%20%E6%8F%90%E5%89%8D%E5%87%86%E5%A4%872%E5%BC%A0%E6%95%B0%E6%8D%AE%E8%A1%A8-toc" name="tableOfContents" style="margin-left: 80px">3.1.3 提前准备2张数据表</p><p id="3.2%20%E5%AE%8C%E6%95%B4%E6%93%8D%E4%BD%9C%E4%B8%8E%E9%85%8D%E7%BD%AE%E8%BF%87%E7%A8%8B-toc" name="tableOfContents" style="margin-left: 40px">3.2 完整操作与配置过程</p><p id="3.2.1%20%E5%88%9B%E5%BB%BA%E7%A9%BA%E7%99%BD%E5%BA%94%E7%94%A8-toc" name="tableOfContents" style="margin-left: 80px">3.2.1 创建空白应用</p><p id="3.2.2%20%E5%A2%9E%E5%8A%A0%E4%B8%80%E4%B8%AA%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 80px">3.2.2 增加一个大模型节点</p><p id="3.2.3%20%E5%A2%9E%E5%8A%A0%E6%95%B0%E6%8D%AE%E5%BA%93%E6%89%A7%E8%A1%8C%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AA%E6%8F%92%E4%BB%B6%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 80px">3.2.3 增加数据库执行的第一个插件节点</p><p id="3.2.4%20%E5%A2%9E%E5%8A%A0%E4%B8%80%E4%B8%AA%E6%A8%A1%E6%9D%BF%E8%BD%AC%E6%8D%A2%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 80px">3.2.4 增加一个模板转换节点</p><p id="3.2.5%20%E5%A2%9E%E5%8A%A0%E6%8F%90%E5%8F%96%E5%8F%82%E6%95%B0%E4%B8%AD%E7%9A%84SQL%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 80px">3.2.5 增加提取参数中的SQL大模型节点</p><p id="3.2.6%20%E5%A2%9E%E5%8A%A0%E7%AC%AC%E4%BA%8C%E4%B8%AA%E6%8F%92%E4%BB%B6%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 80px">3.2.6 增加第二个插件节点</p><p id="3.2.7%20%E5%A2%9E%E5%8A%A0%E6%9D%A1%E4%BB%B6%E5%88%86%E6%94%AF%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 80px">3.2.7 增加条件分支节点</p><p id="3.2.7.1%20%E7%AC%AC%E4%B8%80%E4%B8%AA%E6%9D%A1%E4%BB%B6%E5%88%86%E6%94%AF%E5%A2%9E%E5%8A%A0%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 120px">3.2.7.1 第一个条件分支增加大模型节点</p><p id="3.2.7.2%20%E5%A2%9E%E5%8A%A0%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 120px">3.2.7.2 增加大模型节点</p><p id="3.2.7.3%20%E5%A2%9E%E5%8A%A0%E6%95%B0%E6%8D%AE%E8%BD%AC%E5%9B%BE%E8%A1%A8%E7%9A%84%E6%8F%92%E4%BB%B6%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 120px">3.2.7.3 增加数据转图表的插件节点</p><p id="3.2.7.4%20%E5%A2%9E%E5%8A%A0%E5%9B%9E%E5%A4%8D%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 120px">3.2.7.4 增加回复节点</p><p id="3.2.8%20%E7%AC%AC%E4%BA%8C%E4%B8%AA%E5%88%86%E6%94%AF%E8%8A%82%E7%82%B9%E5%A2%9E%E5%8A%A0%E4%B8%80%E4%B8%AA%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 80px">3.2.8 第二个分支节点增加一个大模型节点</p><p id="3.2.8.1%20%E5%A2%9E%E5%8A%A0Markdown%E8%BD%AC%E6%8D%A2%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 120px">3.2.8.1 增加Markdown转换节点</p><p id="3.2.8.2%20%E5%A2%9E%E5%8A%A0%E5%9B%9E%E5%A4%8D%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 120px">3.2.8.2 增加回复节点</p><p id="3.2.9%20%E7%AC%AC%E4%B8%89%E4%B8%AA%E5%88%86%E6%94%AF%E5%A2%9E%E5%8A%A0%E4%B8%80%E4%B8%AA%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 80px">3.2.9 第三个分支增加一个大模型节点</p><p id="3.2.9.1%20%E5%A2%9E%E5%8A%A0%E5%9B%9E%E5%A4%8D%E8%8A%82%E7%82%B9-toc" name="tableOfContents" style="margin-left: 120px">3.2.9.1 增加回复节点</p><p id="3.2.10%20%E6%95%88%E6%9E%9C%E6%B5%8B%E8%AF%95-toc" name="tableOfContents" style="margin-left: 80px">3.2.10 效果测试</p><p id="%E5%9B%9B%E3%80%81%E5%86%99%E5%9C%A8%E6%96%87%E6%9C%AB-toc" name="tableOfContents" style="margin-left: 0">四、写在文末</p><hr id="hr-toc" name="tableOfContents"><p></p><h2 id="%E4%B8%80%E3%80%81%E5%89%8D%E8%A8%80" name="%E4%B8%80%E3%80%81%E5%89%8D%E8%A8%80">一、前言</h2><p>在数字化浪潮席卷全球今天,数据已成为企业决策的核心驱动力。可以说,身处当下的时代,不管是否IT企业,都有自身沉淀下来的与企业经营相关的各种数据,比如销售数据,订单数据,各类报表,知识库文档等等,这些数据的存在,成为企业经营过程中必不可少的依赖和宝贵资产。</p><p></p><p>很多企业意识到数据资产对于企业经营发展的重要性之后,也逐步开始借助各类软件对数据进行开发,应用和消费,比如数据大屏就是很多公司使用的比较高频的形式。</p><p></p><p>然而,对于这种企业数据的消费模式,是严重依赖背后的技术开发团队的人力投入的。从提需求,到开发,再到最终的交付使用,这一系列的漫长过程会严重拖慢整个经营决策的过程。说到底,还是因为大多数使用数据的人员,对底层数据的使用上面存在较大的障碍。</p><p></p><p>以mysql为例来说,传统数据查询方式往往依赖于复杂的SQL语句,这对于缺乏编程背景的业务人员而言,无疑是一道难以逾越的鸿沟。正是在这样的背景下,自然语言处理(NLP)与数据库技术的融合,催生了"自然语言转SQL"(Natural Language to SQL,简称NL2SQL)这一创新技术,旨在打破数据查询的壁垒,让数据真正为每个人所用。</p><p></p><p>在这样的大背景下,随着各类AI智能体平台的诞生和普及,基于AI智能体平台快速搭建特定场景下的应用能力,已经展现出很大的市场潜力,传统的动则几个月甚至更久的软件交付的应用开发过程,在AI智能体平台上或许只需要几个小时,甚至几分钟就可以快速的搭建出来。这样便可以极大提升业务价值的验证周期,从而更快得到业务的反馈,提升业务协作效率。</p><blockquote><p>本篇将基于Dify 智能体平台,以一个实际案例演示下如何快速搭建一个数据分析应用的智能体。</p></blockquote><p></p><h2 id="%E4%BA%8C%E3%80%81Dify%20%E4%BB%8B%E7%BB%8D" name="%E4%BA%8C%E3%80%81Dify%20%E4%BB%8B%E7%BB%8D">二、Dify 介绍</h2><p></p><h3 id="2.1%20Dify%E6%98%AF%E4%BB%80%E4%B9%88" name="2.1%20Dify%E6%98%AF%E4%BB%80%E4%B9%88">2.1 Dify是什么</h3><p>Dify 是一个开源大模型应用开发平台,旨在帮助开发者(智能体应用爱好者)快速构建、部署和管理基于大型语言模型(LLM)的 AI 应用。它提供了一套完整的工具链,支持从提示词工程(Prompt Engineering)到应用发布的全流程,适用于企业级 AI 解决方案和个人开发者项目。</p><blockquote><p>官网入口:https://cloud.dify.ai/apps</p><p>中文网入口:https://dify.ai/zh</p></blockquote><p><img alt="" height="634" src="https://i-blog.csdnimg.cn/direct/68d2fb5909384890857b1d1cf3df972c.png" width="1185"></p><p></p><h3 id="2.2%20Dify%20%E6%A0%B8%E5%BF%83%E7%89%B9%E6%80%A7" name="2.2%20Dify%20%E6%A0%B8%E5%BF%83%E7%89%B9%E6%80%A7">2.2 Dify 核心特性</h3><p></p><h4 id="2.2.1%20Dify%20%E7%89%B9%E7%82%B9" name="2.2.1%20Dify%20%E7%89%B9%E7%82%B9">2.2.1 Dify 特点</h4><p>Dify 具备如下核心特点:</p><ul><li><p><strong>可视化编排工作流</strong></p><ul><li><p>通过低代码界面设计 AI 应用流程,无需深入编程即可构建复杂的 LLM 应用。</p></li><li><p>支持 对话型(Chat App) 和 文本生成型(Completion App) 应用。</p></li></ul></li><li><p><strong>多模型支持</strong></p><ul><li><p>兼容主流大模型 API,如 OpenAI GPT、Anthropic Claude、Cohere、Hugging Face 等。</p></li><li><p>支持私有化部署的 Llama 2、ChatGLM、通义千问 等开源模型。</p></li></ul></li><li><p><strong>灵活的提示词工程</strong></p><ul><li><p>提供 Prompt 模板、变量插值、上下文管理等功能,优化 AI 输出效果。</p></li><li><p>支持 RAG(检索增强生成),可结合外部知识库提升回答准确性。</p></li></ul></li><li><p><strong>数据管理与持续优化</strong></p><ul><li><p>记录用户与 AI 的交互日志,用于分析和迭代改进模型效果。</p></li><li><p>支持 A/B 测试,对比不同提示词或模型版本的表现。</p></li></ul></li><li><p><strong>企业级功能</strong></p><ul><li><p>支持 多租户、权限管理,适合团队协作开发。</p></li><li><p>可私有化部署,保障数据安全。</p></li></ul></li></ul><h4 id="" name=""></h4><h4 id="2.2.2%20%E5%A4%9A%E6%A8%A1%E5%9E%8B%E6%94%AF%E6%8C%81" name="2.2.2%20%E5%A4%9A%E6%A8%A1%E5%9E%8B%E6%94%AF%E6%8C%81">2.2.2 多模型支持</h4><p>在Dify控制台上,内置非常多的大模型可供用户选择,比如GPT系列,DeepSeek、千问系列模型等,基于这些模型,应用开发者可以自由灵活的选择并使用。</p><p><img alt="" height="916" src="https://i-blog.csdnimg.cn/direct/ae6433b60dd4474e9cfa8a54f1044857.png" width="1103"></p><p></p><h4 id="2.2.3%20Dify%20%E9%80%82%E5%BA%94%E5%9C%BA%E6%99%AF" name="2.2.3%20Dify%20%E9%80%82%E5%BA%94%E5%9C%BA%E6%99%AF">2.2.3 Dify 适应场景</h4><p>Dify 适用于多种生成式 AI 应用开发场景:</p><ul><li><p>内容创作与生成</p><ul><li><p>自动化生成文章、报告、营销文案等</p></li><li><p>结合知识库实现专业领域内容生成(如法律、医疗文档)</p></li></ul></li><li><p>智能对话系统</p><ul><li><p>构建多轮对话客服机器人、虚拟助手</p></li><li><p>通过 Agent 框架实现任务分解与工具调用(如搜索、图像生成)</p></li></ul></li><li><p>数据分析与自动化</p><ul><li><p>解读复杂数据并生成可视化报告</p></li><li><p>自动化业务流程(如工单处理、邮件回复)</p></li></ul></li><li><p>个性化推荐与营销</p><ul><li><p>基于用户画像生成个性化推荐内容。</p></li><li><p>结合RAG实现精准信息检索与推送。</p></li></ul></li></ul><p></p><h3 id="2.3%20Dify%20%E5%9C%A8%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E5%9C%BA%E6%99%AF%E4%B8%AD%E4%BB%8B%E7%BB%8D" name="2.3%20Dify%20%E5%9C%A8%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E5%9C%BA%E6%99%AF%E4%B8%AD%E4%BB%8B%E7%BB%8D">2.3 Dify 在数据分析应用场景中介绍</h3><p></p><h4 id="2.3.1%20Dify%20%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E7%9A%84%E6%A0%B8%E5%BF%83%E8%83%BD%E5%8A%9B" name="2.3.1%20Dify%20%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E7%9A%84%E6%A0%B8%E5%BF%83%E8%83%BD%E5%8A%9B">2.3.1 Dify 数据分析应用的核心能力</h4><p>利用 Dify 搭建数据分析应用,你会发现它具备如下吸引人的能力:</p><ul><li><p><strong>自然语言查询 (Text2SQL/NL2SQL):</strong></p><ul><li><p>用户只需用日常语言提问(例如“展示本月各部门的销售额占比”),Dify 应用便能借助大模型自动生成相应的 SQL 查询语句。</p></li></ul></li><li><p><strong>自动化 SQL 执行与结果获取:</strong></p><ul><li><p>生成的 SQL 语句会被自动发送至目标数据库执行,并获取结果数据。</p></li></ul></li><li><p><strong>多样化的可视化展示:</strong></p><ul><li><p>执行结果数据可以进一步生成直观的图表,如饼图、柱状图、折线图等,也支持以表格形式展示6。</p></li></ul></li><li><p><strong>多数据源支持:</strong></p><ul><li><p>Dify 支持连接多种类型的数据库,常见的有 MySQL、PostgreSQL、SQL Server 等26。</p></li></ul></li><li><p><strong>低代码开发:</strong></p><ul><li><p>通过可视化的工作流 (Workflow) 编排方式连接各个环节5,大幅降低了开发门槛。</p></li></ul></li></ul><p></p><h4 id="2.3.2%20%E5%9F%BA%E4%BA%8EDify%20%E6%90%AD%E5%BB%BA%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E4%B8%80%E8%88%AC%E6%B5%81%E7%A8%8B" name="2.3.2%20%E5%9F%BA%E4%BA%8EDify%20%E6%90%AD%E5%BB%BA%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E4%B8%80%E8%88%AC%E6%B5%81%E7%A8%8B">2.3.2 基于Dify 搭建数据分析应用一般流程</h4><ol><li><p>搭建一个智能数据分析应用,通常包含以下核心环节,你可以通过 Dify 的工作流来编排和实现这个过程:</p><ol><li><p><strong>用户输入自然语言:</strong></p><ol><li><p>用户在前端界面提出分析需求。一般是一段自然语言描述,不需要很专业的术语即可。</p></li></ol></li></ol></li></ol><ol><li><p><strong>LLM 解析并生成 SQL:</strong></p><ol><li><p>大模型根据用户需求、预设的 Prompt 指令以及数据库结构信息,生成合规且高效的 SQL 查询语句。</p><ol><li><p>此环节的 Prompt 设计非常重要,需要明确规则,例如指定输出仅包含 SQL 语句、确保语法兼容特定数据库、限制结果集数量等。</p></li></ol></li></ol></li><li><p><strong>执行 SQL 查询:</strong></p><ol><li><p>Dify 调用数据库连接组件,安全地执行生成的 SQL 语句,并获取返回的数据集。</p></li></ol></li><li><p><strong>结果分析与格式化:</strong></p><ol><li><p>LLM 可能会对 SQL 查询结果进行进一步的分析、总结或解释。有时也需要将数据转换为特定格式以适应可视化组件,例如将 JSON 数据中的键和值拼接成字符串。</p></li></ol></li><li><p><strong>可视化展示:</strong></p><ol><li><p>将处理好的数据传递给可视化组件(如 ECharts),生成图表,并最终将分析报告(文本 + 图表)呈现给用户。</p></li></ol></li></ol><p></p><h4 id="2.3.3%20%E5%9F%BA%E4%BA%8EDify%E6%90%AD%E5%BB%BA%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E5%9C%BA%E6%99%AF" name="2.3.3%20%E5%9F%BA%E4%BA%8EDify%E6%90%AD%E5%BB%BA%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E5%9C%BA%E6%99%AF">2.3.3 基于Dify搭建数据分析应用场景</h4><p>Dify 数据分析应用可以广泛应用于各种业务场景:</p><ul><li><p>销售与市场分析:快速生成销售报表、分析渠道效果、监控关键指标(KPI)。</p></li><li><p>人力资源管理:分析员工 demographics、薪酬分布、离职率等(基于经典的 employees 数据集)。</p></li><li><p>客户分析:分析客户行为、细分客户群体、计算客户生命周期价值(CLV)等。</p></li><li><p>财务与合规审计:跟踪费用支出、检测异常交易、辅助审计流程。</p></li><li><p>运营监控:可视化业务运营状态,快速定位问题。</p></li></ul><p></p><h2 id="%E4%B8%89%E3%80%81%E5%9F%BA%E4%BA%8EDify%20%E6%90%AD%E5%BB%BA%E4%B8%80%E4%B8%AA%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E5%AE%8C%E6%95%B4%E6%93%8D%E4%BD%9C%E8%BF%87%E7%A8%8B" name="%E4%B8%89%E3%80%81%E5%9F%BA%E4%BA%8EDify%20%E6%90%AD%E5%BB%BA%E4%B8%80%E4%B8%AA%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E5%BA%94%E7%94%A8%E5%AE%8C%E6%95%B4%E6%93%8D%E4%BD%9C%E8%BF%87%E7%A8%8B">三、基于Dify 搭建一个数据分析应用完整操作过程</h2><p>最终流程配置效果展示如下图</p><p><img alt="" height="576" src="https://i-blog.csdnimg.cn/direct/3a2b496c17554556b547a9cbdd16e873.png" width="1579"></p><p></p><h3 id="3.1%20%E5%89%8D%E7%BD%AE%E5%87%86%E5%A4%87" name="3.1%20%E5%89%8D%E7%BD%AE%E5%87%86%E5%A4%87">3.1 前置准备</h3><p></p><h4 id="3.1.1%20%E9%85%8D%E7%BD%AE%E5%A4%A7%E6%A8%A1%E5%9E%8B" name="3.1.1%20%E9%85%8D%E7%BD%AE%E5%A4%A7%E6%A8%A1%E5%9E%8B">3.1.1 配置大模型</h4><p>Dify提为应用开发者提供了众多大模型可供集成使用,但需要使用者以插件方式安装并集成进去。在账户那里右键设置,进入模型供应商设置那里,可以看到有很多大模型可供集成,入口:https://cloud.dify.ai/signin</p><p><img alt="" height="897" src="https://i-blog.csdnimg.cn/direct/f6d904c76cf74cf58d4b1e093574f7e1.png" width="1280"></p><p>你可以选择合适的模型供应商进行安装,比如我这里选择了DeepSeek ,通义千问大模型,以及国内的硅基流动大模型集成平台,主要是把对应的模型供应商的apikey配置进去即可。</p><p><img alt="" height="556" src="https://i-blog.csdnimg.cn/direct/733b46bbb9cd4155b8f27de4fb06614e.png" width="1280"></p><h4 id="3.1.2%20%E5%AE%89%E8%A3%85%E5%B7%A5%E5%85%B7%E5%92%8C%E6%8F%92%E4%BB%B6" name="3.1.2%20%E5%AE%89%E8%A3%85%E5%B7%A5%E5%85%B7%E5%92%8C%E6%8F%92%E4%BB%B6">3.1.2 安装工具和插件</h4><p>如下,安装这个rookie_text2data的工具,基于该插件,可以将自然语言转sql</p><p><img alt="" height="624" src="https://i-blog.csdnimg.cn/direct/d464dbc3b419419fbcbf02b09bf7acdd.png" width="1280"></p><p>再安装一个数据转图表的工具插件</p><p><img alt="" height="678" src="https://i-blog.csdnimg.cn/direct/74b2b57423c8450cb9c9dc2c93a59abb.png" width="1875"></p><p>安装Markdown转换器插件</p><p><img alt="" height="755" src="https://i-blog.csdnimg.cn/direct/16616f3ee4dc4e36a64056ddd66bd789.png" width="1849"></p><p></p><h4 id="3.1.3%20%E6%8F%90%E5%89%8D%E5%87%86%E5%A4%872%E5%BC%A0%E6%95%B0%E6%8D%AE%E8%A1%A8" name="3.1.3%20%E6%8F%90%E5%89%8D%E5%87%86%E5%A4%872%E5%BC%A0%E6%95%B0%E6%8D%AE%E8%A1%A8">3.1.3 提前准备2张数据表</h4><p>后续会模拟从数据库查询数据,因此需要提前准备2张数据表</p>
<pre style="white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important"><code class="language-sql">数据库相关表结构说明:
1、员工表(employees)完整建表sql如下:
CREATE TABLE `employees` (
`id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
`emp_name` varchar(32) DEFAULT NULL COMMENT '员工名称',
`age` int DEFAULT '0' COMMENT '员工年龄',
`gender` varchar(32) DEFAULT '' COMMENT '员工性别',
`department_id` bigint DEFAULT NULL COMMENT '所属部门ID',
`department_name` varchar(32) DEFAULT '' COMMENT '所属部门名称',
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 COMMENT='员工表';
2、部门表(depart)完整建表sql如下:
CREATE TABLE `depart` (
`id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
`depart_name` varchar(32) DEFAULT NULL COMMENT '部门名称',
`depart_code` varchar(32) DEFAULT NULL COMMENT '部门编码',
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 COMMENT='部门表';
两个表的关联关系说明:
employees(员工表)中的department_id字段为depart(部门表)的外键,即员工表的department_id是部门表的id主键这个字段</code></pre>
<h3 id="" name=""></h3><h3 id="3.2%20%E5%AE%8C%E6%95%B4%E6%93%8D%E4%BD%9C%E4%B8%8E%E9%85%8D%E7%BD%AE%E8%BF%87%E7%A8%8B" name="3.2%20%E5%AE%8C%E6%95%B4%E6%93%8D%E4%BD%9C%E4%B8%8E%E9%85%8D%E7%BD%AE%E8%BF%87%E7%A8%8B">3.2 完整操作与配置过程</h3><p></p><h4 id="3.2.1%20%E5%88%9B%E5%BB%BA%E7%A9%BA%E7%99%BD%E5%BA%94%E7%94%A8" name="3.2.1%20%E5%88%9B%E5%BB%BA%E7%A9%BA%E7%99%BD%E5%BA%94%E7%94%A8">3.2.1 创建空白应用</h4><p>如下,创建一个chatflow类型的应用</p><p><img alt="" height="708" src="https://i-blog.csdnimg.cn/direct/eaed77c757eb46e0a2c078b772d58a4a.png" width="965"></p><p>创建完成后,将默认跳转到下面的流程配置页面</p><p><img alt="" height="623" src="https://i-blog.csdnimg.cn/direct/ad5db0eab1814d4c91ea0f8110921e8b.png" width="1280"></p><p></p><h4 id="3.2.2%20%E5%A2%9E%E5%8A%A0%E4%B8%80%E4%B8%AA%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9" name="3.2.2%20%E5%A2%9E%E5%8A%A0%E4%B8%80%E4%B8%AA%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9">3.2.2 增加一个大模型节点</h4><p>该大模型节点用于解析用户输入的问题,确保后续的步骤能够正常的执行,在系统提示词那里配置如下内容</p>
<pre style="white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important"><code class="language-bash"># 角色
你是一位文字提炼专家
# 任务
负责把用户的查询数据需求进行提炼和总结,抓取关键数据查询文字,去掉和数据查询无关的内容,比如生成图表、生成excel、生成表单和数据查询无关的内容,只保留提炼查询数据的文字
# 输出
只输出你提炼后的结果,无需其他言语</code></pre>
<p><img alt="" height="470" src="https://i-blog.csdnimg.cn/direct/d380a76439bc4198b85ab49f5128d575.png" width="1196"></p><p>用户提示词那里,接收开始节点用户的输入信息</p><p><img alt="" height="474" src="https://i-blog.csdnimg.cn/direct/424ff882c1a34f499781f70af69d72fb.png" width="1165"></p><p></p><h4 id="3.2.3%20%E5%A2%9E%E5%8A%A0%E6%95%B0%E6%8D%AE%E5%BA%93%E6%89%A7%E8%A1%8C%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AA%E6%8F%92%E4%BB%B6%E8%8A%82%E7%82%B9" name="3.2.3%20%E5%A2%9E%E5%8A%A0%E6%95%B0%E6%8D%AE%E5%BA%93%E6%89%A7%E8%A1%8C%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AA%E6%8F%92%E4%BB%B6%E8%8A%82%E7%82%B9">3.2.3 增加数据库执行的第一个插件节点</h4><p>如下,添加一个text2data的插件节点</p><p><img alt="" height="630" src="https://i-blog.csdnimg.cn/direct/b7a004ed93794471a257d607cd62ffc3.png" width="845"></p><p>参考下面的配置信息,主要是填写数据库连接的相关信息,比如数据库账号,数据库名称,地址等</p><p><img alt="" height="765" src="https://i-blog.csdnimg.cn/direct/8cf61f711d8b4c52bbf56ed244bf77cd.png" width="1080"></p><p>在自定义提示那里,将本次涉及到的相关mysql表结构填写进去</p><p><img alt="" height="694" src="https://i-blog.csdnimg.cn/direct/60d0ca13bf1b4a5faca022e2dc99177d.png" width="1035"></p><p>最后选择一下模型</p><p><img alt="" height="519" src="https://i-blog.csdnimg.cn/direct/c3c1dd840c2e476a91640ad990d34882.png" width="1034"></p><h4 id="3.2.4%20%E5%A2%9E%E5%8A%A0%E4%B8%80%E4%B8%AA%E6%A8%A1%E6%9D%BF%E8%BD%AC%E6%8D%A2%E8%8A%82%E7%82%B9" name="3.2.4%20%E5%A2%9E%E5%8A%A0%E4%B8%80%E4%B8%AA%E6%A8%A1%E6%9D%BF%E8%BD%AC%E6%8D%A2%E8%8A%82%E7%82%B9">3.2.4 增加一个模板转换节点</h4><p>上面的输出内容中,目标需要的sql在json参数中,需要从参数中将包含sql语句的参数提取出来</p><p><img alt="" height="580" src="https://i-blog.csdnimg.cn/direct/d6046e43f17347e28bc498fd1c089386.png" width="965"></p><p></p><h4 id="3.2.5%20%E5%A2%9E%E5%8A%A0%E6%8F%90%E5%8F%96%E5%8F%82%E6%95%B0%E4%B8%AD%E7%9A%84SQL%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9" name="3.2.5%20%E5%A2%9E%E5%8A%A0%E6%8F%90%E5%8F%96%E5%8F%82%E6%95%B0%E4%B8%AD%E7%9A%84SQL%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9">3.2.5 增加提取参数中的SQL大模型节点</h4><p>通过该大模型节点,将上一步的参数中的SQL语句提取出来,在系统提示词中做如下配置:</p>
<pre style="white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important"><code class="language-bash">你是一位精通SQL语言的数据库专家,熟悉MySQL数据库。你的的任务是检查该Sql语句是否有错,如果有错请更正,没有错则输出Sql语句。
回答要求:
1.不能包含任何多余的信息。
2.必须是可以执行的SQL语句。
3.删除掉Sql中的\n,用空格替换。</code></pre>
<p><img alt="" height="621" src="https://i-blog.csdnimg.cn/direct/9549ec8e87394cf2a8ac7f8fba53fd99.png" width="941"></p><h4 id="3.2.6%20%E5%A2%9E%E5%8A%A0%E7%AC%AC%E4%BA%8C%E4%B8%AA%E6%8F%92%E4%BB%B6%E8%8A%82%E7%82%B9" name="3.2.6%20%E5%A2%9E%E5%8A%A0%E7%AC%AC%E4%BA%8C%E4%B8%AA%E6%8F%92%E4%BB%B6%E8%8A%82%E7%82%B9">3.2.6 增加第二个插件节点</h4><p>该节点用于从前一个节点的返回的sql进行执行,从而得到真正的sql执行结果</p><p><img alt="" height="340" src="https://i-blog.csdnimg.cn/direct/563e265c88ae4be489d81aa7cb1d6269.png" width="1065"></p><p>这个节点的配置也主要是数据库的连接信息,参考下面的图进行核心参数的配置即可</p><p><img alt="" height="515" src="https://i-blog.csdnimg.cn/direct/4ef77483f5014d61a93e636f18830167.png" width="1200"></p><h4 id="3.2.7%20%E5%A2%9E%E5%8A%A0%E6%9D%A1%E4%BB%B6%E5%88%86%E6%94%AF%E8%8A%82%E7%82%B9" name="3.2.7%20%E5%A2%9E%E5%8A%A0%E6%9D%A1%E4%BB%B6%E5%88%86%E6%94%AF%E8%8A%82%E7%82%B9">3.2.7 增加条件分支节点</h4><p>在后续的处理逻辑中,会涉及到多种不同类型的业务处理,比如生成图表,生成markdown格式的输出,生成excel等,这里需要通过一个条件分支节点来进行判断</p><ul><li><p>在下面的条件分支判断中表示,如果用户输入的问题中包含了图,说明后面要通过流程配置生成分析图</p></li><li><p>如果用户输入包含了 excel,表示需要为用户输出excel文件;</p></li><li><p>其他情况下走else的处理;</p></li></ul><p><img alt="" height="555" src="https://i-blog.csdnimg.cn/direct/ab179a6a719646bdb383cf5e397f89b8.png" width="850"></p><p>接下来依次配置各个流程分支的情况。</p><p></p><h5 id="3.2.7.1%20%E7%AC%AC%E4%B8%80%E4%B8%AA%E6%9D%A1%E4%BB%B6%E5%88%86%E6%94%AF%E5%A2%9E%E5%8A%A0%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9" name="3.2.7.1%20%E7%AC%AC%E4%B8%80%E4%B8%AA%E6%9D%A1%E4%BB%B6%E5%88%86%E6%94%AF%E5%A2%9E%E5%8A%A0%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9">3.2.7.1 第一个条件分支增加大模型节点</h5><p>如下,在第一个条件分支后面增加一个大模型节点,用于解析上一步的输出结果,推荐合适的图表类型,配置如下提示词</p>
<pre style="white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important"><code class="language-bash"># 任务
根据用户的需求,以及数据内容,自行判断哪种图表类型合适
# 输出
只输出你推荐的图表类型名称,从以下图表类型中选择一个输出:柱状图,折线图,饼图,散点图,带有涟漪特效动画的散点(气泡)图,K线图,雷达图,热力图,数图,矩形树图,旭日图,地图,路径图。</code></pre>
<p><img alt="" height="607" src="https://i-blog.csdnimg.cn/direct/47160d98adbe4d36a6324ffc341091ed.png" width="1280"></p><p>用户提示词配置如下内容,配置用户的提问内容,以及上一步执行sql的结果</p><p><img alt="" height="550" src="https://i-blog.csdnimg.cn/direct/7581d2eaf4f342a38ff62156f5bfeb78.png" width="1144"></p><p></p><h5 id="3.2.7.2%20%E5%A2%9E%E5%8A%A0%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9" name="3.2.7.2%20%E5%A2%9E%E5%8A%A0%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9">3.2.7.2 增加大模型节点</h5><p>该大模型节点用于将前面sql执行器的结果转为json格式内容,参考下面的配置信息</p><p><img alt="" height="719" src="https://i-blog.csdnimg.cn/direct/1fc3464466314605bd203d836b7cad98.png" width="1280"></p><p></p><h5 id="3.2.7.3%20%E5%A2%9E%E5%8A%A0%E6%95%B0%E6%8D%AE%E8%BD%AC%E5%9B%BE%E8%A1%A8%E7%9A%84%E6%8F%92%E4%BB%B6%E8%8A%82%E7%82%B9" name="3.2.7.3%20%E5%A2%9E%E5%8A%A0%E6%95%B0%E6%8D%AE%E8%BD%AC%E5%9B%BE%E8%A1%A8%E7%9A%84%E6%8F%92%E4%BB%B6%E8%8A%82%E7%82%B9">3.2.7.3 增加数据转图表的插件节点</h5><p>增加一个新的插件节点,用于将json格式数据转为echarts图表需要的格式形式,从而展示图表,节点配置信息参考下面的图进行配置</p><p><img alt="" height="795" src="https://i-blog.csdnimg.cn/direct/5532ee6c28c44e78b1fc4996bd33da49.png" width="1470"></p><h5 id="3.2.7.4%20%E5%A2%9E%E5%8A%A0%E5%9B%9E%E5%A4%8D%E8%8A%82%E7%82%B9" name="3.2.7.4%20%E5%A2%9E%E5%8A%A0%E5%9B%9E%E5%A4%8D%E8%8A%82%E7%82%B9">3.2.7.4 增加回复节点</h5><p>最后增加一个直接回复节点</p><p><img alt="" height="511" src="https://i-blog.csdnimg.cn/direct/4c00183084fd4c8b8cbb9aa487e6059d.png" width="1270"></p><h4 id="3.2.8%20%E7%AC%AC%E4%BA%8C%E4%B8%AA%E5%88%86%E6%94%AF%E8%8A%82%E7%82%B9%E5%A2%9E%E5%8A%A0%E4%B8%80%E4%B8%AA%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9" name="3.2.8%20%E7%AC%AC%E4%BA%8C%E4%B8%AA%E5%88%86%E6%94%AF%E8%8A%82%E7%82%B9%E5%A2%9E%E5%8A%A0%E4%B8%80%E4%B8%AA%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9">3.2.8 第二个分支节点增加一个大模型节点</h4><p>在第二个分支增加一个大模型节点,用于将sql执行的结果转为Markdown格式的内容,参考下面的节点配置信息</p><p><img alt="" height="633" src="https://i-blog.csdnimg.cn/direct/50c8473c27cb4a5f9dbc0059c907120c.png" width="478"></p><p></p><h5 id="3.2.8.1%20%E5%A2%9E%E5%8A%A0Markdown%E8%BD%AC%E6%8D%A2%E8%8A%82%E7%82%B9" name="3.2.8.1%20%E5%A2%9E%E5%8A%A0Markdown%E8%BD%AC%E6%8D%A2%E8%8A%82%E7%82%B9">3.2.8.1 增加Markdown转换节点</h5><p>该节点用于将前一步的Markdown格式的内容转为excel文件</p><p><img alt="" height="436" src="https://i-blog.csdnimg.cn/direct/82ab04061b784c54964d5dc05d5a4e0f.png" width="1280"></p><p>配置一下输入的参数即可</p><p><img alt="" height="546" src="https://i-blog.csdnimg.cn/direct/6af48158ae8c4874b6808f5d74a09cc1.png" width="1480"></p><p></p><h5 id="3.2.8.2%20%E5%A2%9E%E5%8A%A0%E5%9B%9E%E5%A4%8D%E8%8A%82%E7%82%B9" name="3.2.8.2%20%E5%A2%9E%E5%8A%A0%E5%9B%9E%E5%A4%8D%E8%8A%82%E7%82%B9">3.2.8.2 增加回复节点</h5><p>最后增加一个回复节点,输出excel结果,这里选择上一步生成的excel文件</p><p><img alt="" height="514" src="https://i-blog.csdnimg.cn/direct/b7aba582c4db48a8ae0232210c61700d.png" width="1290"></p><h4 id="3.2.9%20%E7%AC%AC%E4%B8%89%E4%B8%AA%E5%88%86%E6%94%AF%E5%A2%9E%E5%8A%A0%E4%B8%80%E4%B8%AA%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9" name="3.2.9%20%E7%AC%AC%E4%B8%89%E4%B8%AA%E5%88%86%E6%94%AF%E5%A2%9E%E5%8A%A0%E4%B8%80%E4%B8%AA%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%8A%82%E7%82%B9">3.2.9 第三个分支增加一个大模型节点</h4><p>该节点用于对sql执行的结果进行分析总结,系统提示词参考下面的内容进行配置</p>
<pre style="white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important"><code class="language-bash">#角色
你是一个精通数据处理、分析和总结的大师
# 任务
你可以根据用户的问题,从提供的数据库中检索相关信息,整合提炼后用精准合适的自然语言回复用户
# 输出
1、若用户只是查询数据,则提炼后直接回复数据内容即可
2、若用户需要你分析数据,则可以结合数据给出专业的分析内容</code></pre>
<p><img alt="" height="716" src="https://i-blog.csdnimg.cn/direct/48c5f4e8cc984aafb5988617616d1f87.png" width="1280"></p><h5 id="3.2.9.1%20%E5%A2%9E%E5%8A%A0%E5%9B%9E%E5%A4%8D%E8%8A%82%E7%82%B9" name="3.2.9.1%20%E5%A2%9E%E5%8A%A0%E5%9B%9E%E5%A4%8D%E8%8A%82%E7%82%B9">3.2.9.1 增加回复节点</h5><p>最后增加一个回复节点,接收上一步的LLM节点的总结输出内容</p><p><img alt="" height="530" src="https://i-blog.csdnimg.cn/direct/7b689b363ad541b397b1dfa5e0ea88da.png" width="1340"></p><p></p><h4 id="3.2.10%20%E6%95%88%E6%9E%9C%E6%B5%8B%E8%AF%95" name="3.2.10%20%E6%95%88%E6%9E%9C%E6%B5%8B%E8%AF%95">3.2.10 效果测试</h4><p>上面的流程配置完成后,点击发布更新、预览,然后分别测试下不同的分支下的效果</p><p></p><p><strong>1)测试图表展示</strong></p><p>如下,输入问题,统计各个部门的员工数,并绘制饼状图</p><p><img alt="" height="644" src="https://i-blog.csdnimg.cn/direct/d1237072c39b484685d5003b9e45cb3e.png" width="599"></p><p></p><p><strong>2)测试生成excel</strong></p><p>这一次测试生成一个excel</p><p><img alt="" height="584" src="https://i-blog.csdnimg.cn/direct/61fabf3f70ef4e9ca7f838c253209165.png" width="600"></p><p>等待流程执行完成之后,下载excel,得到的也是符合预期的输出结果</p><p><img alt="" height="425" src="https://i-blog.csdnimg.cn/direct/82edcd463ec642b9932f8db26552d856.png" width="795"></p><p></p><p><strong>3)测试分析结果</strong></p><p>如果上面两个分支都不满足,将会走内容分析的分支,比如输入下面的问题,将会给出比较详细的分析报告输出</p><p><img alt="" height="632" src="https://i-blog.csdnimg.cn/direct/0e806ac066754c4f941ebe57b5128125.png" width="1280"></p><p><img alt="" height="716" src="https://i-blog.csdnimg.cn/direct/729a22b7a7014db8a0706e77dbee4afb.png" width="1420"></p><p></p><h2 id="%E5%9B%9B%E3%80%81%E5%86%99%E5%9C%A8%E6%96%87%E6%9C%AB" name="%E5%9B%9B%E3%80%81%E5%86%99%E5%9C%A8%E6%96%87%E6%9C%AB">四、写在文末</h2><p>本文通过较大的篇幅详细介绍了基于Dify实现一个数据分析的智能体应用,并通过详细的操作步骤展现了完整的配置过程,希望对看到的同学有用哦,本篇到此介绍,感谢观看。</p><p></p><p></p><p></p></div>
---
<div style="background: rgba(248, 250, 252, 1); padding: 15px 18px; border-left: 4px solid rgba(100, 116, 139, 1); margin-top: 30px">
<h3 style="color: rgba(71, 85, 105, 1); margin-top: 0; font-size: 16px"> 知识拓展</h3>
<p style="color: rgba(102, 102, 102, 1); font-size: 13px; margin-bottom: 12px">如果你觉得本文有帮助,以下资源可以帮你深入学习:</p>
<ol style="line-height: 2; font-size: 14px; padding-left: 20px">
<li><strong>Vue开发实战</strong><br>
<span style="color: rgba(136, 136, 136, 1); font-size: 13px"> 唐金州 | Vue.js实战开发指南</span></li>
</ol>
</div><br><br>
来源:https://www.cnblogs.com/tlnshuju/p/19105373
頁:
[1]