当前位置: 首页 > news >正文

NL2SQL:解锁可视化数据分析的新姿势

1. 为什么需要NL2SQL?

在企业数据分析场景中,SQL是连接数据库的核心工具,但其语法门槛让非技术人员望而却步。自然语言转SQL(NL2SQL) 技术的出现,打破了这一限制。用户只需输入“帮我查一下本月产品销售额排名”这类口语化指令,系统即可自动生成对应SQL语句并返回可视化结果,大幅提升数据利用效率。

阿里云 AppFlow 平台通过DMS+百炼平台,将NL2SQL功能深度融入企业流程,助力用户实现:

  • 零代码数据查询:无需编写SQL,通过对话即可获取数据洞察
  • 多系统无缝集成:支持钉钉等办公场景的数据交互
  • 可视化结果展示:自动将查询结果转化为直观图表

2. 前期准备

1. 将您的数据库使用阿里云DMS托管,如果没有,可以参考下列文档进行托管

    • 阿里云数据库导入DMS中 实例管理_数据管理(兼容数据库备份)(DMS)-阿里云帮助中心
    • 他云或自建数据库录入 实例管理_数据管理(兼容数据库备份)(DMS)-阿里云帮助中心

2. 预加载数据库Schema信息

        访问DMS控制台,左侧选择您的数据库实例。点击Copilot按钮,等待“数据初始化中”消失即可。此时,数据库NL2SQL将会按照您当前的数据库进行生成。

3. 整体流程介绍

4. 配置教程

4.1 百炼应用搭建

  • 进入百炼控制台的应用列表在页面右侧点击新增应用。在对话框中选择智能体应用,点击立即创建

  • 根据需要选择模型。模型参数无特殊需要保持默认即可。
  • 复制如下Prompt到提示词框
# 角色
- 你是一个数据可视化分析专家,善于对人类给出的数据进行分析、整理以及可视化# 要求
- 仔细阅读和理解人类给出的数据库查询结果
- 根据数据特点选择最适合展示的图表类型,例如饼图、折线图、柱状图等各类图表
- 使用可视化图表工具生成图表# 数据示例
## [{"type":"研发","count":"56"},{"age":"产品","count":"44"}]
## 数据中每一个对象元素代表数据库查询结果的一行,Json对象的Key表示列标题,Value表示当前列的值

  • 找到技能-MCP服务,开通并添加“AntV 可视化图表” MCP服务。
  • 点击发布按钮
  • 获取调用 API 所需的应用ID和API-Key。为了在后续通过 API 调用大模型应用的能力,我们需要获取一个百炼应用的 API-KEY 和应用 ID。
  • 在应用列表中可以查看所有百炼应用 ID。保存应用 ID 到本地用于后续配置。

  • 在我的API-KEY页面右侧,点击创建我的API-KEY,在弹出窗口中创建一个新 API-KEY。保存 API-KEY 到本地用于后续配置。

4.2 创建钉钉应用

创建应用

  • 访问钉钉开放平台,点击上部应用开发。

  • 在应用开发的左侧导航栏中,点击钉钉应用,在钉钉应用页面右上角点击创建应用

  • 创建应用面板,填写应用名称应用描述,上传应用图标,完成后点击保存

查看应用 Client ID 和 Client Secret

在左侧菜单选择凭证与基础信息,复制 Client ID 和 Client Secret,用于下一步创建连接流。

创建消息卡片

钉钉机器人通过卡片消息支持流式返回结果,您需要创建卡片模板供消息发送使用。

  • 访问卡片平台,点击新建模板

  • 在创建模板输入框,填入模板信息。

  • 在模拟编辑页面,保存发布模板。然后点击返回模板列表页面。

  • 复制模板ID,用于创建钉钉连接流使用。

授予应用发送卡片消息权限

创建卡片后,您需要给应用授予发送卡片消息的权限。

  • 访问钉钉应用列表。找到刚刚创建的应用,点击应用名称进入详情页面。
  1. 在左侧菜单选择开发配置 > 权限管理,在左侧搜索框分别输入Card.Streaming.WriteCard.Instance.Write,并在操作列点击申请权限

4.3 AppFlow连接流配置

步骤1:钉钉机器人:收到文本消息

  • 访问AppFlow控制台,在点击左侧菜单栏“连接流”,选择“创建连接流”,填写当前连接流的基本信息。

  • “选择触发事件”,找到并点击选择“钉钉机器人”,触发事件选择“收到文本消息时”,点击“保存,进入下一步”。

步骤2:DMS数据管理:NL2SQL

  1. 搜索并选择“DMS数据管理”连接器,执行动作选择“NL2SQL”,点击下一步
  2. 添加鉴权凭证,按照界面提示选择符合要求的RAM角色,或新建RAM角色
  3. 在DMS页面可获取如下信息,从左到右依次为:数据库名、数据库连接地址、数据库连接端口号

参数名称

示例

数据库连接地址

上图第二个红框值

rm-xx.mysql.rds.aliyuncs.com

数据库端口号

上图第三个红框值

3306

数据库名

上图第一个红框值

app_001

问题

插入变量-节点1-会话消息-消息内容

{{Node1.text.content}}

  • 点击“+”进行下一节点配置

步骤3:DMS数据管理:执行SQL语句

  1. 搜索并选择“DMS数据管理”连接器,执行动作选择“执行SQL语句”,点击下一步
  2. 添加鉴权凭证,按照界面提示选择符合要求的RAM角色,或新建RAM角色

参数名称

示例

数据库连接地址

上图第二个红框值

rm-xx.mysql.rds.aliyuncs.com

数据库端口号

上图第三个红框值

3306

数据库名

上图第一个红框值

app_001

SQL查询语句

插入变量-节点2-生成的SQL

{{Node2.sql}}

步骤4:阿里云百炼:百炼应用(流式)

  1. 选择“阿里云百炼”连接器,执行动作选择“百炼应用”,点击下一步
  2. 根据前面步骤保存的API Key创建连接凭证
  3. 填写应用Id和Prompt提示词

参数名称

示例

应用ID

百炼应用ID

06d2daf4175145c4aed068f4af8c815a

Prompt提示词

插入变量-节点3-查询结果集

{{Node3.rows}}

步骤5:钉钉应用机器人:发送AI卡片消息

  1. 选择“钉钉应用机器人”连接器,执行动作选择“发送AI卡片消息”
  2. 使用在之前获取的钉钉应用的Client ID 和 Client Secret创建鉴权凭证
  3. 填写如下参数

参数名称

示例

模版ID

之前步骤创建的钉钉卡片模版ID

xxx-xx-xxx.schema

机器人Code

插入变量-节点1-机器人代码

{{Node1.robotCode}}

字段Key

content

content

内容

插入变量-节点4-输出结果

{{Node4.text}}

群聊Id

插入变量-节点1-会话ID

{{Node1.conversationId}}

用户Id

插入变量-节点1-消息发送人ID

{{Node1.senderStaffId}}

  1. 完成后点击完成并保存流程
  2. 选择发布连接流,复制 Webhook Url 后续配置使用

4.4 配置钉钉机器人

  1. 访问钉钉应用列表。找到刚刚创建的应用,点击应用名称进入详情页面。
  2. 添加应用能力页面,找到机器人卡片,点击添加

  3. 在机器人配置页面,打开机器人配置开关,您可以参考下图完成配置。消息接收模式请选择HTTP模式消息接收地址为刚刚的 WebhookUrl。然后点击发布

发布应用版本

应用创建完成后,如果需要将应用供企业内其他用户使用,需要发布一个版本。

  1. 点击应用开发,在钉钉应用页面,点击目标应用。

  2. 在目标应用开发导航栏,点击版本管理与发布,在版本管理与发布页面,点击创建新版本。进入版本详情页面,输入应用版本号版本描述信息,选择合适的应用可见范围,完成后点击保存。并在弹窗中点击直接发布

  3. 完成后,在钉钉中搜索应用或将应用加入群聊即可与应用进行对话了
  4. 在钉钉群中@机器人,进行交流互动

相关文章:

  • DIDCTF-应急响应
  • 深入理解mysql索引
  • 分布式顺序数据发生器
  • C. Bertown Subway
  • 解决戴尔电脑No bootable devices found问题
  • 数据结构——选择题—查漏补缺
  • b站视频如何下载到电脑上
  • 神经网络模型的统计学具现
  • 【MPC】模型预测控制笔记 (4):约束输出反馈MPC
  • crackme009
  • FPGA基础 -- Verilog 结构建模
  • 百度下拉框出词技术解密:72小时出下拉词软件原理分享
  • 零基础开始的网工之路第二十一天------性能优化
  • 从 native 获取 AndroidId,Frida 获取 native 堆栈
  • Vue.js第二节
  • 使用duckduckgo_search python api 进行免费且不限次数的搜索
  • 【unitrix】 3.1 新基本结构体(types1.rs)
  • Python从入门到精通
  • WebRTC(六):ICE协议
  • c++面试题(24)-----数组中出现次数超过一半的数字
  • 可以做ppt的网站或软件/青岛网站建设微动力
  • 网站弹出公告代码/阿里云域名注册网站
  • 新手怎样学校做网站/怎样制作属于自己的网站
  • 陕西锦宇建设有限公司网站/百度提交网站的入口地址
  • 做别人的网站诈骗视频/瑞昌网络推广
  • 网上有多少个购物平台/seo技术网网