Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
De un vistazo
Objetivo: Simular OpenAI usando un LLM local
Tiempo: 15 minutos
Plugins:OpenAIMockResponsePlugin
Requisitos previos:Configuración del proxy de desarrollo, modelo de lenguaje local
Al compilar aplicaciones conectadas a OpenAI, a menudo, solo una parte de la aplicación interactúa con la API de OpenAI. Cuando trabajes en las partes de la aplicación que no requieran respuestas reales de la API de OpenAI, puedes simular las respuestas con Dev Proxy. El uso de respuestas simuladas permite evitar incurrir en costos innecesarios. Utiliza OpenAIMockResponsePlugin un modelo de lenguaje local para simular las respuestas de la API de OpenAI.
Antes de comenzar
Para simular las respuestas de la API de OpenAI mediante Dev Proxy, necesita un cliente de modelo de lenguaje compatible instalado en su máquina.
De forma predeterminada, Dev Proxy usa el modelo de lenguaje llama3.2 que se ejecuta en Ollama. Para usar un cliente o modelo diferente, actualice la configuración del modelo de lenguaje en el archivo de configuración de Dev Proxy.
Configurar Dev Proxy para simular respuestas de la API de OpenAI
Sugerencia
Los pasos descritos en este tutorial se incluyen en una preconfiguración de Dev Proxy lista para usar. Para usar el valor preestablecido, en la línea de comandos, ejecute devproxy config get simulate-openaiy siga las instrucciones.
Para simular respuestas de la API de OpenAI con Dev Proxy, debe habilitar el elemento OpenAIMockResponsePlugin en el archivo devproxyrc.json.
Archivo: devproxyrc.json
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.0.0/rc.schema.json",
"plugins": [
{
"name": "OpenAIMockResponsePlugin",
"enabled": true,
"pluginPath": "~appFolder/plugins/DevProxy.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.
Archivo: devproxyrc.json (agregar al nivel raíz)
{
// [...] 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.
Archivo: devproxyrc.json (agregar al nivel raíz)
{
// [...] trimmed for brevity
"languageModel": {
"enabled": true
}
}
El archivo de configuración completo tiene este aspecto.
Archivo: devproxyrc.json (completo)
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.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
}
}
Simulación de respuestas de openAI API
Suponiendo la configuración predeterminada, inicie Ollama con el modelo de lenguaje llama3.2. En la línea de comandos, ejecute ollama run llama3.2.
A continuación, inicie Dev Proxy. Si usa el valor preestablecido, ejecute devproxy -c "~appFolder/config/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 en Ollama y confirma que está listo para simular las 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.
Paso siguiente
Obtenga más información sobre OpenAIMockResponsePlugin.
Ejemplos
Vea también los ejemplos relacionados de Dev Proxy:
Consulte también
- Simular la API de Azure OpenAI - Usar con puntos de conexión de Azure OpenAI
- Prueba de mi aplicación con errores del modelo de lenguaje : simulación de errores de LLM
- Límites del token del modelo de lenguaje de prueba : simulación de la limitación de velocidad de tokens
- ¿Qué son las pruebas de caos? - Comprender los conceptos de las pruebas de resiliencia