Datawhale AI秋训营-advance学习笔记

35 阅读3分钟

🎯 项目目标:构建“文本 + 表格”混合智能问答系统(Hybrid QA Agent)

该系统通过RAG 文本检索ReAct 表格分析相结合,实现对应急管理领域数据(法规政策 + 企业数据 Excel/数据库)的问答与统计分析,支持复杂问题自动路由与多模态信息融合。

✅ 已实现从仅支持文本问答的 Baseline → 具备混合智能决策能力的增强版系统。


🧠 混合智能架构概览(新版)

模块技术手段作用实现状态
文本问答RAG + LlamaIndex检索政策法规、技术文档✅ 已集成
表格问答ReAct + Pandas自动生成 Python 代码分析 Excel✅ 已集成
自动路由器LLM + Tools调用判断问题类型并调用对应Agent✅ 已实现
双模态融合LLM逻辑融合同时调用文本+表格并综合分析✅ 已实现
执行引擎Python执行环境执行模型生成的代码(生产环境使用沙盒)✅ 已封装

🔍 系统工作机制(Hybrid Routing + ReAct)

🧭 路由逻辑

模型会自动判断问句属于:

问题类型示例调用模块
文本型问题“危险化学品使用许可证多久有效?”Text-RAG
数据统计型“2025年3月22日开停车企业数量?”Tabular-ReAct
混合型问题“涉及2-丙醇的企业数量及监管依据是什么?”Dual-Mode 融合

🔧 工具调用(Tools)

call_text_rag        → 调用文本检索引擎
call_tabular_agent   → 生成Python代码分析Excel
call_dual_mode       → 双模态协同
finish               → 输出最终答案

📂 数据处理与增强功能

📄 文本处理(RAG)

  • 使用 DocumentProcessor 自动从 Word 文档中提取段落与表格并转为 Markdown
  • 构建向量索引用于高精度语义检索
  • LlamaIndex统一管理 Text Index

📊 表格处理(ReAct)

  • 利用 LLM 生成 Python Pandas 代码
  • SafeCodeExecutor 执行,防越权+自动捕获结果
  • 支持 .head(5) 限制展示行数
  • 多轮 ReAct 推理,直到完成推理链

🔧 核心流程图

    用户问题
       ↓
[Hybrid Router (LLM)]
       ↓
 ┌─────────────┬─────────────────┬────────────────┐
 | Text RAG    | Tabular ReAct   |  Dual Mode     |
 └─────────────┴─────────────────┴────────────────┘
       ↓
  信息汇总与融合
       ↓
   finish 输出答案

✨ 已实现的重要能力

能力描述成果
自动识别问题意图能判断自然语言问题来源于文本还是结构化数据
自动生成数据分析代码模型自动写 Python 代码完成过滤/分组/统计计算
表格结构感知能读取 DOCX 中的表结构说明并理解字段含义
路由 + 多模态融合支持双模态融合,输出包含数据结果 + 法规依据
安全执行(并不十分安全)限制执行环境,仅允许 pd/os/json 等模块

🤔 下一步优化方向

改进方向技术方案优先级
✅ 简洁代码实现使用pydantic_ai等框架实现agent⭐⭐⭐
✅ 异步重构异步实现逻辑,增强问题回答并发能力⭐⭐

✅ 新阶段总结

本系统已经从“单一文本问答”进化为真正意义上的“决策型智能体”,能够根据问题类型自动切换 RAG 和 ReAct 模式,甚至融合两种数据源共同推理。这种架构是应急管理智能系统的核心竞争力。