Apple Intelligenceに対応する - "Bring your app to Siri" 要約

4.1K Views

June 27, 24

スライド概要

[Swift愛好会スピンオフ WWDC24セッション要約会 @ DeNA - connpass](https://love-swift.connpass.com/event/319801/#feed) での発表資料です。

profile-image

フリーランスiOSエンジニア 「エンジニアと人生」コミュニティ主宰

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

Apple Intelligence に対応する 〜 "Bring your app to Siri" 要約 〜

2.

自己紹介 • 堤 修一 • @shu223 (GitHub, Zenn, Qiita, note, Docswell, 𝕏, YouTube, Podcast, etc...) • 書籍(商業出版4冊、個人出版多数 @BOOTH):

3.

要約するセッション Bring your app to Siri (アプリをSiri対応にするための方法) 1 以降の画像は基本的にこのセッションからの引用です(WWDC24の他セッションからの引用も少しだけあり) 1

4.

Siri powered by Apple Intelligence • より自然な音声に • 言語理解力アップ • 画面を認識(パーソナルコンテキスト) • アプリをまたがっていろんなアクションが行えるように

5.

賢くなったSiriに「アプリの機能を使っ てもらう」には?

6.

App Intent domains • Apple Intelligenceと各アプリとの接続手段としてApp Intentsフレームワークを大幅に強化 • その結果生まれたのがApp Intent domains

7.

App Intent domains • ドメイン: 特定の種類の機能に特化 して設計されたAPIの集まり • iOS 18では12個がリリース予定

8.

App Intent domains • いますぐ使えるのはMailとPhotos

9.

App Intent domains • こういうのが100種定義されている • {ドメイン}.{スキーマ}

10.

Assistant Schemas • こういうのがたくさん定義されて て、そのひとつひとつがアシスタン トスキーマ • 写真の作成やメールの送信など、そ れぞれ何かしらのインテントに対応 している • それぞれInputとOutputが定義されて いて、その間に我々が定義できる perform メソッドがある

11.

Apple Intelligenceを使っ たリクエストのライフサイク ル 1. ユーザーリクエスト

12.

Apple Intelligenceを使っ たリクエストのライフサイク ル 1. ユーザーリクエスト 2. Apple Intelligenceのモデルがスキー マを予測

13.

Apple Intelligenceを使っ たリクエストのライフサイク ル 1. ユーザーリクエスト 2. Apple Intelligenceのモデルがスキー マを予測 3. Apple Intelligenceのツールボックス がAppIntentを呼び出してアクション を実行

14.

Apple Intelligenceを使っ たリクエストのライフサイク ル 1. ユーザーリクエスト 2. Apple Intelligenceのモデルがスキー マを予測 3. Apple Intelligenceのツールボックス がAppIntentを呼び出してアクション を実行 4. 結果表示/出力

15.

(補足)App Intelligence のツールボックス • デバイス上の全アプリからのApp Intentsが、スキーマごとに グループ化されて格納されている • モデルが予測したスキーマに適合するインテントを呼び出し てアクションを実行

16.

(補足)App Intelligenceのシステム構成図 2 Platform State of the Unionより 2

17.

重要なポイント Apple Intelligenceのモデルはスキーマを予測するように学習 されている → 自分のアプリのインテントをスキーマに適合させることで、 モデルにそれを使ってもらえるようになる

18.

つまり!

19.

「Apple Intelligence対応」に必要なこと • アプリのコア機能をすべてインテント化し • スキーマに適合させる 3 Apple Intelligence時代のApp Intents設計 の「どのApp Intentを作成するか」参照 3

20.

実装

21.

インテントに struct CreateAlbumIntent: AppIntent { ... }

22.

インテントに1行追加するだけ! @AssistantIntent(schema: .photos.createAlbum) struct CreateAlbumIntent: AppIntent { ... }

23.

インテントに1行追加するだけ! @AssistantIntent(schema: .photos.createAlbum) struct CreateAlbumIntent: AppIntent { ... } → @AssistantIntent マクロを用いて AppIntent を photos ド メインの createAlbum スキーマに適合させている

24.

動作確認方法 • いまはまだApple Intelligence/Siriは動かない • のでショートカットで確認する

25.

その他、セッションで解説されていること • エンティティ、列挙型のアシスタントスキーマ • パーソナルコンテキスト • In-app search • Semantic search 詳しくはこちら: アプリをSiri / Apple Intelligence対応にする方法

26.

(補足)Apple Intelligence における Siri の位置付け整理 Siri はパーソナルエージェント • デバイスに常駐(いつでもどこから でも起動できる) • 自然言語でのコミュニケーション • パーソナルコンテキストを理解 • ユーザーの要求を理解し、各種アプ 4 スキーマ予測とインテント実行は中段のPersonal Intelligent Systemが担う

27.

まとめ • Apple IntelligenceでパーソナルエージェントとしてのSiriが 大幅に強化 • スキーマに準拠したインテントを用意しておけばインテリジ ェントにアプリの機能を使ってくれる!

28.

(補足)インテント作成入門 • Apple Intelligence時代のApp Intents設計 • App Intents実践入門 - アプリのコア機能を公開する