World Model Optimizer:以半成本蒸餾並提供前沿模型
World Model Optimizer:以半成本蒸餾並提供前沿模型
World Model Optimizer 透過代理追蹤實現持續模型改進
該工具將現有的代理追蹤轉換為世界模型模擬、元 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
評估成本與品質提升
提供服務後,您可以使用 report 指令將新端點與基線模型(例如 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 建立帳號即可讓您在不管理憑證的情況下執行代理。
wmo login- 執行代理的冠軍 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 推進會話。
工作區上傳與分離/重新附加工作流程
登入後,您可以執行具備本地變更即時同步的代理。
- 附加工作區:
wmo run <agent-id> -u . --task "fix the failing tests" - 分離以在平台繼續:
wmo run <agent-id> -u . --detach - 向分離的代理發送訊息:
wmo run --send "Now run the full test suite" - 稍後重新附加:
wmo run --attach - 結束執行:
wmo run --end
開發環境設置
該專案使用 uv 管理,並使用 ruff 進行 linting/format,使用 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 上的社群回饋
評論顯示出熱情與懷疑並存。
- 一位使用者要求具體證明: