當您建置連線至 Azure OpenAI 的應用程式時,通常只有部分應用程式會與 Azure OpenAI API 互動。 當您在應用程式中處理不需要 Azure OpenAI API 實際回覆的部分時,可以使用 Dev Proxy 來模擬回應。 使用仿真的回應可讓您避免產生不必要的成本。 它使用 OpenAIMockResponsePlugin 電腦上運行的本地語言模型來類比來自 Azure OpenAI API 的回應。
在您開始之前
要使用開發代理類比 Azure OpenAI API 回應,您需要在電腦上安裝 受支援的語言模型用戶端 。
默認情況下,Dev Proxy 使用在 Ollama 上運行的 llama3.2 語言模型。 要使用其他用戶端或模型,請更新 Dev Proxy 配置檔中的 語言模型設置 。
設定開發 Proxy 以模擬 Azure OpenAI API 回應
提示
本教學課程中所述的步驟適用於現成可用的開發 Proxy 預設。 若要使用預設,請在命令行中執行 devproxy config get simulate-azure-openai,然後遵循指示。
若要使用 Dev Proxy 模擬 Azure OpenAI API 回應,您需要在OpenAIMockResponsePlugin檔案中啟用devproxyrc.json。
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/rc.schema.json",
"plugins": [
{
"name": "OpenAIMockResponsePlugin",
"enabled": true,
"pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll"
}
]
}
接下來,設定 Dev Proxy 以攔截對 Azure OpenAI API 的要求。 為了簡化流程,請使用通配符來攔截所有部署的請求。
{
// [...] trimmed for brevity
"urlsToWatch": [
"https://*.openai.azure.com/openai/deployments/*/completions*"
]
}
最後,將 Dev Proxy 設定為使用本機語言模型。
{
// [...] trimmed for brevity
"languageModel": {
"enabled": true
}
}
完整的組態檔看起來像這樣。
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/rc.schema.json",
"plugins": [
{
"name": "OpenAIMockResponsePlugin",
"enabled": true,
"pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll"
}
],
"urlsToWatch": [
"https://*.openai.azure.com/openai/deployments/*/completions*"
],
"languageModel": {
"enabled": true
}
}
模擬 Azure OpenAI API 回應
假設預設配置,使用 llama3.2 語言模型啟動 Ollama。 在命令列中,執行 ollama run llama3.2。
接下來,啟動 Dev Proxy。 如果您使用預設,請執行 devproxy -c "~appFolder/config/simulate-azure-openai/simulate-azure-openai.json。 如果您使用名為 devproxyrc.json的自訂組態檔,儲存在目前工作目錄中,請執行 devproxy。 Dev Proxy 檢查它是否可以訪問 Ollama 上的語言模型,並確認它已準備好類比 Azure OpenAI API 回應。
info OpenAIMockResponsePlugin: Checking language model availability...
info Listening on 127.0.0.1:8000...
Hotkeys: issue (w)eb request, (r)ecord, (s)top recording, (c)lear screen
Press CTRL+C to stop Dev Proxy
執行您的應用程式,並向 Azure OpenAI API 提出要求。 Dev Proxy 會攔截要求,並使用本機語言模型模擬回應。
後續步驟
深入瞭解 OpenAIMockResponsePlugin。
範例
另請參閱相關的開發 Proxy 範例: