DATAGEN
多 Agent 协作流水线,把数据文件变成完整研究报告
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
多 Agent 协作流水线,把数据文件变成完整研究报告
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象你是一位市场研究员,手头有 10 万行销售数据,需要在一周内完成竞品分析报告。传统流程是:写 Python 脚本清洗数据 → 用 pandas 聚合 → 用 matplotlib 画图 → 手工撰写报告。每一个步骤都需要人工介入,而且一旦需求变更(比如"加一组用户画像维度"),就要推翻重来。
更棘手的是,很多分析任务并非机械的数据操作,而是需要判断力的研究工作:如何提出有效的研究假设?如何根据初步结果动态调整分析方向?这些"软技能"在传统工具链里完全无法自动化。
DATAGEN 正是为了解决这个矛盾而诞生的:它用多个专业化 AI Agent 组成流水线,从假设生成、数据处理、可视化、报告撰写到质量审核,全部由 AI 自动完成,人只需在关键节点做决策。
图1:DATAGEN 系统架构

DATAGEN 的架构设计借鉴了软件工程中的团队协作模式:不是让一个通用 AI 处理所有事,而是给每个任务分配最合适的"专员"。
DATAGEN 的底层编排引擎是 LangGraph——LangChain 生态中的有向状态图框架。相比简单的 Chain(链式调用),LangGraph 允许定义节点(Node)和边(Edge),从而实现:
MemorySaver 保存中间状态,支持断点续跑recursion_limit 防止无限循环# src/core/workflow.py 核心结构
class WorkflowManager:
members = ["Hypothesis", "Process", "Visualization",
"Search", "Coder", "Report", "QualityReview", "note", "Refiner"]
def setup_workflow(self):
# 9 个 Agent 节点,通过边连接成 DAG
graph = StateGraph(State)
for member in self.members:
graph.add_node(member, agent_node)
# ... 条件边定义
DATAGEN 定义了 9 个专业化 Agent,每个承担特定职责:
| Agent | 职责 | 默认模型 |
|---|---|---|
| Hypothesis Agent | 生成研究假设 | GPT-5-mini |
| Process Agent | 监督整体研究流程 | Gemini-2.5-Pro |
| Code Agent | 编写数据分析代码 | Claude-haiku-4 |
| Visualization Agent | 生成图表 | GPT-5-nano |
| Search Agent | 网络搜索补充信息 | Gemini-2.5-Flash |
| Report Agent | 撰写研究报告 | GPT-5-nano |
| Quality Review Agent | 质量审核 | GPT-5-mini |
| Note Agent | 记录研究过程状态 | Gemini-2.5-Pro |
| Refiner Agent | 根据审核意见改进 | GPT-5-nano |
每个 Agent 的模型配置独立可调,通过 config/agent_models.yaml 管理,支持 OpenAI、Google (Gemini)、Anthropic、Ollama、Groq 等多提供商。这意味着用户可以组合使用不同模型——比如用 Claude 写代码(擅长逻辑),用 Gemini 做流程监督(上下文窗口大),用 GPT 做图表生成(成本低)。
DATAGEN 深度集成了 Model Context Protocol (MCP),这是一个让 AI Agent 与外部工具标准化交互的协议。配置文件 config/mcp.yaml 定义了三个开箱即用的 MCP Server:
./data/ 目录)所有 Agent 都默认启用 Filesystem MCP,这意味着它们可以直接读写工作目录中的数据文件——这是传统 RAG 方案做不到的:大多数 RAG 系统只能"读",而 DATAGEN 的 Agent 可以直接创建、修改文件。
工具的注册和加载通过 ToolFactory 完成,支持 config.yaml 动态配置,不需要改代码就能添加新工具。核心工具包括:
DATAGEN 的标准工作流分为 5 个阶段:
阶段 1:假设生成(Hypothesis)
用户只需提供数据文件路径(如 datapath:OnlineSalesData.csv)和任务描述(如"用机器学习做数据分析并生成报告"),Hypothesis Agent 会根据数据特征自动生成若干研究假设。
阶段 2:人工确认(Human-in-the-loop)
系统停下来,等待用户确认或修改假设。这是唯一的"人工介入点",确保研究方向正确。
阶段 3:并行执行
Process Agent 协调下,Code Agent 写分析代码 → Visualization Agent 生成图表 → Search Agent 补充外部数据 → Report Agent 撰写报告。各 Agent 通过共享状态(Note Agent)保持上下文一致。
阶段 4:质量审核
Quality Review Agent 检查报告的完整性、准确性和可读性。
阶段 5:迭代改进
如果审核不通过,Refiner Agent 根据审核意见修改报告,再次提交审核,直至通过或达到 max_iterations 上限。
DATAGEN 本身是纯 Python CLI 工具,无 Web UI,部署依赖:
部署步骤:
git clone → conda create -n datagen python=3.10pip install -r requirements.txt.env 文件(填入各 LLM Provider API Keys)./data/ 目录main.py 中的 user_input → python main.py难度评估:中等。主要门槛在于 API Keys 的准备(需要多个 Provider)和 ChromeDriver 的安装。配置文件的 YAML 结构清晰,文档较完整,有快速入门指南。对于有 Python 经验的开发者,预计 30 分钟可完成部署。
任何技术方案都有边界,DATAGEN 的局限性值得正视:
1. 数据安全性风险
README 中明确标注了警告:"The agent system may modify the data being analyzed"——分析过程中 Agent 会直接修改原始数据文件。如果用于生产环境,必须先做好数据备份,且建议在隔离环境中运行。
2. API 成本不可控
九大 Agent 同时运行,每个 Agent 都有独立的 max_iterations 配置。在复杂任务中,可能产生大量 API 调用。若使用 GPT-4 / Claude-3 等高价模型,单次分析成本可能达到数十美元。
3. 无容器化
项目没有 Dockerfile 或 docker-compose,无法通过容器一键部署。这在团队协作场景下增加了环境一致性管理的成本。
4. Web UI 缺失
纯命令行交互,非技术用户上手门槛较高。没有可视化进度展示,调试依赖日志文件。
5. MCP 依赖外部服务
Web Search MCP 依赖 Tavily API(付费),GitHub MCP 依赖 GitHub Token。MCP Server 的稳定性直接影响整体可用性。
DATAGEN 的 1751 颗星(截至 2026 年 6 月)和 238 个 Fork,说明它切中了一个真实需求:用 Agent 自动化"分析型脑力劳动"。
这个方向的更大趋势是 Agentic BI(智能体驱动的商业智能)。传统 BI 工具(如 Tableau、PowerBI)需要人工定义报表,而 Agent BI 可以理解自然语言查询、自动生成可视化、甚至主动发现异常。DATAGEN 是这个方向的一个开源实验。
GitHub 数据显示该项目最近更新活跃(2026 年 4 月有 push),作者 starpig1129 还维护了 PheroPath(多智能体通信协议)和 PigPig(多模态 Discord Bot),是一个活跃的 AI Agent 开发者。
DATAGEN 是一个架构清晰、扩展性强的多 Agent 数据分析框架。对于需要快速完成数据分析报告的研究人员和数据分析师,它提供了一条从原始数据到完整报告的自动化流水线;对于 AI 开发者,它是学习 LangGraph 多 Agent 编排的优秀参考项目。
推荐场景:学术研究、商业竞品分析、周期性报告自动化。
慎用场景:敏感数据(会修改原文件)、低成本优先的场景(API 费用不可控)。