Files
marcocosta10000 e1c24bd2e6 refactor(scripts): simplifica lógica de inicialização e adapta encerramento de chat
Simplifica o script de inicialização removendo detecção complexa de venv e
lógica de fallback, mantendo apenas o fluxo essencial de verificação e
instalação de dependências. Adapta a interface de encerramento de chat para
não aguardar resposta do servidor, considerando que o mesmo é desligado
após o término da conversa.
2026-10-11 19:16:21 -03:00

3.7 KiB
Executable File

Chat com IA — Flask + OpenRouter

Sistema de chat com inteligência artificial via API OpenRouter.ai, desenvolvido em Python com Flask.

Funcionalidades

  • Chat em tempo real com modelo de IA configurável (via OpenRouter.ai)
  • Comandos de chat (/help, /reset, /reiniciar, /encerrar)
  • Editor de perfis, contexto, configurações e proibições via comandos
  • Upload de imagens e arquivos (inline para imagens, link para download)
  • Seletor de emojis com 10 categorias, busca e recentes
  • Persistência de conversas por dia (diretório historico/)
  • Otimização automática de contexto via IA (/atualizar)
  • Backup e restauração de contexto (/restaurar_contexto)
  • Reset completo de fábrica (/reset)
  • Suporte multimodal (imagens enviadas como base64 para modelos com visão)
  • Interface dark mode responsiva
  • Compatível com Linux Debian 12 e Windows 10

Requisitos

  • Python 3.8+
  • Pip

Instalação e Uso

Linux (Debian, Ubuntu, etc.)

chmod +x iniciar.sh
./iniciar.sh

Windows 10

iniciar.bat

Manual (ambos)

python3 -m venv venv          # Linux
python -m venv venv           # Windows
source venv/bin/activate      # Linux
venv\Scripts\activate.bat     # Windows
pip install -r requirements.txt
python3 app.py                # Linux
python app.py                 # Windows

Acesse em http://localhost:5001

Comandos

Comando Descrição
/help Lista todos os comandos
/reset Restaura perfis, contexto, config e histórico ao padrão de fábrica
/reiniciar Limpa apenas o histórico da conversa
/encerrar Encerra o chat e desabilita o input
/stats Mostra estatísticas da conversa
/export Exporta a conversa em JSON
/edit_contexto Edita o arquivo contexto.json
/edit_perfil_ia Edita o arquivo perfil_ia.json
/edit_perfil_user Edita o arquivo perfil_user.json
/edit_model_ia Edita a configuração do modelo (config.json)
/edit_key_provider Edita a chave da API (config.json)
/edit_proibidos Edita a lista de tópicos e comportamentos proibidos
/atualizar IA analisa perfis, contexto e histórico e otimiza o contexto.json
/restaurar_contexto Restaura o contexto.json do último backup
/clear Limpa o histórico (usado pelo botão Apagar)

Arquivos do Sistema

Arquivo Função
app.py Rotas Flask, lógica principal, API OpenRouter
templates/chat.html Interface do usuário (HTML/CSS/JS)
config.json Modelo e chave da API
contexto.json Contexto de comportamento da IA
perfil_ia.json Perfil e personalidade da IA
perfil_user.json Perfil do usuário
proibidos.json Tópicos, comportamentos e palavras proibidos
.env Chave da API (fallback se config.json estiver vazio)
iniciar.sh Script de inicialização para Linux
iniciar.bat Script de inicialização para Windows
LICENSE GNU GPL v3
README.md Este arquivo
RULES.md Regras para IA e desenvolvedores
historico/ Conversas diárias persistidas (não commitado)
backups/ Backups automáticos do contexto (gerado pelo /atualizar)
uploads/ Arquivos enviados pelo usuário (não commitado)

Configuração

Edite o arquivo config.json para alterar:

  • modelo: modelo da IA no OpenRouter (ex: gryphe/mythomax-l2-13b)
  • api_key: chave de API do OpenRouter (vazio = usa .env)

Os arquivos de perfil, contexto e proibições também podem ser editados via comandos no próprio chat (modais com textarea).

Licença

Proprietária — Todos os direitos reservados. SysPanel.com.br — contato@syspanel.com.br