Compartir a través de


Simulación de la API de OpenAI

Al compilar aplicaciones conectadas a OpenAI, a menudo, solo una parte de la aplicación interactúa con la API de OpenAI. Al trabajar en las partes de la aplicación que no requieren respuestas reales de openAI API, puede simular las respuestas mediante el proxy de desarrollo. El uso de respuestas simuladas permite evitar incurrir en costos innecesarios. OpenAIMockResponsePlugin usa un modelo de lenguaje local que se ejecuta en Ollama para simular respuestas de openAI API.

Antes de comenzar

Para simular las respuestas de la API de OpenAI mediante el proxy de desarrollo, necesita que Ollama esté instalado en el equipo. Para instalar Ollama, siga las instrucciones de la documentación de Ollama.

De forma predeterminada, Dev Proxy usa el modelo de lenguaje phi-3. Para usar un modelo diferente, actualice la model propiedad en el archivo de configuración del proxy de desarrollo.

Configuración del proxy de desarrollo para simular respuestas de openAI API

Sugerencia

Los pasos descritos en este tutorial están disponibles en un valor preestablecido de Dev Proxy listo para usar. Para usar el valor preestablecido, en la línea de comandos, ejecute devproxy preset get simulate-openaiy siga las instrucciones.

Para simular las respuestas de la API de OpenAI mediante el proxy de desarrollo, debe habilitar en OpenAIMockResponsePlugin el devproxyrc.json archivo .

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

A continuación, configure Dev Proxy para interceptar las solicitudes a OpenAI API. OpenAI recomienda usar el https://api.openai.com/v1/chat/completions punto de conexión, lo que le permite beneficiarse de los modelos y características más recientes.

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

Por último, configure el proxy de desarrollo para usar un modelo de lenguaje local.

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

El archivo de configuración completo tiene este aspecto.

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

Simulación de respuestas de openAI API

Inicie Ollama con el modelo de lenguaje phi-3. En la línea de comandos, ejecute ollama run phi3.

A continuación, inicie el proxy de desarrollo. Si usa el valor preestablecido, ejecute devproxy -c "~appFolder/presets/simulate-openai/simulate-openai.json. Si usa un archivo de configuración personalizado denominado devproxyrc.json, almacenado en el directorio de trabajo actual, ejecute devproxy. Dev Proxy comprueba que puede acceder al modelo de lenguaje Ollama y confirma que está listo para simular respuestas de la API de 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

Ejecute la aplicación y realice solicitudes a la API de OpenAI. Dev Proxy intercepta las solicitudes y simula las respuestas mediante el modelo de lenguaje local.

Captura de pantalla de un símbolo del sistema con la simulación de respuesta del proxy de desarrollo para una solicitud a OpenAI API.

Paso siguiente

Obtenga más información sobre OpenAIMockResponsePlugin.

Ejemplos

Consulte también los ejemplos relacionados del proxy de desarrollo: