Azure OpenAI API 시뮬레이션

Azure OpenAI에 연결된 앱을 빌드할 때 앱의 일부만 Azure OpenAI API와 상호 작용하는 경우가 많습니다. Azure OpenAI API에서 실제 회신이 필요하지 않은 앱 부분에서 작업하는 경우 개발자 프록시를 사용하여 응답을 시뮬레이션할 수 있습니다. 시뮬레이션된 응답을 사용하면 불필요한 비용이 발생하지 않도록 할 수 있습니다. OpenAIMockResponsePlugin Ollama에서 실행되는 로컬 언어 모델을 사용하여 Azure OpenAI API의 응답을 시뮬레이션합니다.

시작하기 전에

개발자 프록시를 사용하여 Azure OpenAI API 응답을 시뮬레이션하려면 컴퓨터에 Ollama를 설치해야 합니다. Ollama를 설치하려면 Ollama 설명서지침을 따릅니다.

기본적으로 개발자 프록시는 phi-3 언어 모델을 사용합니다. 다른 모델을 사용하려면 개발자 프록시 구성 파일에서 속성을 업데이트 model 합니다.

Azure OpenAI API 응답을 시뮬레이션하도록 개발 프록시 구성

이 자습서에 설명된 단계는 바로 사용할 수 있는 개발 프록시 사전 설정에서 사용할 수 있습니다. 사전 설정을 사용하려면 명령줄에서 명령을 실행하고 devproxy preset get simulate-azure-openai지침을 따릅니다.

개발자 프록시를 사용하여 Azure OpenAI API 응답을 시뮬레이션하려면 파일에서 devproxyrc.json 사용하도록 설정 OpenAIMockResponsePlugin 해야 합니다.

{
  "$schema": "https://raw.githubusercontent.com/microsoft/dev-proxy/main/schemas/v0.19.0/rc.schema.json",
  "plugins": [
    {
      "name": "OpenAIMockResponsePlugin",
      "enabled": true,
      "pluginPath": "~appFolder/plugins/dev-proxy-plugins.dll"
    }
  ]
}

다음으로, Azure OpenAI API에 대한 요청을 가로채도록 개발 프록시를 구성합니다. 간단히 하기 위해 와일드카드를 사용하여 모든 배포에 대한 요청을 가로채야 합니다.

{
  // [...] trimmed for brevity
  "urlsToWatch": [
    "https://*.openai.azure.com/openai/deployments/*/completions*"
  ]
}

마지막으로, 로컬 언어 모델을 사용하도록 개발 프록시를 구성합니다.

{
  // [...] trimmed for brevity
  "languageModel": {
    "enabled": true
  }
}

전체 구성 파일은 다음과 같습니다.

{
  "$schema": "https://raw.githubusercontent.com/microsoft/dev-proxy/main/schemas/v0.19.0/rc.schema.json",
  "plugins": [
    {
      "name": "OpenAIMockResponsePlugin",
      "enabled": true,
      "pluginPath": "~appFolder/plugins/dev-proxy-plugins.dll"
    }
  ],
  "urlsToWatch": [
    "https://*.openai.azure.com/openai/deployments/*/completions*"
  ],
  "languageModel": {
    "enabled": true
  }
}

Azure OpenAI API 응답 시뮬레이션

phi-3 언어 모델로 Ollama를 시작합니다. 명령줄에서 .를 실행합니다 ollama run phi3.

다음으로, 개발 프록시를 시작합니다. 사전 설정을 사용하는 경우 를 실행합니다 devproxy -c "~appFolder/presets/simulate-azure-openai/simulate-azure-openai.json. 현재 작업 디렉터리에 저장된 명명 devproxyrc.json된 사용자 지정 구성 파일을 사용하는 경우 실행 devproxy합니다. 개발자 프록시는 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에 요청합니다. 개발자 프록시는 요청을 가로채고 로컬 언어 모델을 사용하여 응답을 시뮬레이션합니다.

Azure OpenAI API에 대한 요청에 대한 응답을 시뮬레이션하는 개발자 프록시가 있는 명령 프롬프트의 스크린샷.

다음 단계

OpenAIMockResponsePlugin에 대해 자세히 알아봅니다.

샘플

관련 개발 프록시 샘플도 참조하세요.