Skip to main content
Strands Agents 是 AWS 的 agent 框架,用于构建工具型 agents。如果您需要 Strands tools、Strands message handling,或想从已有 strands.Agent 直接迁移,请使用 Osmosis Strands integration。 Rollout 使用此 integration 时,请安装 strands extra:osmosis-ai[strands]>=0.3.0rc1,<0.4

集成对象

OsmosisStrandsAgent 保留常规 Strands constructor arguments,例如 toolssystem_promptmessages 和 callback handlers。

快速示例

ctx.prompt 已经是当前 sample 可直接使用的输入。如果您的数据集行包含 system_promptuser_prompt,SDK 会在 workflow 运行前组装这些字段。

工具

按常规方式用 @tool 定义 Strands tools,然后传给 OsmosisStrandsAgent
对于大多数使用工具的 agents,一次 invoke_async() 调用就足够,因为 Strands 会在内部处理 model-tool loop。只有在需要额外停止条件,或需要跨多次调用设置硬上限时,才添加外层循环。

OsmosisRolloutModel

OsmosisRolloutModel 不接受 model_id。SDK 会在运行时使用占位符 model id openai/osmosis-rollout,并由 Osmosis 将其路由到当前策略。 请通过 params 传入 LiteLLM sampling options,与 Strands 的 LiteLLMModel 配置保持一致:
请在 AgentWorkflow.run() 内,或其他执行后端已经安装活跃 RolloutContext 的路径里构造 OsmosisStrandsAgent。在 module import time 构造会失败,因为此时还没有 rollout context。

Sample 收集方式

当使用 OsmosisRolloutModel 构造时,OsmosisStrandsAgent 会执行以下步骤:
1

读取 rollout context

它会从当前执行作用域读取活跃的 RolloutContext;如果没有可用 context,则抛出 RuntimeError
2

解析模型

它会创建一个直接连接到 rollout-scoped Osmosis chat-completions URL 的 LiteLLM model。
3

注册 agent

它会把自身注册到 rollout context,让 backend 可以将 Strands message history 收集为 RolloutSample
4

初始化 Strands Agent

它会用解析后的 model 委托给常规 Strands Agent constructor。Tools、prompts、messages 和 callbacks 都会原样传递。
收集到的 RolloutSample.messages 会为 graders 保留 Strands 的 native message history。Integration 会另外为 ATIF persistence 执行 best-effort normalization;normalization 失败不会替换或丢弃 native sample。只有 source 提供 usage、model 和 timestamp fields 时,ATIF 才会包含它们。

完整示例

从 Strands Agent 迁移

如果您已有 Strands agent,可通过四步迁移:
1

替换 agent import

from strands import Agent 替换为:
2

替换 model

将固定 LiteLLM model 替换为 Osmosis 占位符:
删除 model_id;训练集群会决定服务哪个 policy。
3

替换 agent class

Agent(...) 替换为 OsmosisStrandsAgent(...)。保持 tools、system prompt、messages 和 callbacks 不变。
4

包装到 AgentWorkflow

将 agent construction 和 await agent.invoke_async() 调用移入 AgentWorkflow.run()

Strands vs OpenAI Agents

OpenAI Agents SDK 路径请参见 OpenAI Agents 集成

下一步

AgentWorkflow

查看共享 workflow contract。

Grader

为 Strands agent 生成的 sample 打分。

评估

为您的 Strands rollout 提交 evaluation run。

OpenAI Agents 集成

对比 OpenAI Agents SDK integration。
最后修改于 2026年8月10日