No description
- Python 37.6%
- JavaScript 30.4%
- CSS 19.3%
- HTML 12.6%
- Dockerfile 0.1%
| web | ||
| .dockerignore | ||
| .env | ||
| .env.example | ||
| .gitignore | ||
| bot.py | ||
| config.py | ||
| docker-compose.yml | ||
| Dockerfile | ||
| README.md | ||
| requirements.txt | ||
| storage.json | ||
| tutorial.md | ||
Telegram Ollama Bot
Bot de Telegram súper completo para conectarse a servidores Ollama y usar modelos LLM desde un chat, con integración de búsqueda web y transcripción de voz.
✨ Características Principales
- Conexión a Ollama: Alterna entre múltiples servidores Ollama y selecciona tus modelos desde el propio chat.
- Roles Personalizados con Seguridad Avanzada: Cuenta con un Gestor de Roles interactivo para crear roles ("Traductor", "Programador") con sus propios Prompts. Permite dar permisos granulares (Crear, Editar, Borrar) a cada usuario. Los roles creados por invitados son privados para ellos. Además, el administrador puede Bloquear (🔒) roles esenciales para evitar que sean modificados o eliminados.
- Búsqueda Web con Searxng: Escribe
/buscar <consulta>y el bot buscará en tu instancia privada de Searxng (con soporte para IP, fecha/hora y búsquedas generales) para responder con información actualizada y enlaces. - Notas de Voz: ¡Envíale un audio! El bot lo descargará, lo transcribirá usando
faster-whisperen local, y le pasará tu mensaje al modelo de IA para que te responda. - Modelos de Razonamiento: Soporta modelos como
phi4-mini-reasoningde forma nativa. Su "pensamiento" se formatea automáticamente en elegantes citas ocultas de Telegram para que la lectura sea perfecta. - Gestión Inteligente de Memoria: Comprime y resume la conversación con un clic o de forma automática cada 50 mensajes, para no perder el hilo ni saturar el contexto del modelo.
- Administración de Usuarios Avanzada: Controla quién tiene acceso mediante un panel visual. Cada usuario cuenta con su propio entorno independiente y aislado. Puedes habilitar/deshabilitar individualmente el acceso a modelos específicos, servidores, roles, búsqueda web y uso de audios. Además, la interfaz se adapta dinámicamente: si un usuario tiene una sola opción o ninguna (por ejemplo, si le restringes todos los servidores), el botón correspondiente desaparece automáticamente de su menú.
- Formatos Nativos: Soporte total de Markdown de Telegram. Copiar código generado por IA es ahora muy fácil y se ve estupendo.
📁 Archivos del Proyecto
bot.py: El corazón del bot. Contiene toda la lógica de Telegram, la comunicación con Ollama, transcripción de voz y creación de menús.config.py: Gestor de configuraciones. Lee las variables del.envo aplica valores por defecto de forma segura.storage.json: ¡No necesitas crearlo a mano! Es la base de datos local que el bot genera y mantiene sola para recordar a los usuarios, configuraciones y roles..env: (Debes crearlo a partir de.env.example). Aquí van tus datos secretos: Token de Telegram, tu ID y las IPs de tus servidores.requirements.txt: Lista de librerías Python necesarias (incluyendofaster-whisperytelebot).Dockerfileydocker-compose.yml: Plantillas listas para desplegar el bot en contenedores (ideal para servidores Linux o NAS Synology con FFmpeg preinstalado).
Para instrucciones de instalación y uso, consulta el Tutorial Completo.