SuperAPI AI 工具集

building

编程与开发

查看项目

更新于 10-16 04:54

技能介绍

用途:从源码构建 ExecuTorch,包括 Python 包、C++ 运行时、模型 runner、交叉编译及后端专用构建。

主要能力:提供按需求分流的构建路径。默认构建 Python 包:先准备 Python 环境(优先 conda,创建 executorch 环境,Python 3.10–3.14;无 conda 时用 venv),验证 python 与 cmake 版本(cmake 需 >=3.24,缺失可 pip install 'cmake>=3.24'),再执行 ./install_executorch.sh --editable;后续重建用 pip install -e . --no-build-isolation,最小安装加 --minimal,启用额外后端通过 CMAKE_ARGS 传入如 -DEXECUTORCH_BUILD_COREML=ON。运行模型可用 make <model>-<backend>,支持 llama、llava、whisper、parakeet、voxtral、gemma3、sortformer、silero-vad 等,后端含 CPU、CUDA、Metal,输出在 cmake-out/examples/models/<model>/<runner>。C++ 运行时可用预设(macos/linux/windows)或 cmake --workflow --preset llm-release 等,也可手动 CMake 指定 XNNPACK、优化内核、扩展模块等开关。交叉编译支持 iOS/macOS frameworks(./scripts/build_apple_frameworks.sh)与 Android(需 ANDROID_NDK,运行 scripts/build_android_library.sh)。

使用方式:按用户需求选择路径——提及 Android/iOS 走交叉编译,提及模型名走模型 runner,提及 C++ 运行时走 CMake,否则默认 Python 包。

适用场景:本地或 CI 中编译 ExecuTorch 各组件、为特定后端或模型构建运行时。

限制:构建耗时约 10 分钟(Apple Silicon);Debug 比 Release 慢 5–10 倍;部分后端有平台限制(如 CUDA 仅 Linux/Windows,Metal 仅 macOS);Intel Mac 无预编译 PyTorch wheel,需 --use-pt-pinned-commit --minimal;具体版本与依赖细节以官方资料为准,暂未提供更多信息。