ruc-datalab/DeepAnalyze

GitHub: ruc-datalab/DeepAnalyze

DeepAnalyze 是首个面向自主数据科学的 Agentic 大语言模型,能够自动处理多种数据源并端到端完成数据分析与报告生成。

Stars: 4367 | Forks: 690

DeepAnalyze

# DeepAnalyze:用于自主数据科学的 Agentic 大语言模型 [![arXiv](https://img.shields.io/badge/arXiv-2510.16872-b31b1b.svg?logo=arXiv)](https://arxiv.org/abs/2510.16872) [![主页](https://img.shields.io/badge/%F0%9F%8C%90%20Homepage%20-DeepAnalyze%20Cases-blue.svg)](https://ruc-deepanalyze.github.io/) [![模型](https://img.shields.io/badge/%F0%9F%A4%97%20Huggingface%20-DeepAnalyze--8B-orange.svg)](https://huggingface.co/RUC-DataLab/DeepAnalyze-8B) [![数据](https://img.shields.io/badge/%F0%9F%93%9A%20Datasets%20-DataScience--Instruct--500K-darkgreen.svg)](https://huggingface.co/datasets/RUC-DataLab/DataScience-Instruct-500K) [![star](https://img.shields.io/github/stars/ruc-datalab/DeepAnalyze?style=social&label=Code+Stars)](https://github.com/ruc-datalab/DeepAnalyze) ![Badge](https://hitscounter.dev/api/hit?url=https%3A%2F%2Fgithub.com%2Fruc-datalab%2FDeepAnalyze&label=Visitors&icon=graph-up&color=%23dc3545&message=&style=flat&tz=UTC) [![微信](https://img.shields.io/badge/WeChat-%E5%8A%A0%E5%85%A5DeepAnalyze%E4%BA%A4%E6%B5%81%E8%AE%A8%E8%AE%BA%E7%BE%A4-black?logo=wechat&logoColor=07C160)](./assets/wechat.jpg) **DeepAnalyze** 是第一个用于自主数据科学的 Agentic LLM。它可以在无需人工干预的情况下自主完成各种以数据为中心的任务,支持: - 🛠 **完整的数据科学流水线**:自动执行任何数据科学任务,如数据准备、分析、建模、可视化和报告生成。 - 🔍 **开放式数据研究**:对多种数据源进行深入研究,包括结构化数据(Databases、CSV、Excel)、半结构化数据(JSON、XML、YAML)和非结构化数据(TXT、Markdown),最终生成分析师级别的研究报告。 - 📊 **完全开源**:DeepAnalyze 的[模型](https://huggingface.co/RUC-DataLab/DeepAnalyze-8B)、[代码](https://github.com/ruc-datalab/DeepAnalyze)、[训练数据](https://huggingface.co/datasets/RUC-DataLab/DataScience-Instruct-500K)和[demo](https://huggingface.co/RUC-DataLab/DeepAnalyze-8B)全部开源,允许您部署或扩展自己的数据分析助手。

deepanalyze

## 🔥 新闻 - **[2026.07]**:我们期待发布 **[DeepPrep](https://arxiv.org/abs/2602.07371)**,作为 DeepAnalyze 的数据准备配套工具,它可以将原始表格转换为可用于分析的数据。
更多关于 DeepPrep 的信息 **DeepPrep** 是一个由 LLM 驱动的自主数据准备 Agentic 系统。它通过与中间表格状态的执行接地交互和运行时反馈来构建数据准备流水线,帮助在下游分析之前清理、转换和标准化原始数据。 ▶️ Demo: https://github.com/user-attachments/assets/6b94927f-5c0c-4cfe-bc33-de56b8e459cd
- **[2026.06.15]**:我们发布了 **[CoDA-Bench](https://github.com/ruc-datalab/CoDA-Bench)**,这是一个用于评估 code agent 是否能处理数据密集型分析任务的基准测试,与 DeepAnalyze 的目标场景紧密结合。
更多关于 CoDA-Bench 的信息 **CoDA-Bench** 在一个包含数百个数据文件的 Linux sandbox 中评估 agent。给定一个自然语言问题,agent 必须发现相关数据、编写可执行代码并得出最终答案。它为 DeepAnalyze 所针对的同类型数据发现和代码执行挑战提供了一个基准测试环境。 ▶️ Demo: https://github.com/user-attachments/assets/34e50a62-744b-4079-8988-6a8bbfe166a0
- **[2026.05.31]**:**[DA-Studio](http://arxiv.org/abs/2606.31423)**,即 DeepAnalyze WebUI v2(`demo/chat_v2`)背后的系统,已被 VLDB 2026 Demonstration Track 接收。 - **[2026.03.16]**:更新 DeepAnalyze **WebUI v2**,提供更流畅的 UI,支持 **HeyWhale API**,并支持**基于 Docker 的沙箱代码执行**。更多细节请见[自述文件](./demo/chat_v2/README.md)。 - **[2026.01.31]**:🎉🎉🎉DeepAnalyze 作为官方 agent 支持 **[2026年(第19届)中国大学生计算机设计大赛大数据主题赛 (2026 (19th) China Collegiate Computer Design Contest – Big Data Track)](https://jsjds.dhu.edu.cn/2025/0322/c20379a371447/page.htm)**。 - **[2025.12.28] 公告:DeepAnalyze API 密钥现已提供 🎉🎉🎉** 您现在可以通过此 [Google 表单](https://forms.gle/YxVkCzczqq8jeciw9)或 [飞书表单](https://heywhale.feishu.cn/share/base/shrcnnBRgO0x2qhx40yq4m1HxUg)申请您的 API 密钥。有关完整详情和使用说明,请参阅[指南](./docs/DeepAnalyze_API_Key_Usage_Guide.md)或[飞书百科](https://heywhale.feishu.cn/wiki/TcVmw314liwCiKkxnttc2CnInfg)。 - **[2025.11.13]**:DeepAnalyze 现在支持 OpenAI 风格的 API 端点,并可通过命令行终端 UI 访问。感谢贡献者 [@LIUyizheSDU](https://github.com/LIUyizheSDU/) - **[2025.11.08]**:DeepAnalyze 现在可以通过 JupyterUI 访问,基于 [jupyter-mcp-server](https://github.com/datalayer/jupyter-mcp-server) 构建。感谢贡献者 [@ChengJiale150](https://github.com/ChengJiale150)。 - **[2025.10.28]**:我们欢迎所有贡献,包括改进 DeepAnalyze 和分享用例(参见 [`CONTRIBUTION.md`](CONTRIBUTION.md))。所有合并的 PR 将被列为贡献者。 - **[2025.10.27]**:DeepAnalyze 引起了广泛关注,在一周内获得了 **1K+** GitHub star 和 **200K+** Twitter 浏览量。 - **[2025.10.21]**:DeepAnalyze 的[论文](https://arxiv.org/abs/2510.16872)、[代码](https://github.com/ruc-datalab/DeepAnalyze)、[模型](https://huggingface.co/RUC-DataLab/DeepAnalyze-8B)、[训练数据](https://huggingface.co/datasets/RUC-DataLab/DataScience-Instruct-500K)已发布! ## 🖥 演示 ### WebUI https://github.com/user-attachments/assets/04184975-7ee7-4ae0-8761-7a7550c5c8fe

上传数据,DeepAnalyze 可以执行面向数据的深入研究 🔍 以及任何以数据为中心的任务 🛠

- 克隆此仓库并下载 [DeepAnalyze-8B](https://huggingface.co/RUC-DataLab/DeepAnalyze-8B)。 - 通过 vllm 部署 DeepAnalyze-8B:`vllm serve DeepAnalyze-8B` - 运行这些脚本以启动 API 和界面,然后通过浏览器进行交互 (http://localhost:4000): cd demo/chat/frontend npm install cd .. bash start.sh # 停止 api 和 interface bash stop.sh # 如有需要,停止 vllm - 如果您想在特定 IP 下部署,请在 [./demo/chat/backend.py](./demo/chat/backend.py) 和 [./demo/chat/frontend/lib/config.ts](./demo/chat/frontend/lib/config.ts) 中将 localhost 替换为您的 IP 地址。 ### WebUI v2 https://github.com/user-attachments/assets/2dd1d2aa-6fb9-4202-bc8d-cbe874844725

上传数据,DeepAnalyze 可以执行面向数据的深入研究 🔍 以及任何以数据为中心的任务 🛠

- 更精简的 UI - 增加了对 HeyWhale API 密钥的支持 - 增加了对基于 Docker 的沙箱代码执行环境的支持。 - 使用方法与 WebUI 相同。 cd demo/chat_v2/frontend npm install cd .. cp .env.example .env bash start.sh # 停止 api 和 interface bash stop.sh # 如有需要,停止 vllm ### JupyterUI https://github.com/user-attachments/assets/a2335f45-be0e-4787-a4c1-e93192891c5f

熟悉 Jupyter Notebook?通过 JupyterUI 试试 DeepAnalyze!

- 此 Demo 运行 Jupyter Lab 作为前端,创建一个新的 notebook,将 `` 转换为 Markdown 单元格,将 `` 转换为 Code 单元格并作为 `` 执行。 - 前往 [demo/jupyter](./demo/jupyter) 了解更多并进行尝试! - 👏非常感谢贡献者 [@ChengJiale150](https://github.com/ChengJiale150)。 ### CLI https://github.com/user-attachments/assets/018acae5-b979-4143-ae1e-5b74da453c1d

通过命令行界面尝试 DeepAnalyze

- 通过 vllm 部署 DeepAnalyze-8B:`vllm serve DeepAnalyze-8B` - 启动 API 服务器并运行 CLI 界面: cd API python start_server.py # In one terminal cd demo/cli python api_cli.py # In another terminal (English) # 或 python api_cli_ZH.py # In another terminal (Chinese) - CLI 提供了一个基于 Rich 的美观界面,支持文件上传和实时流式响应。 - 支持英文和中文界面。 ## 🚀 快速开始 ### 🔑 **使用 DeepAnalyze API** **API 密钥现已提供!** 要申请您的密钥,请填写以下申请表之一: * **[主要表单 (Google)](https://forms.gle/YxVkCzczqq8jeciw9)** * **[备用表单 (飞书)](https://heywhale.feishu.cn/share/base/shrcnnBRgO0x2qhx40yq4m1HxUg)** **📚 有关全面的使用说明,请参阅 API 指南:** * **[文档](./docs/DeepAnalyze_API_Key_Usage_Guide.md)** * **[飞书百科](https://heywhale.feishu.cn/wiki/TcVmw314liwCiKkxnttc2CnInfg)** ### 模型下载 在 [RUC-DataLab/DeepAnalyze-8B · Hugging Face](https://huggingface.co/RUC-DataLab/DeepAnalyze-8B) 或 [DeepAnalyze-8B · 模型库](https://www.modelscope.cn/models/RUC-DataLab/DeepAnalyze-8B/summary) 下载模型。 #### 📊 内存配置推荐参数表 | GPU 内存 | 模型类型 | 推荐 max-model-len | 使用 FP8 KV Cache | |------------|------------|--------------------------|-----------------------| | **16GB** | 8 位量化 | 8192 | ✓ | | **16GB** | 4 位量化 | 49152 | ✓ | | **24GB** | 原始模型 | 16384 | ✓ | | **24GB** | 8 位量化 | 98304 | ✓ | | **24GB** | 4 位量化 | 131072 | ✓ | | **40GB** | 原始模型 | 131072 | ✓ | | **40GB** | 8 位量化 | 131072 | | | **80GB** | 原始模型 | 131072 | | 要获取量化模型,您可以使用 `./quantize.py`。 #### 🚀 vLLM 启动命令模板 ##### 通用命令模板 ``` python -m vllm.entrypoints.openai.api_server \ --model \ --served-model-name DeepAnalyze-8B \ --max-model-len \ --gpu-memory-utilization 0.95 \ --port 8000 \ \ --trust-remote-code ``` ##### 按场景划分的命令示例 **场景 1:16GB GPU 内存用户(推荐:4 位量化版本)** ``` python -m vllm.entrypoints.openai.api_server \ --model /path/to/deepanalyze/4bit \ --served-model-name DeepAnalyze-8B \ --max-model-len 49152 \ --gpu-memory-utilization 0.95 \ --port 8000 \ --kv-cache-dtype fp8 \ --trust-remote-code ``` **场景 2:24GB GPU 内存用户(适用于最大上下文长度)** ``` python -m vllm.entrypoints.openai.api_server \ --model /path/to/deepanalyze/4bit \ --served-model-name DeepAnalyze-8B \ --max-model-len 131072 \ --gpu-memory-utilization 0.95 \ --port 8000 \ --kv-cache-dtype fp8 \ --trust-remote-code ``` **场景 3:80GB GPU 内存用户(最佳性能)** ``` python -m vllm.entrypoints.openai.api_server \ --model /path/to/original/model \ --served-model-name DeepAnalyze-8B \ --max-model-len 131072 \ --gpu-memory-utilization 0.95 \ --port 8000 \ --trust-remote-code ``` #### 快速选择指南 - **内存有限 (<24GB)**:使用 4 位量化版本 + FP8 KV Cache - **均衡配置 (24-40GB)**:根据需求选择模型类型 - **内存充足 (≥40GB)**:使用原始模型以获得最佳精度 启动后,可通过 `http://localhost:8000/v1/completions` 访问 API 服务。 ### 环境要求 - 安装依赖包:`torch`, `transformers`, `vllm>=0.8.5` conda create -n deepanalyze python=3.12 -y conda activate deepanalyze pip install -r requirements.txt # 用于 training (cd ./deepanalyze/ms-swift/ && pip install -e .) (cd ./deepanalyze/SkyRL/ && pip install -e .) - [`requirements.txt`](requirements.txt) 列出了 DeepAnalyze 推理所需的最低依赖。 对于训练,请参阅 [`./deepanalyze/ms-swift/requirements.txt`](./deepanalyze/ms-swift/requirements.txt) 和 [`./deepanalyze/SkyRL/pyproject.toml`](./deepanalyze/SkyRL/pyproject.toml) - 我们建议将推理和训练环境分开,以避免依赖冲突。 ### 命令交互 - 通过 vllm 部署 DeepAnalyze-8B:`vllm serve DeepAnalyze-8B` - 运行这些脚本执行任何数据科学任务: - 您可以指定**任何数据科学任务**,包括特定的数据任务和开放式数据研究。 - 您可以指定**任意数量的数据源**,DeepAnalyze 将自动探索它们。 - 您可以指定**任何类型的数据源**,例如,结构化数据(Databases、CSV、Excel)、半结构化数据(JSON、XML、YAML)结构化数据(TXT、Markdown) from deepanalyze import DeepAnalyzeVLLM prompt = """# Instruction Generate a data science report. # Data File 1: {"name": "bool.xlsx", "size": "4.8KB"} File 2: {"name": "person.csv", "size": "10.6KB"} File 3: {"name": "disabled.xlsx", "size": "5.6KB"} File 4: {"name": "enlist.csv", "size": "6.7KB"} File 5: {"name": "filed_for_bankrupcy.csv", "size": "1.0KB"} File 6: {"name": "longest_absense_from_school.xlsx", "size": "16.0KB"} File 7: {"name": "male.xlsx", "size": "8.8KB"} File 8: {"name": "no_payment_due.xlsx", "size": "15.6KB"} File 9: {"name": "unemployed.xlsx", "size": "5.6KB"} File 10: {"name": "enrolled.csv", "size": "20.4KB"}""" workspace = "/home/u2023000922/zhangshaolei/deepanalyze_public/DeepAnalyze/example/analysis_on_student_loan/" deepanalyze = DeepAnalyzeVLLM( "/fs/fast/u2023000922/zhangshaolei/checkpoints/deepanalyze-8b/" ) answer = deepanalyze.generate(prompt, workspace=workspace) print(answer["reasoning"]) 您将得到一份深度研究报告,该报告可以渲染为 PDF: # 学生入学模式和机构转学的综合分析 ## 引言与研究背景 学生入学模式的分析是教育研究的一个关键领域,对机构规划、资源分配和学生支持服务具有重大意义。这项综合研究检查了一个综合数据集,包含六所教育机构的 1,194 条入学记录,并合并了补充的人口统计、财务和就业状况数据。该研究采用了高级分析技术,包括网络分析、预测建模和时间模式识别,以揭示宏观层面的机构趋势和微观层面的学生流动性模式。数据集的纵向性质跨越了 15 个月的入学记录,为了解学生通过高等教育系统的复杂动态提供了独特的见解。 我们的方法论结合了对入学持续时间、转学概率和财务指标的定量分析以及定性... 该研究通过提供机构转学网络及其与学生成果关系的经验证据,为越来越多的关于学生流动性的文献做出了贡献...... .....

deepanalyze

### API - 您可以使用此脚本构建 OpenAI 风格的 API(注意在 [API/config.py](API/config.py) 中将 `MODEL_PATH = "DeepAnalyze-8B"` 更改为您的 vllm 模型名称): python API/start_server.py - API 使用: FILE_RESPONSE=$(curl -s -X POST "http://localhost:8200/v1/files" \ -F "file=@data.csv" \ -F "purpose=file-extract") FILE_ID=$(echo $FILE_RESPONSE | jq -r '.id') curl -X POST http://localhost:8200/v1/chat/completions \ -H "Content-Type: application/json" \ -d "{ \"model\": \"DeepAnalyze-8B\", \"messages\": [ { \"role\": \"user\", \"content\": \"Generate a data science report.\", \"file_ids\": [\"$FILE_ID\"] } ] }" # 等待一段时间 - 详情请参阅 API/README.md。 ## 🎈 开发您自己的 DeepAnalyze ### 1. 下载模型和训练数据 - 下载 [DeepSeek-R1-0528-Qwen3-8B](https://huggingface.co/deepseek-ai/DeepSeek-R1-0528-Qwen3-8B)。或者您也可以直接基于 [DeepAnalyze-8B](https://huggingface.co/RUC-DataLab/DeepAnalyze-8B) 进行微调。 - 如果您使用 DeepSeek-R1-0528-Qwen3-8B 作为基础模型,您应该使用以下命令添加特殊 token: MODEL_PATH=path_to_DeepSeek-R1-0528-Qwen3-8B SAVE_PATH=path_to_save_DeepSeek-R1-0528-Qwen3-8B-addvocab python deepanalyze/add_vocab.py \ --model_path "$MODEL_PATH" \ --save_path "$SAVE_PATH" \ --add_tags - 下载训练数据 [DataScience-Instruct-500K](https://huggingface.co/datasets/RUC-DataLab/DataScience-Instruct-500K)。 - 解压 `DataScience-Instruct-500K/RL/data.zip` ### 2. 基于课程的 Agentic 训练 - 单能力微调:[./scripts/single.sh](./scripts/single.sh) - 多能力 Agentic 训练(冷启动):[./scripts/multi_coldstart.sh](./scripts/multi_coldstart.sh) - 多能力 Agentic 训练(RL):[./scripts/multi_rl.sh](./scripts/multi_rl.sh) ### 3. 评估 - 我们使用 vLLM 统一了大多数现有数据科学基准测试的评估(还会持续添加更多...)。您可以直接按照 [./playground](./playground) 中的介绍快速评估 DeepAnalyze 或您自己的 agent。 ## 🌟 其他 欢迎加入 [DeepAnalyze 微信群](./assets/wechat.jpg),与他人聊天并分享想法!

DeepAnalyze

如果您喜欢 DeepAnalyze,请给它一个 GitHub Star ⭐。 [![Star History Chart](https://api.star-history.com/svg?repos=ruc-datalab/DeepAnalyze&type=date&legend=top-left)](https://www.star-history.com/#ruc-datalab/DeepAnalyze&type=date&legend=top-left)
标签:DLL 劫持, 代码示例, 凭据扫描, 大语言模型, 数据分析, 数据科学, 系统调用监控, 自动化报告, 请求拦截, 资源验证, 逆向工具