从克隆仓库到第一次训练:手把手跑通 Agent Lightning 智能体强化学习
从克隆仓库到第一次训练手把手跑通 Agent Lightning 智能体强化学习【免费下载链接】agent-lightningThe absolute trainer to light up AI agents.项目地址: https://gitcode.com/GitHub_Trending/ag/agent-lightning你手里有一个能跑的智能体调模型、用工具都没问题但效果停在原地。你想用强化学习把它再往上推一推可传统 RL 框架几乎都要求你重写智能体的交互循环。Agent Lightning 是一个智能体强化学习训练框架让你的现有智能体一行代码不改就能接入训练管线。说白了相当于给智能体装一支录音笔它照常干活框架在旁把每次模型调用记成训练样本再拿去更新模型策略。框架的核心单位叫 rollout就是智能体对一条输入的一次完整执行。三条命令装好环境硬件门槛不高一台机器、单张 A100 GPU80GB外加 uv 和 CUDA 12.9 或 13.0。克隆仓库后在项目根目录执行git clone https://gitcode.com/GitHub_Trending/ag/agent-lightning cd agent-lightning uv sync bash scripts/setup_verl.sh 0.8.0 cu130uv sync会在项目根目录生成.venv环境。最后一条装的是 verl vLLM FlashAttention 这套 GPU 栈先别急着按回车这三个组件版本耦合很紧scripts/setup_verl.sh 用的是官方测过的固定组合还会从源码编译 flash-attn全程约 10-30 分钟。版本矩阵和前置条件见 docs/1-installation.md。准备 Calc-X数据集与示例依赖环境装好了下一步准备第一个训练任务。仓库里最小可运行路径是 Calc-X 示例基于 AutoGen MCP 计算工具做数学推理的智能体刻意做得很轻单卡就能跑。要备两样东西下载官方 Calc-X 数据集获取方式见 docs/8-example-calc-x.md解压出train.parquet、test.parquet、test_mini.parquet、sample.jsonl四个文件放到 examples/calc_x/data/安装示例依赖并登录 WB训练日志默认上传到这里source .venv/bin/activate uv pip install openai httpx sympy autogen-agentchat autogen-ext[openai] mcp1.11.0,2 mcp-server-calculator uv run wandb login第一次运行一条命令拉起三个组件依赖齐了启动bash examples/calc_x/run_local.shrun_local.sh 这一行会依次做四件事起 Ray 和 verl/vLLM 推理后端在 8181 端口启动 API Gatewayagl-server启动本地模式的 Rollout Controlleragl-controller最后跑训练入口 train_calc_agent.py。控制台打印出两个服务的日志路径都在 /tmp/ 下后接下来几分钟没有异常抛出就说明一切正常。这三者正好对应架构图上的三大组件Gateway 负责代理与录音Controller 负责拉起智能体进程Trainer 负责模型推理和参数更新。确认输出看什么算跑通不用死盯日志判断点就三个WB 控制台出现名为agentlightning的项目和calc_x实验奖励曲线开始跳动——这是跑通最直接的证据/tmp/ 下的agl-controller-*.log里能看到 rollout 被逐个拉起状态从 QUEUING 走到 RUNNING、再到 SUCCEEDED长时间卡住起不来时先查/tmp/agl-server-*.log8181 端口被占是最常见的原因。rollout 的状态机和事件模型在 docs/3-basics.md 有完整说明。想停掉时按一次 CtrlC等脚本把 server、controller 和 Ray 清理完——反复按会打断清理流程。深入一层智能体是怎么被训练的想知道那条脚本背后真正发生了什么盯两点就够了。第一rollout 如何变成样本。Trainer 会为每条训练输入创建多个独立 rolloutGRPO 算法需要对比同一道题多次尝试的奖励Controller 逐个把智能体拉起来而智能体的模型请求全部走 Gateway 的 OpenAI 兼容代理。因为 rollout ID 就嵌在请求 URL 里每次调用自动归属到正确的执行连同 token ID 和 log 概率一起记成model_request事件。数据模型如下图第二如果你需要改训练行为直接改这几个文件——verl 侧代码全在 agentlightning/verl/ 下rollout_level_advantage.py管 rollout 级优势估计per_rollout_loss.py管 rollout 级损失归一基础配置在config.yaml。Calc-X 只是在其上覆写必要字段写法可对照 train_calc_agent.py。我踩过的三个坑别自己装 vllm 和 torch。我第一次跑日志转了二十分钟才反应过来是版本组合不兼容连训练循环都没进。verl、vLLM、torch 三者耦合极紧官方脚本给的组合才有保障后来老老实实回scripts/setup_verl.sh就通了。跑之前别忘了 WB 登录。漏掉uv run wandb login会在任务中途报认证错白烧一轮启动时间。第一次先只跑 local 模式。K8s 模式用的 Minikube 至少要吃 64GB 内存不够会被直接杀掉等本地模式跑通再考虑 Kubernetes Job 方案入口是 run_minikube.sh。到这里你的智能体已经在被强化了跑完那条run_local.sh克隆仓库 → 装环境 → 拉训练这条全路径就走完了智能体一行没改行为却在被奖励持续优化。后续两个方向看 docs/7-asynchronous-training.md 把数据采集和训练做成异步或者进 examples/swe_smith/ 看完整的编码智能体管线。【免费下载链接】agent-lightningThe absolute trainer to light up AI agents.项目地址: https://gitcode.com/GitHub_Trending/ag/agent-lightning创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考