用途:在 Physical AI Studio 中新增或修改策略(policy)。策略位于 library/src/physicalai/policies/<name>/,每个策略族是一个面向 Lightning 的 Policy,包装一个 torch.nn.Module Model,拆分为三个文件。基类在 policies/base/(Policy 在 policy.py,Model 在 model.py);共享 Config / FromConfig 类型来自 Runtime(physicalai.config)。
主要能力与流程:先阅读邻近策略族,参考 policies/pi05/(config.py、model.py、policy.py、preprocessor.py 及额外模块),最小实现可参考 policies/act/。创建三文件:config.py 定义 <Name>Config(Config) 超参数;model.py 定义 <Name>Model(Model) 纯 torch.nn.Module 逻辑;policy.py 定义 <Name>(Policy),仅在实现导出时加 ExportablePolicyMixin。实现 forward(...)(训练路径)、predict_action_chunk(...)(推理路径,返回配置动作时域的 tensor)、select_action(...)(默认用基类动作队列)。在 policies/init.py 添加导出并注册到 get_physicalai_policy_class(...) / get_policy(...) 分发。先用 API 直接构造验证,再添加 CLI 配置 library/configs/physicalai/<name>.yaml(参考 pi05.yaml),最后按需接入导出、测试与文档。
必要用法:from physicalai.policies import get_policy; policy = get_policy("<name>")。验证命令:uv run pytest tests/unit/policies -k <name>;physicalai fit --config configs/physicalai/<name>.yaml --trainer.fast_dev_run=true;prek run --all-files library/。
限制与检查:需核对动作形状语义、观测特征命名、API 构造路径、jsonargparse CLI 路径、重依赖需在 pyproject.toml 中作为可选 extra 并惰性导入;不得静默更改动作维度、特征名或预处理。导出未实现时需在 docstring 明确说明。具体价格、平台支持等信息暂未提供。