GitHub - OpenDCAI/DataFlow-Agent

4 min read Original article ↗

DataFlow-Agent Logo

DataFlow-Agent

AI-Powered Data & Paper Workflow Orchestration Platform

Python License GitHub Repo Stars

Try Online Docs Contributing

基于DFA的AI Agent多功能平台

中文 | English

快速开始在线体验文档贡献指南


📑 目录


🔥 News

Paper2Figure Web UI Paper2Figure Web UI (2)


📐 项目架构

项目架构图
DataFlow-Agent 延伸的三个核心应用:Paper2Any(论文多模态工作流)、Easy-DataFlow(数据治理管线)、DataFlow-Table(多源数据分析)


✨ 核心应用

1️⃣ Paper2Any - 论文多模态工作流

从论文 PDF / 图片 / 文本出发,一键生成可编辑的科研绘图、演示文稿、视频脚本、学术海报等多模态内容。

🎯 核心功能

Paper2Any 当前包含以下几个子能力:

📊 Paper2Figure - 可编辑科研绘图

  • ✅ 模型架构图生成
  • ✅ 技术路线图生成(PPT + SVG)
  • 🚧 实验数据图生成 (优化中)
  • ✅ 支持 PDF / 图片 / 文本输入
  • ✅ 输出可编辑 PPTX 格式

🎬 Paper2PPT - 可编辑演示文稿

  • ✅ Beamer 版本 PPT 生成
  • 🚧 开放式可编辑 PPT 生成(开发中)

🎬 Paper2Video - 论文讲解视频

  • 🚧 自动生成视频脚本
  • 🚧 分镜描述与时间轴
  • 🚧 配图素材推荐
  • 🚧 视频自动合成(开发中)

📌 Paper2Poster - 可编辑学术海报

  • 🚧 版式自动设计
  • 🚧 要点提炼
  • 🚧 视觉优化

📸 ShowCase - Paper2Figure

模型架构图生成

输入 生成图 PPTX 截图
输入:论文 PDF
📄 论文 PDF
生成的模型图
🎨 生成的模型架构图
PPTX 截图
📊 可编辑 PPTX
绘图难度:简单 - 基础模型结构,清晰的模块划分
输入:论文 PDF
📄 论文PDF
生成的模型图
🎨 生成的模型架构图
PPTX 截图
📊 可编辑 PPTX
绘图难度:中等 - 包含多层次结构和数据流
输入:论文 PDF
📄 输入核心段落
生成的模型图
🎨 生成的模型架构图
PPTX 截图
📊 可编辑 PPTX
绘图难度:困难 - 复杂的多模块交互和详细注释

上传论文 PDF 文件,根据选择的绘图难度(简单/中等/困难),自动提取模型架构信息,生成对应复杂度的可编辑 PPTX 格式模型架构图。


技术路线图生成

输入 生成图(SVG) PPTX 截图
输入:论文文本(中文)
📝 论文方法部分(中文)
技术路线图 SVG
🗺️ 技术路线图 SVG
PPTX 截图
📊 可编辑 PPTX
语言:中文 - 中文技术路线图,适合国内学术交流
输入:论文文本(英文)
📝 论文方法部分(英文)
技术路线图 SVG
🗺️ 技术路线图 SVG
PPTX 截图
📊 可编辑 PPTX
语言:英文 - 英文技术路线图,适合国际学术发表

粘贴论文方法部分文本,选择语言(中文/英文),自动梳理技术路线与模块依赖关系,生成清晰的技术路线图 PPTX 与可编辑 SVG


实验数据图生成

输入 常规实验图 精美实验图
输入:实验结果截图
📄 输入:论文 PDF / 实验结果截图
输出:实验数据图(基础样式)
📈 输出:常规 Python 风格实验数据图
输出:实验数据图(精美样式)
🎨 输出:精美排版的实验数据图

上传实验结果截图或表格,自动抽取关键数据并生成可编辑的实验数据图 PPTX,同时提供常规和精美两种风格,便于论文和汇报复用。


🖥️ 使用方式

方式一:Web 前端(推荐)

(目前在线版只支持邀请用户体验)访问在线体验地址:https://dcai-paper2any.cpolar.top/

前端界面

特点

  • 🎨 现代化 UI 设计
  • 📤 支持拖拽上传
  • ⚙️ 可视化参数配置
  • 📊 实时进度展示
  • 📥 一键下载结果

2️⃣ Easy-DataFlow - 数据治理管线

从任务描述到可执行数据处理管线,AI 驱动的数据治理全流程

🎯 核心功能

功能模块 说明 状态
📊 管线推荐 从任务描述自动生成可执行 Python 管线代码
✍️ 算子编写 AI 辅助编写自定义数据处理算子
🎨 可视化编排 拖拽式构建数据处理流程
🔄 Prompt 优化 自动优化算子提示词,提升效果
🌐 Web 采集 自动化网页数据采集与结构化

📸 功能展示

管线推荐:从任务到代码

管线推荐
💻 智能分析任务需求,自动推荐最优算子组合,生成可执行的 Python 管线代码


算子编写:AI 辅助开发

算子编写
⚙️ 使用 LLM 辅助从功能描述自动生成算子代码,并在同一界面内完成测试与调试


可视化编排:拖拽式构建

可视化编排
🎨 通过可视化界面拖拽组合算子,自由搭建数据处理流程,所见即所得


Prompt 优化:自动调优

Prompt 优化
✨ 复用现有算子,自动书写 DataFlow 的算子 Prompt Template,智能优化提示词


Web 采集:网页到数据

Web 采集
📊 自动化网页数据采集与结构化转换,直接输出 DataFlow-ready 数据


3️⃣ DataFlow-Table - 多源数据分析

一站式接入多源数据,自动化分析与洞察生成

🚧 正在开发中

DataFlow-Table 正在积极开发中,敬请期待!

计划功能

  • 📥 多数据源接入(数据库 / 文件 / Web / API)
  • 🧹 智能清洗与标准化
  • 📊 基于 AI 的自动分析
  • 📝 自然语言分析报告生成
  • 📈 交互式图表与报表

🚀 快速开始

环境要求

Python pip

安装步骤

建议使用 Conda 创建隔离环境(推荐 Python 3.12)。

# 0. 创建并激活 conda 环境
conda create -n dataflow-agent python=3.12 -y
conda activate dataflow-agent

# 1. 克隆仓库
git clone https://github.com/OpenDCAI/DataFlow-Agent.git
cd DataFlow-Agent

# 2. 安装依赖(基础)
pip install -r requirements.txt

# 3. 安装包(开发模式)
pip install -e .

Paper2Any 额外依赖(可选,但推荐)

Paper2Any 需要额外依赖(见 requirements-paper.txt),以及一些系统/conda 工具用于渲染与矢量图处理:

# 安装 Paper2Any 依赖
pip install -r requirements-paper.txt

# tectonic:建议用 conda 单独安装(LaTeX 引擎)
conda install -c conda-forge tectonic -y

# inkscape:用于 SVG/矢量图相关处理(Linux)
sudo apt-get update
sudo apt-get install -y inkscape

配置环境

export DF_API_KEY=your_api_key_here
export DF_API_URL=xxx 
# 如果需要使用第三方API中转站

第三方API中转站:

https://api.apiyi.com/

http://123.129.219.111:3000/


启动应用

Note

Paper2Any:从论文 PDF / 图片 / 文本一键生成可编辑的科研绘图、技术路线图、实验数据图和演示文稿。

🎨 Paper2Any - 论文工作流

Web 前端(推荐)

# 启动后端 API
cd fastapi_app
uvicorn main:app --host 0.0.0.0 --port 8000

# 启动前端(新终端)
cd frontend-workflow
npm install
npm run dev

# 配置dev/DataFlow-Agent/frontend-workflow/vite.config.ts
# 修改 server.proxy 为:
export default defineConfig({
  plugins: [react()],
  server: {
    port: 3000,
    open: true,
    allowedHosts: true,
    proxy: {
      '/api': {
        target: 'http://127.0.0.1:8000',  // FastAPI 后端地址
        changeOrigin: true,
      },
    },
  },
})

访问 http://localhost:3000

Tip

Paper2Figure 网页端内测说明

  • 当你部署了前端,还需要手动新建一个 invite_codes.txt 文件,并写入你的邀请码(例如:ABCDEFG123456)。
  • 然后再启动后端;
  • 如果暂时不想部署前后端,可以先通过本地脚本体验 Paper2Any 的核心能力:
    • python tests/test_paper2figure_with_sam.py:模型架构图生成
    • python tests/test_paper2technical.py:技术路线图生成
    • python tests/test_paper2video.py:Beamer PPT 生成

特点

  • ✨ 现代化 UI 设计
  • 🎯 可视化参数配置
  • 📊 实时进度展示
  • 📥 一键下载结果

Note

Easy-DataFlow:从自然语言任务描述出发,自动推荐算子与管线结构,生成可执行的数据处理管线。

📊 Easy-DataFlow - 数据治理

Gradio Web 界面

访问 http://127.0.0.1:7860

特点

  • 🚀 快速部署
  • 🔧 灵活配置
  • 📝 支持批量处理

Note

DataFlow-Table:面向多源数据接入与探索式分析,目前仍在开发中。

🔍 DataFlow-Table - 数据分析

🚧 正在开发中,敬请期待!


📂 项目结构

DataFlow-Agent/
├── dataflow_agent/          # 核心框架代码
│   ├── agentroles/         # Agent 定义(@register 自动注册)
│   ├── workflow/           # Workflow 定义(wf_*.py)
│   ├── promptstemplates/   # Prompt 模板库
│   ├── toolkits/           # 工具集(LLM/Docker/Image 等)
│   ├── graphbuilder/       # StateGraph 构建器
│   └── states/             # 状态管理
├── gradio_app/             # Gradio Web 界面
│   ├── app.py             # 主程序
│   └── pages/             # 页面模块(自动发现)
├── fastapi_app/            # FastAPI 后端服务
│   ├── main.py            # API 入口
│   └── routers/           # 路由模块
├── frontend-workflow/      # 前端工作流编辑器
│   ├── src/               # 源代码
│   └── public/            # 静态资源
├── docs/                   # 文档
├── static/                 # 静态资源(图片等)
├── script/                 # 脚本工具
└── tests/                  # 测试用例

🗺️ Roadmap

🎓 Paper 系列

功能 状态 子功能
📊 Paper2Figure
可编辑科研绘图
75% 完成
完成
进行中
完成
🎬 Paper2Video
论文讲解视频
25% 完成
开发中
开发中
开发中
🎬 Paper2PPT
可编辑演示文稿
50% 完成
进行中
📌 Paper2Poster
可编辑学术海报
开发中 开发中
开发中
开发中
🧪 Paper2Exp
自动实验运行器
开发中 开发中
开发中
开发中
📚 PaperCiter
智能文献引用
开发中 开发中
开发中

📊 Data 系列

功能 状态 子功能
🔄 Easy-DataFlow
数据治理管线
100% 完成
完成
完成
完成
完成
📊 DataFlow-Table
多源数据分析
开发中 开发中
开发中
开发中
开发中

🛠️ 工具增强

功能 状态 子功能
🎨 Workflow 可视化编辑器
拖拽式工作流构建器
开发中 开发中
开发中
开发中
💾 轨迹数据导出
训练数据导出
开发中 开发中
开发中
开发中

Workflow Editor
🎨 Workflow 可视化编辑器预览


🤝 贡献

我们欢迎所有形式的贡献!

Issues Discussions PR

详细贡献指南:docs/contributing.md


📄 License

License

本项目采用 Apache License 2.0 开源协议


🙏 致谢

感谢所有贡献者!特别感谢 OpenDCAI/DataFlow 上游项目


如果这个项目对你有帮助,请给我们一个 ⭐️ Star!

GitHub stars GitHub forks

提交 Issue查看文档加入讨论

Made with ❤️ by OpenDCAI Team


🌐 加入社区

加入 DataFlow 开源社区,一起交流想法、反馈问题、共建生态!

DataFlow-Agent 社区微信群
扫码加入 DataFlow-Agent 社区微信群