共用方式為


提示流程中的網路隔離

您可以使用私人網路保護提示流程。 本文說明在受私人網路保護的環境中使用提示流程的需求。

牽涉的服務

當您使用提示流程開發 LLM 應用程式時,您想要安全的環境。 您可以透過網路設定將下列服務設為私人。

  • 工作區:您可以將 Azure Machine Learning 工作區設為私人,並限制其輸入和輸出。
  • 計算資源:您也可以限制工作區中計算資源的輸入和輸出規則。
  • 儲存體帳戶:您可以將儲存體帳戶的存取範圍限制為特定的虛擬網路。
  • 容器登錄:您也想要使用虛擬網路保護您的容器登錄。
  • 端點:您想要限制 Azure 服務或 IP 位址來存取您的端點。
  • 相關 Azure 認知服務,例如 Azure OpenAI、Azure 內容安全和 Azure AI 搜尋服務,您可以使用網路設定將其設為私人,然後使用私人端點讓 Azure Machine Learning 服務與其通訊。
  • 其他非 Azure 資源,例如 SerpAPI 等。如果您有嚴格的輸出規則,則需要新增 FQDN 規則以便存取。

不同網路設定中的選項

在 Azure 機器學習中,我們有兩個選項來保護網路隔離、攜帶您自己的網路或使用工作區受控虛擬網路。 深入了解保護 工作區資源

下表說明針對提示流程設定的不同網路選項。

輸入 輸出 撰寫中的計算類型 計算類型推斷 工作區的網路選項
公開 公開 無伺服器 (建議),計算實例 受控在線端點 (建議),K8s 在線端點 受控 (推薦) /自備
私用 公用 無伺服器 (建議),計算實例 受控在線端點 (建議),K8s 在線端點 受控 (推薦) /自備
公開 私人 無伺服器 (建議),計算實例 受控線上端點 受控
私用 私用 無伺服器 (建議),計算實例 受控線上端點 受控
  • 在私人 VNet 案例中,建議您使用已啟用工作區的受控虛擬網路。 這是保護工作區和相關資源的最簡單方式。
  • 您也可以有一個工作區,以便使用虛擬網路進行提示流程撰寫,而另一個工作區則使用受控在線端點搭配工作區受控虛擬網路進行提示流程部署。
  • 我們不支援混合使用受控虛擬網路,並將您自己的虛擬網路帶入單一工作區。 而且,由於受控在線端點僅支援受控虛擬網路,因此您無法在已啟用自備虛擬網路的工作區中將提示流程部署到受控在線端點。

使用工作區受控虛擬網路保護提示流程

工作區受控虛擬網路是支援提示流程中網路隔離的建議方式。 提供輕鬆的設定來保護您的工作區。 在工作區層級中啟用受控虛擬網路之後,與相同虛擬網路中工作區相關的資源將會在工作區層級使用相同的網路設定。 您也可以將工作區設定為使用私人端點來存取其他 Azure 資源,例如 Azure OpenAI、Azure 內容安全和 Azure AI 搜尋服務。 您也可以設定 FQDN 規則,以核准由您的提示流程使用的非 Azure 資源的輸出,例如 SerpAPI 等。

  1. 請遵循<工作區受管理的網路隔離>(機器翻譯) 啟用工作區受控虛擬網路。

    重要

    建立受控虛擬網路會延後,直到建立計算資源或手動啟動佈建為止。 您可以使用下列命令來手動觸發網路佈建。

    az ml workspace provision-network --subscription <sub_id> -g <resource_group_name> -n <workspace_name>
    
  2. 將工作區 MSI 作為 Storage File Data Privileged Contributor 新增至與工作區連結的儲存體帳戶。

    2.1 移至 Azure 入口網站,尋找工作區。

    顯示如何從 Azure 機器學習 入口網站移至 Azure 入口網站 的圖表。

    2.2 尋找與工作區連結的儲存體帳戶。

    顯示如何在 Azure 入口網站 中尋找工作區連結記憶體帳戶的圖表。

    2.3 跳至儲存體帳戶的角色指派頁面。

    顯示如何跳至記憶體帳戶角色指派的圖表。

    2.4 尋找儲存體檔案資料特殊權限參與者角色。

    顯示如何尋找記憶體檔案數據特殊許可權參與者角色的圖表。

    2.5 將儲存體檔案資料特殊權限參與者角色指派給工作區受控識別。

    顯示如何將記憶體檔案數據特殊許可權參與者角色指派給工作區受控識別的圖表。

    注意

    此作業可能需要幾分鐘的時間才會生效。

  3. 如果您想要與私人 Azure 認知服務通訊,您需將相關的使用者定義輸出規則新增至相關資源。 Azure Machine Learning 工作區會在具有自動核准的相關資源中建立私人端點。 如果狀態停滯在擱置狀態,請移至相關資源以手動核准私人端點。

    Azure 認知服務的使用者定義輸出規則螢幕快照。

    使用者核准私人端點的螢幕快照。

  4. 如果您將輸出流量限制為僅允許特定目的地,則須新增對應的使用者定義輸出規則,以允許相關的 FQDN。

    非 Azure 資源的使用者定義輸出規則螢幕快照。

  5. 在啟用受控 VNet 的工作區中,您只能將提示流程部署到受控的線上端點。 您可以遵循使用網路隔離保護受控線上端點來保護受控線上端點。

使用您自己的虛擬網路來保護提示流程

  • 若要將 Azure Machine Learning 相關資源設定為私人資源,請參閱<保護工作區資源>(機器翻譯)。

  • 如果您有嚴格的輸出規則,請確定您已開啟必要的公用網際網路存取

  • 將工作區 MSI 作為 Storage File Data Privileged Contributor 新增至與工作區連結的儲存體帳戶。 請遵循使用工作區受控虛擬網路保護提示流程中的步驟 2。

  • 如果您在流程撰寫中使用無伺服器計算類型,則需要在工作區層級中設定自定義虛擬網路。 深入瞭解使用虛擬網路保護 Azure 機器學習 訓練環境

    serverless_compute:
      custom_subnet: /subscriptions/<sub id>/resourceGroups/<resource group>/providers/Microsoft.Network/virtualNetworks/<vnet name>/subnets/<subnet name>
      no_public_ip: false # Set to true if you don't want to assign public IP to the compute
    
  • 同時,您可以遵循私人 Azure 認知服務,將其設為私人。

  • 如果您想要在受您自己虛擬網路保護的工作區中部署提示流程,您可以將其部署到位於相同虛擬網路中的 AKS 叢集。 您可以遵循<安全的 Azure Kubernetes Service 推斷環境>(機器翻譯) 來保護 AKS 叢集。 深入瞭解 如何透過程式代碼將提示流程部署至 ASK 叢集。

  • 您可以建立相同虛擬網路的私人端點,或利用虛擬網路對等互連,讓它們彼此通訊。

已知的限制

  • AI 工作室不支援自備虛擬網路,僅支援工作區受控虛擬網路。
  • 具有所選輸出的受控在線端點僅支援具有受控虛擬網路的工作區。 如果您想要使用自己的虛擬網路,您可能需要一個工作區,以便使用虛擬網路進行提示流程撰寫,還需要另一個工作區,以便使用受控上線端點搭配工作區受控虛擬網路進行提示流程部署。

下一步