Agent、Runner.run、sessions、tools、handoffs 或其他 OpenAI Agents SDK primitives,请安装 openai-agents extra(osmosis-ai[openai-agents]>=0.3.0rc1,<0.4)。
该集成有三个主要对象:
快速示例
工作原理
1
在 run 内构造 agent
OsmosisAgent 会检查 model 参数是否为 OsmosisRolloutModel。如果是,它会把占位符替换为绑定到活跃 RolloutContext 的 OsmosisLitellmModel。2
创建 memory session
OsmosisMemorySession 会在当前 RolloutContext 上将自身注册为唯一 sample source。3
运行 OpenAI agent
Runner.run() 通过 get_items() 和 add_items() 与 session 交互。Session 会以 canonical Responses API shape 存储持久化的 OpenAI Agents SDK items。4
路由策略调用
解析后的 model 会直接向 rollout-scoped Osmosis chat-completions URL 发送请求。
5
收集 sample
run() 完成后,backend 会向 rollout context 请求其 sample。Session 会返回一个包含 runner 持久化 conversation 的 RolloutSample。完整示例
此示例使用 OpenAI Agents SDK tool,并使用 grader 从 session-backed sample 中读取最后一条 assistant text。sample.messages 会为 graders 保留 OpenAI Agents SDK session 的 native persisted items。Integration 会另外为 ATIF 执行 best-effort normalization;conversion 失败时 native sample 保持不变。使用 create_rollout_server() 创建的 server 会持久化该 ATIF view,并且只在 source 提供 usage、model 或 timestamp fields 时包含它们。OsmosisRolloutModel
OsmosisRolloutModel 是占位符。不要直接调用它,也不要在 rollout 代码中传入固定 policy model name。在 workspace templates 中,采样选项放在 OpenAI Agents ModelSettings 中。
OsmosisAgent 会把该占位符替换为指向活跃 Osmosis rollout endpoint 的 model。
每个 Rollout 使用一个 Session
每次使用OsmosisRolloutModel 的 workflow execution 都必须恰好使用一个 OsmosisMemorySession。
run() 内创建 session。在 active rollout context 之外创建的 session 无法在 rollout run 内复用,因为它没有注册到该 context。在同一次 execution 中构造第二个 session 会抛出 ValueError;需要多个 candidate samples 时,请在同一次 run 内使用 handoffs,或配置多次独立 workflow executions。
从 OpenAI Agents SDK 迁移
如果您已有 OpenAI Agents SDK workflow,可以通过四步迁移:1
用 OsmosisAgent 替换 Agent
修改 import 和 class:然后构造
OsmosisAgent(...),而不是 Agent(...)。2
替换 policy model
将固定 model string 替换为
OsmosisRolloutModel 占位符:3
添加 OsmosisMemorySession
在
AgentWorkflow.run() 内创建 session,并传给 Runner.run():4
包装到 AgentWorkflow 中
将 runner call 放入
AgentWorkflow.run() 方法。除非 tools、instructions、handoffs 和 agent 行为依赖 out-of-band state,否则保持它们不变。评估
使用普通 eval 命令:openai/osmosis-rollout 路由到 eval TOML 中 [experiment].model_path 指定的 model。训练期间,Osmosis 会把同一个占位符路由到当前训练中的 policy。
下一步
AgentWorkflow
查看共享的
AgentWorkflow.run(ctx) contract。Grader
为 OpenAI Agents session sample 编写 reward 逻辑。
评估
在训练前为您的 OpenAI Agents rollout 提交 evaluation run。