Delen via


Azure OpenAI-API simuleren

Wanneer u apps bouwt die zijn verbonden met Azure OpenAI, communiceert vaak slechts een deel van de app met de Azure OpenAI-API. Wanneer u werkt aan de gedeelten van de app waarvoor geen echte antwoorden van de Azure OpenAI-API nodig zijn, kunt u de antwoorden simuleren met behulp van Dev Proxy. Door gesimuleerde antwoorden te gebruiken, kunt u onnodige kosten voorkomen. Het OpenAIMockResponsePlugin maakt gebruik van een lokaal taalmodel dat op uw computer wordt uitgevoerd om antwoorden van Azure OpenAI API te simuleren.

Voordat u begint

Als u Azure OpenAI API-antwoorden wilt simuleren met behulp van Dev Proxy, moet u een ondersteunde taalmodelclient op uw computer hebben geïnstalleerd.

Standaard gebruikt Dev Proxy het llama3.2-taalmodel dat op Ollama wordt uitgevoerd. Als u een andere client of een ander model wilt gebruiken, werkt u de instellingen van het taalmodel bij in het configuratiebestand van de Dev Proxy.

Dev Proxy configureren voor het simuleren van Azure OpenAI API-antwoorden

Aanbeveling

Stappen die in deze handleiding worden beschreven, zijn beschikbaar in een kant-en-klare Dev Proxy-voorinstelling. Als u de voorinstelling wilt gebruiken, voert u devproxy config get simulate-azure-openai uit in de commandoregel en volgt u de instructies.

Als u reacties van de Azure OpenAI-API wilt simuleren met behulp van Dev Proxy, moet u het OpenAIMockResponsePlugin in het devproxyrc.json bestand inschakelen.

{
  "$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"
    }
  ]
}

Configureer vervolgens Dev Proxy om verzoeken naar Azure OpenAI API te onderscheppen. Gebruik voor het gemak jokertekens om aanvragen voor alle implementaties te onderscheppen.

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

Ten slotte configureert u Dev Proxy voor het gebruik van een lokaal taalmodel.

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

Het volledige configuratiebestand ziet er als volgt uit.

{
  "$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-antwoorden simuleren

Uitgaande van de standaardconfiguratie, start Ollama met het llama3.2-taalmodel. Voer op de opdrachtregel ollama run llama3.2 uit.

Start vervolgens Dev Proxy. Als u de voorinstelling gebruikt, voert u de opdracht uit devproxy -c "~appFolder/config/simulate-azure-openai/simulate-azure-openai.json. Als u een aangepast configuratiebestand met de naam devproxyrc.jsongebruikt, opgeslagen in de huidige werkmap, voert u de opdracht uit devproxy. Dev Proxy controleert of het toegang heeft tot het taalmodel op Ollama en bevestigt dat het klaar is om Azure OpenAI API-antwoorden te simuleren.

 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

Voer uw toepassing uit en dien aanvragen in bij de Azure OpenAI-API. Dev Proxy onderschept de aanvragen en simuleert antwoorden met behulp van het lokale taalmodel.

Schermopname van een opdrachtprompt met Dev Proxy die reactie simuleert voor een aanvraag naar de Azure OpenAI-API.

Volgende stap

Meer informatie over de OpenAIMockResponsePlugin.

Voorbeelden

Zie ook de gerelateerde Dev Proxy-voorbeelden: