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
470
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
87
自作AIエージェントフレームワーク 「Shikigami (式神 )」を 5分でMCP対応させた話
masachaco
0
240
10分くらいで雑に理解する KubernetesとEKS
masachaco
1
2.2k
API GatewyとS3で作るサーバレス・スタブ
masachaco
0
3k
Other Decks in Technology
See All in Technology
クラウドセキュリティ入門 ~安全なクラウド利用のための基礎知識~
lhazy
8
7.3k
初めてのGitHub Actions / GitHub Actions at First
tooppoo
0
130
名古屋の市バスGTFS-JPデータ×スガキヤ 最寄りバス停検索をAmazon ElastiCache Serverless for Valkeyで最適化する
usanchuu
1
180
Claude Code並行開発環境の ムダ‧ムラ‧ムリを見直した話
muranakaaa
2
420
AWS ネットワーク構築でハマった(ハマりかけた) 5選とそこから得た教訓
nagisa53
4
170
変化の早いClaude Codeを 書籍に落とし込む
oikon48
6
1.2k
歴史から理解するクラウドインフラのしくみ
kizawa2020
1
200
Issue設計から始める仕様駆動開発 / 20260731 Mizuki Hirata
shift_evolve
PRO
1
120
脱Jenkins、インターン生が挑んだCIツールGitHubActions移行
mixi_engineers
PRO
1
320
AIが自社のTableauを操作する世界へ:Tableau MCP超入門
tbtykk
0
110
Forza Horizon 6 のテレメトリ機能で 自動運転に使えそうな学習データを集める話
henjin0
0
110
論語・武士道・産業革命から見る かわるもの、かわらないもの
ichimichi
8
2.2k
Featured
See All Featured
Building AI with AI
inesmontani
PRO
1
1.1k
Designing for Performance
lara
611
70k
The Cult of Friendly URLs
andyhume
79
7k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Tell your own story through comics
letsgokoyo
1
1k
The browser strikes back
jonoalderson
0
1.4k
Navigating Team Friction
lara
192
16k
Skip the Path - Find Your Career Trail
mkilby
1
180
Bash Introduction
62gerente
615
220k
GraphQLとの向き合い方2022年版
quramy
50
15k
BBQ
matthewcrist
89
10k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
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ʮແԻʯ͕ଓ͍ͯʮൃ్͕Εͨʯͱஅ ͢ΔͨΊ •
ʮແԻʯͷόΠτྻ͕ͳ͍ͱɺͣͬͱͪଓ͚Δɻ