Delen via


OpenAI-API simuleren

Wanneer u apps bouwt die zijn verbonden met OpenAI, communiceert vaak slechts een deel van de app met de OpenAI-API. Wanneer u werkt aan de gedeelten van de app waarvoor geen echte antwoorden van de 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 wordt uitgevoerd op Ollama om reacties van de OpenAI-API te simuleren.

Voordat u begint

Als u OpenAI API-antwoorden wilt simuleren met behulp van Dev Proxy, moet Ollama op uw computer zijn geïnstalleerd. Volg de instructies in de Ollama-documentatie om Ollama te installeren.

Dev Proxy maakt standaard gebruik van het phi-3-taalmodel. Als u een ander model wilt gebruiken, werkt u de model eigenschap bij in het configuratiebestand dev proxy.

Dev Proxy configureren om OpenAI API-antwoorden te simuleren

Tip

Stappen die in deze zelfstudie worden beschreven, zijn beschikbaar in een kant-en-klare dev-proxyvoorinstelling. Als u de voorinstelling wilt gebruiken, voert devproxy preset get simulate-openaiu deze uit in de opdrachtregel en volgt u de instructies.

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

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

Configureer vervolgens Dev Proxy om aanvragen te onderscheppen voor openAI-API. OpenAI raadt het gebruik van het https://api.openai.com/v1/chat/completions eindpunt aan, zodat u kunt profiteren van de nieuwste modellen en functies.

{
  // [...] trimmed for brevity
  "urlsToWatch": [
    "https://api.openai.com/v1/chat/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/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://api.openai.com/v1/chat/completions"
  ],
  "languageModel": {
    "enabled": true
  }
}

OpenAI API-antwoorden simuleren

Start Ollama met het phi-3-taalmodel. Voer de opdracht uit ollama run phi3op de opdrachtregel.

Start vervolgens Dev Proxy. Als u de voorinstelling gebruikt, voert u de opdracht uit devproxy -c "~appFolder/presets/simulate-openai/simulate-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 Ollama-taalmodel en bevestigt dat het klaar is om 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 OpenAI-API. Dev Proxy onderschept de aanvragen en simuleert antwoorden met behulp van het lokale taalmodel.

Schermopname van een opdrachtprompt met Dev Proxy die antwoord simuleert voor een aanvraag voor openAI-API.

Volgende stap

Meer informatie over de OpenAIMockResponsePlugin.

Voorbeelden

Zie ook de gerelateerde Dev Proxy-voorbeelden: