Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AppIntentsの用途 - AppleのGPT元年
Search
notoroid
June 22, 2024
Programming
1
200
AppIntentsの用途 - AppleのGPT元年
WWDC24 でのアプリ内のApp Intentsの用途が強化された点についての説明。Intentsで使用するentityをSpotlight検索の検索対象に加えることができるようになる。
notoroid
June 22, 2024
Tweet
Share
More Decks by notoroid
See All by notoroid
GeometryReader - SwiftUI
notoroid
0
55
iOS 26 SDKの新機能 (liquid抜き) - iOS26orLaterUpdateAndSceneForUIKit
notoroid
0
140
UIテスト自動化サポート- Testbed for XCUIAutomation practice
notoroid
0
190
UIViewController - Interactive PopGesture
notoroid
0
59
Xcodeショートカット 2025年版
notoroid
0
83
ZIPでくれ - Apple謹製 geocoding/ reverse geocoding
notoroid
0
120
WeatherKit iOS18 update - お天気の更新
notoroid
0
100
Privacy manifests - Appleと開発コミュニティ
notoroid
1
250
とっさのAutoLayout - Rewind autolayout
notoroid
0
140
Other Decks in Programming
See All in Programming
TVerのWeb内製化 - 開発スピードと品質を両立させるまでの道のり
techtver
PRO
3
1.1k
Tangible Code
chobishiba
3
570
Atomics APIを知る / Understanding Atomics API
ssssota
1
150
Eloquentを使ってどこまでコードの治安を保てるのか?を新人が考察してみた
itokoh0405
0
3.2k
Designing Repeatable Edits: The Architecture of . in Vim
satorunooshie
0
390
アーキテクチャと考える迷子にならない開発者テスト
irof
9
3.1k
ゼロダウンタイムでミドルウェアの バージョンアップを実現した手法と課題
wind111
0
200
知られているようで知られていない JavaScriptの仕様 4選
syumai
0
610
Promise.tryで実現する新しいエラーハンドリング New error handling with Promise try
bicstone
3
460
Claude Code on the Web を超える!? Codex Cloud の実践テク5選
sunagaku
0
560
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
260
What's New in Web AI?
christianliebel
PRO
0
130
Featured
See All Featured
The Invisible Side of Design
smashingmag
302
51k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Unsuck your backbone
ammeep
671
58k
Bash Introduction
62gerente
615
210k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
GraphQLとの向き合い方2022年版
quramy
49
14k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Being A Developer After 40
akosma
91
590k
Transcript
"QQ*OUFOUTͷ༻్ "QQMFͷ(15ݩ ೳొཁ !OPUPSPJE J1IPOFΞϓϦ։ൃऀ݄
͢༰ w "QQ*OUFOUT֓ཁ w ΞϓϦ্ͷ"QQ*OUFOUTద༻ൣғ
͞ͳ͍༰ w FYUFOUJPOͰͷ*OUFOU w 'JMF&OUJUZ w $POUSPMXJEHFU
͓ w ͏͋͢͡88%$ w "QQ*OUFOUTͷഎܠ w "QQ*OUFOUTͷ৽ػೳ
ࣗݾհ w J1IPOFΞϓϦ։ൃऀ 9!OPUPSPJE w ΞϓϦ։ൃऀྺ ʙ w
ΞϓϦ࡞࢛ͬͯੈل ౸ୡ w झຯήʔϜ ࣹਆܦ͕ਰ͑ͱͷർΕ͕ൈ͚ͳ͍
͏͋͢͡88%$
88%$ ։࠵͞Ε·ͨ͠
৽͍͠ϋʔυΣΞൃද͕ ͳ͔ͬͨͷ͕ऐ͍͠
جௐߨԋͷ༰ ബຯ͔ͩͬͨʜ
جௐߨԋͱ͍͑
None
͏͋͢͡
None
"QQMF*OUFMMJHFODFհ༰ʹ ৽ػೳؚ͕·Ε͍ͯͨͷͰ 04͝ͱͷհ͕ബຯͩͬͨ
04Ͱڞ௨Խ͞Εͨػೳͱͯ͠ "QQ*OUFOUTΛ͍ͬͯΔͷ͕ଟ͍
"QQ*OUFOUTʹ͍ͭͯઆ໌
"QQ*OUFOUTͷഎܠ
"QQ*OUFOUTొͷഎܠͱͳͬͨ ͷͷ4JSJͷొ
ԻφϏήʔγϣϯγεςϜ w 4JSJࣾΛ"QQMF͕ങऩ w J04͔Βొ w J1IPOF4͔Βར༻Մೳ w J04͔Β4JSJ,JUͱͯ͠αʔυ ύʔςΟʔʹެ։
4JSJ
4JSJͷαʔυύʔςΟʔରԠ શͯͷΞϓϦʹ։͔Ε͍ͯΔ w 4JSJ,JUެ։લ͔Β"QQMF͕ԻφϏήʔγϣϯʹରԠͯ͠΄͍͠αʔϏεΛબΜͰ͍ͨ w ܾࡁ w ϥΠυγΣΞ w ϑʔυσϦόϦʔ
w ֤छφϏήʔγϣϯ 04ʹΞϓϦͷػೳ͕౷߹͞ΕͯࠔΒͳ͍ΞϓϦͦ͏ଟ͘ͳ͍
4JSJͷಛ ԻೝࣝͰݎ࣮ʹಈ࡞͢ΔൣғͰ༏ल w ΞϓϦ͕ఏڙ EPOBUF ͢ΔจݴͷΈ࣮ߦͰ͖Δ w 04ͷΩʔϫʔυݕࡧػೳ 4QPUMJHIU ͷػೳΛ౷߹
w ΞϓϦ໊ͷݕࡧ w ϝʔϧͳͲͷݕࡧ
4JSJͷಈ࡞ᶃ ֎෦ΤΫεςϯγϣϯͰಈ࡞ ઃఆϑΝΠϧ 04͕ΞϓϦʹؚ·Ε͍ͯΔ֦ுػೳΛ֬ೝɻ ֦ுػೳͷઃఆ JOGPQMJTU Λ֬ೝ͠4JSJͰݺͼ ग़͠ՄೳͳػೳΛ04͕ཧɻ
͠Β͘4JSJΛӡ༻ͯ͠ "QQMFߟ͑ͨ
ΞϓϦ͕ಈ࡞͍ͯ͠ͳ͍ͱ ΞϓϦͷػೳΛ4JSJʹఏڙͰ͖ͳ͍ͷͰ
4JSJͷಈ࡞ᶄ ಈ࡞தΞϓϦ͔Βػೳఏڙ ॳظԽλΠϛϯά ΞϓϦ͕ىಈதʹ04ʹ4JSJ͕ݺͼग़ ͠ՄೳͳػೳΛఏڙ͢Δɻ ىಈ %POBUF
"QQMFߟ͑ͨ
04ʹΞϓϦ͕ػೳΛఏڙ͢Δ Έͷ༻్ʹ͑ΔͷͰ
֦ுػೳΛଞͷ༻్ʹద༻ Οδοτͷઃఆ
4JSJ,JU͔Β"QQ*OUFOUT 4XJGUઐ༻ͷϑϨʔϜϫʔΫʹมߋ 0CKFDUJWF$ 9DPEFੜ 4XJGU 4JSJ,JU $VTUPN*OUFOU ʙ 4XJGUHFOFSJD
4XJGU ରԠݴޠ ϘΠϥʔϓϨʔτ ίʔυରࡦ "QQ*OUFOUT ʙ μΠΞϩάੜ 4XJGU6* 4UPSZCPBSE6*,JU"QQ,JU ΤϯςΟςΟ ఆٛ ઃఆϑΝΠϧϕʔε ίʔυϕʔε
"QQ*OUFOUTͷద༻ൣғ &YUFOTJPOͱΞϓϦੜڞଘ "QQ*OUFOUT &YUFOTJPO ΞϓϦ w4JSJTIPSUDVU w8JEHFUDPO fi HSBUJPO wΞΫγϣϯ
wίϯτϩʔϧ w"QQMFQFODJMQSPͷγϣʔ τΧοτ w4JSJTIPSUDVU
"QQ*OUFOUTͷద༻ൣғ &YUFOTJPOͱΞϓϦੜڞଘ "QQ*OUFOUT &YUFOTJPO ΞϓϦ w1SPT wΞϓϦ͕ىಈ͠ͳͯ͘ಈ࡞ w$POT wΞϓϦͱͷσʔλڞ༗ʹ "QQ(SPVQ,FZDIBJO͕ඞ
ཁ w1SPT wΞϓϦͷ๛ͳใ͕ར༻Մ ೳ wΞΫγϣϯରॲ͕༰қ w$POT wΞϓϦΛىಈ͠ͳ͍ͱఏҊ͕ ߋ৽͞Εͳ͍
"QQ*OUFOUTͷ৽ػೳ
"QQ*OUFOUTͷഎܠΛ આ໌͢Δ͚ͩͰई
"QQMF"QQ*OUFOUTͷઆ໌ʹ ۤ࿑͍ͯ͠ΔΑ͏Ͱ
w IUUQTEFWFMPQFSBQQMFDPN WJEFPTQMBZ XXED w ΞϓϦͷίΞػೳ͕ΞϓϦʹ͓ ͞·͍ͬͯΔͷར༻ऀͷମݧΛ ଛͳ͍ͬͯΔ͜ͱΛड़্ͨͰ "QQ*OUFOUTΛͬͨղܾखஈΛ આ໌
w αϯϓϧίʔυͷ·· #SJOHZPVSBQQ`TDPSFGFBUVSFTUP VTFSTXJUI"QQ*OUFOUT88%$ 7JEFPT"QQMF%FWFMPQFS
ͷηογϣϯ༰ʹ ໟ͕ੜ͑ͨఔ
ຊ໋ͪ͜Β
w IUUQTEFWFMPQFSBQQMFDPN WJEFPTQMBZ XXED w "QQ*OUFOUTΛͬͨ৽ػೳΛઆ ໌ w ͷαϯϓϧίʔυ༗Γ 8IBU`TOFXJO"QQ*OUFOUT
88%$7JEFPT"QQMF %FWFMPQFS
"QQ*OUFOUTͷ৽ػೳ w 4JSJͷγϣʔτΧοτͰར༻Ͱ͖ΔFOUJUZΛ4QPUMJHIUݕࡧʹొͰ͖Δ w "QQMFଆͰ༻్͚ͷ*OUFOUTςϯϓϨʔτΛ૿Ճ༧ఆ
*OUFOUTͱ&OUJUZ ҙਤͱଘࡏ ʓʓΛ։͍͍ͯͩ͘͞ɻ ˚˚Λ։͍͍ͯͩ͘͞ɻ *OUFOUT" *OUFOUT# (SPVQ *UFN *UFN *UFN
*OUFOUTʹ͢ύϥϝʔλʔͱ ͯ͠FOUJSZΛ͢͜ͱ͕Ͱ͖ Δɻ άϧʔϓάϧʔϓͷΞΠς ϜͳͲΛͤΔܗʹม͢Δ ͚ͩɻ ˚˚ΛબΜͰ։͘ɻ *OUFOUT$
৽ػೳᶃ&OUJUZΛ4QPUMJHIUʹొՄೳʹ 4JSJܦ༝Ͱ4QPUMJHIUݕࡧʹؚΊΔ͜ͱ͕Մೳ (SPVQ *UFN *UFN *UFN 4QPUMJHIU 4QPUMJHIUͰݕࡧͨ݁͠ՌΛλοϓͨ͋͠ͱʹΞϓϦ Ͱ։͘߹ɺ&OUJUZ͝ͱʹ0QFO*OUFOUʹ४ͨ͡ *OUFOUΛ༻ҙ͢Δɻ
ΞϓϦͰ4QPUMJHIUݕࡧ ͢Ͱʹ࣮ݱࡁΈ
w IUUQTEFWFMPQFSBQQMFDPN XXED w "QQ*OUFOUTܦ༝Ͱఏڙ͞Εͨ FOUJUZݕࡧ༻ͷύϥϝʔλʔΛ Ճ w J04͔Β͋ͬͨػೳʹ͍ͭʹ٭ ޫ͕͋ͨΔ
4VQQPSUTFNBOUJDTFBSDIXJUI $PSF4QPUMJHIU88%$ 7JEFPT"QQMF%FWFMPQFS
J04·Ͱͷ*OUFOUT&OUJUJFT
J04·Ͱͷ*OUFOUT&OUJUJFT
༻్͚ͷ*OUFOUTςϯϓϨʔτ ਪΛޮ͔ͤΔͨΊͷࢪ࡞ w "QQMF"QQMF*OUFMMJHFODFରԠͰͰ͖Δ͜ͱΛ૿͢ඞཁʹഭΒΕ͍ͯΔ w ༻్ 4DIFNF Λఆٛ͢Δ͜ͱͰ w 04ଆ͕*OUFOU༻్ΛѲͰ͖Δ
w ΞϓϦଆͰͷ࣮Λ؆ܿԽͰ͖Δ
৽ػೳᶄ༻్͚ͷ*OUFOUTςϯϓϨʔτ .BLJOH:PVS"QQT'VODUJPOBMJUZ"WBJMBCMF5P4JSJ"TTJTUBOU4DIFNBT&YBNQMF"QQ*OUFOUT"MCVN"MCVN*OUFOUTTXJGU @AssistantIntent(schema: .photos.createAlbum) struct CreateAlbumIntent: AppIntent { var name:
String @Dependency var library: MediaLibrary func perform() async throws -> some ReturnsValue<AlbumEntity> { let album = try await library.createAlbum(with: name) return .result(value: album.entity) } } 1IPUPTͷΞϧόϜΛ࡞
!"TTJTUBOU*OUFOU w *OUFOUTʹࢦఆͰ͖ΔϚΫϩ w 4DIFNFʹج͍ͮͨ*OUFOUTͷ࣮Λߦ͏ w 04ଆʹ*OUFOU͕ԿͰ͋Δ͔ͷώϯτΛఏڙ w TDIFNFͲͷυϝΠϯ ൣᙝ
ʹؚ·Εͨಈ࡞ͳͷ͔Λنఆ͢Δ w ྫTZTUFN QIPUPT NBJM w ݄ݱࡏυϝΠϯTZTUFN QIPUPT NBJMͷΈ
·ͱΊ w"QQMFϚϧνϓϥοτϑΥʔϜઓུ͕ޭΛ͠"QQMF*OUFMMJHFODF Λల։͠Α͏ͱ͍ͯ͠·͢ w04ʹΞϓϦػೳΛఏڙ EPOBUF Έͱͯ͠"QQ*OUFOUT͕උ͞ Ε͍ͯ·͢ w"QQMF"QQMF*OUFMMJHFODFͷ׆༻ʹඞཁͳΞϓϦͷใΛ"QQ *OUFOUTΛ༻ͯ͠Ҿ͖ग़ͦ͏ͱ͍ͯ͠·͢ w"QQMFͷҙਤ͕ޭ͢Δ͔ͬͨ͜ͱͰ͋Γ·ͤΜ͕ɺΞϓϦ
Ͱݕࡧػೳར༻Ͱ͖ͦ͏Ͱ͢
ࢀߟ w 8IBU`TOFXJO"QQ*OUFOUT 88%$7JEFPT"QQMF %FWFMPQFS w #SJOHZPVSBQQ`TDPSFGFBUVSFT UPVTFSTXJUI"QQ*OUFOUT 88%$7JEFPT"QQMF %FWFMPQFS
w 4VQQPSUTFNBOUJDTFBSDIXJUI $PSF4QPUMJHIU88%$ 7JEFPT"QQMF%FWFMPQFS w #SJOHZPVSBQQUP4JSJ 88%$7JEFPT"QQMF %FWFMPQFS w $PSF4QPUMJHIUc"QQMF %FWFMPQFS%PDVNFOUBUJPO