Upgrade to Pro — share decks privately, control downloads, hide ads and more …

オンデバイスLLMの検証 iOS 26 / FoundationModels を使った実装から...

オンデバイスLLMの検証 iOS 26 / FoundationModels を使った実装から得た知見 / Exploring On-Device LLMs: Insights from Implementation with iOS 26 and FoundationModels

『ヤプリ x LINEヤフー モバイルデベロッパーズミートアップ』登壇資料
https://connpass.com/event/380496/

Avatar for Yappli Developers

Yappli Developers

June 23, 2026

More Decks by Yappli Developers

Other Decks in Technology

Transcript

  1. YAPPLI × LINEヤフー MEETUP / LIGHTNING TALK オンデバイス LLMの検証 iOS

    26 / FoundationModels を使った実装から得た知見 SPEAKER 株式会社ヤプリ 古賀 菊丸
  2. オンデバイス LLMエージェント 全体の処理フロー ① ユーザーが送信ボタンをタップ ② エージェントにメッセージを渡す ③ Tool Calling実行(既存

    API からデータ取得) ④ エージェントから回答を受け取る ⑤ テキストメッセージとコンテンツリンクボタンを表示
  3. オンデバイス LLMエージェント 全体の処理フロー ① ユーザーが送信ボタンをタップ ② エージェントにメッセージを渡す ③ Tool Calling実行(既存

    API からデータ取得) ④ エージェントから回答を受け取る ⑤ テキストメッセージとコンテンツリンクボタンを表示
  4. 学び - 2つ目 @Generable と @Guide を使って入出力を構造化することが重要 LLM → TOOL(入力)

    @Generable struct Arguments: Codable { @Guide(description: "取得する最大件数。省略時は10件。 最大30件。" ) var limit: Int ? @Guide(description: "検索キーワード。タイトルや本文で フィルタ。" ) var query: String ? } TOOL → LLM(応答) @Generable struct Output { @Guide(description: "取得した件数。見つからなかった場合 は 0。" ) var count: Int @Guide(description: "1件以上見つ かったか。" ) var found: Bool @Guide(description: "各通知のタ イトル配列。" ) var titles: [String ] } Outputを 文字列ではなく @Generable な構造体 で返すと、LLMはフィールド単位で意味を理解できる Swiftの型システムが、そのまま AIの精度向上につながる