前置条件:您需要一个 Osmosis Platform 账户并安装 SDK(
pip install osmosis-ai[server])。使用 osmosis login 进行身份验证,然后在准备训练时在 platform.osmosis.ai 上注册您的 Rollout 服务器 URL。什么是 Remote Rollout?
Remote Rollout 将 Agent 轨迹生成与训练基础设施分离:训练集群
托管 LLM 推理(
/v1/chat/completions)并接收 Rollout 结果(/v1/rollout/completed)RolloutServer(您的代码)
实现带有工具的 Agent 循环,将协议处理委托给 SDK
- 定义自定义工具 - 实现 Agent 所需的任何工具(计算器、网页搜索、代码执行等)
- 控制 Agent 逻辑 - 构建具有自定义推理能力的复杂 Agent 循环
- 收集训练数据 - 自动收集用于强化学习的轨迹
- 独立扩展 - 运行多个 Agent 服务器,无需修改训练基础设施
工作原理
协议流程
-
初始化 Rollout (
/v1/rollout/init):- 训练集群发送初始消息和参数
- SDK 调用您的
get_tools()方法 - 返回
202 Accepted以及包含工具列表的InitResponse - 这告知训练集群此次 Rollout 有哪些可用工具
-
Agent 循环(
run()方法):- 您的代码在 LLM 调用和工具执行之间交替进行
- 使用
ctx.chat()调用训练集群的 LLM 端点
-
完成(
/v1/rollout/completed):- 将最终轨迹发送回训练系统
- 仅在平台配置为在 Remote Rollout 中计算奖励时才包含奖励值
示例仓库
我们提供了一个完整的示例仓库,您可以将其作为起点:osmosis-remote-rollout-example
完整的计算器 Agent 示例,包含工具、奖励和测试数据集
- 完整的 Agent 循环实现
- 工具定义和执行
- 示例奖励计算逻辑
- JSONL 格式的测试数据集
- CLI 使用示例