目录

构建 ExecuTorch iOS 演示应用程序

欢迎来到设置 ExecuTorch iOS 演示应用程序的教程!

此应用程序使用 MobileNet v3 模型来 利用三个不同的后端处理实时摄像机图像:XNNPACK、Core MLMetal Performance Shaders (MPS)(仅限 Xcode 15+ 和 iOS 17+)。

先决条件

在开始之前,请确保您已安装以下工具:

1. Xcode 15 和命令行工具

Mac App Store 安装 Xcode 15,然后安装 使用终端的命令行工具:

xcode-select --install

2. Python 3.10+

Python 3.10 或更高版本以及 应预装在 MacOS 13.5+ 上。 如果需要,请下载 Python 和 安装它。使用以下命令验证 Python 和 pip 版本:pip

which python3 pip
python3 --version
pip --version

3. 入门教程

按照 设置 ExecuTorch 教程 配置基本环境:

git clone https://github.com/pytorch/executorch.git --depth 1 --recurse-submodules --shallow-submodules
cd executorch

python3 -m venv .venv && source .venv/bin/activate

pip install --upgrade cmake pip setuptools wheel

./install_requirements.sh --pybind coreml mps xnnpack

4. 后端依赖

此外,请按照 Core MLMPS 教程中的相应部分为这些教程安装其他依赖项 后端:

./backends/apple/coreml/scripts/install_requirements.sh

./backends/apple/mps/install_requirements.sh

模型和标签

现在,让我们继续导出和捆绑 MobileNet v3 模型。

1. 导出模型

导出带有 Core ML、MPS 和 XNNPACK 后端的 MobileNet v3 模型,然后移动 将导出的模型移动到 Demo App 将选取它们的特定位置:

MODEL_NAME="mv3"

python3 -m examples.portable.scripts.export --model_name="$MODEL_NAME"
python3 -m examples.apple.coreml.scripts.export --model_name="$MODEL_NAME"
python3 -m examples.apple.mps.scripts.mps_example --model_name="$MODEL_NAME"
python3 -m examples.xnnpack.aot_compiler --model_name="$MODEL_NAME" --delegate

mkdir -p examples/demo-apps/apple_ios/ExecuTorchDemo/ExecuTorchDemo/Resources/Models/MobileNet/
mv "$MODEL_NAME*.pte" examples/demo-apps/apple_ios/ExecuTorchDemo/ExecuTorchDemo/Resources/Models/MobileNet/

2. 下载标签

下载图像分类所需的 MobileNet 模型标签:

curl https://raw.githubusercontent.com/pytorch/hub/master/imagenet_classes.txt \
  -o examples/demo-apps/apple_ios/ExecuTorchDemo/ExecuTorchDemo/Resources/Models/MobileNet/imagenet_classes.txt

最后的步骤

我们快完成了!现在,我们只需要在 Xcode 中打开项目,运行 测试,最后运行应用程序。

1. 在 Xcode 中打开 Project

双击 下的项目文件或运行以下命令:examples/demo-apps/apple_ios/ExecuTorchDemo

open examples/demo-apps/apple_ios/ExecuTorchDemo/ExecuTorchDemo.xcodeproj

2. 运行测试

您可以直接在 Xcode 中使用 Simulaltor 运行测试,也可以使用 命令行:Cmd + U

xcrun simctl create executorch "iPhone 15"
xcodebuild clean test \
     -project examples/demo-apps/apple_ios/ExecuTorchDemo/ExecuTorchDemo.xcodeproj \
     -scheme App \
     -destination name=executorch
xcrun simctl delete executorch

3. 运行应用程序

最后,连接设备,在 Xcode 中设置代码签名,然后运行应用程序 用。尝试安装 Release 版本以获得更好的性能。Cmd + R

祝贺!您已成功设置 ExecuTorch iOS 演示应用程序。现在 您可以在 iOS 设备上探索和享受 ExecuTorch 的强大功能!

了解有关在 Apple 平台上集成和运行 ExecuTorch 的更多信息。

文档

访问 PyTorch 的全面开发人员文档

查看文档

教程

获取面向初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并解答您的问题

查看资源