Partager via


Simuler l’API Azure OpenAI

Lorsque vous créez des applications connectées à Azure OpenAI, souvent, seule une partie de l’application interagit avec l’API Azure OpenAI. Lorsque vous travaillez sur les parties de l’application qui ne nécessitent pas de réponses réelles de l’API Azure OpenAI, vous pouvez simuler les réponses à l’aide du proxy de développement. L’utilisation de réponses simulées vous permet d’éviter les coûts inutiles. L’utilisation OpenAIMockResponsePlugin d’un modèle de langage local s’exécutant sur Ollama pour simuler des réponses à partir de l’API Azure OpenAI.

Avant de commencer

Pour simuler des réponses d’API Azure OpenAI à l’aide du proxy de développement, vous devez installer Ollama sur votre ordinateur. Pour installer Ollama, suivez les instructions de la documentation Ollama.

Par défaut, le proxy de développement utilise le modèle de langage phi-3. Pour utiliser un autre modèle, mettez à jour la model propriété dans le fichier de configuration du proxy de développement.

Configurer le proxy de développement pour simuler les réponses de l’API Azure OpenAI

Conseil

Les étapes décrites dans ce tutoriel sont disponibles dans une présélection de proxy de développement prête à l’emploi. Pour utiliser la présélection, dans la ligne de commande, exécutez devproxy preset get simulate-azure-openaiet suivez les instructions.

Pour simuler des réponses d’API Azure OpenAI à l’aide du proxy de développement, vous devez activer le OpenAIMockResponsePlugin devproxyrc.json fichier.

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

Ensuite, configurez le proxy de développement pour intercepter les requêtes vers l’API Azure OpenAI. Par souci de simplicité, utilisez des caractères génériques pour intercepter les requêtes à tous les déploiements.

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

Enfin, configurez le proxy de développement pour utiliser un modèle de langage local.

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

Le fichier de configuration complet ressemble à ceci.

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

Simuler des réponses de l’API Azure OpenAI

Démarrez Ollama avec le modèle de langage phi-3. Dans la ligne de commande, exécutez ollama run phi3.

Ensuite, démarrez le proxy de développement. Si vous utilisez la présélection, exécutez devproxy -c "~appFolder/presets/simulate-azure-openai/simulate-azure-openai.json. Si vous utilisez un fichier de configuration personnalisé nommé devproxyrc.json, stocké dans le répertoire de travail actuel, exécutez devproxy. Le proxy de développement vérifie qu’il peut accéder au modèle de langage Ollama et confirme qu’il est prêt à simuler des réponses d’API Azure OpenAI.

 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

Exécutez votre application et effectuez des demandes à l’API Azure OpenAI. Le proxy de développement intercepte les requêtes et simule les réponses à l’aide du modèle de langage local.

Capture d’écran d’une invite de commandes avec le proxy de développement simulant la réponse d’une demande à l’API Azure OpenAI.

Étape suivante

En savoir plus sur OpenAIMockResponsePlugin.

Exemples

Consultez également les exemples de proxy de développement associés :