Remove StepFun provider support and consolidate AI configuration under DEFAULT_AI_PROVIDER variable supporting openrouter, llamacpp, and openai. Update .env, README.md, and main.py to use the new provider-based structure. Add "Qualidade Total na Empresa" to topics list.
83 lines
2.8 KiB
Markdown
83 lines
2.8 KiB
Markdown
# 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.
|
|
|
|
## 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
|
|
|
|
1. **Configure o arquivo `.env`** com seus dados:
|
|
|
|
```env
|
|
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
|
|
```
|
|
|
|
2. **Crie um bot no Telegram** via @BotFather e obtenha o token.
|
|
|
|
3. **Obtenha o identificador do canal** após adicionar o bot como administrador no canal. Use o username do canal no formato `@nome_do_canal` ou o ID numérico `-100xxxxxxxxxx`.
|
|
|
|
## Instalação
|
|
|
|
```bash
|
|
chmod +x iniciar.sh
|
|
./iniciar.sh
|
|
```
|
|
|
|
## Execução
|
|
|
|
```bash
|
|
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 |
|