世界模型优化器:以半成本蒸馏并服务前沿模型
世界模型优化器:以半成本蒸馏并服务前沿模型
世界模型优化器使用代理轨迹实现持续的模型改进 该工具将现有的代理轨迹转化为世界模型模拟、元 harness 优化和模型蒸馏的循环,以生成在降低成本的同时达到前沿质量的模型。
开始使用 wmo
首先安装该包,注册模型提供者,并从您的 OTel 轨迹构建路由器。
- 安装:
pip install world-model-optimizer - 注册提供者:
wmo providers set - 构建路由器:
wmo build --file traces.jsonl --name my-endpoint - 在保留任务上评分模型:
wmo optimize route sweep my-endpoint --traces traces.otel.jsonl - 拟合路由策略:
wmo optimize route fit matrix.json --kind knn --out .wmo/models/my-endpoint/policy.json - 服务端点:
wmo serve --name my-endpoint
评估成本和质量提升
服务后,您可以使用报告命令将新端点与基线模型(例如 gpt‑5.5)进行比较。
wmo optimize route report matrix.json .wmo/models/my-endpoint/policy.json --baseline gpt-5.5
这将生成显示改进增量和成本降低的指标。
将小型模型蒸馏到池中
为了避免路由并直接服务单个优化模型,请使用模型蒸馏子命令。
wmo optimize model(参见 distill README 了解详情)会创建一个继承路由池性能的小型模型。
然后您可以使用 wmo optimize route pin 固定模型,或通过 wmo optimize harness 构建优化的 harness。
托管平台使用
在 platform.experientiallabs.ai 创建账户可让您在不管理凭据的情况下运行 agent。 登录后:
wmo login- 运行 agent 的冠军 harness:
wmo run <agent-id>平台处理模型和沙箱身份验证,因此不需要本地 API 密钥。
使用 E2B 后端进行隔离评估
如果您想在隔离沙箱中评估优化,请安装 E2B 额外功能并提供 API 密钥。
pip install "world-model-optimizer[e2b]"
export E2B_API_KEY=...
然后在 E2B 内运行 harness 优化或评估:
wmo optimize harness my-agent my-environment --tasks tasks.jsonl --backend e2b
wmo eval tasks.jsonl --mode closed-loop --harness my-agent --harness-backend e2b
每个候选者都会针对相同的模拟任务进行测量,只有通过评估门槛的更改才会成为新的版本化冠军 harness。
世界模型作为 API
该包包含可通过编程或 HTTP 查询的世界模型。 Python 示例:
from wmo import Action, ActionKind
from wmo.config.store import WorldModelStore
from wmo.engine.loader import load_world_model
model_dir = WorldModelStore("\.wmo\)).resolve("airline\
wm, _provider = load_world_model(model_dir)
session = wm.new_session(task="check out the cart\
obs = wm.step(session.id, Action(kind=ActionKind.TOOL_CALL, name="add_to_cart", arguments={"sku": "A1"}))
print(obs.content)
HTTP 端点:GET /world_models 列出模型,然后 POST /world_models/{name}/sessions 创建会话,以及 POST /world_models/{name}/sessions/{id}/step 推进它。
工作区上传和分离/重新附加工作流程
登录后,您可以运行带有本地更改实时同步的 agent。
- 附加工作区:
wmo run <agent-id> -u . --task "fix the failing tests" - 分离以在平台继续:
wmo run <agent-id> -u . --detach - 向分离的 agent 发送消息:
wmo run --send "Now run the full test suite" - 稍后重新附加:
wmo run --attach - 结束运行:
wmo run --end
开发环境设置
该项目使用 uv 进行管理,使用 ruff 进行 linting/格式化,使用 ty 进行类型检查。
- 安装开发环境:
uv sync --extra dev - Lint:
uv run ruff check . - 格式化:
uv run ruff format . - 类型检查:
uv run ty check - 运行测试:
uv run pytest -q
使用遥测
wmo 仅收集匿名元数据;不存储提示、轨迹、操作、观察、文件路径、模型名称或凭据。 遥测默认启用。要为项目禁用:
uv run wmo config telemetry disable这会写入.wmo/settings.toml。使用uv run wmo config telemetry enable重新启用,使用uv run wmo config telemetry status检查状态,或通过DO_NOT_TRACK=1或WMO_TELEMETRY=0按进程禁用。
Hacker News 社区反馈
评论既显示热情也显示怀疑。
- 一位用户要求具体证明: "The absolute best way to prove this works is by releasing a model that was fine‑tuned with this method and then showing benchmarks depicting the improvement delta between the base model and the fine tuned one. … Until then, this is noise." — @Art9681
- 另一位用户指出了对路由的关注: "The title is misleading. This is model routing, not distillation." — @surround
- 一位评论者质疑本地模型的成本计算: "Not sure I get it. The model you’re improving is local? If so how do you even calculate cost compared to an API" — @jack_pp
- 正面评论包括: "Cool project" — @digitaltrees, "Cool idea! How do you guarantee privacy?" — @yiyingzhang, 和 "Excited to play with this." — @rglover