agentic-data-scientist
agentic-data-scientist 是一款端到端的开源人工智能框架,旨在模拟专业数据科学家的工作流程,自动处理复杂的数据分析任务。它通过构建自适应的多智能体协作系统,将传统数据分析中繁琐的规划、执行、验证与反思环节自动化,有效解决了人工处理海量数据时效率低、易出错以及难以动态调整分析策略的痛点。
这款工具特别适合数据科学家、研究人员以及希望利用 AI 提升分析效率的开发者使用。用户只需输入自然语言指令并上传数据文件,agentic-data-scientist 即可自主制定详细的分析计划,编写并运行代码,同时在每一步骤中持续验证结果是否符合预期。若发现偏差,它能像人类专家一样自我修正并调整后续方案。
其核心技术亮点在于基于 Google ADK 和 Claude Agent SDK 构建的分层架构,实现了“规划”与“执行”的分离。此外,它还支持通过模型上下文协议(MCP)集成外部工具,并能直接调用 Claude 的高级科学分析技能。无论是进行差异表达分析还是多数据集对比,agentic-data-scientist 都能提供灵活、可靠且可扩展的智能化解决方案,让复杂的数据洞察变得更加简单高效。
使用场景
某生物制药公司的数据分析师急需在两天内完成对数千个基因样本的差异表达分析,以支持新药研发的关键决策。
没有 agentic-data-scientist 时
- 流程割裂且耗时:分析师需手动编写代码进行数据清洗、统计建模和可视化,每个环节出错都需从头调试,往往耗费数天时间。
- 缺乏动态纠错机制:一旦预设的分析路径遇到数据异常(如离群值或格式错误),脚本直接报错终止,必须人工介入排查并重新运行。
- 验证工作繁重:为了确保结果可靠,分析师需要反复交叉验证中间结果,容易因疲劳导致疏漏,影响最终结论的可信度。
- 工具切换频繁:需要在 Jupyter Notebook、终端和文档之间来回切换,上下文不断中断,难以维持连贯的分析思路。
使用 agentic-data-scientist 后
- 全自动端到端执行:只需输入“执行差异表达分析”并上传数据文件,agentic-data-scientist 自动规划并串联起清洗、建模到绘图的全流程,将数天工作压缩至几小时。
- 自适应修正计划:当遇到数据异常时,其内置的多智能体工作流会自动识别问题,动态调整分析策略并继续执行,无需人工干预。
- 持续进度验证:系统在每一步骤都会对照成功标准进行自我验证,确保中间结果的准确性,大幅降低了最终报告出错的风险。
- 统一上下文管理:agentic-data-scientist 在一个连贯的会话中处理所有任务,自动管理文件与代码状态,让分析师能专注于解读生物学意义而非调试代码。
agentic-data-scientist 通过将繁琐的编码与验证工作转化为自适应的智能协作流程,让数据科学家从“代码工人”回归为真正的“科学决策者”。
运行环境要求
- 未说明
未说明
未说明

快速开始
智能体数据科学家
K-Dense Web
对于需要访问更强大功能的用户,K-Dense Web 已经上线。请访问 k-dense.ai 了解更多信息。
面向数据科学的自适应多智能体框架
Agentic Data Scientist 是一个开源框架,采用复杂的多智能体工作流来解决复杂的数据科学任务。它基于 Google 的 Agent Development Kit (ADK) 和 Claude Agent SDK 构建,将规划与执行分离,持续验证工作进展,并根据进度动态调整策略。
特性
- 🤖 自适应多智能体工作流:迭代式规划、执行、验证和反思
- 📋 智能规划:在开始工作前制定全面的分析计划
- 🔄 持续验证:每一步都对照成功标准跟踪进展
- 🎯 自我修正:根据执行过程中的发现审查并调整计划
- 🔌 MCP 集成:通过 Model Context Protocol 服务器访问工具
- 🧠 Claude 科学技能集成:直接在您的工作流中使用高级 Claude 技能
- 📁 文件处理:简单的文件上传和管理
- 🛠️ 可扩展:自定义提示、智能体和工作流
- 📦 易于安装:可通过 pip 和 uvx 安装
快速入门
前置条件
在使用 Agentic Data Scientist 之前,您必须具备以下条件:
已安装 Claude Code CLI
npm install -g @anthropic-ai/claude-code或访问 Claude Code 快速入门
配置好所需的 API 密钥(见下文配置部分):
- OPENROUTER_API_KEY(用于规划和评审智能体)
- ANTHROPIC_API_KEY(用于编码智能体)
安装
# 从 PyPI 安装
uv tool install agentic-data-scientist
# 或者使用 uvx(无需安装)
uvx agentic-data-scientist --mode simple "your query here"
配置
API 密钥
您必须配置两个 API 密钥:
OpenRouter API 密钥(规划和评审智能体所需):
export OPENROUTER_API_KEY="your_key_here"您可以在 https://openrouter.ai/keys 获取密钥。
Anthropic API 密钥(编码智能体所需):
export ANTHROPIC_API_KEY="your_key_here"您可以在 https://console.anthropic.com/ 获取密钥。
或者,您也可以在项目目录下创建一个 .env 文件:
OPENROUTER_API_KEY=your_key_here
ANTHROPIC_API_KEY=your_key_here
网络访问控制(可选)
默认情况下,智能体可以访问网络工具(网页搜索和 URL 获取)。如需禁用网络访问:
export DISABLE_NETWORK_ACCESS=true
这将禁用:
- ADK 智体的
fetch_url工具 - Claude Code 智体的
WebFetch和WebSearch工具
网络访问默认是启用的。设置为“true”或“1”即可禁用。
基本用法
重要提示:您必须指定 --mode 来选择执行策略。这样可以确保您了解任务的复杂性和 API 费用。
工作目录:默认情况下,文件会保存到当前目录下的 ./agentic_output/ 中,并在完成任务后保留。您可以使用 --temp-dir 参数来指定临时存储目录,任务完成后会自动清理。
协调模式(完整多智能体工作流)
# 复杂分析,包含规划、执行和验证
agentic-data-scientist "进行差异表达分析" --mode orchestrated --files data.csv
# 多个文件,自定义工作目录
agentic-data-scientist "比较数据集" --mode orchestrated -f data1.csv -f data2.csv --working-dir ./my_analysis
# 目录上传(递归)
agentic-data-scientist "分析所有数据" --mode orchestrated --files data_folder/
简单模式(直接编码,无规划)
# 无需规划开销的快速编码任务
agentic-data-scientist "编写一个 Python 脚本来解析 CSV 文件" --mode simple
# 问答
agentic-data-scientist "解释梯度提升的工作原理" --mode simple
# 使用临时目录的快速分析
agentic-data-scientist "快速数据探索" --mode simple --files data.csv --temp-dir
其他选项
# 自定义日志文件位置
agentic-data-scientist "分析数据" --mode orchestrated --files data.csv --log-file ./analysis.log
# 详细日志用于调试
agentic-data-scientist "调试问题" --mode simple --files data.csv --verbose
# 保留文件(覆盖默认保留设置)
agentic-data-scientist "生成报告" --mode orchestrated --files data.csv --keep-files
工作原理
Agentic Data Scientist 采用多阶段工作流设计,旨在产出高质量、可靠的结果:
工作流设计 rationale
为什么将规划与执行分开?
- 在开始工作前彻底分析需求,可以减少错误和返工
- 提前明确成功标准,确保满足所有要求
- 计划可以在投入资源实施之前得到验证和优化
为什么采用迭代式改进?
- 多次评审循环能够在问题还容易修复时及早发现
- 计划和实施方案都会在继续推进之前得到验证
- 持续的反馈有助于在每一步提高质量
为什么要在执行过程中进行调整?
- 执行过程中可能会发现新的需求
- 固定的计划无法应对意外的见解或挑战
- 自适应的重新规划能够确保最终交付物符合实际需求
为什么进行持续验证?
- 跟踪成功标准可以客观地衡量进展
- 早期发现问题可以防止浪费精力
- 清晰地了解已完成的工作和剩余的任务
多智能体工作流
┌─────────────────────────────────────────────────────────────┐
│ 用户查询 │
└─────────────────────┬───────────────────────────────────────┘
│
┌─────────────▼────────────────┐
│ 计划阶段 │
│ ┌───────────────────────┐ │
│ │ 计划制定者 │◄──┤ 迭代式细化
│ │ “需要完成什么?” │ │ 直到计划完整
│ │ │ │ 并通过验证
│ └──────────┬────────────┘ │
│ │ │
│ ┌──────────▼────────────┐ │
│ │ 计划审核者 │ │
│ │ “这个计划完整吗?” │───┤
│ └──────────┬────────────┘ │
│ │ │
│ ┌──────────▼────────────┐ │
│ │ 计划解析者 │ │
│ │ 将其结构化为 │ │
│ │ 可执行的阶段 │ │
│ └──────────┬────────────┘ │
└─────────────┼────────────────┘
│
┌─────────────▼────────────────┐
│ 执行阶段 │
│ (每个阶段重复进行) │
│ │
│ ┌───────────────────────┐ │
│ │ 编码智能体 │ │
│ │ 实施该阶段 │ │ 阶段逐个
│ │ (使用 Claude Code) │ │ 实现,并持续验证
│ └──────────┬────────────┘ │
│ │ │
│ ┌──────────▼────────────┐ │
│ │ 审核智能体 │◄──┤ 循环迭代,直至
│ │ “这项工作是否正确完成?”│ │ 实现得到批准
│ └──────────┬────────────┘ │
│ │ │
│ ┌──────────▼────────────┐ │
│ │ 标准检查者 │ │
│ │ “我们已经完成了什么?”│ │
│ │ │ │
│ └──────────┬────────────┘ │
│ │ │
│ ┌──────────▼────────────┐ │
│ │ 阶段反思者 │ │
│ │ “接下来我们应该做什么?”调整计划 │ │
│ └──────────┬────────────┘ │
└─────────────┼────────────────┘
│
┌─────────────▼────────────────┐
│ 总结阶段 │
│ ┌───────────────────────┐ │
│ │ 总结智能体 │ │
│ │ 创建全面的 │ │
│ │ 最终报告 │ │
│ └───────────────────────┘ │
└──────────────────────────────┘
智能体角色
工作流中的每个智能体都有特定的责任:
- 计划制定者:“需要完成什么?”——创建包含清晰阶段和成功标准的综合分析计划。
- 计划审核者:“这个计划完整吗?”——在执行开始前验证计划是否满足所有需求。
- 计划解析者:将自然语言计划转换为结构化的可执行阶段,并设定可追踪的成功标准。
- 阶段协调员:管理执行周期——按顺序运行各个阶段,验证进展并根据需要调整。
- 编码智能体:执行实际的实现工作(由 Claude Code SDK 提供支持,可访问 380 多种科学技能)。
- 审核智能体:“这项工作是否正确完成?”——在继续下一步之前验证实施是否符合要求。
- 标准检查者:“我们已经完成了什么?”——客观地跟踪每个阶段后的进展与成功标准的对比情况。
- 阶段反思者:“接下来我们应该做什么?”——分析进展,并根据已学到的内容调整剩余阶段。
- 总结智能体:将所有工作整合成一份全面且可发表的报告。
架构
┌──────────────────────────────────────────────────────────────┐
│ 命令行界面 │
├──────────────────────────────────────────────────────────────┤
│ 智能体数据科学家核心 │
│ (会话与事件管理) │
├──────────────────────────────────────────────────────────────┤
│ ADK 多智能体工作流 │
│ ┌────────────────────────────────────────────────────────┐ │
│ │ 计划循环(计划制定者 → 审核者 → 解析者) │ │
│ └────────────────────────────────────────────────────────┘ │
│ ┌────────────────────────────────────────────────────────┐ │
│ │ 阶段协调员 │ |
│ │ ├─> 实施循环(编码 → 审核) │ │
│ │ ├─> 标准检查者 │ │
│ │ └─> 阶段反思者 │ │
│ └────────────────────────────────────────────────────────┘ │
│ ┌────────────────────────────────────────────────────────┐ │
│ │ 总结智能体 │ │
│ └────────────────────────────────────────────────────────┘ │
├──────────────────────────────────────────────────────────────┤
│ 工具层 │
│ • 内置工具:只读文件操作、网页抓取 │
│ • Claude 科学技能:120 多种技能 │
└──────────────────────────────────────────────────────────────┘
配置
环境变量
创建一个 .env 文件:
# 必需:API 密钥
ANTHROPIC_API_KEY=your_key_here
GOOGLE_API_KEY=your_key_here
# 可选:模型配置
DEFAULT_MODEL=google/gemini-2.5-pro
CODING_MODEL=claude-sonnet-4-5-20250929
工具与技能
内置工具(用于计划/审核智能体):
- 文件操作:仅限于工作目录内的只读文件访问
read_file,read_media_file,list_directory,directory_tree,search_files,get_file_info
- 网络操作:通过 HTTP 获取网络内容
fetch_url
Claude 科学技能(用于编码智能体):
- 120 多种科学技能 自动从 claude-scientific-skills 加载
- 科学数据库:UniProt、PubChem、PDB、KEGG、PubMed 等
- 科学软件包:BioPython、RDKit、PyDESeq2、scanpy 等
- 在编码智能体启动时自动克隆至
.claude/skills/
所有工具均被沙盒化到工作目录中以确保安全。
文档
示例
协调模式用例
复杂数据分析
# 多文件差异表达分析
agentic-data-scientist "执行处理组与对照组的DEG分析" \
--mode orchestrated \
--files treatment_data.csv \
--files control_data.csv
多步骤工作流
# 包含可视化的完整分析流程
agentic-data-scientist "分析客户流失、创建预测模型并生成报告" \
--mode orchestrated \
--files customers.csv \
--working-dir ./churn_analysis
目录处理
# 处理整个数据集目录
agentic-data-scientist "分析所有CSV文件并生成汇总统计信息" \
--mode orchestrated \
--files ./raw_data/
简单模式用例
快速脚本
# 生成实用脚本
agentic-data-scientist "编写一个Python脚本,按共同列合并CSV文件" \
--mode simple
代码解释
# 技术性问题
agentic-data-scientist "解释随机森林和梯度提升的区别" \
--mode simple
快速原型
# 使用临时工作空间进行快速分析
agentic-data-scientist "根据这些数据创建一个基本散点图" \
--mode simple \
--files data.csv \
--temp-dir
工作目录示例
# 默认行为(./agentic_output/,保留文件)
agentic-data-scientist "分析数据" --mode orchestrated --files data.csv
# 临时目录(自动清理)
agentic-data-scientist "快速测试" --mode simple --files data.csv --temp-dir
# 自定义位置
agentic-data-scientist "项目分析" --mode orchestrated --files data.csv --working-dir ./my_project
# 自定义位置并明确清理
agentic-data-scientist "临时分析" --mode simple --files data.csv --working-dir ./temp --keep-files=false
开发
设置
# 克隆仓库
git clone https://github.com/K-Dense-AI/agentic-data-scientist.git
cd agentic-data-scientist
# 使用uv安装开发依赖
uv sync --extra dev
# 运行测试
uv run pytest tests/
# 格式化代码
uv run ruff format .
# 静态检查
uv run ruff check --fix .
项目结构
agentic-data-scientist/
├── src/agentic_data_scientist/
│ ├── core/ # 核心API和会话管理
│ ├── agents/ # 代理实现
│ │ ├── adk/ # ADK多代理工作流
│ │ │ ├── agent.py # 代理工厂
│ │ │ ├── stage_orchestrator.py # 分阶段执行
│ │ │ ├── implementation_loop.py# 编码+评审循环
│ │ │ ├── loop_detection.py # 循环检测代理
│ │ │ └契review_confirmation.py# 评审决策逻辑
│ │ └契claude_code/# Claude Code集成
│ ├── prompts/ # 提示模板
│ │ ├── base/ # 代理角色提示
│ │ └契domain/ # 领域特定提示
│ ├── tools/ # 内置工具(文件操作、网页抓取)
│ └契cli/ # CLI接口
├── tests/ # 测试套件
└契docs/ # 文档
要求
- Python 3.12+
- Node.js(用于Claude Code)
- Anthropic和OpenRouter的API密钥
贡献
欢迎贡献!详情请参阅CONTRIBUTING.md。
# 分支并克隆后:
uv sync --extra dev
# 进行修改,添加测试
uv run pytest tests/ -v
# 提交PR
发布流程
对于维护者:
创建并推送标签:
./scripts/release.sh 0.2.0创建GitHub发布:
- 访问https://github.com/K-Dense-AI/agentic-data-scientist/releases/new?tag=v0.2.0
- 点击“生成发布说明”以自动生成变更日志
- 发布版本
- 软件包会自动发布到PyPI
一次性PyPI设置: 在PyPI上配置可信发布,关联仓库K-Dense-AI/agentic-data-scientist和工作流pypi-publish.yml。
使用规范化的提交信息(feat:、fix:、docs:等)以生成清晰的变更日志。
技术注释
上下文窗口管理
该框架实施了激进的事件压缩策略,以在长时间运行的分析过程中管理上下文窗口的使用:
事件压缩策略
- 自动压缩:当事件数量超过阈值时(默认为40个),事件会自动压缩
- LLM驱动的摘要:旧事件会在被移除前由LLM总结,以保留关键上下文
- 激进截断:大型文本内容(超过10KB)会被截断,以防止令牌溢出
- 直接事件队列操作:通过直接赋值给
session.events来确保更改生效
防止令牌溢出
系统采用了多层保护机制:
- 基于回调的压缩:在每个代理回合结束后自动触发
- 手动压缩:在关键编排点(例如实现循环之后)触发
- 硬性限制修剪:如果事件数量超过最大值,则作为紧急回退措施丢弃旧事件
- 大文本截断:防止单个事件占用过多令牌
这些机制协同工作,即使在复杂的多阶段分析中,也能将总上下文保持在100万令牌以内。
支持
致谢
基于以下技术构建:
许可证
MIT许可证 - 详情请参阅LICENSE。
版权所有 © 2025 K-Dense Inc. (k-dense.ai)
星标历史
版本历史
v0.2.22025/11/21v0.2.12025/11/21v0.2.02025/11/21相似工具推荐
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
NextChat
NextChat 是一款轻量且极速的 AI 助手,旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性,以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发,NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。 这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言,它也提供了便捷的自托管方案,支持一键部署到 Vercel 或 Zeabur 等平台。 NextChat 的核心亮点在于其广泛的模型兼容性,原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型,让用户在一个界面即可自由切换不同 AI 能力。此外,它还率先支持 MCP(Model Context Protocol)协议,增强了上下文处理能力。针对企业用户,NextChat 提供专业版解决方案,具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能,满足公司对数据隐私和个性化管理的高标准要求。
ML-For-Beginners
ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。
ragflow
RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。 在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。 这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。
