Freigeben über


Simulieren der OpenAI-API

Wenn Sie Apps erstellen, die mit OpenAI verbunden sind, interagiert häufig nur ein Teil der App mit der OpenAI-API. Wenn Sie an den Teilen der App arbeiten, für die keine echten Antworten aus der OpenAI-API erforderlich sind, können Sie die Antworten mithilfe von Dev Proxy simulieren. Mit simulierten Antworten können Sie unnötige Kosten vermeiden. Das OpenAIMockResponsePlugin verwendet ein lokales Sprachmodell, um Antworten von der OpenAI-API zu simulieren.

Bevor Sie beginnen

Um OpenAI-API-Antworten mit dem Dev Proxy zu simulieren, muss ein unterstützter Sprachmodellclient auf Ihrem Computer installiert sein.

Standardmäßig verwendet Dev Proxy das Sprachmodell llama3.2, das auf Ollama ausgeführt wird. Wenn Sie einen anderen Client oder ein anderes Modell verwenden möchten, aktualisieren Sie die Einstellungen für das Sprachmodell in der Dev Proxy-Konfigurationsdatei.

Konfigurieren von Dev Proxy zum Simulieren von OpenAI-API-Antworten

Tipp

Die in diesem Tutorial beschriebenen Schritte sind in einer sofort einsatzbereiten Dev-Proxy-Voreinstellung verfügbar. Um die Voreinstellung zu verwenden, führen Sie im Befehlszeilenterminal devproxy config get simulate-openai aus und folgen Sie den Anweisungen.

Um OpenAI-API-Antworten mit Dev Proxy zu simulieren, müssen Sie OpenAIMockResponsePlugin in der devproxyrc.json-Datei aktivieren.

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

Konfigurieren Sie als Nächstes Dev Proxy, um Anforderungen an die OpenAI-API abzufangen. OpenAI empfiehlt die Verwendung des https://api.openai.com/v1/chat/completions Endpunkts, mit dem Sie von den neuesten Modellen und Features profitieren können.

{
  // [...] trimmed for brevity
  "urlsToWatch": [
    "https://api.openai.com/v1/chat/completions"
  ]
}

Konfigurieren Sie schließlich Dev Proxy für die Verwendung eines lokalen Sprachmodells.

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

Die vollständige Konfigurationsdatei sieht wie folgt aus.

{
  "$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://api.openai.com/v1/chat/completions"
  ],
  "languageModel": {
    "enabled": true
  }
}

Simulieren von OpenAI-API-Antworten

Unter der Annahme der Standardkonfiguration starten Sie Ollama mit dem Sprachmodell llama3.2. Führen Sie in der Befehlszeile den Befehl aus ollama run llama3.2.

Starten Sie als Nächstes Dev Proxy. Wenn Sie die Voreinstellung verwenden, führen Sie devproxy -c "~appFolder/config/simulate-openai/simulate-openai.json aus. Wenn Sie eine benutzerdefinierte Konfigurationsdatei mit dem Namen devproxyrc.json verwenden, die im aktuellen Arbeitsverzeichnis gespeichert ist, führen Sie devproxy aus. Dev Proxy überprüft, ob es auf das Sprachmodell auf Ollama zugreifen kann, und bestätigt, dass es bereit ist, OpenAI-API-Antworten zu simulieren.

 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

Führen Sie Ihre Anwendung aus, und stellen Sie Anforderungen an die OpenAI-API. Dev Proxy fängt die Anforderungen ab und simuliert Antworten mithilfe des lokalen Sprachmodells.

Screenshot einer Eingabeaufforderung mit Dev Proxy-Simulation der Antwort für eine Anforderung an die OpenAI-API.

Nächster Schritt

Erfahren Sie mehr über das OpenAIMockResponsePlugin.

Beispiele

Siehe auch die zugehörigen Dev Proxy-Beispiele: