Fundamentos de Chatbots
Qué abarca este artículo
- Qué es un chatbot y cuál es la diferencia entre bots basados en reglas e impulsados por IA.
- Qué casos de uso son adecuados y dónde encuentran sus límites los chatbots.
- Qué herramientas y frameworks funcionan mejor para construir uno.
- Cómo ejecutar un chatbot con IA local y Ollama.
- Cuáles son los escollos típicos que enfrentan los principiantes y cómo evitarlos.
Introducción: Chatbots explicados de forma sencilla
Un chatbot es un programa que se comunica con las personas en lenguaje natural. En lugar de hacer clic en botones o rellenar formularios, escribes un mensaje y el bot responde. Los chatbots resuelven preguntas, facilitan compras, clasifican solicitudes de soporte o simplemente conversan contigo.
Este artículo está dirigido a quienes quieren construir su propio chatbot. No necesitas conocimientos profundos de IA, pero debes estar dispuesto a trabajar con prompts, APIs y programación básica. Si quieres aprender los fundamentos de programación, encontrarás tutoriales de Python, C# y más en IRC-Coding.de.
Por qué necesito un chatbot
Imagina que administras una pequeña tienda en línea. Los clientes hacen constantemente las mismas preguntas: ¿Dónde está mi pedido? ¿Cuáles son los costos de envío? ¿Puedo pagar con PayPal? Responder cada pregunta individualmente consume tiempo que falta en otros lugares.
Un chatbot maneja estas preguntas estándar. Está disponible 24/7, responde en segundos y solo escala los casos que no puede resolver por sí solo. Tienes tiempo para los clientes que realmente necesitan ayuda.
Además está la escalabilidad. Una persona puede gestionar 3 o 4 chats simultáneamente. Un chatbot puede manejar miles de conversaciones paralelas sin que aumente el tiempo de respuesta. Para picos de demanda como Black Friday, esto es crucial.
Qué es un chatbot en esencia
Un chatbot es un programa que recibe entrada de texto y produce salida de texto. La forma más simple es basada en reglas: si el usuario escribe “precio”, el bot responde con la lista de precios. La forma más compleja es impulsada por IA: un modelo de lenguaje entiende la entrada, genera una respuesta apropiada y puede invocar herramientas para recuperar datos.
La idea central es que el bot libera al usuario de interactuar con sistemas complejos al comunicarse en lenguaje natural.
A quién están dirigidos los chatbots
Los chatbots se dirigen a varios grupos:
- Empresas que quieren escalar el soporte al cliente y automatizar preguntas estándar.
- Desarrolladores que desean construir aplicaciones de IA y ganar experiencia inicial.
- Aficionados que ejecutan un bot de Discord, Matrix o web-chatbot para su comunidad.
- Propietarios de IA local que quieren que sus modelos sean accesibles a través de una interfaz de chat.
Los conocimientos previos en programación son útiles, pero no obligatorios para bots simples basados en reglas. Quienes construyan bots impulsados por IA deben estar familiarizados con Prompt Engineering y APIs.
Conceptos clave en chatbots
- Ollama - Servidor de modelos local para modelos de IA. Cuándo es útil: si quieres ejecutar chatbots impulsados por IA localmente.
- Open WebUI - Interfaz de chat para Ollama. Cuándo es útil: si necesitas una interfaz web de chat lista para usar.
- Agente de IA - Software que planifica de forma independiente e invoca herramientas. Cuándo es útil: si el bot debe hacer más que solo generar texto.
- System Prompt - Instrucción que define el comportamiento del modelo. Cuándo es útil: en todo chatbot impulsado por IA para establecer rol y límites.
- Function Calling - Capacidad del modelo para invocar funciones. Cuándo es útil: si el bot debe recuperar datos o ejecutar acciones.
- RAG - Retrieval-Augmented Generation, extensión del modelo con documentos externos. Cuándo es útil: si el bot debe utilizar conocimiento específico de la empresa.
- Webhook - Punto final HTTP que hace el bot accesible desde el exterior. Cuándo es útil: si plataformas de mensajería necesitan contactar el bot.
Chatbots basados en reglas versus impulsados por IA
La distinción más importante para comenzar es entre chatbots basados en reglas e impulsados por IA. Ambos tienen su lugar.
| Característica | Bot basado en reglas | Bot impulsado por IA |
|---|---|---|
| Funcionamiento | Reglas If-Then | Modelo de lenguaje genera respuesta |
| Flexibilidad | Baja, solo rutas predefinidas | Alta, entiende entradas libres |
| Previsibilidad | Muy alta | Media |
| Mantenimiento | Nuevas reglas para nuevas preguntas | Ajustar System Prompt |
| Costos | Bajos | Medios (hardware para IA local) |
| Caso de uso | Procesos estructurados, FAQs | Conversación libre, preguntas complejas |
Un bot basado en reglas es la opción correcta cuando las preguntas son predecibles: “¿Dónde está mi pedido?” siempre lleva al seguimiento de envíos. La estructura es clara, la respuesta es determinista.
Un bot impulsado por IA es la opción correcta cuando las preguntas varían: “Hice un pedido la semana pasada y aún no ha llegado, ¿qué puedo hacer?” El modelo entiende el contexto, puede hacer preguntas de seguimiento y generar una respuesta apropiada.
En la práctica, se combinan ambos. El bot de IA maneja la conversación libre, pero invoca funciones definidas mediante Function Calling para recuperar datos estructurados como el estado del pedido.
Tipos de chatbots
Chatbot web
Un chatbot web está integrado en un sitio web. Los visitantes hacen clic en el icono de chat en la esquina inferior derecha y conversan con el bot. Esta es la forma más común para servicio al cliente y ventas.
Ventajas: fácil de integrar, no requiere login adicional para el usuario, control completo sobre diseño y datos.
Bot de Discord
Un bot de Discord vive en un servidor de Discord. Los usuarios mencionan el bot o le escriben en privado, el bot responde en el canal o por mensaje directo.
Ventajas: ideal para comunidades, barrera de entrada baja, muchas integraciones.
Bot de Matrix
Un bot de Matrix se ejecuta en el protocolo descentralizado Matrix. Esto es interesante para privacidad porque Matrix puede ser auto-hospedado.
Ventajas: descentralizado, cifrado, auto-hospedable.
Bot de IRC
Un bot de IRC es el clásico entre los chatbots. IRC existe desde los años 90 y sigue siendo utilizado en muchas comunidades tecnológicas.
Ventajas: ligero, abierto, bueno para comunidades orientadas a la tecnología.
Construir un chatbot con IA local
La IA local abre posibilidades de chatbot que serían costosas o problemáticas para la privacidad con APIs en la nube. En lugar de enviar cada solicitud a OpenAI, usas un modelo local que se ejecuta en tu propio hardware.
Los componentes básicos:
- Servidor de modelos: Ollama proporciona el modelo y responde solicitudes a través de una REST API.
- Interfaz de chat: Open WebUI ofrece una interfaz web lista para usar. Alternativamente, construyes tu propia interfaz.
- System Prompt: Define el rol, comportamiento y límites del bot.
- Opcional: RAG: Si el bot debe usar conocimiento específico de la empresa, conectas una base de datos vectorial. Ver RAG local.
- Opcional: Function Calling: Si el bot debe ejecutar acciones, defines funciones que el modelo puede invocar.
Un chatbot mínimo con Python y Ollama se ve así:
import requests
OLLAMA_URL = "http://localhost:11434/api/chat"
def chat(message, history=[]):
history.append({"role": "user", "content": message})
response = requests.post(OLLAMA_URL, json={
"model": "llama3.1",
"messages": [
{"role": "system", "content": "Du bist ein hilfreicher Assistent für einen Onlineshop. Antworte kurz und freundlich."},
*history
],
"stream": False
})
reply = response.json()["message"]["content"]
history.append({"role": "assistant", "content": reply})
return reply, history
history = []
while True:
user_input = input("Du: ")
if user_input.lower() in ["exit", "quit"]:
break
reply, history = chat(user_input, history)
print(f"Bot: {reply}")
Este script envía cada entrada a Ollama, mantiene el historial de conversación y devuelve la respuesta. El System Prompt establece que el bot es un asistente de tienda. Si quieres aprender Python, encontrarás tutoriales en IRC-Coding.de.
Ejemplo práctico: Bot FAQ para una tienda online
Imagina que quieres construir un bot FAQ que responda las preguntas más frecuentes de tus clientes. El flujo es así:
- Crear un documento FAQ: Recopila las 20 preguntas más comunes con sus respuestas en un documento.
- Configurar RAG: Carga el documento FAQ en una base de datos vectorial como Chroma. Ver RAG local.
- Definir el System Prompt: “Eres un bot FAQ para una tienda online. Utiliza solo la información del contexto. Si no sabes la respuesta, dilo y ofrece derivar al soporte.”
- Configurar la interfaz de chat: Open WebUI como interfaz, Ollama como servidor de modelos.
- Probar: Haz las preguntas más frecuentes y verifica que las respuestas sean correctas.
- Aprobación humana: Cuando el bot no pueda responder una pregunta, debe derivarla a una persona.
Implementas este bot en una tarde. Después funciona 24/7 respondiendo preguntas estándar sin intervención humana. Lo importante es revisar las respuestas regularmente y mantener el documento FAQ actualizado.
Problemas comunes con los chatbots
- No definir límites: Un chatbot sin un System Prompt claro habla de todo, incluso de temas que no domina. Establece el rol y los límites en el System Prompt.
- Aceptar alucinaciones: Los modelos de IA inventan hechos cuando no saben algo. RAG con instrucciones claras (“Usa solo el contexto”) reduce el riesgo.
- Sin escalación humana: Si el bot no puede manejar algo, debe transferir a una persona. Un bot que repite lo mismo infinitamente frustra a los usuarios.
- No hacer pruebas: Antes de poner el bot en producción, verifica que responda correctamente las preguntas más frecuentes. Un mal bot es peor que no tener uno.
- Ignorar protección de datos: Si guardas historiales de chat, debes cumplir con RGPD. La IA local con Ollama resuelve esto porque los datos nunca salen de tu red.
- Empezar demasiado complejo: Un bot que hace de todo, no hace nada bien. Mejor comienza con un caso de uso claro (FAQ, estado de pedidos) y expande gradualmente.
- Sin monitoreo: Si no te enteras de que el bot da respuestas incorrectas, lo descubrirás por quejas. Revisa muestras de historiales de chat regularmente.
Enlaces adicionales e información sobre chatbots
- Configurar un chatbot web - Integra un chatbot en tu sitio web.
- Fundamentos de bots Discord - Bot para servidores Discord.
- Bots Matrix - Bots en el protocolo descentralizado Matrix.
- Chatbot sin programación - Herramientas para no desarrolladores.
- Instalar Ollama - Servidor de modelos local.
- Configurar Open WebUI - Interfaz de chat para Ollama.
- RAG local - Extiende tu chatbot con documentos propios.
Puntos clave:
- Los chatbots se comunican en lenguaje natural y liberan a los usuarios de interactuar con sistemas complejos.
- Los bots basados en reglas son fijos, los basados en IA son flexibles. Ambos se combinan a menudo.
- La IA local con Ollama permite chatbots que respetan la privacidad sin costes de nube.
- System Prompt, RAG y Function Calling son los componentes más importantes para chatbots con IA.
- Testing, monitoreo y escalación humana son obligatorios, no opcionales.
FAQ: Fundamentos de chatbots - Preguntas típicas
¿Qué es exactamente un chatbot?
¿Cuál es la diferencia entre chatbots basados en reglas y basados en IA?
¿Puedo ejecutar un chatbot con IA local?
¿Qué modelo es adecuado para un chatbot?
¿En qué plataformas puedo ejecutar un chatbot?
¿Necesito RAG para mi chatbot?
¿Cómo evito alucinaciones en los chatbots?
¿Puedo construir un chatbot sin programación?
¿Cuánto cuesta un chatbot con IA local?
¿Cuándo necesita un chatbot escalación humana?
Fuentes y lecturas complementarias
- Ollama Documentación - Servidor de modelos local.
- Open WebUI - Interfaz de chat para Ollama.
- Discord Developer Portal - API de bots de Discord.
- Matrix SDK - Desarrollo de bots en Matrix.
- LangChain Chatbot Tutorial - Framework para chatbots.


