一个基于 AI 多代理的数据科学团队库,通过专业化 Agent 协作自动化执行数据加载、清洗、特征工程、EDA、可视化与机器学习建模(H2O + MLflow),配备 Streamlit 可视化 Pipeline 工作台,将常见数据科学任务效率提升 10 倍。
项目概述#
AI Data Science Team 是一个 Python 库,旨在构建虚拟的 AI 数据科学团队。它利用大语言模型(LLM)驱动多个专业化 Agent,自动化完成从数据加载、清洗、整理、EDA 到机器学习建模的全流程工作。
核心能力#
数据处理#
- 数据加载与检查:支持 CSV、Excel 等常见格式加载
- 数据清洗:自动处理缺失值、异常值、重复值
- 数据整理:格式转换、透视表、合并等操作
特征与分析#
- 特征工程:自动生成/选择特征
- EDA(探索性分析):自动生成统计摘要与图表
- 可视化:基于代码生成的图表能力
数据源交互#
- SQL 交互:自然语言转 SQL 查询,数据库交互
建模能力#
- H2O AutoML:集成 H2O 进行自动化建模
- MLflow 集成:实验跟踪与模型管理
- 模型评估:自动化评估指标生成
Agent 模块体系#
基础代理(agents/)#
data_loader_tools_agent:数据加载data_cleaning_agent:数据清洗data_wrangling_agent:数据整理data_visualization_agent:可视化feature_engineering_agent:特征工程sql_database_agent:SQL 数据库操作workflow_planner_agent:工作流规划
数据科学代理(ds_agents/)#
eda_tools_agent:专注于 EDA 工具链
机器学习代理(ml_agents/)#
h2o_ml_agent:执行 H2O 机器学习任务mlflow_tools_agent:管理 MLflow 工具model_evaluation_agent:专注于模型评估
多代理系统(multiagents/)#
pandas_data_analyst:Pandas 数据分析专家sql_data_analyst:SQL 数据分析专家supervisor_ds_team:监督者 Agent,负责协调其他 Agent 协同工作
旗舰应用:AI Pipeline Studio#
基于 Streamlit 构建的交互式应用,作为项目的图形化前端:
- Pipeline-first 工作区:集成可视化编辑器、表格查看器、图表生成器和代码查看器
- 混合模式:支持手动步骤与 AI 自动步骤混合
- 项目管理:支持保存项目(metadata-only 或 full-data),支持 rehydrate(从源数据重新加载)
- 上下文记忆:支持短时记忆以维持多轮对话上下文
- 调试能力:Verbose logs 模式,日志输出至 logs/ 目录
架构设计#
ai_data_science_team/
├── orchestration.py # 编排逻辑(核心流程控制)
├── agents/ # 基础数据科学代理
├── ds_agents/ # 扩展 DS 代理
├── ml_agents/ # 扩展 ML 代理
├── multiagents/ # 多代理协作逻辑
├── parsers/ # 输出解析器
├── templates/ # Prompt 模板
├── tools/ # 底层工具函数
└── utils/ # 通用辅助函数
安装与快速开始#
环境要求#
- Python 3.10+
- OpenAI API Key(推荐)或本地运行的 Ollama 实例
安装方式#
# PyPI 安装
pip install ai-data-science-team
# 源码开发安装
git clone https://github.com/business-science/ai-data-science-team.git
cd ai-data-science-team
pip install -e .
运行 AI Pipeline Studio#
streamlit run apps/ai-pipeline-studio-app/app.py
LLM 配置#
OpenAI(云端)
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(model_name="gpt-4.1-mini")
Ollama(本地)
ollama serve
ollama pull llama3.1:8b
from langchain_ollama import ChatOllama
llm = ChatOllama(model="llama3.1:8b")
示例资源#
项目提供丰富的 Jupyter Notebook 示例:
data_cleaning_agent.ipynbdata_loader_tools_agent.ipynbdata_visualization_agent.ipynbdata_wrangling_agent.ipynbfeature_engineering_agent.ipynbsql_database_agent.ipynb
以及高级主题目录:advanced_topics/、ds_agents/、ml_agents/、multiagents/、teams_of_agents/