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
180
AppIntentsの用途 - AppleのGPT元年
WWDC24 でのアプリ内のApp Intentsの用途が強化された点についての説明。Intentsで使用するentityをSpotlight検索の検索対象に加えることができるようになる。
notoroid
June 22, 2024
Tweet
Share
More Decks by notoroid
See All by notoroid
UIテスト自動化サポート- Testbed for XCUIAutomation practice
notoroid
0
150
UIViewController - Interactive PopGesture
notoroid
0
38
Xcodeショートカット 2025年版
notoroid
0
56
ZIPでくれ - Apple謹製 geocoding/ reverse geocoding
notoroid
0
96
WeatherKit iOS18 update - お天気の更新
notoroid
0
80
Privacy manifests - Appleと開発コミュニティ
notoroid
1
240
とっさのAutoLayout - Rewind autolayout
notoroid
0
130
UVC(USB video class)と マルチプラットフォーム - UVC support by Apple multiplatform
notoroid
0
370
SwiftUIむけに 整理された状態監視 Observation
notoroid
0
820
Other Decks in Programming
See All in Programming
リバースエンジニアリング新時代へ! GhidraとClaude DesktopをMCPで繋ぐ/findy202507
tkmru
4
1.2k
AI駆動のマルチエージェントによる業務フロー自動化の設計と実践
h_okkah
0
290
The Modern View Layer Rails Deserves: A Vision For 2025 And Beyond @ RailsConf 2025, Philadelphia, PA
marcoroth
2
780
階層化自動テストで開発に機動力を
ickx
1
410
副作用と戦う PHP リファクタリング ─ ドメインイベントでビジネスロジックを解きほぐす
kajitack
2
440
オンコール⼊⾨〜ページャーが鳴る前に、あなたが備えられること〜 / Before The Pager Rings
yktakaha4
2
1.1k
What's new in AppKit on macOS 26
1024jp
0
170
初学者でも今すぐできる、Claude Codeの生産性を10倍上げるTips
s4yuba
16
13k
AIともっと楽するE2Eテスト
myohei
9
3.1k
リッチエディターを安全に開発・運用するために
unachang113
1
240
Streamlitで実現できるようになったこと、実現してくれたこと
ayumu_yamaguchi
2
220
코딩 에이전트 체크리스트: Claude Code ver.
nacyot
0
990
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
710
Rails Girls Zürich Keynote
gr2m
95
14k
The Language of Interfaces
destraynor
158
25k
Documentation Writing (for coders)
carmenintech
72
4.9k
Into the Great Unknown - MozCon
thekraken
40
1.9k
Building Adaptive Systems
keathley
43
2.7k
A Tale of Four Properties
chriscoyier
160
23k
Designing for humans not robots
tammielis
253
25k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Unsuck your backbone
ammeep
671
58k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
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