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
cloudugnight2nd-20240531
Search
Hirono Baba
May 31, 2024
Technology
1
270
cloudugnight2nd-20240531
Hirono Baba
May 31, 2024
Tweet
Share
More Decks by Hirono Baba
See All by Hirono Baba
Microsoft MVPになる前、なってから/Fukuoka_Tech_Women_Community_1_baba
nina01
0
230
Azure AI servicesと歯のおはなし/AzureTravelers_Fukuoka2024_baba
nina01
1
140
Azure犬駆動開発の記録/GlobalAzureFukuoka2024_20240420
nina01
1
340
Azure FunctionsのAOAIバインド機能を試してみる/dotnet2days20240118-baba
nina01
0
140
AzureでWaiting roomをつくる!新米アーキテクトの挑戦記/jazug-for-women-20231215-baba
nina01
1
690
開発者のためのGitHub Advanced Security入門セキュリティを向上させよう!/cndfpre2023-baba
nina01
1
930
Azure Policyとガバナンスのおはなし/globalazure2023-baba
nina01
0
790
Azure Functionsをサクッと開発、サクッとデプロイ/vscodeconf2023-baba
nina01
2
1.1k
Other Decks in Technology
See All in Technology
ソフトウェア開発現代史:製造業とソフトウェアは本当に共存できていたのか?品質とスピードを問い直す
takabow
15
5.3k
RevOpsへ至る道 データ活用による事業革新への挑戦 / path-to-revops
pei0804
3
800
顧客の声を集めて活かすリクルートPdMのVoC活用事例を徹底解剖!〜プロデザ!〜
recruitengineers
PRO
0
200
アーキテクチャわからん、の話
shirayanagiryuji
0
150
ココナラのセキュリティ組織の体制・役割・今後目指す世界
coconala_engineer
0
220
Fin-JAWS第38回reInvent2024_全金融系セッションをライトにまとめてみた
mhrtech
1
100
panicを深ぼってみる
kworkdev
PRO
2
140
インシデントキーメトリクスによるインシデント対応の改善 / Improving Incident Response using Incident Key Metrics
nari_ex
0
4k
ソフトウェアアーキテクトのための意思決定術: Software Architecture and Decision-Making
snoozer05
PRO
17
4k
Japan AWS Jr. Championsがお届けするre:Invent2024のハイライト ~ラスベガスで見てきた景色~
fukuchiiinu
0
1.1k
BLEAでAWSアカウントのセキュリティレベルを向上させよう
koheiyoshikawa
0
130
Re:Define 可用性を支える モニタリング、パフォーマンス最適化、そしてセキュリティ
pyama86
9
5.6k
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
327
24k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Thoughts on Productivity
jonyablonski
68
4.4k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Faster Mobile Websites
deanohume
305
30k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
52k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Why Our Code Smells
bkeepers
PRO
335
57k
Transcript
Azure Functionsの最新アップデート をチェックしてみる 2024/5/31 福岡クラウドUG Night 2nd 馬場ひろの Hirono Baba
スピーカーについて ◼ 馬場ひろの ◼ (株)オルターブース所属 ◼ JAZUG福岡 ◼ ex 歯科医師
◼ AzureやGitHub, .NETがんばってます @nina-sensei
JAZUG(Japan Azure User Group) ◼ JAZUG(通称:ジャズ、ジャズユージ―) ◼ JAZUGは、Microsoft Azureを学び、楽しみ、活かすユーザーグループ ◼
https://jazug.connpass.com/ ◼ 福岡支部は「ふくあず」 ◼ JAZUG for Women ◼ 女性エンジニアが主役のAzure勉強会 ◼ 現地会場は、女性のみ参加が可能(オンラインは誰でも視聴可能)
コミュニティ活動 ◼ 最近の活動 ◼ 4/20(土):Global Azure in Fukuoka ◼ 世界中のAzureコミュニティが3日間にわたり一斉に開催するイベント
◼ 初めて福岡で開催しました!(日本は東京、北海道、福岡で同時開催) ◼ 直近のイベント ◼ 6/14(金):第3回 JAZUG for Women ◼ オンサイト(東京)、オンラインのハイブリッド開催 ◼ Azure Travelers ◼ 日本各地を回るAzureのコミュニティイベント ◼ 10月に福岡で開催決定!
発表内容について ◼ 今日話すこと ◼ Azure Functionsのアップデート ◼ Flex consumptionについて ◼
OpenAIバインド機能について ◼ 目的 ◼ 2024年5月現在のAzure Functionsの最新アップデートをキャッチアップすること ◼ 対象者 ◼ クラウド初~中級者向け ◼ サーバーレス好きな人
Azure ◼ Microsoft Azureについて ◼ Microsoftが提供するクラウドコンピューティングサービス ◼ サービスの種類 ◼ IaaS,
PaaS, SaaS等 ◼ エンタープライズ向けのサポート ◼ Microsoft365などのMicrosoft製品とスムーズな統合 ◼ 200以上のサービスが展開されている
Microsoft Build 2024 ◼ Microsoft Build とは( 5/21‐23 ) ◼
Microsoftが年に一度開催する開発者向けのカンファレンス ◼ Microsoft Build Japan(6/27‐28) ◼ 今年もたくさんのアップデートがありました! ◼ GPT-4oがAzure OpenAI Service上でGA ◼ GitHub Copilot Workspace:Private Preview ◼ GitHub Copilot for Azure:Public Preview などなど… ◼ アップデートはBook of Newsから見ることができます https://news.microsoft.com/build-2024-book-of-news/ja/
Azure Functions推しです ◼ Azure Functionsとは ◼ イベントをトリガーとしてプログラムを実行するAzureのサービス ◼ HTTP, Timer,
Queue, その他Azureのサービスをトリガーとすることができる ◼ サーバーレスコンピューティングプラットフォーム ◼ 関数1つからデプロイ可能 ◼ 様々な言語をサポート ◼ C#, JavaScript, Java, PowerShell, Python, TypeScript ◼ 低価格で試すことができる ◼ バインド機能あり
Azure Functionsのアップデートたち ◼ Azure Functions が Azure Container Apps で利用可能に
◼ Azure Functions の Azure SQL トリガー サポート ◼ Azure Functions による Node.js での HTTP ストリームのサポート ◼ Dapr 用の Azure Functions 拡張機能 ◼ Azure Event Grid テンプレートと VS Code 統合を備えた Blob トリガーが利用可能 ◼ Flex Consumptionプランの登場 ◼ OpenAI 向け Azure Functions 拡張機能 ◼ Python での Azure Functions を使用した Azure Blob Storage の SDK 型バインディング ◼ Azure Functions による Python での HTTP ストリームのサポート ◼ Azure Load Testing と Azure Functions の統合 GA Public Preview
Flex consumption
サーバーレスコールドスタートを理解する ◼ コールドスタートとは ◼ 使用されていないアプリケーションの起動に時間がかかる現象 ◼ 一定時間アイドル状態だとインスタンスが落とされる ◼ Azure Functionsが実行されるまで
容量のあるサーバー にアプリケーション を割り当てる Functionsランタイ ムを設定する Functionsランタイ ムをリセット Functionsをメモリ にロードする コードが実行される ファイルをマウント App settingの適応 設定ファイルロード 拡張機能のロード
コールドスタートを回避するには ◼ 回避するためにできること ◼ GAされている(サポートされている)言語を使用する ◼ 軽量なコードを書く ◼ 依存関係に注意、効率的なコードを書く ◼
従量課金以外のプランを検討 ◼ Premiumプラン、App Serviceプランはプレウォーミングでき、事前にサーバーを温めておくこ とで回避できる Azure Functionsのプラン ◼ 従量課金プラン ◼ Premiumプラン ◼ App Service(専用)プラン しかしこれらのプランは料金が高いのがネック
新しいプランが登場 ◼ Flex Consumptionプラン ◼ Linuxベースのホスティングプラン ◼ 仮想ネットワークの統合 ◼ スケールの柔軟性
◼ インスタンス、メモリ サイズなどの複数の選択肢 ◼ インスタンスごとの同時実行 ◼ 関数ごとのスケーリング ◼ 常時使用可能なインスタンス Legionという バックエンドのおかげ 機能 従量課金プラン Flex Consumption プラン ゼロにスケール ◦ ◦ スケーリングの動作 イベントドリブン イベントドリブン (高速) 仮想ネットワーク ✕ ◦ コールドスタートの軽減 ✕ ◦ 料金 実行時間のみ 実行時間と常時使用 可能なインスタンス スケールアウト(最大) 200 1000
OpenAIバインド機能
Azure OpenAI Serviceとは ◼ OpenAI社が開発したAIモデルをAzure上で利用できるサービス ◼ GPT-4o, GPT-4 Turbo, GPT-4,
GPT-3.5, Embeddings, DALL-E, Whisper, Text to speech(Preview)
バインド機能まとめ ◼ 少ないコードで他のサービスに接続するための方法 Blob Storage Azure Cosmos DB Azure SQL
Dapr Event Grid HTTP と Webhook IoT Hub Kafka Mobile Apps Notification Hubs Queue Storage Redis RabbitMQ SendGrid Service Bus SignalR Table Storage Timer Twillio
Functionsのバインドってこんなの ◼ コード例 Azure Blobの入力バインディング Azure SQL Databaseの入力バインディング
現在開発されているバインド機能 ◼ Text completions ◼ テキスト補完、任意のテキストの続きを生成してくれる ◼ Assistants ◼ チャットボットをベースに、アシスタントの役割を担ってくれる
◼ Embeddings generators ◼ テキスト文字列の関連性をベクトル化し測定してくれる ◼ Semantic search ◼ 出力バインディング:ベクトルデータベースにドキュメントをインポート ◼ 入力バインディング:データベース内のドキュメントにクエリを発行
準備 ◼ NuGet Packagesをインス トールする ◼ Azure OpenAI Serviceのリ ソースを作成
◼ AZURE_OPENAI_KEY と AZURE_OPENAI_ENDPOINT をlocal.settings.jsonに設定 ◼ 実行環境 ◼ Visual Studio 2022 ◼ .NET6.0(In-Processモデル) ◼ Azure Functions Core Tools v4.x
AOAIの設定 ◼ リソースからキーとエンドポイントを取得 ◼ Azure OpenAI Studioでモデルのデプロイを忘れずに
Text Completions ◼ プロンプトとモデルは必須 ◼ Temperature, TopP, MaxTokenを指定可能 ◼ 自分でAPIを呼び出すより
◼ 少ないコードで実装できる ◼ 簡単に実装可能 ◼ カスタマイズ性は乏しい プロンプト
メリットデメリットを考えてみた ◼ Azure OpenAIをAPIで呼び出した場合と比較して ◼ メリット ◼ 少ないコードで実装できる ◼ あらかじめエラーハンドリングしてくれている
◼ 他のAzureサービスと統合しやすくなる ◼ デメリット ◼ カスタマイズ性に欠ける ◼ APIリクエストの内容やエラーハンドリングなど自由に設計できない
Azure Functionsを用いて開発をしてます ◼ Azure Functions × Azure Static Web Apps
× Azure OpenAI Serviceで犬用アプリを開発してます(家庭で運用中) ◼ 先月のGlabal Azure in Fukuokaで発表しました ◼ このアプリでもバインド機能を 使ってAOAI呼び出してみたい と思います ◼ ご清聴ありがとうございました