このアーキテクチャを参照として、Foundry、Azure OpenAI、およびその他の関連サービスを使用して、セキュリティで保護されたスケーラブルな会話型 AI ソリューションをAzureに構築してデプロイします。 コンプライアンスとエンタープライズ対応性を確保するために、プライベート ネットワーク、ゾーン冗長性、厳格なセキュリティ制御を重視しています。
この記事では、Azureで AI ワークロードを設計、デプロイ、および管理するのに役立つアーキテクチャ パターンとベースライン参照アーキテクチャについて説明します。 セキュリティで保護されたスケーラブルで適切に管理された AI システムを構築するためのコア コンポーネント、相互作用、ベスト プラクティスについて説明します。
このアーキテクチャ パターンは、AI ワークロードを設計する際のベースラインとして使用します。 パターンに示されているコア コンポーネントと相互作用から始めて、ビジネス目標、技術的制約、リスク体制に合わせて調整します。
たとえば、組織は、従業員が内部ドキュメントと運用データについて質問できるエンタープライズ AI アシスタント アプリケーションを構築したいと考えています。 ユーザーが質問をすると、アプリケーションは必要なデータを把握し、関連するコンテキストを取得し、適切なモデルを呼び出して、根拠のある応答を生成します。 このためには、アシスタントが信頼された up-to-date コンテキストを取得できるように、内部ドキュメントのクリーンアップ、エンリッチ、インデックス作成を行うデータ パイプラインが必要です。 他のアプリケーションと同様に、Well-Architected プラクティスを使用して、アプリケーションの信頼性、セキュリティ、コストを最適化します。
この AI アシスタントは特定のビジネス シナリオを表しますが、それに従うアーキテクチャ パターンは、似た特性を持つ多くの AI ユース ケースに適応するのに十分な汎用的なものです。
この記事では、AI ワークロードのコア コンポーネント、その機能、相互作用に関するベースライン知識を確立する、その一般的なパターンについて説明します。 この基盤により、特定のユース ケースに合わせてアーキテクチャをカスタマイズするときに、堅牢な AI ソリューションを構築するための情報に基づいた設計上の決定を行うことができます。
高度な AI ワークロード アーキテクチャ
この図は、AI ワークロード設計で使用できる主要なコンポーネントを示しています。
| コンポーネント | Description |
|---|---|
| データ処理と分析 | さまざまなソースから生データを収集し、これをクリーンアップ、変換し、モデルのトレーニング、微調整、及び基礎付けのために準備されたデータセットとして整理します。 このレイヤーはユーザーと直接やり取りするのではなく、正確で効率的な AI 対話をダウンストリームで実現します。 |
| モデルトレーニングと微調整 | 反復可能なプロセスを通じて、データのモデルのトレーニング、バージョンの追跡、パフォーマンスの監視を行います。 MLOps プラクティスを使用して、新しいデータが提供されるにつれて改善を続け、ビジネス ニーズとの整合性を維持します。 |
| インテリジェント AI アプリケーション | これは、ユーザーが AI と対話する場所です。 事前トレーニング済みのモデルとアプリケーション ロジックを組み合わせて、適切な情報を見つけ、プロンプトを作成し、インターフェイスを構築し、フィードバックから学習します。 |
| AI のプラクティスとプロセス | DEVOps の原則、バージョン管理、自動化されたパイプラインを MLOps ワークフローに組み込むことで、AI ソリューションを信頼性の高い状態に保ちます。 セーフガードを使用して繰り返しデプロイし、精度、パフォーマンス、バイアスを継続的にチェックします。 |
| プラットフォーム サービスとツール | リソースをセキュリティで保護し、コストを制御し、開発からデプロイまでのシステム正常性を監視するコア クラウド サービス。 信頼性の高い自動化に CI/CD パイプラインを使用し、AI 出力をスキャンしてコンプライアンスを確認する特殊なツールを使用します。 |
ワークロードの構成
このセクションでは、インテリジェント なアプリケーション ワークロードと、トレーニングと微調整のワークロードという 2 つの主要なワークロードについて説明します。 各ワークロードには、有効期間と状態、リーチと依存関係、スケーラビリティと可用性、セキュリティと責任ある AI に関する独自の設計上の考慮事項があります。
すべての AI ワークロードにトレーニングと微調整コンポーネントが必要なわけではありません。 カスタム トレーニングなしで事前トレーニング済みモデルのみを使用する場合は、インテリジェント なアプリケーション ワークロードに焦点を当てます。 ただし、ユース ケースでカスタム モデルを構築したり、新しいデータを使用して継続的に改善したりする場合は、トレーニングと微調整のワークロードが不可欠になります。 どちらのワークロードもモジュール式であるため、設計上の考慮事項で説明されているベスト プラクティスに従いながら、特定のユース ケースに関連するコンポーネントを実装できます。
| 設計特性 | Description |
|---|---|
| 有効期間と状態 |
有効期間 とは、ワークロード内でのリソースの存在とアクティブ性の予想される期間を指します。 状態 とは、リソースが時間の経過と同時に保持するデータまたは情報を指します。 |
| リーチと依存関係 |
Reach とは、リソースにアクセスしたり、配布したりする必要がある範囲を指します。 依存関係 とは、リレーションシップと他のリソースへの依存を指します。 |
| スケーラビリティと可用性 |
スケーラビリティ は、負荷または需要の増加に対応するリソースの機能です。 可用性 は、リソースが運用可能でアクセス可能な状態を維持する機能です。 |
| セキュリティと責任ある AI |
セキュリティ とは、データを保護し、規制に確実に準拠するための対策を指します。 責任ある AI とは、公平性、透明性、アカウンタビリティなど、倫理的な AI を保証するプラクティスを指します。 |
この図は、設計に含めるインテリジェント アプリケーション ワークロードの主要なコンポーネントを示しています。
| コンポーネント | Description |
|---|---|
| クライアント レイヤー | クライアント 層を使用すると、ユーザーと外部システムが AI に接続できます。 このレイヤーは要求を受け取り、AI によって生成された応答を返しますが、エクスペリエンスが簡単で使いやすいことを確認します。 |
| インテリジェンス レイヤー - API | インテリジェンス層 API は、適切に定義された API を使用して、クライアントとシステムのインテリジェンス機能をブリッジします。 要求を適切なエージェントまたはオーケストレーション プロセスに送信し、ユーザーとサービス間の対話がスムーズで一貫性のあるものになるようにします。 また、このレイヤーは、データへのアクセス方法を処理し、セキュリティ対策を実施し、システムが過負荷にならないように制限を設定します。 アプリで単純な予測が必要な場合、このレイヤーは複雑なオーケストレーション手順をスキップし、高速応答のために推論エンジンに直接要求を送信できます。 |
| インテリジェンス レイヤー - オーケストレーションとエージェント コンピューティング | オーケストレーションとエージェントのコンピューティング レイヤーは、各タスクを完了するためにさまざまな AI コンポーネントがどのように連携するかを調整する役割を担います。 必要な内容に応じて、タスクを 1 つずつ実行したり、複数のエージェントを同時に実行して結果をマージしたりできます。 ユーザーの意図を把握し、応答を確認して安全であることを確認し、情報を得るためにナレッジ レイヤーと統合し、ツールを使用してすべてを組み合わせ、最適な回答を得ることができます。 |
| インテリジェンス 層 - 会話管理 | 会話管理レイヤーは、システムのメモリと会話マネージャーです。 これにより、前のメッセージを思い出し、進行中のトピックを追跡し、ディスカッションの重要な部分を格納することで、AI チャットを自然に行うことができるため、長いセッション中でも会話がスムーズに流れる可能性があります。 また、会話データがどのように保持または削除されるかを確認し、情報が責任を持って処理されるようにします。 |
| 推論レイヤー - 基礎モデルまたは予測モデル | 推論レイヤーは、トレーニング済みのモデルが予測を行ったり、コンテンツを生成したり、受信した情報に基づいて決定を提供したりする場所です。 このプロセスは、まず AI モデルを読み込み、データを準備し、予測を実行した後、結果をすぐに (リアルタイムで) または後で使用できるように書式設定します (バッチ処理)。 |
| ナレッジ レイヤー | ナレッジ 層は、システムが質問に正確に回答するために必要な情報とコンテキストを取得する場所です。 これにより、アクセス許可と承認を使用して、データに安全にアクセスできるようになります。 ナレッジ レイヤーは、インデックスまたはベクター データベースを検索して適切なコンテンツだけを見つけることで、AI が RAG アプローチに従うのに役立ちます。 これにより、AI は、MCP プロトコルまたは REST プロトコルを使用するかどうかにかかわらず、一貫した方法でさまざまな内部データ ソースと外部データ ソースにアクセスできます。 |
| ツール レイヤー | ツール レイヤーでは、ビジネス アクションと外部機能にアクセスできます。 インテリジェンス層は、MCP、A2A、OpenAPI/REST のいずれを介して行われるかにかかわらず、標準化された方法でツールまたはエージェントを呼び出すことによって、これらのアクションをトリガーしたり、他のシステムと接続したりできます。 これらの機能は、アクション可能なオプションとして提示され、インテリジェンス レイヤーが使用できる状態になり、ワークロードまたは外部サービスによって直接処理される場合があります。 |
設計上の考慮事項
インテリジェントなアプリケーション ワークロード アーキテクチャを設計する場合は、次の設計特性を考慮して、コンポーネントの設計と相互作用に関する情報に基づいた意思決定を行います。
有効期間と状態
Intelligence API、オーケストレーション、推論、ナレッジ レイヤーはすべて、ワークロードの有効期間中に実行される有効期間の長いサービスです。 各サービスの可用性、監視、オペレーショナル エクセレンスに投資します。
各レイヤーは異なるペースで進化するため、意図的なデプロイ調整が必要です。 Intelligence API は、安定した状態を維持し、下位互換性を維持するために徐々に進化します。 新しい機能を追加すると、オーケストレーションレイヤーとエージェントレイヤーが急速に進化します。 新しいモデルをデプロイすると、推論レイヤーが更新されます。 ナレッジ レイヤーは、データの変化に伴って継続的に進化します。
ステートレス コンポーネントは必要に応じて割り当てまたは割り当て解除できますが、ステートフル コンポーネントは、対話の間で保持されるデータを管理します。
インテリジェンス API、オーケストレーション、および推論レイヤーはステートレスであるため、インスタンスを追加することで簡単にスケーリングできます。 オーケストレーション レイヤーは、実行中に一時的な状態を保持する可能性がありますが、要求処理を超えて保持されません。 エフェメラル状態では操作の複雑さが軽減されますが、障害復旧オプションが制限されるため、再試行とべき等性を慎重に設計してください。
会話管理セッションのデータは、分から数日まで続く可能性があります。 セッションが長いほど、会話が充実しますが、コストが高くなり、プライバシー リスクが高まります。 ナレッジ レイヤーは、情報の追加、更新、または削除の際に進化するインデックスとデータベースにデータを格納します。
トレードオフ。 有効期間と状態管理の決定は、コスト、信頼性、パフォーマンスに直接影響します。 有効期間が長いステートフル コンポーネントでは、スケーリングと回復性への投資が増えますが、ステートレスなエフェメラル コンポーネントの方がコスト効率は高くなりますが、コールド スタートや外部状態の取得による待機時間が発生する可能性があります。
リーチと依存関係
Intelligence API はアーキテクチャ内で公開されている唯一のエンドポイントであり、それ以外はすべて内部のままです。 複数のリージョンにデプロイして、ユーザーをエンドポイントに近づけ、回復性を向上させることができます。
オーケストレーション レイヤーは中央に配置され、ネットワーク内で動作し、会話状態、モデル呼び出し、ナレッジ取得、ツール呼び出しなどのすべてを調整します。 ここでの障害によってシステム全体がブロックされるため、高可用性を実現します。
推論レイヤーは、外部依存関係なしで内部的に実行されます。 オーケストレーターの近くにデプロイして、待機時間を短くします。
知識とツールのレイヤーは内部ですが、外部システムに依存する場合があります。 これらの外部依存関係により、応答の品質に影響する遅延や可用性の問題が発生する可能性があります。
トレードオフ。 マルチリージョンデプロイでは、パフォーマンスと回復性が向上しますが、コストは増加します。 単一リージョンのデプロイはコスト効率が高くなりますが、リージョンから離れたユーザーの待機時間が長くなる可能性があります。
スケーラビリティと可用性
インテリジェント アプリケーションには、2 つのスケーリング パターンがあります。 インスタンスを追加することで、API、オーケストレーション、推論などのステートレス レイヤーをスケーリングします。 会話管理やナレッジスケールのようなデータ層は、読み取りレプリカ、パーティション、シャーディングなどのメカニズムを介して複数のストアにデータを分散することで拡張されます。
Intelligence API はスケールアウトして、より多くの要求を処理します。 可用性を向上させ、ユーザーをエンドポイントに近づけるために、複数のゾーンまたはリージョンにデプロイします。
オーケストレーションとエージェントのコンピューティングはシステムの中央に配置されるため、ここでの障害によってすべてがブロックされます。 インスタンスを追加し、負荷分散を使用し、フェールオーバーの準備を整え、個々のインスタンスが失敗してもシステムが実行を続けます。
推論レイヤーは、モデルに必要な内容に基づいてスケーリングされます。 需要の増加に合わせて、GPU を使用してインスタンスを追加します。 復旧中に環境をすばやく再作成するには、コードとしてのインフラストラクチャ (IaC) を使用します。
会話管理は、同時ユーザーの数に応じてスケーリングされます。 コピーとバックアップを使用して、セッション データを使用できるようにします。
ナレッジ レイヤーは、データの量とクエリの頻度に基づいてスケーリングされます。 効率的なインデックス作成とデータベースのチューニングを使用して、応答を高速に保ちます。 可用性のために複数の場所にコピーを設定します。
トレードオフ。 ステートレス コンポーネントは迅速にスケーリングできますが、コールド スタート待機時間が発生する可能性があります。 データ コンポーネントは持続性を提供しますが、スケーリングにはより多くの計画が必要です。 予想される負荷とビジネス要件に基づいて、これらの要因のバランスを取ってください。
セキュリティと責任ある AI
インテリジェント アプリケーションの各レイヤーにはさまざまなリスクがあり、独自の制御が必要です。 ツールは、実際のアクションをトリガーし、AI が認識する知識を形にし、推論によってユーザーに表示される出力を生成できます。 すべてのレイヤーでアクセスを制限し、何が起こっているかを監視し、決定がどのように行われるかを説明できることを確認します。
ツール レイヤーは、アクションが実際の結果を元に戻すことができない可能性があるため、最も高いリスクを伴います。 リスクの高い操作の場合は、人間の承認手順を追加します。 厳格な認証、最小特権アクセス、およびデータ プライバシーの適用を使用して、承認されていないアクションと PII の公開を防ぎます。 統合する前にすべてのツールを評価して、ガバナンスがワークロードの境界を超えるようにします。
ナレッジ 層には、信頼できる出力を生成するために、高品質で偏りのないデータが必要です。 適切な認証、承認、データ所在地の要件への準拠により、データ アクセスをセキュリティで保護します。 読み取り専用アクセスとネットワーク分離により、破損が防止されます。 監査証跡を使用して各応答に対して取得されたソースを記録します。このプロセスでは、意思決定を説明し、後で問題を調査できます。
推論レイヤーには、操作ロールとオーケストレーション レイヤーの ID にのみアクセスできる必要があります。 毒性やその他の安全性の問題をチェックする検証サービスを使用して出力を監視します。 デプロイ前にモデルを検証して偏りをキャッチし、運用環境で問題が発生した場合はロールバック メカニズムの準備を整えます。
AI ワークロードのベースライン アーキテクチャ
これらのベースラインの例は、AI ワークロードに推奨されるアーキテクチャとして機能します。
-
ベースライン Microsoft Foundry チャット参照アーキテクチャ
-
この図は、Azure ランディング ゾーンにおけるベースライン Microsoft Foundry チャット参照を示しています。 Azure ランディングゾーンにおけるベースライン Microsoft Foundry チャット参照アーキテクチャ
このアーキテクチャは、Microsoft Foundry Chat の設計に基づいており、セキュリティで保護されたAzureランディング ゾーンに配置されます。 Foundry Agent Service、Azure OpenAI、App Service という主要なコンポーネントが、プライベートなネットワーク分離環境内に集約されます。 すべてのサービスはプライベート エンドポイントを介して接続し、Azure Firewallによって保護され、高可用性のためのゾーン冗長性が備わっています。
-
Microsoft Fabricを使用したエンドツーエンドの分析
完全な分析ライフサイクルを合理化する統合データ プラットフォームを設計する場合は、このアーキテクチャを参照として使用します。
次のステップ
インテリジェント なアプリケーション シナリオを設計するためのベスト プラクティスを確認します。