サイト内の現在位置

Microsoftは昨年から3つのプラットフォームを構築

「Microsoft Build 2024 Recap」セミナーレポート

Build Recap:全体概要

日本マイクロソフト株式会社
パートナーテクノロジーストラテジスト 
渡部 正人 氏

全体概要

前回のMicrosoft Build 2023から1年経過したMicrosoft Build 2024の期間でMicrosoftは3つのプラットフォームを構築した。その3つとはMicrosoft Copilot、Copilot+PC、Copilot Stackである。Microsoft Copilotは生成AIをベースにしたアシスタント機能、Copilot StackはCopilotを使用者独自のものを作成できるソフトウェアスタック、そして今回のMicrosoft Build 2024で新たにCopilot + PCが発表された。
Microsoft Build 2024では最初にCopilot + PCについての発表があり、その後Microsoft Build 2023、Microsoft Ignite 2023と同様にCopilot Stackのレイヤーごとに発表があり、合計で50を超えるアップデートが紹介された。

Microsoft Build 2023から2024までに発表した3つのプラットフォーム

Microsoft Build 2023から2024までに発表した3つのプラットフォーム

Copilot + PC

Copilot + PCはAIに最適化された高性能NPUを搭載したAI ReadyなPCである。このPCにはAI機能が搭載されており、ローカルで様々なAI機能を使用することができる。具体的には、過去に作成した資料をタイムラインや自然言語で検索できるRecall機能、簡単な絵をペイントで描いてAIによってリアルな画像へと変換してくれるペイントのCocreator機能、そしてネットワークにつながっていなくてもローカルで翻訳表示をするライブ翻訳機能がある。 
さらにこのCopilot + PC上でAIアプリケーションを構築・実行するための実行エンジンとライブラリであるWindows Copilot RuntimeおよびWindows Copilot Libraryが新しく発表された。このライブラリには複数機能があるが、Phi-Silicaが搭載されていることが注目すべき点である。Phi-SilicaはMicrosoft Researchが開発しているSmall Language Model(SLM)であり、この生成AIがCopilot + PCに必ず搭載され、Phi-Silicaを利用したアプリケーションが実装できるようになっている。
また、DirectML(Machine Learning)経由でPyTorchとWeb Neural Networkの提供が開発者プレビューの形で発表された。

Copilot Stackの変化

Microsoft Build 2024で発表されたCopilot StackはMicrosoft Build 2023から大きく2つ変化した。1つはMicrosoft Build 2023の時点ではクラウド上で実行することを想定して作成されていたものだが、Copilot+PCに代表されるようなエッジ側での機能実装がなされていくという点である。2つ目はAIの安全性とセキュリティが明示的に示され、さらにはビルトイン機能が充実してきているという点である。
クラウドだけではなくエッジへの適用や安全性やセキュリティ機能の拡充によってこれまで以上に実案件への適用が行いやすくなってきているといえる。

Copilotスタックの変化

Copilotスタックの変化

AIインフラ

OpenAI社の公開レポートから抜粋されたグラフが示され、現在の深層学習時代の発展が語られた。2010年代まではコンピューティング能力が追い付かず、精度の上がり方もゆっくりとしたものだった。しかし、2010年代に入りクラウドやGPUの活用により深層学習の実用化に耐えうるインフラが揃ってきたことが説明され、2010年代以降はこれまでの約3倍の速度で精度が上がっていることが示された。  
また、OpenAIのGPTは全てMicrosoft Azure上で構築されているが、GPT-4、GPT-4 Turbo、GPT-4oと性能がアップしインフラが最適化されることで、処理速度が高速になるとともに、価格も安くなっていることが強調された。  
さらに、スーパーコンピューターの世界ランキングで2023/11に3位にランキング入りして最新の6月のランキングでも3位を維持している。また、この2023/11~2024/5の半年間でスーパーコンピューターのインフラを30倍に増強していることにも言及があった。
このようなインフラ強化に併せてNVIDIA社とのフルスタックのパートナーシップを更に拡大している。具体的にはチップセットのBlackwellのAzure対応、マイクロサービスのNIMのAzure AI対応といったものがあげられる。また、NVIDIA社以外の取り組みも強化しており、AMD社のND MI300X V5が搭載された仮想マシンの一般提供開始、OpenAI社と開発しているAzure MaiaがすでにOpenAI社のCopilotのインフラとして稼働、そしてArmベースのチップセットであるAzure Cobaltがパブリックプレビューとして提供を開始した。このAzure Cobaltは既にSnowflake社、Elastic社でも使用されている。

基礎モデル

現在、Azure AIは5万を超える組織で利用されており、生成AIの中でもOpenAI社のモデルは引き続き多くのモデルを提供している。今回はOpenAI社のモデルにおいてもいくつかの発表があったがその中でも特に注目されるモデルとしてGPT-4oがあげられる。GPT-4oのOpenAI社での発表は5/13であったがAzure上でも同日に制限付きで公開された。さらに今回 Microsoft Build 2024開催のタイミングで一般提供開始となった。  
OpenAI社以外のモデルラインナップも強化しており2024/1以降様々なモデルを公開している。今回のMicrosoft Build 2024では新しく2つのモデルが公開され、6つのモデルが今後公開されることが発表された。  
Phi-3はSLMの中でもほかのモデルに比べ、ベンチマークで高い評価を得ていることが示された。  
また、モデル作成からデプロイまで行えるAzure AI Studioが一般提供された。AIの適正使用を行えるようにする機能であるAzure AI Content Safetyにおいては独自フィルタの実装やプロンプトインジェクションを防ぐ機能、またハルシネーションを検知する機能などが強化された。

データ

Microsoft Fabricが発売間もないが1.1万を超える顧客で利用されている。このMicrosoft Fabricで大きな発表が2つあった。1つはIoTなどのリアルタイムデータを可視化する、Real-Time Intelligence機能がパブリックプレビューとして発表された。2つ目はWorkload Development Kitという機能である。OneLakeに溜めたデータを用いてAzureサービスで加工や可視化を行っていた部分を、インターフェースを公開してサードパーティー製品でアプリケーション連携をするという機能である。こちらもパブリックプレビューとなっている。

AIオーケストレーションとツール

GitHub Copilotは発売開始から約3年が経過し全世界で180万人、組織としては5万以上に利用されているサービスに成長した。修正プログラム作成の際に仕様案、実装案をCopilotで作成し、コーディングやデバッグまでもCopilotに行わせるというGitHub Copilot Workspaceがプライベートプレビューで発表された。開発者側としてはその都度自然言語で指示を出すだけでコードができてしまうものである。  
次にAzure上でリソース操作を行う際にプロンプトを記載するだけで扱えるCopilot for Azureがプレビューとして発表された。

Copilotレイヤー

すでに一般提供され使用されているMicrosoft Copilot Connectorsについて改めて発表があった。現在Power Platformで使用できるコネクターが1400程度存在するが、そのコネクターをCopilot Studioの中からインストールして設定すれば使用可能という機能である。
さらに、これまでCopilotというと1人に対するアシスタントというコンセプトであったが、複数人に対するアシスタントとしてファシリテート、グループコラボレーター、プロジェクトマネージャーの役割をしてくれるTeam Copilotがアナウンスされた。

今回のMicrosoft Build 2024ではここ最近続いていたAIの勢いを踏襲しつつも、インフラレイヤーからアプリケーションレイヤー、またクラウドだけでなくエッジにわたり広範な発表があった。AI関連の技術要素と周辺のプラットフォームの双方が強化・拡張されており、今後更なる進化が見られるのではないだろうか。

 

Build Recap:AIアップデート

日本マイクロソフト株式会社
パートナーソリューションアーキテクト
花ケ﨑 伸祐 氏

Microsoft Inspire 2023で語られたAIによるプラットフォームシフトがMicrosoft Build 2024で新たな要素を加えて再度語られた。以前のプラットフォームシフトはインターフェース層とリーズニング層の2層で語られていたが、今回はその間にメモリー&コンテキスト層が新たに追加された。まずはインターフェース層であるが、もはや自然言語の入力だけでなく写真、動画、音声などのマルチモーダルでユニバーサルなインターフェースに進化した。次に新たなメモリー&コンテキスト層であるが、ここではプロンプト記載時のコンテキストやグラウンディングによって過去の履歴を考慮できるようになったことで新しく追加された。最後にリーズニング層はLLMのタスク解決能力に加え実行計画を立てさせるプランニングの概念が追加された。

AIによるプラットフォームシフトの概念図

AIによるプラットフォームシフトの概念図

このプラットフォームシフトの考え方はCopilot Stackでも見ることができる。今回はCopilot StackのAzure AI領域(AIインフラストラクチャー、データ、基盤モデル、AIオーケストレーションとツールチェーン)に着目する。Azure AI領域に該当しているサービスはAzure AI Studioとなる。Azure AI StudioはLLMの選定、ベンチマーク、テスト、フロー構築、実行、デプロイ、そしてデプロイ後の監視までをEnd to EndでLLMのアプリケーションを作成できるプラットフォームとなっている。
そして、Azure AIのアップデートでは、Azure AI Studio、GPT-4o、Phi-3、GPT-4 Turbo with Vision、DALLE-3、Whisperが一般提供され、Assistants APIのバージョン2アップデート、Fine Tuning for GPT-4、Batch API、Configurable Content Filters for Dall-E and GPT-4-Turbo、Integration with Azure Communications Services for WhatsApp、Video Translationがプレビューとして提供されることが発表された。

基盤モデル

1番の目玉はGPT-4oの一般提供開始になる。精度の向上、マルチモーダル入力、さらに安価な提供価格、そして処理スピードの向上と利用者にとって利便性が向上されている。また、精度の向上としては様々なベンチマークで最先端の性能(SOTA :State of the art)を達成していることが取り上げられた。
次に、Azure OpenAI Batch APIがアナウンスされた。非同期で大量の回答を求めたいようなバッチ処理を使用する 場面で役立つサービスである。このサービスには回答が返ってくるまで最大24時間という制約があるものの、Azure OpenAIを半分のコストで利用できるメリットがある。
そして、現在の様々な機能とこれからの利用方法についてシナリオ整理してみると3つの利用方法が出てくる。

  1. 1. プロンプトエンジニアリング/RAG
  2. プロンプトエンジニアリングは既に浸透してきているが、RAGは日本国内での取り組みは多く、社内ドキュメントをとってきてLLMで回答させるといったシナリオで使用されている。
  3. 2. Functions/APIs
  4. FunctionsやAPIを組み合わせる方法では、LLMのタスク処理の順番を構造化して抽出することができる。またパラメーターの抽出も可能なのでパラメーターの値からどのAPIを使うかを決定することで、意図の検出やプランニングといったシナリオで使用できる。
  5. 3. Agents
  6. Functionsを役割毎に分けてエージェントに入れて複数の特化エージェントを用意して組み合わせることで高度な課題を解決するシナリオで使用できる。現在はまだRAGの取り組みが多い状態だが、将来的にFunctionsやエージェントを使用したアプリパターンへ移行していくと考えられる。


さらに、高度なソリューションを開発するための機能であるAssistants APIにアップデートがあった。Assistants APIはCopilot StackでAIオーケストレーション層の部分を高度化している存在である。ベクトルデータベース経由のファイルサーチができるようになり、今後Bing検索を活用できる機能が追加されるとの発表があった。
Azure AI StudioやAzure Machine Learningの中にモデルカタログがあり、OpenAI社以外のモデルを選択できるようになっている。これはMicrosoft社との戦略的パートナーシップによるもので、Meta、Mistral、Cohere、Hugging Face、Databricks、NVIDIA、そしてSnowflakeが挙げられる。そんな中モデルカタログに8つ新たに追加されることが発表された。モデルカタログは英語のものばかりであったが、NTT DATA社やCohere社の日本語に対応したモデルが加わり、リランクを独自に行うことができるモデル、そして時系列モデルなどバラエティー豊かになってきている。

SLM

MicrosoftはSLMであるPhi-3シリーズの提供を開始した。このモデルは同程度もしくはそのモデルより多いパラメーターを持つモデルより性能が良いということがアピールされている。ただし、まだ日本語には対応していないため実際に使用する際には様々なテクニックを組み合わせて使用する必要がある。
次に、Phi-3シリーズの中で42億パラメーターのPhi-3-Visionが公開された。このモデルはグラフや表の推論の精度が高く、PowerPointのスライド1枚を画像化してから説明などを行ってもらうことができる。このモデルでは文字認識(OCR)では意味が失われる、フローや矢印の意図といったものも説明が可能となっている。  
また、Phi-3はSLMで軽量モデルのためエッジ側にデプロイすることができる。もちろんPhi-3だけで解決できないタスクは存在するが、そのようなタスクにはクラウド上のLLMと組み合わせて動作させることにより、解決することができる。このようにSLMの特性を生かしてエッジ(ローカル)とクラウドをうまく使い分けてユーザーエクスペリエンスを高めていくことができる。 

データ

今回のBuildにてデータ領域で発表された一番大きいものは、あらゆるデータベースにベクトル検索機能が標準機能として追加されたことである。
Azure AI Searchは最も急速に成長しているサービスの一つであり、全文検索エンジンおよびベクトルデータベースとして最先端の検索機能がある。実はこちらのサービスはOpenAI社が使用しているという事例紹介がされており、GPTs及びAssistants APIのファイルアップロード機能のバックエンドでAzure AI Searchが使用されており、ユーザーがアップロード可能なファイル量が500倍になったことが紹介された。
さらにAzure AI Searchはベクトル検索のための様々な機能を追加している。その1つがEmbeddingsベクトルの量子化である。例えばOpenAIのEmbeddings APIが生成するベクトルはfloat32であるが、それをより小さいサイズであるint8に自動でマッピングする機能が出てきている。またこのint8へのマッピング機能が出てきた後に1ビットの量子化にも対応した。このfloat32からマッピングする機能によりサイズが小さくなるため、コスト削減につながっているが、その一方で精度も落ちてきてしまう。例えば、Cohere v3 Embedのfloat32から1ビットに量子化した時、それぞれの精度をMIRACLデータセットのQ&A試験をもとにして精度を比較すると、94.7%は元のパフォーマンスを維持できているという結果が出ている。精度を求めるか、速度およびサイズを求めるか、のトレードオフになるが状況によって使い分けていくことができる。

AIオーケストレーションとツール

オーケストレーションツールはAzure AI Studioが一般提供開始となっている。今回は機能アップデートということでTracing and debuggingがパブリックプレビューとなった。この機能はAzure AI StudioにLLMの実行結果をログで送信して貯めることができる機能である。実行しているAIが複雑なプロセスを経ている場合に可視化してみることができる機能であり、こちらはLLMのSDKやフレームワークの種類によらない形で使用できるのも魅力の1つである。
また、Promptyと呼ばれる言葉が登場した。このPromptyという言葉は「.prompty」というファイル形式をさしている。このファイルの中身はプロンプトとプロンプトを実行するLLMの実行設定が入っているものであり、その実態はプロンプトテンプレートの進化版である。このpromptyはCI/CDへ乗せるためのプロンプトと、実行結果の再現性を担保する実行設定を一緒に管理するために生まれ、今後様々なところで使用されていくと考えられる。
MicrosoftとしてはAzure AI StudioとデータレイヤーのMicrosoft Fabricの統合を目指している。具体的にはOneLakeをハブにしてLLMに対してデータを送り込んでいくという考え方である。他社ベンダー様のデータも一緒にOneLakeのショートカットを使ってシームレスにアクセスできるため 、OneLakeをハブとしてPrompt flowにグラウンディングする、IoTなどのリアルタイム性のあるデータも入れ込みRAGアーキテクチャーを組む、といったようなデータ基盤との連携を活用してAIの利活用発展を強化していくというビジョンが示された。

Microsoftの目指すデータとAIオーケストレーションの統合

Microsoftの目指すデータとAIオーケストレーションの統合

Copilot Stackの強化と更なるAI活用に向けて様々なモデルの追加やベクトル検索機能の追加など様々な取り組みが見られた。特に今回のMicrosoft Build 2024ではAI活用やAI開発のための機能強化も目立ってきていると感じられた。AIを用いたソリューションからAIの更なる応用にも今後より一層力が入ってくることを予感させる。

 

Build Recap:App&Development

日本マイクロソフト株式会社
パートナーソリューションアーキテクト 
物江 修 氏

Microsoft AzureのPaaSと開発ツールに関するアップデートについて説明が行われた 。Microsoftの基幹イベントではBook of Newsというものが毎回発行される。気になるサービスがあれば技術ドキュメントなどのリンクが掲載されているので、そこからも理解を深めてほしい。

App Service

Azure App Service全体に共通するアップデートは合計5つ発表された。

  1. 1. 自動スケーリングが一般提供開始
    自動スケーリングは今までも存在したと感じる方は多いと思うが、その違いを説明する。まず、今まで使用していた自動スケーリングはAzure 自動スケーリングと呼ばれるものである。今回新しく出てきた自動スケーリングはCPUやメモリの負荷に応じてではなく、HTTPトラフィックに基づいてスケールアウト、スケールインする。スケジューリングも従来のものはできたが新しいものはできない。ただし、従来のものと新しいものを使 い分けるといったことができる。
  2. 2. アベイラビリティゾーンベースで99.99%の回復性をサポート
  3. 3. TLS1.3の利用の一般提供
  4. 4. 新しいSKUであるApp Service Environment v3が出てきている。こちらは従来のSKUに比べCPU、コア数に対して倍のメモリが追加できるものである。
  5. 5. Azure portalにBetter TogetherとLoad Testingの2メニュ―が追加された。Better TogetherはAI(Copilot for Azure)がApp Serviceの構成情報を分析し、同様のアプリが使用しているパターンに基づいて、サービスの追加などを提言してくれる機能となっている。Load TestingはメニューからそのままLoad Testing機能が使用できるようになった。

Azure App Service for Linuxでは合計3つのアップデートが発表された 。

  1. 1. サイドカーシナリオが提供開始
    Azure Container AppsやAKSを用いて作成していたものを、Azure App Service for Linuxで4つまでサイドカー対応のものが作成できるようになった。
  2. 2. Web Jobs(Cron)のサポート
    今までWindowsベースのみサポートされていたが、Linuxベースでもサポートされた。
  3. 3. その他機能
    PHP8.3が使用可能になったこと、gRPCがサポートされたこと、MySQLのフリープランが使用可能になったというアップデートが発表されている。

API Management関連

OpenAI Serviceを使用することを前提とした機能が5つ追加された。

  1. 1. Azure OpenAIトークン制限ポリシー
    生成AIではトークンという単位で課金が発生する。そのため、管理者側としては利用者に対して細かい制限をかける必要が出てくるが、その時に使用するポリシーが今回用意されたことになる。
  2. 2.  Azure OpenAI発行トークンメトリックポリシー
    1.と同様にプロンプト、完了、合計トークン使用量のログを取得するポリシーも登場した。
  3. 3. ロードバランサーとサーキットブレーカー機能の追加
    Azure OpenAIサービスにはインスタンスやリージョンによってクォーター制限が存在する。このクォーター制限を回避するために複数インスタンスを立てる、異なるリージョンにインスタンスを立てるといったことを行う。これまではAPI Managementのインバウンドポリシーを使うことでラウンドロビンをするなど行っていたが、そこにロードバランサーとして重みづけや優先順位をつけるといった負荷分散が可能になった。サーキットブレーカーはリトライ時にバックエンドが応答しなくなった場合、前もって設定していたポリシーに基づいて別のインスタンスにつなぐ機能である。
  4. 4. Azure OpenAIのAPIをAPI Managementの関数としてインポート
  5. 5. Azure OpenAI セマンテックキャッシュポリシー
    意味的に類似したプロンプトを識別しそれぞれの入力候補をキャッシュしてトークン消費を削減する機能となっている。

Azure API Center

Azure API Centerというものが一般提供開始された。組織で持っているAPIの台帳を作成と管理をしてくれる。ただし、登録自体は手動で行う必要がある。こちらの機能を使用することにより、社内にどのようなAPIがあるか、どのようなルールでAPIが使用・作成されているか、APIの検索、そしてAPIの使用の促進をすることができる。

Container Apps、Kubernetes Services

Azure Container Appsでは4つのアップデートが発表された。

  1. 1. 動的(Dynamic)セッション
    セキュリティで保護されたサンドボックス環境を提供して、信頼されていないコード、コマンドを安全に実行するというものである。
  2. 2. Javaコンポーネントと運用機能セットの提供
    この2つはAzure Container Appsの環境の一部として管理できるようになっている。具体的には、JavaコンポーネントはSpring Cloud、Spring Cloud Config、そしてSpring Cloud Eurekaなどが提供される。運用機能セットとしてはネイティブJavaメトリックサポート、ロギング、メモリフィット、そしてトムキャットなどが提供される。
  3. 3. .NET Aspireダッシュボードをマネージドコンポーネント提供
    分散システムを開発するためのツールセットがあり、そのツールセットにて分散アプリケーションのコンポーネント状態を表示するダッシュボードを提供するものである。
  4. 4.  CNCFのOpenTelemetry(OTel)のサポート
    OpenTelemetryはサービスのパフォーマンスを測定するOSSである。OpenTelemetryでインストルメント化されている場合はAzure Container AppsのマネージドOpenTelemetryコレクターを使用して、データをAzure、もしくはそれ以外の宛先にパイプ処理を送ることができるようになった。

Azure Kubernetes Serviceでは4つのアップデートが発表された。

  1. 1. AKS Automatic
    3つの機能が追加されており、1つ目は「既定で運用準備完了」であるが、こちらはベストプラクティスと実績のあるテンプレートを使用してクラスターの構成、リソーススケーリング、そして環境のセキュリティ保護をAKS側で行ってくれる。2つ目は「統合されたベストプラクティスとセーフガード」となっており、計画メンテナンススケジュールに従い、ノードとクラスターコンポーネントに自動的にパッチを適用する。ネットワークポリシー、Microsoft Entraで保護されたリソースのアクセスなどの規定の設定が最初から付属している状態になっており、Azure Policy、Azure Monitor、Azure Keyboardを統合してガバナンスを提供する仕組みとなっている。3つ目は「数分でコードからKubernetesへ」であるが、内容はコンテナイメージからベストプラクティスパターンに準拠するデプロイ済みアプリケーションを数分以内に移行する機能である。
  2. 2. AIによる支援
    3つの機能が追加されており、1つ目はAzure Kubernetes Fleet Managerのインテリジェントなワークロードスケジューリングである。2つ目はAzure Copilotへの新しいAKS用スキルが追加され、様々な新しい命令を送れるようになった。3つ目はAzure portalでメモリ、CPU、Cron、Azure Service BusスケーラーでのKEDAスケーリングがサポートされ、スケーリングされたオブジェクトとジョブを簡単に作成および監視可能となった。
  3. 3. セキュリティ
    3つの機能が追加されており、1つ目はデプロイセーフガード適用モードである。これは適用された個々のセーフガードに基づきKubernetesリソースを自動的に修正してくれるものである。これはリソースがベストプラクティスから逸脱した場合に問い合わせユーザーになされ、Warningで警告、Enforcementで拒否、といった操作を行うことができる。2つ目はDefender for Containersの提供であり、Kubernetesのセキュリティを強化するための多面的な戦略と追加の保護レイヤーを提供する。3つ目はContainers Secure Supply Chain(CSSC)フレームワークであり、パブリックリソースからのイメージ取得、AKSのデプロイまで、コンテナのライフサイクル全体にわたる一連のセキュリティベストプラクティスを提供するものとなっている。
  4. 4.  AI/MLワークロードの実行
    2つの機能が追加されており、1つ目はノードの自動プロビジョニング(NAP)である。VM構成を効率的でコスト効率の高い方法で実行してくれる機能となっており、ワークロードデプロイ前のノードプール構成の負担を大幅に軽減できるメリットがある。2つ目はKubernetes AIツールチェーンオペレーター(KAITO)であり、必要なGPUノードを自動的にプロビジョニングし、関連している推論サーバーをAIモデルへのエンドポイントサーバーとして設定してくれる。

Functions、Logic Apps

Functionsでは合計10個の発表がなされた。

  1. 1. Flex従量課金プランホスティング
    LinuxベースのAzure Functionsホスティングプランで使用した分だけ支払う課金モデルとなっている。今までの従量課金プランと異なるのはスケーリング動作の高速化、仮想ネットワークが使用可能、コールドスタートの軽減、常時使用可能なインスタンスの使用可能、そしてスケールアウトできる規模が大きくなったことである。
  2. 2. Functions on Azure Container Apps
    GitHub actionsとDevOpsを使用してコンテナとしてContainer Apps上にデプロイが可能になった。この機能によりContainer Appsを使用したマイクロサービスの作成にFunctionsが使えるようになった。
  3. 3. Azure SQLトリガーのサポート
    Azure SQLのトリガーをFunctionsでかけられることになり、Functionsを使用してイベントドリブンアプリケーションを開発可能となった。
  4. 4. Node.js・PythonでのHTTPストリームのサポート
    大規模データの処理や、OpenAIのオートストリーミング、そして動画コンテンツ配信などのシナリオが可能になる。
  5. 5. DaprのAzure Functions拡張機能の一般提供
    AKSとACAにてFunctionsを使ってマイクロサービスを作成ができるようになった。
  6. 6. Azure Event GridテンプレートとVS Code統合を使用したBLOBトリガーが利用可能 Azure portalからFunctionsのコードを書けるが、これがEvent GridでBLOBトリガーを利用して開発するテンプレートが使用可能になり、VS Codeでも同様の機能がサポートされたものである。
  7. 7. OpenAIのトリガーとバインド
    セマンティック検索用に独自のデータを持ち込む、コンテンツの要約と作成のためのテキストを補完、チャットアシスタントの構築ができるようになった。
  8. 8. Python を使用したAzure BLOB StorageのSDK型バインド 従来から提供されている機能ではあるが、より大きなサイズのBLOBのダウンロードとアップロードが可能になり、メモリ制限とgRPC制限を削減してパフォーマンスを向上した、というものである。
  9. 9. Azure Load Testingとの統合
    Azure portal上のFunctions UI上からLoad Testingが使用可能になり、パフォーマンスオプティマイザーなどの機能が追加された。
  10. 10. .NETサポート
    分離ワーカーモデルで.NET8がサポートされインプロセスモデルでのサポートは近日中に予定されている。

Logic Appsでは合計5つが発表された。

  1. 1. Microsoft Visual Studio Codeでのオンボーディングエクスペリエンスが改善
    拡張機能のインストールが簡素化、プロジェクトの開始とデバッグが改善された。
  2. 2. Visual Studio CodeのLogic Apps Standardデプロイメントスクリプトツール
    インフラスクリプトの作成を自動化するツールが提供され、CI/CDプロセスの設定プロセスを簡素化して自動デプロイメント用のコードを準備するタスクを合理化する仕組みが加わった。
  3. 3. Zero Downtime配備シナリオのサポート
    デプロイメントスロットがサポートされZero Downtimeデプロイメントシナリオが有効になった。
  4. 4. .NET8のカスタムコードのサポート
  5. 5. IBMメインフレームおよびミッドレンジ用のLogic Appsコネクターが一般提供

.NET、Visual Studio、Visual Studio Code、DevBox

.NETでは3つが発表された。

  1. 1. .NET Aspireの一般提供
    分散アプリの構築と実行に役立つ、一貫性のある独自のツールとパターンのセットを提供し、既存の分散システム、分散していないシステムに使用できる。また、ローカル開発環境のマルチプロジェクトアプリケーションとその依存関係を実行及び接続するための機能を使用できる。
  2. 2. .NET9 Preview4の発表
  3. 3. MongoDB Provider for Entity Framework Core(EF Core)が提供され、.NET開発者が使い慣れたEF環境でMongoDBの機能をフル活用可能になった。  
  4. Visual Studio CodeではAI Toolkit for Visual Studio Codeが発表された。こちらはWindows AI Studio拡張機能の進化版であり、Azure AI StudioとHugging Faceの最先端モデルを探索、試用、ファインチューニングしてアプリケーションに統合することができる。
  5. DevBoxでは、チームベースのカスタマイズやインテリジェントアプリDevBoxのカスタマイズが可能となっている。特にチームベースのカスタマイズでは各プロジェクトのニーズに基づいてカスタマイズされたDevBoxを作成/カスタマイズされたテンプレートが使用できる。

その他(ハードウェア)

新しい仮想マシンシリーズでは2つの発表があった。1つはCobalt 100 Arm ベースVMであり、スケールアウトワークロードとクラウドネイティブコンピューティングソリューションを効率的に実行してくれるVMとなっている。もともとArmベースのVMが存在したが、それと比較してCPUパフォーマンス最大1.4倍、Javaベースワークロードで最大1.5倍、そしてWebサーバー・.NETアプリケーション・インメモリキャッシュアプリケーションで最大2倍のパフォーマンスが出ている。もう1つはAzure GPU ファミリーに新しく追加されたND MI300X v5シリーズVMであり、AIやHPCのワークロード向けに最適化されたVMとなっている。こちらはMD Instinct MI300X AIアクセラレーターを搭載し、各VMに1.5TBの広帯域幅メモリと5.2TBの帯域幅メモリを提供している。

AzureのPaaSと開発ツールのアップデートであったが、今回のMicrosoft Build 2024ではAIによる開発作業効率化やPaaSの利便性の向上を図られている機能が多いと感じた。MicrosoftのAI開発への取り組みから、Azureでのシステム開発をAIと機能面両方で効率化していくという動きが加速していくのではないかと感じさせられた。

Build Recap:AI以外の注目はこれだ!

NECソリューションイノベータ株式会社
主任 亀川 和史

AI以外のトピックスは数多くあるが、既に出ている内容以外だと、Azure Compute Fleet、Azure Migrate、WinUI3とWPF Windows開発などがあるが、一番重要と考えられるのがSecure by Operationsである。 
過去様々な経緯からSecurity Firstという宣言がなされたが、今回は3回目の宣言がなされた。2日目のDeveloper KeynoteにてDevDiv(開発ツール部門)のVice Presidentによりセキュリティについての話があった。Developer KeynoteでDevDivの人がセキュリティについて話すことは異例であり、セキュリティの取り組みについての意気込みが伺える。

Security Firstの宣言

Security Firstの宣言

互換性を捨てSecureに

今までMicrosoftは互換性重視でやってきたが、昨今の攻撃(Storm-0558等の重大インシデント )から方針を見直さざるを得なくなってきた。Secure by Design、Secure by Defaultに続くSecure by Operationsが宣言された。これからは互換性を捨てた大非互換時代がやってくる可能性がある。
非互換化を進めるために廃止予定の機能はすでにいくつか挙げられている。まずはVBScriptの廃止が確定している。2029年頃からOSから削除予定になっている。VBScriptは使っていないと思っていても、インストーラーの中に入っていたり、初期設定で使用していたりすることがあるので要注意である。次にインパクトが大きいNTLMの廃止である(大まかに言うとワークグループの廃止)。公式ではないがWindows Server2025の次のOSから削除ができるようになる予定である。Active Directory以外のIDとパスワード認証が不可能になるというのが一番多くなる。この影響から安いNASなどの認証ができなくなり、元に戻す方法もないので計画的に対応していかなければならない。最後にWin32 App IsolationもあるのでこちらはGitHub上にあるツールで互換性をチェックしなければならない。

NTLM廃止対応について

Windows Server 2025 PreviewもしくはWindows11のInsider PreviewでNTLM接続ブロックが検証可能となっている。詳細はMicrosoft Learnにてすでに公開されているのでそこを参照して進めるのがよいが、ローカル認証を使用しないと現物検証ができないのでその点は注意していただきたい。
NTLM廃止に伴いローカル認証の代わりにKerberos認証をローカルで動かす仕組みが用意されるのでそちらを使うことになる。ただしKerberos認証を使用してもdouble hopという問題が出てくる。具体例としてはクライアントのADアカウントはWebサーバーでその次のSQL Serverにはいけない、というものである。こちらには対応方法があるがActive Directoryを触らなければいけなくなるので、クラウド認証を採用するのが現代の流れに沿ったやり方と考えられる。

Azure強化とWindows開発

今回のBuildではAI機能のためにAzureの足回りを強化、ここ数年なかったWindows開発が今回のBuildでは久々に見られた。
まずはWindows on Arm。Copilot+PCがUS時間の6/18より店頭販売開始となっている。AIのために再定義されたPCであり40TOPSが要件の1つになっている。ただし、この演算機能を満たすのは現在ArmのSnapdragon X Elite/Plusのみである。未対応ソフトも少なくなってきたが、目立つところだとVPNクライアントがない、というところは注意点である。
次にGitHub ActionsでもArm64イメージが使えるようになったことである。Arm64イメージについてだが、Runner価格が約40%OFFということで安くなっている。またPaaSなどでコンテナを使用する場合ビルド時間がArmのほうが早いというのも挙げられる(Intelではエミュレーションするので遅くなってしまう)。これらをまとめるとビルド時間も節約でき、Runner価格も安いのでArmベースだとコストメリットがあり、さらにAKSを使うのであればArmのホストプールでさらに節約できる。
そして、WindowsクライアントはWin UI 3、WPF、WinFormsが三つ巴になっている。それぞれに特徴があり、高速なUIであればWin UI、それなりに早くリッチなUIであればWPF、互換性を重視しているならばWinFormsを選ぶ、といった具合である。ただし、サードパーティーとの互換性も重要であり、Win UI以外では対応が悪くなっているのでそのような部分も考慮する必要がある。うって変わってWeb技術を使いたい場合はReact Native for Windowsである。新しいTeamsクライアントや新しいOutlook for Windows、そして新しいAzure DevOpsのBoardに使用されている。ただし、Reactの更新速度が速いのでその部分も考慮に入れる必要がある。
ここで、再度セキュリティ関係の話に戻る。Web Appsのセキュリティ強化が今後行われていく。AzureのPaaSはシンプルな名前になっているものが多く、そのため数年前にサブドメインの再利用による乗っ取られるセキュリティインシデントが起きた。AWSのCloudFrontでは乗っ取りができないような単純な英単語ではない長い名前が作成される機能があるが 、こちらと似たような機能がWeb AppsにPreviewで追加された。これはボタン1つで希望した名前、リージョン、そしてランダムな文字列という形になる。デフォルトのサブドメインを使用する際はこちらの機能をぜひ使用していただきたい。最初からカスタムドメインを使うのがもちろん良いが、カスタムドメインも破棄してしまうと第3者が使用できてしまうので、運用部分に注意が必要となる。
最後にSharePoint Embeddedである。Loop Workspaceの基盤となっているSharePoint Embeddedが一般提供開始された。この中身はOneDrive for BusinessをストレージにしたヘッドレスCMSである。見た目(表示)はISVに作成してもらい、OneDriveのストレージ管理、ガバナンス、そしてセキュリティ管理をMicrosoftが提供するという形になっており、将来的にCopilotにも対応する。このサービスではOneDriveを使用するため、全体テナントでストレージ不足が起きて追加で購入する場合を除き、何かを新規で購入する必要がなく使用できるものとなっている。また、同様にアクセス権はSharePointやOneDriveの制御がそのまま使える。

Microsoftはプラットフォームを作る

Microsoftはプラットフォームを作る

まだまだAIの勢いが続いている状況であるが、セキュリティの見直しをかけ、Azureの強化やWindows開発といったところも見えたイベントであった。AIはもちろんのことプラットフォームの強化も並行して行われていくだろう。そんな中でMicrosoftによって提供される プラットフォームが用意されており、そこに価値あるものを作っていくことが求められているのではないだろうか。

執筆者プロフィール

安倍 幸大(あべ ゆきひろ)
クラウド戦略統括部 MSアライアンス戦略グループ所属

今年からMicrosoft Azureのプロモーションと技術を担当。
まずは上級資格を取得しつつ、技術磨きに邁進中。