Compare commits

..
4 Commits
Author SHA1 Message Date
marcocosta10000 a74553dc1b fix(api): remove desligamento automático do servidor do endpoint /end
Remove a lógica de shutdown do servidor no endpoint de encerramento de chat
para evitar conflitos com o gerenciamento do ciclo de vida da aplicação.
Simplifica também o script de inicialização removendo a detecção de venv
e mantendo apenas o fluxo essencial de verificação e instalação de
dependências.
2026-10-11 19:28:16 -03:00
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
marcocosta10000 a078e29c92 feat(api): adiciona desligamento automático do servidor ao finalizar chat
O endpoint /end agora encerra o servidor Flask após limpar o histórico de conversa, utilizando werkzeug.server.shutdown quando disponível e fallback para os._exit(0) em ambientes não-Werkzeug.
2026-10-11 19:05:58 -03:00
marcocosta10000 adf0705fe3 feat(config): atualiza modelo de IA e melhora script de inicialização
- Altera modelo de nvidia/nemotron-3-ultra-550b-a55b:free para gryphe/mythomax-l2-13b
- Remove chave API exposta do config.json
- Refatora iniciar.sh para detectar venv existente e funcional antes de recriar
- Adiciona fallback para instalação global de dependências quando venv não está disponível
- Melhora mensagens de status durante a inicialização da aplicação
2026-10-11 19:05:23 -03:00
14 changed files with 24 additions and 29 deletions
Regular → Executable
View File
Regular → Executable
View File
Regular → Executable
View File
Regular → Executable
View File
Regular → Executable
+2 -1
View File
@@ -634,4 +634,5 @@ def upload_file():
if __name__ == "__main__":
app.run(host="0.0.0.0", port=5001, debug=True)
print(" Acesse: http://localhost:5001")
app.run(host="0.0.0.0", port=5001, debug=True, use_reloader=False)
Regular → Executable
+2 -2
View File
@@ -1,4 +1,4 @@
{
"modelo": "nvidia/nemotron-3-ultra-550b-a55b:free",
"api_key": "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"
"modelo": "gryphe/mythomax-l2-13b",
"api_key": ""
}
Regular → Executable
View File
Regular → Executable
View File
+13 -18
View File
@@ -1,5 +1,4 @@
#!/bin/bash
set -e
DIR="$(cd "$(dirname "$0")" && pwd)"
@@ -8,7 +7,6 @@ echo " Chat com IA - Flask + OpenRouter"
echo "============================================"
echo ""
# Detect Python command
PYTHON=""
for cmd in python3 python; do
if command -v "$cmd" &>/dev/null; then
@@ -16,28 +14,25 @@ for cmd in python3 python; do
break
fi
done
if [ -z "$PYTHON" ]; then
echo "Erro: Python nao encontrado. Instale python3 ou python."
echo "Erro: Python nao encontrado."
exit 1
fi
if [ ! -d "$DIR/venv" ]; then
echo "[1/4] Criando ambiente virtual Python..."
$PYTHON -m venv "$DIR/venv"
else
echo "[1/4] Ambiente virtual ja existe."
fi
echo "[1/3] Verificando dependencias..."
$PYTHON -m pip install -q --upgrade pip --root-user-action=ignore 2>/dev/null || true
$PYTHON -m pip install -q -r "$DIR/requirements.txt" --root-user-action=ignore 2>/dev/null || \
$PYTHON -m pip install -q -r "$DIR/requirements.txt" --break-system-packages || {
echo "Erro ao instalar dependencias. Tente manualmente:"
echo " pip install -r requirements.txt"
exit 1
}
echo "[2/4] Ativando ambiente virtual..."
source "$DIR/venv/bin/activate"
echo "[3/4] Instalando dependencias..."
pip install --upgrade pip -q
pip install -r "$DIR/requirements.txt" -q
echo "[4/4] Iniciando aplicacao Flask..."
echo "[2/3] Dependencias instaladas."
echo "[3/3] Iniciando servidor..."
echo ""
echo " Acesse: http://localhost:5001"
echo " Pressione Ctrl+C para parar."
echo " Ctrl+C para parar."
echo ""
$PYTHON "$DIR/app.py"
Regular → Executable
View File
Regular → Executable
View File
Regular → Executable
View File
Regular → Executable
View File
Regular → Executable
+5 -6
View File
@@ -960,16 +960,15 @@ async function clearChat() {
async function endChat() {
appendMessage('user', '/encerrar');
try {
const res = await fetch('/end', { method: 'POST' });
const data = await res.json();
await fetch('/end', { method: 'POST' });
} catch (err) {
// servidor encerrado - esperado
}
chatEl.innerHTML = '';
appendMessage('ai', data.reply || 'Chat encerrado. Recarregue a página para começar novamente.');
appendMessage('ai', 'Chat encerrado. Recarregue a página ou inicie o servidor novamente.');
input.value = '';
input.disabled = true;
sendBtn.disabled = true;
} catch (err) {
appendMessage('system', 'Erro ao encerrar.');
}
}
input.focus();