main
Switch from minimax/minimax-m3:free to inclusionai/ling-3.0-flash as the default AI model for insight generation, aligning with the updated AI provider configuration.
ThorAgentIA
Sistema automatizado de envio de insights via Telegram, utilizando inteligência artificial para gerar conteúdo sobre diversos temas relevantes para negócios, marketing, desenvolvimento pessoal e gestão empresarial.
Funcionalidades
- Gera insights profundos em português brasileiro sobre temas pré-definidos.
- Envia automaticamente os insights para um canal do Telegram.
- Opera em horários configuráveis (padrão: 07:00 às 22:00).
- Funciona de segunda a domingo (dias configuráveis).
- Intervalo entre envios configurável.
- Seleção aleatória de tópicos cadastrados.
- Suporte a múltiplos provedores de IA: OpenRouter, LlamaCPP local ou OpenAI.
- Todos os insights são salvos automaticamente em um banco de dados SQLite local (
insights.db).
Pré-requisitos
- Python 3.10 ou superior
- Chave de API de IA: OpenRouter, LlamaCPP local ou OpenAI
- Bot criado no Telegram via BotFather
- Sistema Linux (Debian 12 recomendado)
Configuração
- Configure o arquivo
.envcom seus dados:
TELEGRAM_BOT_TOKEN=seu_token_bot_telegram
TELEGRAM_CHAT_ID=seu_chat_id
INTERVAL_MINUTES=60
START_HOUR=7
END_HOUR=22
TOPICS=Marketing,Negócios,...
# Provedor de IA (openrouter | llamacpp | openai)
DEFAULT_AI_PROVIDER=openrouter
# Modelo de IA (depende do provedor escolhido)
DEFAULT_AI_MODEL=minimax/minimax-m3:free
# Chave de API do provedor escolhido
OPENROUTER_API_KEY=sua_chave_openrouter
# LLAMACPP_API_KEY=not-needed # se usar LlamaCPP
# OPENAI_API_KEY=sua_chave_openai # se usar OpenAI direto
-
Crie um bot no Telegram via @BotFather e obtenha o token.
-
Obtenha o identificador do canal após adicionar o bot como administrador no canal. Use o username do canal no formato
@nome_do_canalou o ID numérico-100xxxxxxxxxx.
Instalação
chmod +x iniciar.sh
./iniciar.sh
Execução
source venv/bin/activate
python3 main.py
Variáveis de Ambiente
| Variável | Descrição | Padrão |
|---|---|---|
DEFAULT_AI_PROVIDER |
Provedor de IA (openrouter, llamacpp, openai) |
openrouter |
DEFAULT_AI_MODEL |
Nome do modelo no provedor escolhido | obrigatório |
OPENROUTER_API_KEY |
Chave da API OpenRouter | opcional |
LLAMACPP_BASE_URL |
URL base da API LlamaCPP local | http://localhost:8080/v1/ |
LLAMACPP_API_KEY |
Chave da API LlamaCPP | not-needed |
OPENAI_API_KEY |
Chave da API OpenAI | opcional |
TELEGRAM_BOT_TOKEN |
Token do bot Telegram | obrigatório |
TELEGRAM_CHAT_ID |
Username do canal ou ID numérico | obrigatório |
INTERVAL_MINUTES |
Intervalo entre envios (minutos) | 60 |
START_HOUR |
Hora inicial de funcionamento | 7 |
END_HOUR |
Hora final de funcionamento | 22 |
DAYS_OF_WEEK |
Dias permitidos (1=Seg, 7=Dom) | 1,2,3,4,5,6,7 |
TOPICS |
Lista de tópicos separados por vírgula | ver .env |
LANGUAGE |
Idioma dos insights | pt-BR |
MIN_LINES |
Mínimo de linhas por insight | 20 |
Banco de dados SQLite
Todos os insights enviados são registrados automaticamente no arquivo insights.db, na mesma pasta do projeto. A tabela insights armazena:
| Campo | Descrição |
|---|---|
id |
Identificador único |
topic |
Tópico do insight |
content |
Conteúdo completo do insight |
provider |
Provedor de IA utilizado |
model |
Modelo utilizado |
sent_at |
Data e hora do envio |
Languages
Python
88.9%
Shell
11.1%