数据智能 Luma

更新时间:
复制为 MD 格式

数据智能 Luma 是 EventHouse 的 AI 原生分析能力,支持通过自然语言与事件数据交互。Luma 自动理解数据结构,将自然语言转化为 SQL 查询并执行,无需手动编写查询语句。

功能概述

Luma 位于 EventHouse 架构的数据智能层,在数据分析计算引擎之上,是用户与数据交互的最上层接口。

Luma 通过以下核心组件实现数据智能:

组件

说明

AI 语义层

为 AI 提供表结构、字段含义、数据关系等业务上下文

DataAgent

自主分析引擎,执行问题理解、元数据探测、SQL 生成、校验修复、查询执行的完整分析链

自然语言交互

支持多轮对话,自动澄清模糊需求,将自然语言转化为精确的 SQL 查询

权限感知

所有 AI 查询遵循 EventHouse 的权限体系,确保数据访问安全

使用场景

  • 数据探索:通过自然语言快速了解数据表结构和内容分布,无需记忆表名和字段名。

  • 即席查询:用自然语言描述查询需求,Luma 自动生成并执行 SQL,直接返回结果。

  • 分析辅助:针对复杂分析需求,Luma 生成多种 SQL 方案并自动选择最优方案。

DataAgent 分析流程

当用户输入查询需求时,DataAgent 执行以下自主分析流程:

  1. 理解问题:判断查询意图和类型。

  2. 探测元数据:自动查找相关的 Catalog、Namespace、表和字段信息。

  3. 确认查询细节:如需求不够明确,主动询问时间范围、返回字段等关键参数。

  4. 生成查询语句:根据需求生成 SQL 查询,可能生成多个候选方案。

  5. 校验和修复:验证 SQL 语法和执行可行性,自动修复排序字段、LIMIT 等问题。

  6. 执行并返回结果:执行最优 SQL,以表格形式展示查询结果。

每个步骤的推理过程和工具调用均在对话界面中实时展示。

核心概念

Agent

Agent 是 Luma 的分析工作空间,绑定特定的数据表和系统提示词,形成独立的分析环境。

属性

说明

名称

Agent 的标识名称

描述

Agent 的用途说明

提示词

系统提示词,定义 Agent 的分析角色和行为规范

关联数据

Agent 可访问的数据表范围,通过 Catalog > Namespace > Table 三级目录选择

通过创建多个 Agent,可实现数据权限隔离和分析场景分离。例如,为运维团队创建关联告警数据的 Agent,为业务团队创建关联订单数据的 Agent。

对话

对话是与 Agent 交互的基本单元。每个 Agent 支持创建多个独立对话,每个对话维护独立的上下文。

  • Luma 根据当前对话上下文理解后续追问,支持多轮交互。

  • 新建对话会清除历史上下文,适合开始新的分析任务。

  • 历史对话可随时回溯查看。

前提条件

  • 已开通事件总线 EventBridge 服务。

  • 已创建 EventHouse 事件仓,且事件仓中已有可查询的数据表(通过数据目录 Catalog 管理)。

  • 当前仅华东 1(杭州)地域支持数据智能 Luma。

创建 Agent

  1. 登录事件总线 EventBridge 控制台

  2. 在左侧导航栏,选择事件仓 > 数据智能 Luma

  3. 在 Agent 列表页,单击创建 Agent

  4. 在创建对话框中,配置以下参数。

    参数

    是否必填

    说明

    名称

    Agent 的名称,用于标识不同的分析场景

    描述

    Agent 的用途描述

    提示词

    系统提示词,指导 Agent 的分析行为。例如:"你是一个订单数据分析专家,帮助用户分析订单趋势和异常"

    关联数据

    Agent 可访问的数据表。通过 Catalog > Namespace > Table 三级目录结构选择,至少选择一个表

  5. 单击创建

    创建完成后,页面自动跳转到 Agent 详情页,可以开始使用自然语言查询数据。

使用自然语言查询数据

  1. 在 Agent 详情页的对话输入框中,输入查询需求。

    可以直接输入自然语言描述,例如:

    • "查询最近 10 条订单数据"

    • "统计今天各状态的订单数量"

    • "查找金额最大的 5 笔订单"

    也可以单击系统推荐的示例问题快速开始。

  2. Luma 开始自主分析,处理过程在对话区域实时展示。

    Luma 会依次执行理解问题、探测元数据、生成 SQL、校验优化、执行查询等步骤。如果查询需求不够明确,Luma 会主动追问以确认时间范围、返回字段等关键参数,根据提示补充信息即可。

  3. 查询完成后,Luma 返回结果表格和生成的 SQL 语句。

    示例:输入“查询最近 10 条订单”后,Luma 生成并执行以下 SQL:

    SELECT * FROM "order_events" ORDER BY __time__ DESC LIMIT 10
    AI 生成的查询结果仅供参考,建议对关键数据进行人工验证。
  4. 在同一对话中继续追问,进行更深入的分析。

    Luma 会结合之前的对话上下文理解新需求。例如,在查询订单数据后追问“按天统计订单数量趋势”,Luma 自动生成新的聚合查询。

配置 Agent

创建 Agent 后,可以修改其提示词和关联数据。

  1. 在 Agent 详情页,单击标题栏的配置

  2. 在右侧配置面板中修改配置项。

    配置项

    说明

    数据

    查看和编辑关联的数据表。通过 Catalog > Namespace > Table 三级目录添加或移除数据表

    提示词

    编辑系统提示词,调整 Agent 的分析行为和角色定义

  3. 修改完成后,单击保存。修改后的配置在新对话中生效。

删除 Agent

注意:删除 Agent 会同时删除该 Agent 下的所有对话记录,且不可恢复。
  1. 在 Agent 列表页,找到目标 Agent,单击操作列的删除

  2. 在确认对话框中,单击确定