建立並管理統一模型 API

適用於:開發人員 |基本 |基本 v2 |標準 |標準 v2 |Premium |進階 v2

你可以在 Azure API 管理 建立統一模型 API,透過單一面向客戶端的端點暴露多個 LLM 後端。 客戶端應用程式使用一種熟悉的 API 格式——OpenAI 聊天完成 API,而 API Management 則會自動將請求轉譯到後端模型,使用 OpenAI 聊天完成 API 或 Anthropic Messages API。

Note

統一模型 API 目前處於預覽階段,並正在向客戶推送中。 在經典層級中,此功能可透過 AI Gateway 早期發行頻道取得。

透過將模型存取集中在單一 API 層,你可以:

  • 為用戶端標準化單一 API 格式,獨立於後端模型所使用的格式。
  • 統一可觀察性、安全性與治理,並跨模型提供者制定政策。
  • 設定模型提供者之間的模型容錯移轉。
  • 利用別名將面向客戶端的型號名稱與後端型號名稱分離。

欲了解更多關於在 API 管理中管理 AI API,請參閱 Azure API 管理 中的 AI 閘道功能。

支援的後端

統一模型 API 支援以下後端 API 格式:

  • OpenAI 聊天完成 API
  • 人類訊息 API

先決條件

建立統一模型 API - Azure 入口網站

請依照以下步驟在 API Management 中建立統一模型 API。

當您建立 API 時,API 管理會自動設定:

  • 一個 /models 用於模型發現的端點,列出所有已設定的模型。
  • 單一路由端點 (例如 /llm/v1/chat/completions) 可接受 OpenAI Chat Completions 格式的要求。
  • 為你新增的每個後端模型格式化轉換邏輯。
  • 後端資源會將請求導向正確的提供者端點。

要建立統一模型 API:

  1. 在 Azure 入口網站中,移至您的 API 管理 實例。

  2. 在側邊欄選單中,在 API 下,選擇 Models>+ 新增>統一模型 API。

    Azure入口中統一模型 API tile 的截圖。

  3. 在 「配置統一模型 API 」標籤中:

    1. 輸入 API 的 顯示名稱 。 API 管理會根據顯示名稱自動產生 API 名稱 ,但你也可以編輯它。
    2. 在 API 路徑中,輸入客戶端用來呼叫 API 的路徑。 預設值為 /llm/v1,導致聊天結束的端點位於 /llm/v1/chat/completions。
    3. 選擇性地選取一或多個 要 與 API 建立關聯的產品。
    4. 選取 下一步。
  4. 在 「配置模型 」標籤中,選擇 + 新增 以開啟 新增模型 面板,然後為每個模型部署設定以下設定:

    1. 在 後端設定下:

      • 在 Model 中,輸入後端模型名稱(例如 gpt-4o ,或 claude-sonnet-4.6)。
      • 在 API 格式中,選擇後端模型預期的格式,例如 OpenAI 聊天完成 API 或 Anthropic 訊息 API。
      • 在 URL 中輸入後端端點 URL,例如在 Foundry 中的模型部署,或其他提供者的 API 端點 URL。
    2. 在 授權憑證中,選擇 API Management 如何向後端進行認證:

      • 標頭:輸入 標頭名稱 (例如 api-key 或 Authorization)及對應的 標頭值 (你的 API 金鑰或秘密)。
      • Managed Identity:在 Azure 的模型部署中,您可以使用實例系統指派的管理身份或使用者指派的管理身份來驗證後端。

      關於管理身份設定的說明,請參閱 認證管理身份 政策的參考資料。

    新增模型面板的截圖,用來在入口網站新增模型設定。

  5. 在 「管理代幣消耗 」標籤中,可選擇性地設定以下政策以監控和管理代幣使用:

  6. 在設置 AI 內容安全標籤中,可選擇性地設定Azure AI 內容安全服務封鎖包含不安全內容的提示:

  7. 選取 [檢閱 + 建立],然後選取 [建立]。

管理模型別名

模型別名為客戶端提供一個穩定且與提供者中立的名稱,方便在呼叫模型時使用。 透過指派像 gpt 或 claude-sonnet這樣的別名,你就能將面向客戶端的型號名稱與實際後端部署解耦。 當你升級模型或想執行 A/B 測試時,你可以更新別名目標,且不會改變客戶端程式碼。

更新或新增模型別名

建立統一模型 API 後,要更新模型別名:

  1. 在Azure入口網站,前往你的 API Management 實例,選擇 APIs。
  2. 選擇統一模型 API。
  3. 選擇「 模型 」標籤以更新或新增模型別名。
    • 要更新面向客戶端的別名,先選擇你想更新的別名,然後更新後 端設定 以指定後端模型。 新增授權 憑證 給新後端。
    • 要新增模型,請選擇 + 新增 ,並依前一節所述設定後端、授權及用戶端設定。
  4. 選取 [儲存]。

探索模型別名

開發者可透過呼叫 /models 統一模型 API 的端點來發現可用的模型及其別名。 API 管理會回傳一份帶有客戶端別名的模型清單。

從客戶端應用程式呼叫 API

用戶端應用程式可以使用任何相容 OpenAI 的 SDK 呼叫統一模型 API。 將 SDK 的基礎 URL 指向你的 API 管理端點,並使用 API Management 訂閱金鑰或其他支援的認證方式進行認證。

以下範例使用 Python OpenAI SDK,並在標頭中傳遞 API Management 訂閱金鑰以進行認證。 要求本文會指定一個在 API Management 中設定、供用戶端使用的模型別名,例如 gpt 或 claude-sonnet。

from openai import OpenAI

client = OpenAI(
    base_url="https://<apim-instance>.azure-api.net/llm/v1",
    api_key="<api-management-subscription-key>",
)

# Specify the client-facing model alias
response = client.chat.completions.create(
    model="gpt",  # or "claude-sonnet", "gemini", or any other configured alias
    messages=[{"role": "user", "content": "What can you do?"}],
)
print(response.choices[0].message.content)

若要切換至不同的後端模型,只需變更 model 的值。 其他程式碼不需更改。