Skip to main content

INTRODUCCIÓN

Este manual técnico está diseñado para el personal de operaciones, administradores de sistemas y desarrolladores encargados del mantenimiento y soporte de CertiBot, el chatbot para generación de ítems (preguntas). Detalla los aspectos técnicos clave de la aplicación, incluyendo su arquitectura, administración de componentes, gestión de la base de datos, servicios y funcionalidades técnicas esenciales para su operación continua y eficiente.


1. OBJETIVO

El objetivo de este manual es proporcionar una referencia completa sobre la operación y el mantenimiento técnico de CertiBot. Busca capacitar al personal técnico para realizar tareas de administración, monitoreo, resolución de problemas y despliegue, asegurando la disponibilidad, rendimiento y seguridad de la aplicación.


2. GENERALIDADES

CertiBot es una aplicación de chatbot diseñada para automatizar la atención al cliente y la gestión de consultas sobre certificados. Su arquitectura se basa en microservicios, lo que facilita la escalabilidad y el mantenimiento independiente de cada componente.


2.1. Arquitectura General

CertiBot se compone de las siguientes capas principales:

  • Frontend (Angular): Interfaz de usuario interactiva que corre en el navegador del cliente.
  • Backend API (NestJS): Orquestador central de la lógica de negocio, gestiona la comunicación entre el Frontend, la Base de Datos y el LLM.
  • Servicio de Datos (MongoDB con Vector Search): Almacena la base de conocimiento vectorizada y los datos de usuarios/conversaciones.
  • Servicio de LLM (Ollama - Llama4 / Mistral / DeepSeek R1): Motor de inteligencia artificial para la generación de lenguaje natural.

2.2. Tecnologías Clave

  • Frontend: Angular, TypeScript.
  • Backend: NestJS (Node.js), TypeScript.
  • Base de Datos: MongoDB (con Atlas Vector Search).
  • Motor LLM: Ollama con Llama4 / DeepSeek / Mistral.

2.3. Entorno de Despliegue

CertiBot está diseñado para ser desplegado en un entorno on-premises, utilizando servidores Linux (preferentemente Ubuntu Server) con Docker. Se recomienda la separación de componentes en diferentes máquinas virtuales o físicas para optimizar el rendimiento y la gestión de recursos (especialmente la GPU para el LLM).