RD-Agent 快速入门:如何从零跑通自动研发数据与模型的 AI 框架
【免费下载链接】RD-AgentResearch and development (R&D) is crucial for the enhancement of industrial productivity, especially in the AI era, where the core aspects of R&D are mainly focused on data and models. We are committed to automating these high-value generic R&D processes through R&D-Agent, which lets AI drive>项目地址: https://gitcode.com/GitHub_Trending/rd/RD-Agent
RD-Agent 是微软开源的数据驱动研发自动化框架:研究代理(R)负责提出假设,开发代理(D)负责把假设变成可运行代码并执行验证,两者循环迭代,自动完成数据与模型的研发闭环。
如果你需要自动化因子挖掘、模型迭代或竞赛式建模,这篇教程会带你完成 RD-Agent 的安装配置、首次运行与结果查看,最后给出循环次数、回测区间和知识库方面的调优方法。
认识 RD-Agent:R 与 D 双代理如何分工
RD-Agent 的定位是"AI 驱动数据驱动的 AI"。它把研发过程拆成两类角色:研究代理持续提出新想法(假设、特征、模型结构),开发代理将想法实现为代码、在隔离环境中执行,并把回测指标与报错作为反馈写回知识库,供下一轮提案参考。代码结构上,core/提供循环与演化框架,components/包含 CoSTEER 编码策略 与知识管理,scenarios/则对接具体业务。框架已支持量化金融(qlib)、数据科学/Kaggle 竞赛、LLM 微调等场景,并在 MLE-bench 上取得领先的机器学习工程智能体成绩。
四步完成 RD-Agent 安装与首次健康检查
RD-Agent 目前仅支持 Linux,且大部分场景依赖 Docker 执行代码。建议按以下顺序操作:
| 依赖 | 要求 |
|---|---|
| 操作系统 | Linux |
| Python | 3.10 或 3.11(CI 验证版本) |
| Docker | 已安装,且当前用户无需 sudo 即可执行 |
创建并激活 conda 环境,隔离 RD-Agent 依赖:
conda create -n rdagent python=3.10 conda activate rdagent安装本体;普通用户直接装 PyPI 版本,想贡献代码则从源码安装:
pip install rdagent # 开发者版本: # git clone https://gitcode.com/GitHub_Trending/rd/RD-Agent # cd RD-Agent && make dev验证 Docker 免 sudo 可用,这是跑通各场景的前提:
docker run hello-world执行基础健康检查,确认 Docker 与 UI 端口状态:
rdagent health_check --no-check-env
用 .env 配置模型与执行环境
RD-Agent 默认使用 LiteLLM 作为后端,通过项目根目录的.env文件统一配置;rdagentCLI 会自动加载该文件。核心配置项如下:
| 配置项 | 作用 | 说明 |
|---|---|---|
CHAT_MODEL | 对话/推理模型 | 任意 LiteLLM 支持的模型名 |
EMBEDDING_MODEL | 向量模型 | 知识库检索依赖 |
OPENAI_API_BASE/OPENAI_API_KEY | 统一 API 入口 | chat 与 embedding 同源时使用 |
LITELLM_PROXY_API_KEY/LITELLM_PROXY_API_BASE | 独立 embedding 入口 | EMBEDDING_MODEL以litellm_proxy/开头时必填 |
REASONING_THINK_RM | 剥离推理链 | 使用带think标签的推理模型时设为True |
示例:chat 用 OpenAI,embedding 用 SiliconFlow 的 bge 模型,两者各走各的入口。写好后即可验证配置是否有效,无效项会被逐项报出:
cat << EOF > .env CHAT_MODEL=gpt-4o OPENAI_API_BASE=<your_chat_api_base> OPENAI_API_KEY=<your_chat_api_key> EMBEDDING_MODEL=litellm_proxy/BAAI/bge-m3 LITELLM_PROXY_API_KEY=<your_siliconflow_api_key> LITELLM_PROXY_API_BASE=https://api.siliconflow.cn/v1 EOFrdagent health_check预期效果:命令正常结束无报错,说明 LLM 连通性与环境依赖均可用,可以进入运行阶段。执行环境方面,模型/因子场景由MODEL_COSTEER_ENV_TYPE=docker(或conda)控制,数据科学场景用DS_CODER_COSTEER_ENV_TYPE,默认 Docker 隔离更安全。
以预测竞赛为例跑通数据科学场景
数据科学场景是 RD-Agent 在 MLE-bench 上验证过的代表性入口,完整流程分四步。
场景选择:入口命令是rdagent data_science --competition <竞赛名>,对应实现在 rdagent/scenarios/data_science/。
配置:先把竞赛的数据集与描述文件解压到本地文件夹,再写入环境变量,指定数据路径与场景类:
mkdir -p ./git_ignore_folder/ds_data # 将竞赛数据解压到 git_ignore_folder/ds_data/ 后: dotenv set DS_LOCAL_DATA_PATH "$(pwd)/git_ignore_folder/ds_data" dotenv set DS_CODER_ON_WHOLE_PIPELINE True dotenv set DS_IF_USING_MLE_DATA False dotenv set DS_SAMPLE_DATA_BY_LLM False dotenv set DS_SCEN rdagent.scenarios.data_science.scen.DataScienceScen运行:以官方的 arf-12-hours-prediction-task(医疗预测任务)为例启动循环,Agent 会自动读题、建模、提交结果并按分数反馈迭代:
rdagent data_science --competition arf-12-hours-prediction-task结果验证:先确认 19899 端口空闲,再启动 Streamlit 界面查看每一轮假设、代码与指标:
rdagent health_check --no-check-env --no-check-docker rdagent ui --port 19899 --log-dir log/ --data-science调优:控制循环次数、回测区间与知识库
日常调优集中在四类参数上:
- 循环与时长:所有场景的 CLI 都支持
--loop_n(循环轮数)、--step_n(步数)、--all_duration(总时长上限),data_science额外支持--timeout;编码器内部的演化次数由evolving_n控制(qlib 场景默认 10,见 qlib 循环配置)。 - 回测时间区间:量化场景可用
QLIB_FACTOR_TRAIN_START、QLIB_FACTOR_TEST_END等变量自定义训练/验证/测试段,不用改 YAML。 - 协同优化策略:
fin_quant的因子-模型联合优化通过action_selection选择bandit、llm或random策略决定下一步优化因子还是模型。 - 知识库:知识管理模块 以向量库加知识图谱沉淀历史实验的成败经验,编码器会检索过往 trace 与报错来改进代码;相关路径参数为
knowledge_base_path与new_knowledge_base_path,定期清理过期条目可避免检索噪声。
常见问题解答
问:Windows 或 macOS 上能跑吗?答:不能。RD-Agent 目前仅支持 Linux,且代码执行依赖 Docker。
问:基础 health_check 通过了,为什么配置 LLM 后运行仍报错?答:--no-check-env只查 Docker 和端口。写完.env后必须再跑一次不带该参数的rdagent health_check,它才会校验模型连通性。
问:chat 和 embedding 必须用同一家服务商吗?答:不必。给EMBEDDING_MODEL加litellm_proxy/前缀,并配置LITELLM_PROXY_API_KEY与LITELLM_PROXY_API_BASE即可分开接入。
问:怎么限制任务跑多久、跑几轮?答:通过--loop_n、--step_n、--all_duration三个参数限制;竞赛场景还可加--timeout限制单轮耗时。
问:如何查看运行轨迹?答:量化类场景用rdagent ui --port 19899 --log-dir log/;数据科学场景必须加--data-science。也可以构建web/前端后用rdagent server_ui --port 19899实时查看(该 Web UI 暂不支持 data_science 场景)。
结语
RD-Agent 把"提出想法—实现代码—验证反馈"的闭环交给 Agent 持续运转,让你把精力放在审阅结果与定义新方向上。
- R/D 双代理分工:提案与实现解耦,靠反馈和知识沉淀迭代演化
- 场景开箱即用:量化因子、模型研发、数据科学竞赛、LLM 微调
- 配置集中在
.env,兼容 OpenAI、Azure、DeepSeek 等 LiteLLM 服务商 - Docker 隔离执行代码,并提供 Streamlit/Web UI 查看全流程轨迹
【免费下载链接】RD-AgentResearch and development (R&D) is crucial for the enhancement of industrial productivity, especially in the AI era, where the core aspects of R&D are mainly focused on data and models. We are committed to automating these high-value generic R&D processes through R&D-Agent, which lets AI drive>项目地址: https://gitcode.com/GitHub_Trending/rd/RD-Agent
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考