Azure での AI アプリの開発
注
詳細については、「 テキストと画像 」タブを参照してください。
現在使用および信頼されている AI アプリケーションは、堅牢な セキュリティ、 ネットワーク、 ホスティング、 スケーリング、 データ ストレージ、 AI 機能に依存しています。 Azure では、スケーラブルでセキュリティで保護された AI アプリケーションを迅速に構築し、選択した一般的なテクノロジを使用するために必要なものがすべて提供されます。
セキュリティとネットワーク
AI アプリケーションの基盤は、セキュリティとネットワークです。 Azure は設計によってセキュリティで保護され、組み込みの ID、アクセス制御、ネットワーク分離を提供して AI ソリューションを保護します。
AI アプリケーションには、強力な保護と安定した接続が必要です。 Azure のセキュリティ ツールは、承認されていないアクセスや脅威から AI アプリケーションを保護します。 たとえば、 Azure Entra ID を使用すると、適切なユーザーとサービスのみが AI リソースにアクセスできるようになります。 これにより、ロールベースのアクセス制御 (RBAC) を使用して、モデルのデプロイ、リソース、およびデータへのアクセスを制限できます。
Azure では、AI アプリケーションのシークレットも保護されます。 シークレットは、システム、サービス、またはデータへのアクセスを許可するため、AI アプリケーションが非表示にしておく必要がある機密性の高い値です。 シークレットには、API キー、データベース接続文字列、OAuth トークン、パスワードなどを含めることができます。 キーは、通常はランダムに生成される長い文字列であるシークレットの一種であり、エンドポイント (URL) を呼び出すときに要求を認証します。 Azure では、シークレットは通常、コードや GitHub ではなく Azure Key Vault に格納されます。
たとえば、Azure で AI チャットボットを構築しているとします。
- アプリケーションはモデルのエンドポイントを呼び出 します。
- 要求には、呼び出しを認証するための キー が含まれています。
- キーは、シークレットとして Azure Key Vault に格納されます。
- アプリケーションは、セキュリティで保護されたメソッド (マネージド ID) を使用して実行時にシークレットを取得します。
Azure のセキュリティ ツールには、ID、シークレット、データ保護、コンプライアンス、脅威検出、監視、ファイアウォールなどのセキュリティ制御が含まれます。 その ネットワーク サービスにより、クラウド環境とハイブリッド環境全体で、アプリケーションが確実かつプライベートかつ効率的に実行されます。
ホスティングとスケーリング
アプリケーションは、 ホストと呼ばれるコンピューターまたは環境で実行されます。 クラウド コンテキストでは、ホストを仮想マシン (VM) にして、アプリケーションで実行する必要があるコンピューティング、メモリ、ネットワークを提供できます。
アプリケーションをホストしてスケーリングするには、コンテナー化されたワークロードに Azure Kubernetes Service (AKS) を使用するか、Azure App Service を使用して Web アプリをすばやく最新化してデプロイできます。 AKS は、コードの実行に必要なものを保持する多数のコンテナーを調整または管理します。 Azure App Service は、Web アプリケーション、API、およびバックグラウンド ジョブをホストします。 これらのサービスは、信頼性を確保しながら、市場投入までの時間を短縮します。
アプリケーションのスケーリングとは、通常、インスタンスを追加または削除することで、アプリが使用するコンピューティング能力の量を自動的または手動で調整することを意味します。 クラウド アプリケーションでは、"インスタンス" とは、同時に実行されているアプリケーションのコピーを指します。
スケーリングの 2 種類:
- スケールアウト (水平): インスタンスを追加する
- スケールアップ (垂直): 既存のインスタンスの CPU/メモリを増やす
Azure などのクラウド プラットフォームでは、CPU 使用率、要求の数、またはカスタム メトリックに基づいてスケーリングが自動的に行われます。
データ ストレージ
AI アプリケーションは 複数の種類のデータに依存し、それぞれがシステム内で異なる目的を果たします。
いくつかの例を次に示します。
- トレーニング データ: AI モデルパターンを教える
- 推論入力データ: リアルタイムユーザーまたはシステム入力
- AI モデルの出力データ: 予測または生成された応答
- アプリケーションの状態: ユーザー固有の継続性をサポートするデータ
- システム/構成データ: AI アプリの動作をサポートする
- ログとテレメトリ: 監視と最適化
- セキュリティとアクセス データ: 安全な認証と承認
AI アプリには堅牢なデータ ストレージが必要です。 データ ストレージ は、アプリケーションが後でデータを使用できるように、データの保存、整理、取得に使用される任意のシステムまたはサービスです。 ストレージは、AI システムが 学習、 運用、改善するために必要な情報を安全に保持できるため、重要な役割を果 たします。 保存されたデータは、パーソナル化、分析、品質の向上、デバッグもサポートできます。
Azure には、ミッション クリティカルなワークロード用 の Azure SQL Database 、リアルタイムのグローバル分散データ用 の Azure Cosmos DB 、インテリジェントでスケーラブルなソリューションのための Azure Database for PostgreSQL など、複数のオプションが用意されています。 ストレージは、種類に関係なく、情報を保持するための永続的な場所をアプリケーションに提供します。
AI 機能
最後に、AI エージェントを実現するために、Azure で AI エージェントを安全に開発および運用するためのエンタープライズ レベルのプラットフォームである Microsoft Foundry を使用できます。
管理者は、これらのクラウド リソースをすべて Azure portal で管理するか、シェル スクリプトとテンプレートを使用してリソースのデプロイと構成を自動化できます。
Azure の膨大な範囲のサービスとツールは、セキュリティ、アプリケーション インフラストラクチャ、データベース プラットフォームに対する組織の要件が何であれ、優れた AI ソリューションを提供できることを意味します。
次に、Microsoft Foundry を使用して AI アプリケーションを構築する方法を詳しく見てみましょう。