OpenAPI Agent
⚠️ ADVERTENCIA DE DEPRECACIÓN
Este componente está deprecado y será eliminado en una versión futura de Nappai. Por favor, migra a los componentes alternativos recomendados.
El componente OpenAPI Agent permite a los usuarios de Nappai interactuar con cualquier API que esté descrita mediante un esquema OpenAPI. Al cargar el archivo de especificación y seleccionar un modelo de lenguaje, el componente crea un agente inteligente que puede enviar solicitudes HTTP, procesar respuestas y devolver resultados de forma automática.
¿Cómo funciona?
El componente lee un archivo de especificación OpenAPI (JSON o YAML) y lo convierte en un objeto JsonSpec
. Con este objeto y un modelo de lenguaje (LLM) proporcionado por el usuario, crea un toolkit de OpenAPI que sabe cómo construir y enviar peticiones HTTP según la definición del API. El agente, construido con create_openapi_agent
, utiliza el LLM para decidir qué llamada hacer y cómo interpretar la respuesta. Finalmente, el agente devuelve un objeto AgentExecutor
que puede ser usado para ejecutar la lógica de la API y un mensaje con la respuesta procesada.
Entradas
- Model: Selecciona el modelo de lenguaje que el agente usará para generar y comprender las solicitudes y respuestas.
- File Path: Ruta al archivo de especificación OpenAPI (JSON o YAML) que describe la API que quieres usar.
- Allow Dangerous Requests: Si se activa, el agente podrá hacer peticiones que normalmente se consideran inseguras (por ejemplo, llamadas a endpoints que modifican datos). Úsalo con precaución.
- Handle Parse Errors: Indica si el agente debe intentar manejar errores de análisis de la respuesta de la API de forma automática.
- Input: Entrada de datos que el agente usará para construir la solicitud HTTP (por ejemplo, parámetros de consulta o cuerpo de la petición).
- Max Iterations: Número máximo de iteraciones que el agente intentará antes de detenerse. Controla cuántas veces el agente puede volver a generar una solicitud.
- Verbose: Si se activa, el agente mostrará información detallada de su proceso interno, útil para depurar.
Salidas
- Agent: Objeto
AgentExecutor
que representa al agente construido. Se puede usar para ejecutar la lógica de la API en el flujo de trabajo. - Response: Mensaje que contiene la respuesta procesada del agente, listo para ser usado en componentes posteriores.
Ejemplo de Uso
-
Carga la especificación
Selecciona un archivoweather_api.yaml
que describa un endpoint para obtener el clima actual. -
Configura el modelo
Elige un modelo de lenguaje, por ejemplogpt-4o-mini
. -
Define la entrada
En el campo Input escribe:{"city": "Madrid"} -
Ejecuta el agente
Conecta la salida Response a un componente de visualización (por ejemplo, un cuadro de texto) para mostrar la temperatura y la descripción del clima.
Componentes Relacionados
- LCAgentComponent: Base sobre la que se construye este componente, ofrece funcionalidades comunes para agentes.
- OpenAPIToolkit: Herramienta que facilita la interacción con APIs OpenAPI dentro de Nappai.
Consejos y Mejores Prácticas
- Revisa la especificación: Asegúrate de que el archivo OpenAPI esté completo y sin errores antes de cargarlo.
- Limita las peticiones peligrosas: Activa
Allow Dangerous Requests
solo cuando sea absolutamente necesario y en entornos seguros. - Controla el número de iteraciones: Establece un
Max Iterations
razonable para evitar bucles infinitos. - Usa
Verbose
para depurar: Cuando algo no funcione, activaVerbose
para ver los pasos internos del agente.
Consideraciones de Seguridad
- El componente puede realizar llamadas HTTP externas; verifica que la API a la que te conectas sea confiable.
- Si habilitas
Allow Dangerous Requests
, ten cuidado con endpoints que puedan crear, actualizar o eliminar datos críticos. - Mantén tus credenciales y tokens seguros; no los incluyas directamente en el archivo de especificación si es posible.