$30 off During Our Annual Pro Sale. View Details »
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
400
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
300
Azure AI servicesと歯のおはなし/AzureTravelers_Fukuoka2024_baba
nina01
1
190
cloudugnight2nd-20240531
nina01
1
380
Azure FunctionsのAOAIバインド機能を試してみる/dotnet2days20240118-baba
nina01
0
170
AzureでWaiting roomをつくる!新米アーキテクトの挑戦記/jazug-for-women-20231215-baba
nina01
1
850
開発者のためのGitHub Advanced Security入門セキュリティを向上させよう!/cndfpre2023-baba
nina01
1
1.3k
Azure Policyとガバナンスのおはなし/globalazure2023-baba
nina01
0
950
Azure Functionsをサクッと開発、サクッとデプロイ/vscodeconf2023-baba
nina01
2
1.3k
Other Decks in Technology
See All in Technology
21st ACRi Webinar - AMD Presentation Slide (Nao Sumikawa)
nao_sumikawa
0
200
Claude Code はじめてガイド -1時間で学べるAI駆動開発の基本と実践-
oikon48
42
25k
ML PM Talk #1 - ML PMの分類に関する考察
lycorptech_jp
PRO
1
480
Playwrightのソースコードに見る、自動テストを自動で書く技術
yusukeiwaki
2
670
Active Directory 勉強会 第 6 回目 Active Directory セキュリティについて学ぶ回
eurekaberry
16
5.9k
Claude Code Getting Started Guide(en)
oikon48
0
140
プロダクトマネージャーが押さえておくべき、ソフトウェア資産とAIエージェント投資効果 / pmconf2025
i35_267
2
330
Eight Engineering Unit 紹介資料
sansan33
PRO
0
5.7k
Bakuraku Engineering Team Deck
layerx
PRO
11
5.7k
たかが特別な時間の終わり / It's Only the End of Special Time
watany
2
450
useEffectってなんで非推奨みたいなこと言われてるの?
maguroalternative
9
6.2k
MAP-7thplaceSolution
yukichi0403
2
250
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
69k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Thoughts on Productivity
jonyablonski
73
5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
54k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
380
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. おわり