Saltar al contenido

Guía

Cómo añadir un chatbot de soporte con IA y un agente SSH a una nube de CloudStack

NexCMP es una plataforma autoalojada de facturación y portal de clientes para Apache CloudStack y Proxmox VE, y la versión 1.2.0 incluye dos módulos de IA: AI Chat, un asistente integrado en el portal de clientes, y AI Agent, que ejecuta tareas en la propia VM del cliente a través de SSH. Esta guía explica cómo configurar ambos con una clave de API compatible con OpenAI, mediante capturas del portal de clientes y de la consola de administración.

Tiempo estimado: unos 15 minutos en una instalación existente de NexCMP.

El stack

Cuatro componentes, de los cuales probablemente ya ejecute tres.

  • NexCMP 1.2.0

    El panel que sus clientes ya utilizan, instalado en Ubuntu 22.04 o 24.04. AI Chat y AI Agent forman parte de la licencia, sin costos adicionales.

  • Un endpoint compatible con OpenAI

    Cualquier API de chat completions que admita llamadas a herramientas (funciones): un proveedor alojado o un proxy que ejecute delante de varios proveedores.

  • Una clave con límite de gasto

    Asigne al panel su propia clave y establezca un presupuesto mensual en el proveedor o en su proxy para que el consumo nunca se descontrole.

  • Sus VM de CloudStack

    AI Agent se conecta a la VM del cliente a través de SSH desde el servidor del panel, con las credenciales que el cliente guardó para esa VM.

Paso a paso

  1. Actualice el panel a 1.2.0

    En la consola de administración, abra License y pulse Update, o ejecute sudo nexcmp update en el servidor. La actualización está firmada y se verifica antes de instalarse.

  2. Cree una clave de API con límite de gasto

    En su proveedor de IA (o en su proxy), cree una clave exclusiva para este panel y asígnele un presupuesto mensual. Un modelo rápido y de bajo costo es suficiente para el chat de soporte.

  3. Introdúzcala en Admin › Settings › AI provider

    Pegue la URL del endpoint, la clave y el nombre del modelo, luego presione Test connection. La clave se almacena cifrada en la base de datos del panel y no se vuelve a mostrar jamás.

  4. Activar el módulo de IA

    En License › Modules, active AI. AI Chat y AI Agent aparecerán en el menú del portal de clientes tras recargar la página; al desactivar el módulo, volverán a ocultarse.

  5. Los clientes consultan a AI Chat

    AI Chat responde preguntas sobre sus planes y precios, así como sobre los propios servicios del cliente. Si una consulta requiere atención humana, el cliente puede transferir la conversación a su equipo de soporte.

    Portal de clientes, AI Chat respondiendo una pregunta sobre los servidores del cliente
  6. Los clientes ejecutan AI Agent en una VM

    El cliente selecciona una de sus VM y describe la tarea en lenguaje natural. El agente ejecuta los comandos mediante SSH y muestra cada comando junto con su salida.

    Portal de clientes, AI Agent ejecutando comandos en una VM y mostrando sus resultados
  7. Supervise el consumo

    El consumo lo factura su proveedor de IA, no NexCMP. Consulte el gasto en el panel del proveedor o proxy y ajuste el presupuesto de la clave a medida que sus clientes adopten la función.

Qué necesita antes de empezar

  • NexCMP 1.2.0 o posterior, con el módulo de IA en License › Modules.
  • Un proveedor de IA con un endpoint chat/completions compatible con OpenAI y un modelo que admita llamadas a herramientas (function calling): OpenAI, OpenRouter, un gateway LiteLLM o su propio servidor vLLM son todas opciones válidas.
  • Para AI Agent, openssh-client en el servidor del panel (el instalador lo añade) y una ruta de red desde el servidor del panel hasta el puerto SSH de cada VM, el 22 por defecto.
  • Para AI Agent, una VM Linux que pertenezca al cliente, esté en ejecución y no bloqueada, con credenciales guardadas (almacenadas al crear la VM o al restablecer su contraseña) o la clave de operaciones del panel. Las VM Windows son rechazadas.
  • Opcional para la transferencia de AI Chat al personal: un bot y chat ID de Telegram en Settings › Admin alerts.
ssh -V
nc -vz 198.51.100.10 22

Pruebe primero el endpoint desde el servidor del panel

NexCMP añade /chat/completions a cualquier URL que termine en /v1, y /v1/chat/completions a cualquier otra URL; una URL que ya termine en /chat/completions se utiliza tal cual. Antes de introducir el endpoint, envíele una solicitud desde el servidor de NexCMP. Una respuesta JSON con choices[0].message.content significa que el endpoint y el modelo funcionan.

curl -s https://ai.example.com/v1/chat/completions \
  -H "Authorization: Bearer XXXX" -H "Content-Type: application/json" \
  -d '{"model":"gpt-4o-mini","messages":[{"role":"user","content":"Reply with one word: OK"}]}'

Cómo ejecuta comandos AI Agent y qué no ejecutará por sí solo

  • Los comandos se ejecutan desde el servidor del panel con su propio cliente ssh, un comando no interactivo a la vez. El destino siempre es la dirección IP de la VM registrada en la base de datos, nunca una obtenida de la solicitud.
  • La contraseña guardada se transmite mediante un asistente SSH_ASKPASS de un solo uso en el entorno del proceso: no se escribe en disco ni se incluye en la línea de comandos.
  • La salida de cada comando está limitada a 200 KB, un turno finaliza tras un máximo de 10 pasos y un cliente solo puede tener un máximo de 2 ejecuciones del agente activas a la vez.
  • En el modo Confirm, cada comando espera a que el cliente pulse Run. En el modo Auto, solo los comandos incluidos en una lista estricta de solo lectura (por ejemplo, df -h, ps o journalctl) se ejecutan por sí solos.
  • Los comandos que sobrescriben o eliminan archivos, modifican cuentas o SSH Keys, envían datos a un servidor externo, descargan y ejecutan un script, o apagan o reinician la máquina siempre muestran Needs confirmation, incluso en el modo Auto.
  • La salida de los comandos se muestra al modelo como datos no confiables y no se siguen las instrucciones encontradas en ella.

Resolución de problemas

Los mensajes que es más probable encontrar y qué comprobar.

  • Test connection falla con 401

    Causa probable
    La clave no es correcta para ese endpoint.
    Qué hacer
    Compruebe la clave y el endpoint, y vuelva a introducir la clave si modificó la URL base.
  • Test connection falla con 404 o model not found

    Causa probable
    Ruta o ID de modelo incorrectos.
    Qué hacer
    Compruebe que la URL base termine en /v1 y utilice el ID de modelo exacto del proveedor.
  • El portal no muestra el menú de IA

    Causa probable
    El módulo está desactivado o el proveedor no está marcado como en uso.
    Qué hacer
    Active el módulo de IA en License › Modules y habilite el proveedor.
  • El agente no pudo iniciar sesión

    Causa probable
    No hay una contraseña guardada ni una clave de operaciones para esa VM.
    Qué hacer
    Restablezca la contraseña de la VM en el portal para que se guarde nuevamente.
  • El servidor no respondió a tiempo

    Causa probable
    Un firewall, SSH no está a la escucha o la VM está ocupada.
    Qué hacer
    Ejecute nc -vz <vm-ip> 22 desde el servidor del panel e inicie sshd en la VM.
  • La IA responde con demasiada lentitud

    Causa probable
    El proveedor o el modelo es lento.
    Qué hacer
    Utilice un modelo más rápido o un nivel de Reasoning effort menor en Settings › AI provider.
  • Inicie sesión para usar AI Chat

    Causa probable
    El visitante no ha iniciado sesión.
    Qué hacer
    Esperado: AI Chat es solo para clientes con sesión iniciada.

Privacidad y costos

Las preguntas de los clientes y los datos que la IA consulta para ese cliente (de solo lectura) se envían a su proveedor de IA. Indíquelo en su política de privacidad.

NexCMP no tarifica los costos de IA. Utilice las funciones de presupuesto de su proveedor y reduzca el ajuste de turnos de IA por día por cliente (40 por defecto, en Customers › Support › Ticket › AI settings) para limitar el gasto.

Siguientes pasos

AI Chat y AI Agent permanecen desactivados hasta que guarde la clave del proveedor, por lo que no se le facturará nada ni se enviarán datos a ningún sitio antes de que usted lo decida. Lea la descripción general o explore los demás módulos.

Preguntas sobre los módulos de IA

¿Qué modelos de AI funcionan?
Cualquier modelo detrás de un endpoint de chat-completions compatible con OpenAI que admita llamadas a herramientas (function calling). Puede configurar el endpoint, la clave y el modelo en Admin › Settings › AI provider.
¿Puede el agente acceder a los servidores de otros clientes?
No. AI Agent solo funciona en VMs que pertenecen a la cuenta del cliente con sesión iniciada, utilizando las credenciales guardadas para esa VM.
¿NexCMP cobra por la IA?
No. Los módulos de IA están incluidos en la licencia. Usted paga a su proveedor de IA por el uso de la clave que configure.
¿Cómo pruebo la conexión con el proveedor de IA?
En Admin › Settings › AI provider, pulse Save y luego Test connection. Envía una pregunta breve y muestra Connected junto con el nombre del modelo y el tiempo transcurrido, o bien el error devuelto por el proveedor.
¿AI Agent necesita una pasarela SSH independiente?
No. En la instalación predeterminada, el panel utiliza su propio cliente ssh. La terminal web opcional ssh-proxy se utiliza únicamente cuando la función de web SSH está habilitada.
¿Los visitantes que no hayan iniciado sesión pueden usar AI Chat?
No. AI Chat es solo para clientes con sesión iniciada; a los visitantes que no hayan iniciado sesión se les solicita que inicien sesión primero.
¿AI Agent funciona en VMs con Windows?
No. Funciona en VMs con Linux en ejecución; las VMs con Windows son rechazadas.
¿Puedo desactivarlo?
Sí. Desactive el módulo de IA en License › Modules; AI Chat y AI Agent desaparecerán del portal y su API responderá que el módulo está deshabilitado.

Añada IA a su nube

AI Chat y AI Agent están incluidos en todas las licencias de NexCMP: gratis durante el primer año, o por un pago único de $499 con el código fuente.

Última actualización: