次の方法で共有


ネットワークの分離を使って RAG ワークフローをセキュリティで保護する (プレビュー)

Azure Machine Learning で 2 つのネットワーク管理オプションを使い、プライベート ネットワークを使うことで、取得拡張生成 (RAG) フローをセキュリティで保護できます。 オプションとして、[マネージド仮想ネットワーク] (Microsoft のオファリング)、または ["Bring Your Own" 仮想ネットワーク] (仮想ネットワーク、サブネット、ファイアウォール、ネットワーク セキュリティ グループ規則などの設定を完全に制御したい場合に便利です) があります。

Azure Machine Learning マネージド ネットワーク オプション内では、[Allow Internet Outbound] (インターネット送信を許可する)[Allow Only Approved Outbound] (承認された送信のみを許可する) という 2 つのセキュリティで保護されたサブオプションから選択できます。

Azure Machine Learning のマネージド VNET のオプションを示すスクリーンショット。

セットアップとシナリオによっては、ネットワークの分離のために、Azure Machine Learning の RAG ワークフローに他の手順が必要になる場合があります。

前提条件

  • Azure サブスクリプション。
  • Azure AI Foundry モデルの Azure OpenAI へのアクセス。
  • セキュリティで保護された Azure Machine Learning ワークスペース: ワークスペース マネージド仮想ネットワークまたは "Bring Your Own" 仮想ネットワークのいずれかのセットアップを使います。
  • Azure Machine Learning ワークスペースで有効になっているプロンプト フロー。 Azure Machine Learning ワークスペースでは、[プレビュー機能の管理] パネルで [プロンプト フローを使用した AI ソリューションのビルド] をオンにすることで、プロンプト フローを有効にすることができます。

Azure Machine Learning ワークスペース マネージド仮想ネットワークを使う

  1. ワークスペース マネージド ネットワーク分離」に従ってワークスペース マネージド仮想ネットワークを有効にします。

  2. Azure portal に移動し、左側のメニューにある [設定] タブで [ネットワーク] を選びます。

  3. ベクター インデックスの作成時に RAG ワークフローがプライベート Azure Cognitive Services (Azure OpenAI、Azure AI 検索など) と通信できるようにするには、関連ユーザーの関連リソースに対するアウトバウンド規則を定義する必要があります。 ネットワーク設定の上部にある [Workspace managed outbound access] (ワークスペースで管理される送信アクセス) を選びます。 次に、[+ Add user-defined outbound rule] (+ ユーザー定義のアウトバウンド規則の追加) を選びます。 [規則名] に入力します。 次に、[リソース名] テキストボックスを使って、規則を追加するリソースを選びます。

    Azure Machine Learning ワークスペースにより、autoapprove を使って関連リソースにプライベート エンドポイントが作成されます。 状態が保留中のままになっている場合は、関連リソースに移動して、プライベート エンドポイントを手動で承認してください。

    Azure Studio で、プライベート コグニティブ サービス ユーザーのアウトバウンド規則を追加する場所を示すスクリーンショット。

  4. ワークスペースに関連付けられているストレージ アカウントの設定に移動します。 左側のメニューで [アクセス制御 (IAM)] を選択します。 [ロールの割り当ての追加] を選択します。 ストレージ テーブル データ共同作成者ストレージ BLOB データ共同作成者のアクセスをワークスペース マネージド ID に追加します。 これを行うには、検索バーに「ストレージ テーブル データ共同作成者」と「ストレージ BLOB データ共同作成者」を入力します。 この手順と次の手順を 2 回完了する必要があります。 1 回目は BLOB 共同作成者に対して、2 回目はテーブル共同作成者に対するものです。

  5. 必ず [マネージド ID] オプションをオンにしてください。 次に、[メンバーの選択] を選びます。 [マネージド ID] のドロップダウンで [Azure Machine Learning ワークスペース] を選びます。 次に、そのワークスペースのマネージド ID を選びます。

    Azure Studio の [ストレージ アカウント] で BLOB またはテーブルのアクセスにワークスペース マネージド ID を追加する場所を示すスクリーンショット。

  6. (省略可能) 送信 FQDN 規則を追加するには、Azure portal の左側のメニューにある [設定] タブで [ネットワーク] を選びます。 ネットワーク設定の上部にある [Workspace managed outbound access] (ワークスペースで管理される送信アクセス) を選びます。 次に、[+ Add user-defined outbound rule] (+ ユーザー定義のアウトバウンド規則の追加) を選びます。 [宛先の種類][FQDN 規則] を選びます。 [FQDN Destination] (FQDN 送信先) にエンドポイントの URL を入力します。 エンドポイント URL を見つけるには、Azure portal でデプロイ済みエンドポイントに移動し、目的のエンドポイントを選び、詳細セクションからエンドポイントの URL をコピーします。

マネージド Vnet ワークスペースと Azure OpenAI リソースで public を使っている場合は、Azure OpenAI エンドポイントの送信 FQDN 規則を追加する必要があります。 こうすることで、RAG で埋め込みを実行するために必要なデータ プレーン操作ができるようになります。 これがない場合、パブリックであっても、Azure OpenAI リソースへのアクセスは許可されません。

  1. (省略可能) ストレージ アカウントをプライベートにしていて、事前にデータ ファイルをアップロードする場合、または RAG の [Local Folder Upload] (ローカル フォルダー アップロード) を使う場合は、仮想ネットワークの背後にある仮想マシンからそのワークスペースにアクセスする必要があります。また、サブネットをストレージ アカウントの許可リストに登録する必要があります。 これを行うには、[ストレージ アカウント][ネットワーク設定] の順に選びます。 [Enable for selected virtual network and IPs] (選択されている仮想ネットワークと IP に対して有効にする) を選んでから、ワークスペースのサブネットを追加します。

    セキュリティで保護されたデータ アップロードに必要なプライベート ストレージ設定を示すスクリーンショット。

    Azure 仮想マシンからプライベート ストレージに接続する方法に関するこのチュートリアルに従ってください。

BYO カスタム仮想ネットワークを使う

  1. Azure Machine Learning ワークスペースを構成するときに、[Use my Own Virtual Network] (独自の仮想ネットワークを使用する) を選びます。 このシナリオでは、ワークスペースによって自動構成されないので、関連リソースに対するネットワーク規則とプライベート エンドポイントはユーザーが正しく構成する必要があります。

  2. このシナリオはサーバーレス コンピューティングではサポートされないため、ベクター インデックスの作成ウィザードでは、必ずコンピューティング オプション ドロップダウンから [コンピューティング インスタンス] または [コンピューティング クラスター] を選んでください。

一般的な問題のトラブルシューティング

  • ワークスペースで、コンピューティングでコンピューティングを作成または開始できないネットワーク関連の問題が発生した場合は、マネージド ネットワークの更新を開始するために、Azure portal のワークスペースの [ネットワーク] タブにプレースホルダーの FQDN 規則を追加してみてください。 次に、Azure Machine Learning ワークスペースのコンピューティングを再作成します。

  • < Resource > is not registered with Microsoft.Network resource provider.に関連するエラー メッセージが表示される場合があります。その場合は、AI サービス/Azure OpenAI リソースが Microsoft Network リソース プロバイダーに登録されているサブスクリプションを確認する必要があります。 これを行うには、[サブスクリプション][リソース プロバイダー] (お使いのマネージド仮想ネットワーク ワークスペースと同じテナントのもの) の順に移動します。

マネージド ネットワークで初めてプライベート エンドポイントをプロビジョニングする場合、ワークスペースの初めてのサーバーレス ジョブをキューに格納するために追加で 10 分から 15 分かかると想定されます。 [コンピューティング インスタンス] と [コンピューティング クラスター] を使う場合、このプロセスがコンピューティングの作成中に発生します。

次のステップ