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
Azure犬駆動開発の記録/GlobalAzureFukuoka2024_20240420
Search
Hirono Baba
April 20, 2024
Technology
1
390
Azure犬駆動開発の記録/GlobalAzureFukuoka2024_20240420
Hirono Baba
April 20, 2024
Tweet
Share
More Decks by Hirono Baba
See All by Hirono Baba
Microsoft MVPになる前、なってから/Fukuoka_Tech_Women_Community_1_baba
nina01
0
280
Azure AI servicesと歯のおはなし/AzureTravelers_Fukuoka2024_baba
nina01
1
180
cloudugnight2nd-20240531
nina01
1
360
Azure FunctionsのAOAIバインド機能を試してみる/dotnet2days20240118-baba
nina01
0
160
AzureでWaiting roomをつくる!新米アーキテクトの挑戦記/jazug-for-women-20231215-baba
nina01
1
800
開発者のためのGitHub Advanced Security入門セキュリティを向上させよう!/cndfpre2023-baba
nina01
1
1.2k
Azure Policyとガバナンスのおはなし/globalazure2023-baba
nina01
0
910
Azure Functionsをサクッと開発、サクッとデプロイ/vscodeconf2023-baba
nina01
2
1.3k
Other Decks in Technology
See All in Technology
事業価値と Engineering
recruitengineers
PRO
8
5.4k
なぜSaaSがMCPサーバーをサービス提供するのか?
sansantech
PRO
5
1.4k
AWS環境のリソース調査を Claude Code で効率化 / aws investigate with cc devio2025
masahirokawahara
2
1k
LLM翻訳ツールの開発と海外のお客様対応等への社内導入事例
gree_tech
PRO
0
430
7月のガバクラ利用料が高かったので調べてみた
techniczna
3
810
クラウドセキュリティを支える技術と運用の最前線 / Cutting-edge Technologies and Operations Supporting Cloud Security
yuj1osm
2
250
おやつは300円まで!の最適化を模索してみた
techtekt
PRO
0
250
Grafana MCPサーバーによるAIエージェント経由でのGrafanaダッシュボード動的生成
hamadakoji
1
1k
攻撃と防御で実践するプロダクトセキュリティ演習~導入パート~
recruitengineers
PRO
3
1.8k
Snowflakeの生成AI機能を活用したデータ分析アプリの作成 〜Cortex AnalystとCortex Searchの活用とStreamlitアプリでの利用〜
nayuts
0
150
実運用で考える PGO
kworkdev
PRO
0
130
スプリントレトロスペクティブはチーム観察の宝庫? 〜チームの衝突レベルに合わせたアプローチ仮説!〜
electricsatie
1
150
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Being A Developer After 40
akosma
90
590k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Code Review Best Practice
trishagee
70
19k
Designing for humans not robots
tammielis
253
25k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
BBQ
matthewcrist
89
9.8k
For a Future-Friendly Web
brad_frost
179
9.9k
Rails Girls Zürich Keynote
gr2m
95
14k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
510
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Transcript
Azure犬駆動開発の記録 2024/4/20 Global Azure in Fukuoka 馬場ひろの Hirono Baba
スピーカーについて ◼ 馬場ひろの ◼ (株)オルターブース所属 ◼ エンジニア4年生 ◼ AzureやGitHub, .NETがんばってます
◼ 夫、犬と3人(2人と1匹)家族 @nina-sensei
発表内容について ◼ 今日話すこと ◼ 我が家で2年超運用中の犬用システムの開発過程について ◼ 第1弾:ごはんあげた通知してくれるLINE Botの開発 ◼ 第2弾:ごはんあげた時間の記録が見れるWebページの開発
◼ 第3弾:イッヌがしゃべってる感じのBotの開発 ◼ 対象者 ◼ Azure初心者向け ◼ あまり高度な開発ではないです ◼ 息抜きにご覧ください
愛犬テイラーちゃん ◼ ロングコートチワワ(レッド) ◼ 6才、女の子 ◼ 関西出身 ◼ 性格:神経質 ◼
特技:拗ねる ◼ 宇宙一かわいい
第1弾
リモートワーク中に起こった、 お昼ごはんをあげたのかわからない問題 お昼休み遅くなった… テイラーのごはんあげてくれたかな? (ミーティング中なので部屋を閉めている) どうしよう確認が取れない… (おなかすいた)
◼ えさ用器の隣にIoTデバイスを設置 ◼ ごはんあげたらボタンを押す ◼ 押すとLINEに通知がくる 開発したシステム SORACOM Beam Messaging
API Azure Logic Apps SORACOM LTE-Mボタン
LTE-Mボタン + LINE Bot + Logic Apps ◼ SORACOM LTE-Mボタン
+ LINE Bot + Logic Appsで通知システムを作成 ◼ SORACOM LTE-M Button for Enterprise ◼ 3種類のクリックに応じたアクションをクラウド側で設定できる、自分だけのIoTボタンを作れる デバイス ◼ LTE-M通信を内蔵し、単四電池で駆動 ◼ クリックのパターンでBotの内容が変わる ◼ シングルクリック:お昼ごはんをあげた時 ◼ ダブルクリック:夜ごはんをあげた時 ◼ ロングクリック:ペットシーツを交換した時
Azure Logic Apps ※SORACOM、LINE側の設定は割愛
実際のLINE Bot ◼ (◐ㅈ◐)チワワの顔文字でテイラーがしゃべって いる感を演出 ◼ 犬と会話できているようで満足 ◼ クリック以外のレスポンスには定型文を送信
第1弾運用実績 ◼ 運用費(一か月あたり) ◼ SORACOM LTE-M Button for Enterprise ◼
月額:275円 ◼ Azure Logic Apps ◼ プラン:消費(従量課金の方):1円未満 ◼ 感想 ◼ ごはんを誰があげるかでもめなくなった ◼ ありがとうが増えた ◼ あげないほうも、ごはんをあげた確認ができるのが地味に助かる だいたいの実行回数 ◼ 昼:1回 ◼ 夜:1回 ◼ ペットシーツ交換時: 2~3日に1回
第2弾
ほしい機能ができた ◼ 通知のおかげでストレスなくごはんをあげられるようになった ◼ と同時に、ごはんをあげる時間のばらつきが気になるようになってきた ◼ 決まった時間にごはんをあげられているのか…? ◼ ごはんをあげた時間の記録を見たい! (◐ㅈ◐)はよくれ
追加機能 ◼ ごはんをあげた時間の記録が見たい ◼ Azure Table Storageに実行記録を保存 ◼ データをグラフで表示できるようにする ◼
Azure Static Web AppsでWebページを作成 Azure Static Web Apps (React.js) Azure Table Storage 当時社内の若手メンバーやインターンの 子たちとTS勉強会をやっていたので Reactを選定(初挑戦)
Webページを開発 ◼ 最初はLINE内にWebページを表示 できるLIFFアプリを作ろうとした ◼ Azure Static Web Appsの認証を 実装してみたかったのでWebペー
ジに変更 ◼ 折れ線グラフであげた時間を表示
第2弾運用実績 ◼ 運用費(一か月あたり) ◼ SORACOM LTE-M Button for Enterprise ◼
月額:275円 ◼ Azure Logic Apps ◼ プラン:消費(従量課金の方)、1円未満 ◼ Azure Static Web Apps ◼ プラン:Free、0円 ◼ Azure Table Storage ◼ 1円未満 ◼ 感想 ◼ 作成して1週間もしないうちに見なくなった ◼ 早々にサ終(SWAの勉強にはなった?) 原因:自分たちを追い込むだけの アプリになってしまった
第3弾
(このBotに)飽きてきた ◼ 2年超運用し、もはや我が家にはなくてはなら ないシステムとなった ◼ テイラーが話してる感が欲しくてこんなメッセ ージにしたのに、毎日見てるともちろん新鮮味 など皆無 ◼ いくつか返答パターンを作ってもいいが、どう
せならテイラーAIを作ろう…!
テイラーAI作成の作戦 ◼ いきなり本番用環境はいじれないので別アカウントのLINE Botを作る ◼ 本番環境はLogic Appsで運用中だが、先々を見据えてAzure Functions に移行することに Messaging
API Azure Functions Azure Open AI Service
AOAIリソースの作成 ◼ リソースからキーとエンドポイントを取得 ◼ Azure OpenAI Studioでモデルのデプロイを忘れずに
None
LINE Botの開発 ◼ Azure Open AIのSDKを使って実装 ◼ 最新バージョンでは`ChatMessage`は廃止 ◼ `ChatRequestSystemMessage`
◼ `ChatRequestUserMessage`
LINE Botの作成 ◼ 会話してみた ◼ 「わん」はやめてほしい ◼ SDKじゃなくてWeb APIたたく形にしても よかった
◼ でもAzure FunctionsのAOAIバインド機能 も使いたい ◼ どこまでできるかは要検証
改善点 ◼ 何往復か会話すると、設定が反映されなくなってくる問題 ◼ 今までの会話をプロンプトとして読み込ませるようコーディングしなおす? ◼ 会話の例をデータとして追加する?
今後について ◼ 本番環境にテイラーAIを組み込む ◼ Botの定型文がAIが生成した言葉に変わる ◼ テイラーAIの精度向上 ◼ Azure Logic
Apps → Azure Functionsに移行する ◼ Logic Appsに組み込んでもいいが、せっかくコーディングしたので使おう ◼ 勉強したいAzureサービスを組み込むアプリとして活用したい
Copyright © Alterbooth Inc. All Rights Reserved. おわり