TurboPhysAI 是面向 Physical AI 模型的训练性能优化组件,主要围绕 PyTorch 模型训练栈,覆盖自动驾驶、具身智能、世界模型等典型模型架构与应用方向。无需修改模型源码,即可通过算子优化、计算图优化、数据链路优化和训练过程优化,实现端到端的训练性能提升,充分释放 HCU 算力潜力。
优化实现与模型源码分离维护:优化能力随包交付,在训练进程启动时应用到目标入口,并记录每项优化的安装状态,便于确认模型执行链路使用的对象并回溯问题。
能力边界、适用场景和整体工作方式见 TurboPhysAI 概述。
TurboPhysAI 提供命令行和 Python API 两类入口。训练用户优先使用 turbo-physai run;能够控制模型模块导入顺序时,也可以直接调用 turbo_physai.apply()。
原训练命令保持不变,在前面加上 turbo-physai run --model <模型名>,即可加载该模型随包交付的 OptimizationConfig 和 RuntimeConfig:
# 原训练命令
torchrun --nproc-per-node=8 tools/train.py \
./projects/configs/bevformer/bevformer_base.py --launcher pytorch
# 启用 BEVFormer 的模型专用优化
turbo-physai run --model bevformer \
torchrun --nproc-per-node=8 tools/train.py \
./projects/configs/bevformer/bevformer_base.py --launcher pytorch组件在每个训练进程启动时应用一次优化。增加 --log-report 可以输出优化应用日志,用于确认预期优化项是否已应用。--model 的可选值、优化接入基线和使用说明见模型支持清单。
不指定模型和配置时,Runner 加载随包交付的公共 OptimizationConfig,不加载模型专用优化或 RuntimeConfig:
turbo-physai run \
python tools/train.py path/to/config.py外部优化包或自定义优化时可以显式指定 OptimizationConfig 和 RuntimeConfig:
turbo-physai run \
--optimization-config ./configs/optimization.yaml \
--runtime-config ./configs/runtime.yaml \
python tools/train.py path/to/config.py显式配置路径优先于 --model 选择的同类配置。RuntimeConfig 是可选项;未使用 RuntimeConfig 时,训练环境和启动参数由原命令或外部脚本负责。
能够控制训练入口时,可以在导入模型相关模块前显式应用优化:
import turbo_physai
report = turbo_physai.apply(
model="bevformer",
log_report=True,
)也可以将 model 替换为 optimization_config_path="./configs/optimization.yaml",加载显式 OptimizationConfig。apply() 每个训练进程只能调用一次,不负责加载 RuntimeConfig 或启动训练;调用方需要在应用完成后再导入并执行模型代码。完整参数、返回值和异常行为见 Python API 参考。
安装方式和环境检查见安装指南。首次运行、完整启动参数、配置规则和优化应用日志说明见快速开始、CLI 参考和优化应用报告。
| 角色 | 典型场景 | 文档入口 |
|---|---|---|
| 训练用户 | 在训练任务中启用优化,确认应用状态并排查问题 | 安装指南 → 快速开始 → 模型支持清单 |
| 优化开发人员 | 为新模型或新算子实现优化,生成配置并完成验证交付 | 优化开发与接入流程 → 优化验证与交付 |
| 框架维护人员 | 维护优化引擎、评审优化接入、扩展框架能力 | 组件架构 → 优化应用与回滚 → 兼容性管理 |
日常查询:CLI 参考 · Python API 参考 · 优化应用报告 · 问题排查 · FAQ。完整目录见文档中心。
TurboPhysAI/
├── turbo_physai/ 组件实现:优化引擎、算子 API、随包交付的优化与配置
├── kernel/ HCU 原生算子源码
├── model_examples/ 已支持模型的应用说明
├── docs/ 用户、开发与设计文档
└── test/ 算子与框架测试
各层职责和完整工程目录见组件架构。
贡献说明见 CONTRIBUTING.md。
版本记录:RELEASE_NOTES.md · 安全问题:SECURITY.md · 问题和需求:通过仓库 Issue 或 Pull Request(PR)反馈。
除第三方和上游派生代码外,TurboPhysAI 自研部分采用 BSD-3-Clause License。
本仓库包含经修改的上游开源实现;这些文件继续受其原始许可证、版权和署名要求约束。完整来源、固定基线和第三方许可证材料见 THIRD_PARTY_NOTICES.md、NOTICE 和 third_party/licenses。