iOS 设置指南

本页介绍了如何设置开发环境以使用 MediaPipe iOS 应用中的 Tasks。

支持的设备和平台

要使用 MediaPipe Tasks 创建 iOS 应用,您的开发环境 需要满足以下条件:

  • macOS Mojave 10.14.3 或更高版本。

  • Xcode 10.3 或更高版本。

  • 搭载 iOS 12.0 或更高版本的 iOS 设备。iOS 模拟器也可以 处理不需要设备相机的应用。

开发者环境设置

在 iOS 应用上运行 MediaPipe 任务之前,您必须拥有 现有 Xcode 项目,或者在本地机器上创建一个新项目。

只能使用 CocoaPods 安装 MediaPipe Tasks。 开始之前,您必须安装 CocoaPods 1.12.1 或更高版本。对于 有关在 macOS 上安装 CocoaPods 的说明,请参阅有关如何在 macOS 上安装 CocoaPods 指南

示例代码设置

MediaPipe 示例 代码库包含用于 MediaPipe 任务的示例 iOS 应用。

您可以通过示例代码创建项目、构建项目,并运行 任务。以下步骤用于构建 Text 分类器 任务。

如需导入并构建示例代码项目,请执行以下操作:

  1. 打开终端,克隆 MediaPipe 示例代码库,然后导航到 包含 TextClassifier.xcodeprojPodfile 的目录。

    git clone https://github.com/google-ai-edge/mediapipe-samples
    cd mediapipe/examples/text_classification/ios
    
  2. 使用 CocoaPods 安装 MediaPipe Tasks:

    pod install
    

    此命令会在示例中创建一个 TextClassifier.xcworkspace 文件 项目目录中。

  3. 双击 TextClassifier.xcworkspace 文件以在其中打开项目 Xcode。如果 TextClassifier.xcodeproj 文件已打开,请将其关闭 然后再打开 TextClassifier.xcworkspace 文件。

  4. 选择 TextClassifier 架构,然后选择一台 iOS 实体设备或 模拟器。使用实体 iOS 设备时 确保它已连接到您的 Mac。

  5. 点击项目工具栏中的 Run 按钮。

有关在 Xcode 上运行应用的更多说明,请参阅构建和运行 一 app

MediaPipe Tasks 依赖项

MediaPipe Tasks 提供了两个预构建的视觉和文本库。通过 .tflite 模型文件必须位于 iOS 应用软件包中, 使用该模型。根据 MediaPipe Tas,添加视觉或文本 库添加到 CocoaPods Podfile 中的 Pod 列表。如需相关说明,请参阅 使用应用所需的 Pod 创建 Podfile,请参阅使用 CocoaPods

<ph type="x-smartling-placeholder">

生成式 AI 任务

MediaPipe Tasks 生成式 AI 库包含用于处理图像或 生成文本。如需安装 MediaPipe Tasks 生成式 AI 库,请添加 MediaPipeTasksGenAIMediaPipeTasksGenAIC Pod 添加到应用的目标 Podfile

LLM Inference API

MediaPipe LLM 推断任务包含在 MediaPipeTasksGenAI 中 和 MediaPipeTasksGenAIC 个 Pod。

target 'MyLlmInferenceApp' do
  use_frameworks!
  pod 'MediaPipeTasksGenAI'
  pod 'MediaPipeTasksGenAIC'
end

视觉任务

MediaPipe Tasks 视觉库包含处理图片或视频的任务 输入。如需安装 MediaPipe Tasks 视觉库,请将 MediaPipeTasksVision pod 到 Podfile 中的应用目标。

target 'MyAppWithMediaPipeTasksVision' do
  use_frameworks!
  pod 'MediaPipeTasksVision'
end

文本任务

MediaPipe Tasks 文本库包含用于处理语言数据的任务 文本格式。如需安装 MediaPipe Tasks 文本库,请添加 在 Podfile 中将 MediaPipeTasksText 个 Pod 发送到您应用的目标

target 'MyAppWithMediaPipeTasksText' do
  use_frameworks!
  pod 'MediaPipeTasksText'
end

配置测试目标

如果您的应用有测试目标,请确保您的 Podfile 遵循 以下实现方式是为了避免在使用 MediaPipe 任务库。

最简单的实现方法是确保不嵌套测试目标 在添加 MediaPipe 任务 Pod 的主应用目标中。

target 'MyAppWithMediaPipeTasks' do
  pod 'MediaPipeTasksVision'
end

target 'MyAppWithMediaPipeTasksTests' do

end

如果测试目标必须嵌套在主应用目标中,则 Podfile 必须 符合以下实现:

target 'MyAppWithMediaPipeTasks' do
  pod 'MediaPipeTasksVision'

    target 'MyAppWithMediaPipeTasksTests' do
      inherit! :none

    end
end

BaseOptions 配置

BaseOptions 支持对 MediaPipe Task API 进行常规配置。

选项名称 说明 已接受的值
modelAssetPath iOS 应用软件包中模型文件的模型路径。 字符串形式的路径。

硬件加速

在 iOS 上,MediaPipe Tasks 仅支持在标准 CPU 处理器上运行模型。

问题排查

如需有关 MediaPipe 的技术问题方面的帮助,请访问 群组堆栈 用于寻求支持的其他人员 社区。要报告错误或提出功能请求,请在以下位置提交问题: GitHub

如需有关设置 iOS 开发环境的帮助,请访问 Apple Developer 文档