| name | data-analysis-engine |
| description | 智数分析专家团的核心分析引擎技能,提供数据源连接、查询执行、分析工作流编排和安全沙盒执行的完整能力框架。
对标原始系统的AWEL工作流引擎、多数据源连接器、沙盒执行环境和技能加载系统。
触发词:数据分析、SQL执行、数据连接、知识检索、报告生成、数据画像
|
数据分析引擎(Data Analysis Engine)
功能说明
数据分析引擎是智数分析专家团的共享核心技能,为团队所有成员提供统一的数据处理基础能力。该引擎实现了从数据接入、查询执行、计算分析到结果输出的完整流水线。
核心架构
分层设计
┌─────────────────────────────────────────────┐
│ 应用层(Application Layer) │
│ 任务规划 · 场景调度 · 结果编排 │
├─────────────────────────────────────────────┤
│ 服务层(Service Layer) │
│ Agent管理 · 对话管理 · 工作流服务 │
├─────────────────────────────────────────────┤
│ 核心层(Core Layer) │
│ AWEL引擎 · LLM接口 · 存储抽象 · 消息协议 │
├─────────────────────────────────────────────┤
│ 扩展层(Extension Layer) │
│ 数据源连接器 · 向量存储 · 模型适配器 │
├─────────────────────────────────────────────┤
│ 沙盒层(Sandbox Layer) │
│ 代码隔离执行 · 资源限制 · 安全审计 │
└─────────────────────────────────────────────┘
组件系统
引擎采用组件化设计,支持:
- 依赖注入:集中式服务发现和管理
- 生命周期管理:标准化的初始化、启动和关闭流程
- 松耦合:组件间通过接口通信,消除循环依赖
- 可扩展:新功能通过插件方式添加
工作流引擎(AWEL)
概述
工作流引擎提供声明式的分析流程编排能力,将复杂的数据分析任务分解为可组合的操作单元。
核心概念
| 概念 | 说明 |
|---|
| DAG | 有向无环图,管理任务依赖关系 |
| Operator | 工作流操作算子,执行具体的数据处理逻辑 |
| Trigger | 事件触发器,启动工作流执行 |
| Flow | 流程实例,代表一次具体的执行过程 |
标准工作流模式
模式1:自然语言查询 → SQL执行
UserInput → NLU解析 → Schema匹配 → SQL生成 → 安全检查 → 执行 → 结果格式化 → 输出
模式2:文件分析 → 数据画像
FileUpload → 格式检测 → 数据加载 → Schema探索 → 统计计算 → 可视化生成 → 报告组装
模式3:知识检索 → 增强问答
UserQuery → 查询改写 → 向量检索 → 上下文组装 → LLM生成 → 来源标注 → 输出
模式4:多源混合分析
多数据源 → 并行查询 → 结果合并 → 交叉分析 → 洞察提取 → 可视化 → 报告
数据源连接
支持的数据源
参考 @references/datasource-connectors.md 了解所有支持的数据源类型和连接配置。
连接管理
创建连接 → 验证凭证 → 建立会话 → 执行操作 → 释放连接
max_connections: 10
connection_timeout: 30
idle_timeout: 300
retry_count: 3
沙盒执行环境
安全隔离
所有代码执行在安全沙盒中进行:
| 安全机制 | 说明 |
|---|
| 进程隔离 | 每次执行在独立进程中运行 |
| 资源限制 | CPU/内存/磁盘/网络访问限制 |
| 超时控制 | 执行时间上限,防止无限循环 |
| 只读约束 | 数据库连接默认只读模式 |
| 审计日志 | 记录所有执行操作供审计 |
资源配额
sandbox:
max_cpu_time: 60s
max_memory: 512MB
max_disk_write: 100MB
network_access: false
max_output_size: 10MB
模型管理
LLM适配层
引擎通过统一接口支持多种大语言模型:
response = await llm.generate(
prompt=formatted_prompt,
model=selected_model,
temperature=0.1,
max_tokens=4096,
stream=True
)
支持的模型类型
| 模型类别 | 用途 |
|---|
| 通用对话模型 | 任务理解、报告撰写 |
| 代码生成模型 | SQL生成、Python代码 |
| 嵌入模型 | 文档向量化、语义检索 |
| 指令微调模型 | Text2SQL专项优化 |
调用方式
作为技能加载
当Agent启动时,此技能自动加载,提供以下能力:
- 数据源连接与管理
- SQL生成与执行
- Python代码沙盒执行
- 知识库检索
- 工作流编排
在Agent MD中声明
skills: [data-analysis-engine]
参考资料
- 参考 @references/datasource-connectors.md 了解数据源连接配置
- 参考 @references/analysis-patterns.md 了解分析模式和最佳实践
- 参考 @references/security-guidelines.md 了解安全规范
输出格式
引擎支持多种输出格式:
| 格式 | 适用场景 |
|---|
| JSON | 结构化数据传递 |
| DataFrame | Python分析中间结果 |
| Markdown | 文本报告和文档 |
| HTML | 可视化和交互式报告 |
| CSV/Excel | 数据导出和共享 |
| 图表对象 | 可视化渲染 |
注意事项
- 所有数据操作遵循最小权限原则
- 大数据集操作自动启用分页和流式处理
- 连接敏感信息(密码、密钥)不会出现在日志或输出中
- 执行失败时提供清晰的错误信息和修复建议
- 支持断点续传和任务恢复