多代理AutoML数据分析师(MCP+A2A+GGemini供电)
自动分析器→ EDA → AutoML→ 验证器→ 笔记本合成器→ 双子座洞察
🚀 实时演示(渲染部署): https://multiagent-data-analyst.onrender.com/
Track:企业代理
技术:Python、Streamlit、Gemini、MCP工具、A2A总线、多代理架构
概述
Multi-Agent Data Analyst是一个完全自动化的端到端数据分析管道,由多个专业代理协同工作。 它上传数据集,分析数据集,构建机器学习模型,验证结果,生成笔记本,并生成最终见解,而无需任何手动编码。
该项目展示了:
✔ 多智能体系统
✔ A2A(代理人对代理人)
✔ 基于工具的代理执行(MCP工具)
✔ 会话和记忆
✔ 上下文感知笔记本合成
✔ 双子座驱动的解释
✔ 流线型多页应用程序
问题陈述
执行数据分析通常需要在工具之间切换、编写重复代码、手动运行模型、验证输出以及记录所有内容。
对于初学者来说,这是压倒性的。
对于分析师来说,这很耗时。
对于团队来说,这是不一致的。
目标:构建一个代理系统,自动化整个工作流程——从原始数据到经过验证的见解和笔记本生成。
为什么是代理人?
代理商使系统:
->模块化——每个代理做一项工作
->自主——用户无需触发每一步即可执行操作
->可追踪——每一步都是可观察的
->可组合——代理使用A2A总线进行通信
->可扩展——可以随时添加新代理(例如Gemini Reviewer)
智能不是一个巨大的笔记本电脑,而是分布式的:
代理角色
->Profiler Agent-检查数据集,发现问题
->EDA代理——生成图表、摘要、异常
->模型代理(AutoML)-自动构建ML管道
->验证器代理-检测不一致、模型错误、缺少列
->笔记本合成器代理-创建一个干净的笔记本,结合所有输出
->Gemini Agent——用人类友好的语言解释机器学习结果
每个代理将输出写入内存→ A2A编排→ 下一个特工做出反应。
建筑
1.️⃣ Profiler代理
✔ 读取数据集
✔ 检测列类型
✔ 查找缺失的值
✔ 发送消息→ EDA代理
二️⃣ EDA 代理
✔ 创建相关性、直方图、异常值分析
✔ 通过MCP文件工具保存所有绘图
✔ 发送消息→ ModelAgent
3️⃣ 模型代理
✔ 自动检测任务类型(分类/回归)
✔ 构建完整的机器学习管道(插补+缩放+编码)
✔ 调整模型
✔ 保存最佳模型
✔ 发送消息→ 验证器代理
4.️⃣ 验证器代理
✔ 验证模型质量
✔ 计算质量标签(“良好”、“可接受”、“弱”)
✔ 发送消息→ 笔记本代理
5.️⃣ 笔记本合成器代理
✔ 构建一个完全自动生成的Jupyter笔记本
✔ 嵌入所有结果和图像
✔ 通过文件工具保存笔记本
6.️⃣ Gemini集成
✔ Gemini生成:
✔ 模型说明
✔ 建议
✔ 摘要
面向初学者的简明英语解释
7.️⃣ 流线型UI
✔ 漂亮的仪表板,有:
✔ 数据集资源管理器
✔ EDA仪表板
✔ AutoML仪表板
✔ 验证器和笔记本生成器
✔ A2A通信控制台
安装说明
克隆回购
- 克隆https://github.com/yourusername/multiagent-data-analyst
- cd多代理数据分析师
- pip安装-r要求.txt
- 添加Gemini API密钥
- 创建.env:
- 运行Streamlit->运行Streamlit_app/app.py
演示(截图)
数据集上传
EDA仪表板
AutoML结果
Gemini说明
A2A控制台
笔记本生成
分析器代理输出-
验证器代理-
使用的工具和技术
🚀分类工具
🚀多代理定制代理,A2A总线
🚀LLM双子座1.5闪光灯
🚀UI流式显示
🚀ML Scikit学习
🚀存储自定义内存工具
🚀笔记本nbformat
🚀部署渲染
🚀可视化绘图,Matplotlib,Seaborn
🚀 LLM双子座1.5闪光灯
🗂 项目结构
多智能体数据分析师/
│
├── src/
│ ├── 代理商/
│ ├── core/
│ ├── 工具/
│ │ ├── file_tools.py
│ │ ├── dataset_tools.py
│ │ ├── memory_tools.py
│ │ ├── model_tools.py
│ │ └── notebook_tools.py
│
├── streamlit_app/
│ ├── app.py
│ └── 页数/
│ ├── AutoML.py
│ ├── Profiler.py
│ ├── EDA_Dashboard.py
│ ├── Notebook_Report.py
│ ├── 验证器.py
│ └── A2A_Dashboard.py
│
├── streamlit_app_存储/
│ ├── 存储器/
│ ├── 上传/
│ └── 报告/
│
└── README.md
未来改进
- 添加基于RAG的“数据问答代理”
- 使用Docker在Google Cloud Run上添加部署
- 添加评估代理以实现模型公平性
- 提供更多AutoML型号(XGBoost、LightGBM)
- 添加基于语音的交互模式
鸣谢
由Vaishnavi Sharma建造,作为 谷歌x Kaggle——代理商密集型
