Feat: Agregar agente Groq con integración RAG
- Nuevo módulo groq_agent.py para consultas a la API de Groq - Panel de administración en /groq para configurar API key, modelo y prompt - Comando /rag en Discord y Telegram para consultar el RAG - Sistema de prompt personalizable guardado en base de datos - Soporte para variables de entorno en Docker - Fix: starlette version para evitar bug con Jinja2
This commit is contained in:
@@ -1,37 +1,139 @@
|
||||
version: '3.8'
|
||||
|
||||
name: bots-translation
|
||||
services:
|
||||
bots-translation:
|
||||
build: .
|
||||
cpu_shares: 90
|
||||
command: []
|
||||
container_name: bots-translation
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "8091:8000"
|
||||
volumes:
|
||||
- ./data:/app/data
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
memory: 512M
|
||||
reservations:
|
||||
devices: []
|
||||
dns:
|
||||
- 8.8.8.8
|
||||
- 1.1.1.1
|
||||
environment:
|
||||
- DISCORD_TOKEN=${DISCORD_TOKEN}
|
||||
- TELEGRAM_TOKEN=${TELEGRAM_TOKEN}
|
||||
- LIBRETRANSLATE_URL=${LIBRETRANSLATE_URL}
|
||||
- ADMIN_PASSWORD=MiPo6425@@
|
||||
- ADMIN_USERNAME=nickpons666
|
||||
- DATABASE_PATH=/app/data/bots_config.db
|
||||
- DB_HOST=10.10.4.17
|
||||
- DB_NAME=traductor_bots
|
||||
- DB_PASSWORD=MiPo6425@@
|
||||
- DB_PORT=3390
|
||||
- DB_TYPE=mysql
|
||||
- DB_USER=nickpons666
|
||||
- DISCORD_TOKEN=MTM4NTc5MDM0NDU5NDk4NTA2MQ.GvobiS.TRQM9dX7vDjmuGVa3Ckp6YRtGEWxdW0gBDbvCI
|
||||
- LIBRETRANSLATE_URL=https://translate-pons.duckdns.org/translate
|
||||
- TELEGRAM_TOKEN=8469229183:AAEVIV5e7rjDXKNgFTX0dnCW6JWB88X4p2I
|
||||
- WEB_HOST=0.0.0.0
|
||||
- WEB_PORT=8000
|
||||
- ADMIN_USERNAME=${ADMIN_USERNAME}
|
||||
- ADMIN_PASSWORD=${ADMIN_PASSWORD}
|
||||
- DB_TYPE=mysql
|
||||
- DB_HOST=${DB_HOST}
|
||||
- DB_PORT=${DB_PORT}
|
||||
- DB_USER=${DB_USER}
|
||||
- DB_PASSWORD=${DB_PASSWORD}
|
||||
- DB_NAME=${DB_NAME}
|
||||
- PYTHONDONTWRITEBYTECODE=1
|
||||
- PYTHONOPTIMIZE=1
|
||||
# Redis caché compartida
|
||||
- REDIS_HOST=${REDIS_HOST}
|
||||
- REDIS_PORT=${REDIS_PORT:-6379}
|
||||
- REDIS_PASSWORD=${REDIS_PASSWORD}
|
||||
- REDIS_DB=${REDIS_DB:-0}
|
||||
env_file:
|
||||
- .env
|
||||
mem_limit: 512m
|
||||
mem_reservation: 256m
|
||||
pids_limit: 50
|
||||
- TZ=America/Mexico_City
|
||||
- REDIS_HOST=10.10.4.17
|
||||
- REDIS_PORT=6379
|
||||
- REDIS_PASSWORD=translation_redis_secret
|
||||
- REDIS_DB=0
|
||||
- GROQ_API_KEY=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
|
||||
- GROQ_MODEL=llama-3.3-70b-versatile
|
||||
- RAG_API_URL=http://10.10.4.17:8004
|
||||
hostname: bots-translation
|
||||
image: registry-pons.duckdns.org/bots-translation:latest
|
||||
labels:
|
||||
icon: https://www.ruthlessreviews.com/wp-content/uploads/2025/12/last-war-image.jpg
|
||||
ports:
|
||||
- target: 8000
|
||||
published: "8091"
|
||||
protocol: tcp
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- type: bind
|
||||
source: /DATA/AppData/bots-translation/data
|
||||
target: /app/data
|
||||
- type: bind
|
||||
source: /DATA/AppData/bots-translation/data/logs
|
||||
target: /app/data/logs
|
||||
x-casaos:
|
||||
envs:
|
||||
- container: DISCORD_TOKEN
|
||||
description:
|
||||
en_us: Token del bot de Discord
|
||||
- container: TELEGRAM_TOKEN
|
||||
description:
|
||||
en_us: Token del bot de Telegram
|
||||
- container: LIBRETRANSLATE_URL
|
||||
description:
|
||||
en_us: URL de LibreTranslate
|
||||
- container: ADMIN_USERNAME
|
||||
description:
|
||||
en_us: Usuario admin del panel
|
||||
- container: ADMIN_PASSWORD
|
||||
description:
|
||||
en_us: Contraseña admin del panel
|
||||
- container: DB_TYPE
|
||||
description:
|
||||
en_us: Tipo de base de datos (sqlite/mysql)
|
||||
- container: DB_HOST
|
||||
description:
|
||||
en_us: Host de MySQL
|
||||
- container: DB_PORT
|
||||
description:
|
||||
en_us: Puerto de MySQL
|
||||
- container: DB_USER
|
||||
description:
|
||||
en_us: Usuario de MySQL
|
||||
- container: DB_PASSWORD
|
||||
description:
|
||||
en_us: Contraseña de MySQL
|
||||
- container: DB_NAME
|
||||
description:
|
||||
en_us: Nombre de la base de datos MySQL
|
||||
- container: DATABASE_PATH
|
||||
description:
|
||||
en_us: Ruta de la base de datos SQLite (si DB_TYPE=sqlite)
|
||||
- container: REDIS_HOST
|
||||
description:
|
||||
en_us: IP del servidor Redis (OMV)
|
||||
- container: REDIS_PORT
|
||||
description:
|
||||
en_us: Puerto de Redis
|
||||
- container: REDIS_PASSWORD
|
||||
description:
|
||||
en_us: Contraseña de Redis
|
||||
- container: REDIS_DB
|
||||
description:
|
||||
en_us: Número de base de datos Redis
|
||||
ports:
|
||||
- container: "8000"
|
||||
description:
|
||||
en_us: Puerto del panel web
|
||||
volumes:
|
||||
- container: /app/data
|
||||
description:
|
||||
en_us: Datos de los bots y base de datos
|
||||
devices: []
|
||||
cap_add: []
|
||||
network_mode: bridge
|
||||
privileged: false
|
||||
x-casaos:
|
||||
architectures:
|
||||
- amd64
|
||||
author: nickpons666
|
||||
category: Utility
|
||||
description:
|
||||
en_us: Bots de traducción para Discord y Telegram con panel web
|
||||
developer: nickpons666
|
||||
hostname: ""
|
||||
icon: https://www.ruthlessreviews.com/wp-content/uploads/2025/12/last-war-image.jpg
|
||||
index: /
|
||||
is_uncontrolled: false
|
||||
main: bots-translation
|
||||
port_map: "8091"
|
||||
scheme: http
|
||||
store_app_id: bots-translation
|
||||
tagline:
|
||||
en_us: Bots de Traducción
|
||||
title:
|
||||
custom: ""
|
||||
en_us: Bots de Traducción
|
||||
|
||||
Reference in New Issue
Block a user