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
140
cloudugnight2nd-20240531
Hirono Baba
May 31, 2024
Tweet
Share
More Decks by Hirono Baba
See All by Hirono Baba
Azure犬駆動開発の記録/GlobalAzureFukuoka2024_20240420
nina01
1
280
Azure FunctionsのAOAIバインド機能を試してみる/dotnet2days20240118-baba
nina01
0
120
AzureでWaiting roomをつくる!新米アーキテクトの挑戦記/jazug-for-women-20231215-baba
nina01
1
480
開発者のためのGitHub Advanced Security入門セキュリティを向上させよう!/cndfpre2023-baba
nina01
1
460
Azure Policyとガバナンスのおはなし/globalazure2023-baba
nina01
0
680
Azure Functionsをサクッと開発、サクッとデプロイ/vscodeconf2023-baba
nina01
2
930
Other Decks in Technology
See All in Technology
モノリスから小さなシステムへ / Chatworkシステム移行の現在地と今後について@開発生産性カンファレンス
tanakayuki
0
110
品質活動を事業に結びつけるためのQA文化の築き方 / how to build QA culture
mii3king
1
1.2k
やさしいITを目指すために
ishity__
0
290
障害対応を楽しむ7つのコツ
ryuichi1208
1
260
Okioに愛を込めて
ryunen344
3
840
スクラムエッセンス導入3ヶ月のチームに起きた変化
hacomono
PRO
1
120
「開発生産性を上げる改善」って儲かるの?に答えられるようにする / Is development productivity profitable?
i35_267
9
1.1k
Lernen durch Schmerzen! Mit Reinforcement Learning selbstlernende Systeme entwickeln
joergneumann
0
210
Kotlinらしいコードを書こう - Convert Java File to Kotlin File のあとにやること / What to do after Convert Java File to Kotlin File
yanzm
0
1.6k
Cloud Nativeを支える要素技術・プロダクト・プラクティスの歩み / infrastudy-returns-01-amsy810
masayaaoyama
3
370
エムスリーMR君ファミリー開発チーム紹介資料 / Introduction of M3 MRkun Family Dev Team
m3_engineering
0
110
BedrockUpdatesPost-GW Summary
hedgehog051
2
180
Featured
See All Featured
Navigating Team Friction
lara
180
13k
Web development in the modern age
philhawksworth
203
10k
The Language of Interfaces
destraynor
151
23k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
13
1.4k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.8k
Adopting Sorbet at Scale
ufuk
69
8.7k
Optimizing for Happiness
mojombo
372
69k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
5
300
Facilitating Awesome Meetings
lara
44
5.7k
Web Components: a chance to create the future
zenorocha
307
41k
How GitHub Uses GitHub to Build GitHub
holman
471
290k
Bash Introduction
62gerente
606
210k
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呼び出してみたい と思います ◼ ご清聴ありがとうございました