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
音声ファイルからGoogle Homeや、Google Assistant アプリのテストを...
Search
masa_charcoal (masachaco)
April 18, 2019
Technology
460
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
音声ファイルからGoogle Homeや、Google Assistant アプリのテストを自動実行してみる。
masa_charcoal (masachaco)
April 18, 2019
More Decks by masa_charcoal (masachaco)
See All by masa_charcoal (masachaco)
自作のエージェントフレームワーク Shikigami Framework と そのMCPサーバ化について (フル)
masachaco
0
84
自作AIエージェントフレームワーク 「Shikigami (式神 )」を 5分でMCP対応させた話
masachaco
0
230
10分くらいで雑に理解する KubernetesとEKS
masachaco
1
2.2k
API GatewyとS3で作るサーバレス・スタブ
masachaco
0
3k
Other Decks in Technology
See All in Technology
小さく始める AI 活用推進 ― 日経電子版 Web チームの事例/nikkei-tech-talk47
nikkei_engineer_recruiting
0
300
AIのReact習熟度を測る
uhyo
2
650
気軽に使える"情報のハブ"としてのNotion活用 〜フロー情報の集積点 と、 Claude Code × Notion AI〜
syucream
1
150
AWS Security Agent といっしょに脅威モデリングをやってみよう
amarelo_n24
1
180
人材育成分科会.pdf
_awache
4
300
OTel × Datadog で 「AI活用」を計測し、改善に繋げる
shihochan
1
410
2026TECHFRESH畢業分享會 - AI 時代的人生存檔點
line_developers_tw
PRO
0
1.3k
Chainlitで作るお手軽チャットUI
ynt0485
0
280
LayerX コーポレートエンジニアリング室におけるサプライチェーンセキュリティへの取り組み / Supply Chain Security at LayerX Corporate Engineering
yuyatakeyama
2
680
Claude Codeをどのように キャッチアップしているか
oikon48
13
8.6k
2026 TECHFRESH 畢業分享會 - 開發日常大解密!從領域驅動到企業級上線
line_developers_tw
PRO
0
1.3k
LayerXにおけるセキュリティ管理の現在地と次の一手
tosho
0
240
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Automating Front-end Workflow
addyosmani
1370
210k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
Are puppies a ranking factor?
jonoalderson
1
3.6k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
220
We Have a Design System, Now What?
morganepeng
55
8.2k
Everyday Curiosity
cassininazir
0
230
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
1.7k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Designing for Performance
lara
611
70k
Transcript
ԻϑΝΠϧ͔Β Google Home ɺ Google Assistant ΞϓϦͷɺ ςετΛࣗಈ࣮ߦͯ͠ΈΔɻ
ࣗݾհ HN:·ͪ͞Ό͜ • ۂͱ͔࡞ΔϓϩάϥϚ ܥ SIer • Java / nodejs
/ terraform ͳͲͳͲ • αʔόαΠυΞϓϦɺεϚʔτεϐʔΧʔΞϓϦͷ։ൃ • ٶͪΌΜͷসإۦಈ։ൃ • TwitterͰϛΫ͞ΜୡͷۂΛެ։தʂ • Twitter • @masachaco • GitHub • https://github.com/masachaco • SoundCloud • https://soundcloud.com/masa_charcoal • niconico • https://www.nicovideo.jp/mylist/11613193
εϚʔτεϐʔΧʔ ศརͰ͢ΑͶ
ศར ͚ͩͰૢ࡞Ͱ͖Δ ख͕͑ͳ͍࣌ʹɺಛʹศར • ேɺ͓෩࿊্͕ΓʹΛ১͖ͭͭʮࠓԿ࣌ʁʯ • ͓ஂ͔ΒిؾɾΤΞίϯফͯ͠( ˘ω˘)ţźō • खΛಈ͔ͨ͠··ɺradiko͚ͭͨΓ
• Amazon Music࠶ੜͨ͠Γ
Assistant ΞϓϦͷΈ(Ұྫ) 0, (PPHMFɺ ʮٶͪΌΜ͔Θ͍͍ʯ ͬͯΞϓϦ Λ։͍ͯ
Assistant ΞϓϦͷΈ(Ұྫ) ͜ͷਓ͜Μͳ͜ͱ ݴͬͯΔΜ͚ͩͲ
Assistant ΞϓϦͷΈ(Ұྫ) ʮٶͪΌΜ͔Θ͍͍Λ։͍ͯʯ ͩͬͯʂ
Assistant ΞϓϦͷΈ(Ұྫ) ʮٶͪΌΜ͔Θ͍͍ʯ ͕ىಈͨ࣌͠ͷॲཧΛ࣮ߦͯ͠
Assistant ΞϓϦͷΈ(Ұྫ) ʮٶͪΌΜ͔Θ͍͍ʯ ͕ىಈͨ࣌͠ εϐʔΧʔ ʮٶͪΌΜ͔Θ͍͍ʂʯ ͱݴͬͯʂ
Assistant ΞϓϦͷΈ(Ұྫ) ʮٶͪΌΜ͔Θ͍͍ʂʯ
Assistant ΞϓϦͷΈ(Ұྫ) ʮͬͨʔʔʔʔʔʔʔʔʂʯ
Assistant ΞϓϦͷΈ(Ұྫ) ʮͬͨʔʔʔʔʔʔʔʔʂʯ
Assistant ΞϓϦͷΈ(Ұྫ) ʮͬͨʔʔʔʔʔʔʔʔʂʯ
ςετΛͯ͠Έ͍ͨ
ςετΛͯ͠Έ͍ͨ(αʔόଆ) ʮٶͪΌΜ͔Θ͍͍ ͬͯΞϓϦ ͕ىಈͨ࣌͠ͷॲཧΛ࣮ߦͯ͠ʯ ͬͯݴΘΕͨΒ ʮٶͪΌΜ͔Θ͍͍ʂʂʯ ͬͯεϐʔΧʔ͕ݴ͏Α͏ʹࢦࣔͨ͜͠ͱΛ֬ೝ͢Δɻ +6OJU KFTU
ςετͮ͠Β͍ॴ
ςετͮ͠Β͍ॴ ͜ͷԫ৭͍ͱ͜ΖΒΜ͕ ςετͮ͠Β͍
ςετͮ͠Β͍ॴ • ԻΛೝࣝ͢Δॴ(AoG)ʑมԽ͢Δ • ೖྗ͞ΕͨจݴΛೝࣝ͢ΔॴʑมԽ͢Δ
ςετͮ͠Β͍ॴ • ԻΛೝࣝ͢Δॴ(AoG)ʑมԽ͢Δ • ೖྗ͞ΕͨจݴΛೝࣝ͢ΔॴʑมԽ͢Δ ԻΛೝࣝͯ͠ɺ ςΩετʹม͢Δॴ
ςετͮ͠Β͍ॴ • ԻΛೝࣝ͢Δॴ(AoG)ʑมԽ͢Δ • ೖྗ͞ΕͨจݴΛೝࣝ͢ΔॴʑมԽ͢Δ ೖྗ͞ΕͨจݴΛೝࣝͯ͠ɺ αʔόͷϦΫΤετʹม͢Δॴ
ςετ͢ΔϑϨʔϜϫʔΫ͕͋Δ
͘͠Έ ύιίϯͷதͰ (PPHMF"TTJTUBOU Λ্ཱͪ͛ͯ ςΩετͷ ϦΫΤετΛૹΔ
ԻΛૹ৴ͯ͠ ϦΫΤετ ͍ͯ͠ΔΘ͚Ͱͳ͍
Actions on Google Testing LibraryͷࠔΔॴ • ςΩετܗࣜͷϦΫΤετͳͷͰɺ Իೝࣝ͠ͳ͍ɻ • ͳͷͰςΩετͰOKͰɺൃͯ͠ΈΔͱɺ
μϝͳ͜ͱ͕͋Δɻ • ྫɿʮOk Google, ؋͜Εͷൺӥ͞Μʹ͍ͭͯڭ͑ͯʯ • → ʮ͍ɺൺӥࢁʹ͍ͭͯɻɻɻɻʯ
Իͷೝࣝ෦ ʑมԽ͠ ϒϥοΫϘοΫε
ςετͱ·Ͱ͍͔ͳͯ͘ ࣍Ͱɺఆ͍ͯ͠ΔൃΛ ਖ਼͘͠ೝࣝͰ͖͍ͯΔ͔ࢹ͍ͨ͠
ͳͷͰ࡞Δ
Իೝ͔ࣝΒςετͰ͖Δ ϑϨʔϜϫʔΫΛ࡞Δ • جຊతͳΈɺલड़ͷϑϨʔϜϫʔΫͱಉ ͡(PC্ͰAssistantΛىಈͯ͠ϦΫΤετ) • ϦΫΤετʹwavϑΝΠϧΛࢦఆͰ͖ΔΑ͏ʹ ͯ͠ɺԻΛೝࣝͤͯ͞ϦΫΤετ͢Δ • nodejs͔Β࣮ߦͰ͖ΔΑ͏ʹ͢Δ
Assistant SDK • Google AssistantΛར༻͢ΔΫϥΠΞϯτΛ࡞ ͢ΔͨΊͷSDK • ຊདྷεϚʔτεϐʔΧʔͱ͔Λ࡞Δ߹ʹɺ ΈࠐΈ͚Ͱ͏
υΩϡϝϯτΛಡΜͰΈΔ
υΩϡϝϯτΛಡΜͰΈΔ ͍͍͔ΒαϯϓϧίʔυΛಡΊɻ ͦΕ͔Βͩ ͱ͍͏ڧ͍ҙࢤ
αϯϓϧίʔυΛಡΜͰΈΔ
nodejs൛ͷαϯϓϧ͋Δ
΄΅ɺॻ͍ͨ͜ͱͳ͍͚Ͳ Pythonಡ͏
PythonͷίʔυͰΘ͔ͬͨ͜ͱ • nodejs൛ʹൺ͍ͯͩͿॆ࣮࣮͕ͨ͠͞Εͯ ͍Δ • ςΩετ͔ΒͷϦΫΤετ • ϚΠΫ͔ΒͷϦΫΤετ • ԻϑΝΠϧ͔ΒͷϦΫΤετ
• ϨεϙϯεͷεϐʔΧʔग़ྗ • ϨεϙϯεͷԻϑΝΠϧग़ྗ • ͳͲͳͲ
PythonͷίʔυͰΘ͔ͬͨ͜ͱ • Assistantͷαʔόͱͷ௨৴gRPCͰߦ͏ɻ • ·ͣɺೝূΒͳΜΒͨ͠ޙ ௨ৗςΩετΫΤϦΛૹΔ࣌ͷઃఆʹՃ͑ͯɺ ʮAudioInConfigʯΛઃఆ͢Δ • ʲઃఆ༰ʳ •
ૹΔΦʔσΟΦͷαϯϓϦϯάϨʔτ • ϑΥʔϚοτ
PythonͷίʔυͰΘ͔ͬͨ͜ͱ • AudioInConfigΛઃఆͯ͠ɺͦͷઃఆ༰ΛૹΔɻ • ͦͷޙɺΦʔσΟΦͷόΠτྻΛૹΔɻ • Google ͕ ʮΦοέʔɺԻ͕ԿݴͬͯΔ͔શʹཧղͨ͠ʯ ঢ়ଶʹͳΔͱɺʮEND_OF_UTTERANCEʯ
ͷίʔυ͕ૹΒΕɺൃʹରͯ͠Ϩεϙϯεͯ͘͠Δɻ
PythonͷίʔυΛ nodejsͷ αϯϓϧίʔυʹҠ২ ͯ͠ΈΔ
͏·͘ಈ͔ͳ͍
͏·͘ಈ͔ͳ͔ͬͨॴ • AudioInConfigͷઃఆΛͯ͠ૹ͔ͬͯΒɺ Google͔ΒϨεϙϯε͕͋Δ·Ͱ AudioΛૹͬͯμϝ • AudioInConfigʹର͢ΔϨεϙϯε͕͋ͬͯ ͔ΒૹΔɻ
͏·͘ಈ͔ͳ͔ͬͨॴ2 • ΦʔσΟΦͷόΠτྻҰؾʹૹͬͯμϝ • Pythonͷίʔυͩͱ3.2KBͣͭ͘Β͍ • Ҡ২൛ಉ༷ʹ3.2KBͣͭ͘Β͍ૹΔ
͏·͘ಈ͔ͳ͔ͬͨॴ3 • ΦʔσΟΦʮϞϊϥϧʯͰ͋Δ͜ͱ • Իͯ͠Δ࣌ʹ ʮϞϊϚΠΫ͔ͩΒϞϊϥϧͰԻ͞ΕͯΔͰ͠ΐʯ ͱࢥ͍ࠐΜͰ͍ͨɻ ͬͪΓεςϨΦͩͬͨ
͠Βͯ͘͠
Ͱ͖ͨ
σϞͯ͠ΈΔ
σϞ༻ΞϓϦ • ʮٶͪΌΜ͔Θ͍͍ʹͭͳ͍Ͱʯͱݴ͏ • ʮ͍ɺٶͪΌΜ͔Θ͍͍ͷςετόʔδϣϯͰ͢ɻʯ ʮٶͪΌΜ͔Θ͍͍ɻʯͱฦ͞ΕΔɻ • ʮͬͨʔʔʔʔʔʔʂʯͱݴ͏ɻ • ʮͬͨʔʔʔʔʔʔʂʯͱฦ͞ΕΔɻ
• ʮऴྃɻʯͱݴ͏ • ΞϓϦ͕ऴྃ͢Δɻ
Ի͕ఆ௨Γೝ͍ࣝͯ͠Δ͔ ςετ͢ΔͨΊʹ • Իͷೝࣝ݁Ռ͕ɺ ʮ͋Β͔͡Ί༻ҙͨ͠ςΩετͱҰக͢Δ͔ʯ ͱ͍ͬͨςετʹ͢Δͷएׯແɻ • ൃೝࣝ༳ΕΔͷͰ༻ҙ͢ΔςΩετ͕େ • ʮϥδίΛ͚ͭͯʯ
• ʮradikoΛ͚ͭͯʯ • ʮradiko(εϖʔε)Λ͚ͭͯʯ
Dialogflowͷ ϦΫΤετ݁Ռͱಥ͖߹ΘͤΔ • Dialogflow͕αʔόʹϦΫΤετΛૹΔछྨ ʮΠϯςϯτʯ͝ͱʹఆٛ͞Ε͍ͯΔɻ (ޠฐ͕͋Γ·͕͢) • ͳͷͰɺൃͨ݁͠Ռ͕ɺతͷΠϯςϯτͷ ࣮ߦ͢Δ͜ͱʹղऍ͞Ε͍ͯΔ͔ݕূ͢Δɻ
ςετίʔυ
·ͱΊ • ԻͰɺGoogle Assistant͕ఆ௨ΓͷڍಈΛ͢Δ͔ςετͰ͖ ͨɻ • ͨͩɺೝࣝ༳ΕΔͷͰɺςετͱ͍͏ΑΓೝ͕ࣝมΘͬͯΞϓ Ϧ͕ಈ͔ͳ͘ͳ͚ͬͨ࣌ͷࢹʹ͍ۙɻ • લೝࣝͯͨ͠ͷʹɺٸʹಈ͔ͳ͘ͳͬͨʙʙʙʂʹૣ͘ؾ͚ͮ
ͦ͏ɻ • ϦάϨογϣϯςετͱָ͔͕ʹͳΓͦ͏ • εϚʔτεϐʔΧʔָ͍͠ɻ։ൃָ͍͠ɻٶͪΌΜ͔Θ͍͍ɻ
ҎԼͷURLͰϥΠϒϥϦԽͯ͠ެ։༧ఆ • https://github.com/masachaco/google-assistant-test-from-wavefile
͝੩ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ
ؾʹͳͬͯͨͱ͜Ζͱ݁Ռ • wavϑΝΠϧͷσʔλΛૹ৴͢Δ࣌ • ConfigͱΦʔσΟΦҰॹʹૹ͍͍ͬͯͷʁ • μϝɻConfigૹ͔ͬͯΒɺΦʔσΟΦ • wavͷϔομͱؚ͔Ίͯૹͬͯେৎʁ •
ҰԠେৎɺೝࣝͷϊΠζʹͳͬͯΔ͔ • ΦʔσΟΦσʔλͷૹ৴ִؒʁ • ެࣜʹʮϦΞϧλΠϜʹૹ৴͍ͯ͠ΔΑ͏ʹૹΕʯ ͱॻ͍ͯ͋Δɻ • ࣮ࡍɺ݁ߏ͍ײ֮ͰૹͬͯେৎɻγϏΞ͡Όͳ͍ɻ
໘ന͔ͬͨͱ͜Ζ • wavϑΝΠϧͷσʔλΛૹ৴͢Δ࣌ • wavϑΝΠϧΛૹΓͬͯɺ 0ຒΊͨ͠όΠτྻΛૹΓ͚ͭͮΔඞཁ͕͋Δɻ • AssistantʮແԻʯ͕ଓ͍ͯʮൃ్͕Εͨʯͱஅ ͢ΔͨΊ •
ʮແԻʯͷόΠτྻ͕ͳ͍ͱɺͣͬͱͪଓ͚Δɻ