AIML
El componente AIML permite a los usuarios generar texto utilizando modelos de lenguaje de la plataforma AIML. Se integra directamente con la API de AIML (o cualquier otro endpoint compatible con OpenAI) y devuelve el texto generado junto con el modelo configurado para su reutilización en otras partes del flujo.
¿Cómo funciona?
Cuando lo añades a tu dashboard, el componente envía una solicitud a la API de AIML con los parámetros que configures (modelo, temperatura, tokens máximos, etc.). La respuesta se devuelve como un mensaje de texto. Además, el componente crea un objeto LanguageModel
que puedes usar en otros componentes que requieran un modelo de lenguaje.
El flujo interno es sencillo:
- Configuración: Se leen los valores de los campos de entrada (modelo, temperatura, etc.) y la credencial de tipo AI/ML API que contiene la clave de acceso.
- Llamada a la API: Se construye un cliente
ChatOpenAI
con la URL base y la clave, y se envía la petición. - Respuesta: El texto generado se devuelve como salida Text y el modelo configurado se devuelve como salida Model.
Entradas
Modo de Mapeo (Mapping Mode)
Este componente cuenta con un modo especial llamado “Mapping Mode” (Modo de Mapeo). Cuando activas este modo mediante el interruptor, se habilita una entrada adicional llamada “Mapping Data” y cada campo de entrada te ofrece tres formas diferentes de proporcionar datos:
- Fixed (Fijo): Escribes el valor directamente en el campo.
- Mapped (Mapeado): Conectas la salida de otro componente para usar su resultado como valor.
- Javascript: Escribes código Javascript para calcular el valor dinámicamente.
Esta flexibilidad te permite crear flujos de trabajo más dinámicos y conectados.
Campos de Entrada
- AIML API Base: La URL base de la API de OpenAI. Por defecto es
https://api.aimlapi.com
. Puedes cambiarla para usar otros servicios como JinaChat, LocalAI o Prem. - Input: El texto o prompt que quieres enviar al modelo. Se utiliza como entrada principal para la generación de texto.
- Mapping Mode: Interruptor que activa el modo de mapeo para procesar múltiples registros en lote.
- Max Tokens: El número máximo de tokens que el modelo puede generar. Establece 0 para tokens ilimitados.
- Model Kwargs: Parámetros adicionales que se pasan al modelo (por ejemplo,
stop
,presence_penalty
, etc.). Se pueden usar para afinar el comportamiento del modelo. - Model Name: El nombre del modelo de AIML que quieres usar (por ejemplo,
gpt-4o-mini
). Se selecciona de una lista predefinida. - Seed: Semilla que controla la reproducibilidad de la generación. Un valor fijo garantiza resultados idénticos en ejecuciones posteriores.
- Stream: Si se activa, la respuesta se envía en tiempo real (streaming). Solo funciona en modo chat.
- System Message: Mensaje de sistema que se pasa al modelo para establecer el contexto o la personalidad del asistente.
- Temperature: Controla la aleatoriedad de la generación. Valores más bajos generan respuestas más determinísticas.
Credencial
Este componente requiere una credencial de tipo AI/ML API.
- Configura primero la credencial en la sección de credenciales de Nappai.
- Luego selecciona esa credencial en el campo Credential del componente.
La credencial necesita una AI/ML API Key (password). Puedes crearla en la documentación oficial: AI/ML API.
Salidas
- Text: El texto generado por el modelo. Se puede usar directamente en visualizaciones, enviar por correo, o pasar a otro componente.
- Model: El objeto
LanguageModel
configurado. Útil si quieres reutilizar el mismo modelo en otro paso del flujo sin volver a configurarlo.
Ejemplo de Uso
- Añade el componente AIML al flujo y activa el modo de mapeo si quieres procesar varias entradas a la vez.
- Configura la credencial: Ve a Credenciales → Agregar credencial → selecciona AI/ML API y pega tu clave.
- Selecciona el modelo (por ejemplo,
gpt-4o-mini
) y ajusta la temperatura a 0.1 para respuestas coherentes. - Conecta la entrada: Si tienes un componente que genera prompts, conéctalo al campo Input. Si no, escribe un prompt fijo.
- Ejecuta el flujo. El componente devolverá el texto generado en la salida Text y el modelo en Model.
Este flujo es ideal para generar resúmenes automáticos, respuestas a preguntas frecuentes o contenido creativo a partir de datos estructurados.
Componentes Relacionados
- Chat Component – Permite enviar mensajes de chat a un modelo y recibir respuestas en tiempo real.
- LLM Callback Handler – Registra eventos y métricas de los modelos de lenguaje durante la ejecución.
- Text Processor – Procesa y limpia el texto generado antes de usarlo en otras partes del flujo.
Consejos y Mejores Prácticas
- Usa la opción de streaming cuando necesites respuestas en tiempo real, especialmente en interfaces de chat.
- Ajusta la temperatura según el nivel de creatividad que requieras: valores bajos (0.1–0.3) para respuestas precisas, valores altos (0.7–1.0) para ideas más creativas.
- Limita los tokens máximos para evitar costos innecesarios y mantener la respuesta concisa.
- Reutiliza el modelo: Si vas a hacer varias llamadas con el mismo modelo, guarda la salida Model y reutilízala en lugar de crear un nuevo objeto cada vez.
- Prueba con diferentes modelos: Los modelos más pequeños son más rápidos y económicos, mientras que los más grandes ofrecen mayor calidad.
Consideraciones de Seguridad
- Protege tu clave API: Nunca la expongas en el código fuente ni la compartas públicamente. Usa la sección de credenciales de Nappai para gestionarla de forma segura.
- Limita el acceso: Configura permisos de usuario en Nappai para que solo personas autorizadas puedan usar el componente y la credencial.
- Monitorea el uso: Revisa los logs y métricas de la API para detectar patrones de uso anómalos o excesivo consumo de tokens.
- Valida la entrada: Si el prompt proviene de usuarios externos, sanitiza y valida el contenido para evitar inyecciones o contenido inapropiado.