aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/servidores.sh
diff options
context:
space:
mode:
authorelvis <elvis@claros.ar>2026-09-26 20:20:19 -0300
committerelvis <elvis@claros.ar>2026-09-26 20:20:19 -0300
commit8518a63f55153e7f45fd49ad6caff5555f4e374f (patch)
tree636684eea3fa6f35d78282ab95eb687ef49154af /scripts/servidores.sh
parent69de76dc9cbedc6092d1e5ce84094a8030de1470 (diff)
downloadasist-p-main.tar.gz
asist-p-main.zip
Translate code, comments, logs and terminal UI to English; add English README; rename scriptsHEADmain
Diffstat (limited to 'scripts/servidores.sh')
-rwxr-xr-xscripts/servidores.sh83
1 files changed, 0 insertions, 83 deletions
diff --git a/scripts/servidores.sh b/scripts/servidores.sh
deleted file mode 100755
index 2e3b769..0000000
--- a/scripts/servidores.sh
+++ /dev/null
@@ -1,83 +0,0 @@
-#!/usr/bin/env bash
-# Arranca o para los dos servidores por separado, sin el asistente.
-#
-# Útil para desarrollar: cargar los modelos cuesta más de un minuto y así se
-# reinicia el binario de Rust las veces que haga falta sin volver a pagarlo.
-# El asistente detecta que ya están escuchando y los reutiliza.
-#
-# scripts/servidores.sh arrancar | parar | estado
-set -euo pipefail
-cd "$(dirname "$0")/.."
-
-LOGS="${ASIST_LOGS:-logs}"
-LLM_PUERTO="${ASIST_LLM_PUERTO:-8012}"
-TTS_PUERTO="${ASIST_TTS_PUERTO:-8013}"
-mkdir -p "$LOGS"
-
-vivo() { curl -sf -m 2 "http://127.0.0.1:$1/health" >/dev/null 2>&1; }
-
-esperar() { # puerto nombre segundos
- local fin=$(( SECONDS + $3 ))
- while [ $SECONDS -lt $fin ]; do
- vivo "$1" && { echo " $2 listo"; return 0; }
- sleep 1
- done
- echo " $2 NO respondió en $3 s; mira $LOGS/$2.log" >&2
- return 1
-}
-
-arrancar() {
- if vivo "$LLM_PUERTO"; then
- echo " llama-server ya estaba arriba"
- else
- echo " arrancando llama-server…"
- nohup vendor/llama.cpp/build/bin/llama-server \
- --model models/Qwen3.5-2B.Q5_K_M.gguf \
- --mmproj models/mmproj-BF16.gguf \
- --host 127.0.0.1 --port "$LLM_PUERTO" \
- --threads 10 --threads-batch 10 \
- --batch-size 512 --ubatch-size 256 \
- --gpu-layers 10 --split-mode layer --tensor-split 1 --main-gpu 0 \
- --no-mmap --ctx-size 8192 --parallel 2 --cache-ram 6144 \
- --rope-freq-base 1000000 --rope-freq-scale 0.25 \
- --jinja --chat-template-file config/qwen35-no-think.jinja \
- > "$LOGS/llama-server.log" 2>&1 &
- fi
-
- if vivo "$TTS_PUERTO"; then
- echo " tts-server ya estaba arriba"
- else
- echo " arrancando tts-server…"
- # --codec-chunk-dur 1.0 es lo que hace que el audio salga por bloques
- # según se genera en vez de todo al final. Ver docs/RENDIMIENTO.md.
- nohup vendor/qwentts.cpp/build/tts-server \
- --model models/qwen-talker-1.7b-base-Q8_0.gguf \
- --codec models/qwen-tokenizer-12hz-Q8_0.gguf \
- --host 127.0.0.1 --port "$TTS_PUERTO" \
- --lang spanish --codec-chunk-dur 1.0 \
- > "$LOGS/tts-server.log" 2>&1 &
- fi
-
- esperar "$LLM_PUERTO" llama-server 240
- esperar "$TTS_PUERTO" tts-server 240
-}
-
-parar() {
- # SIGTERM, no SIGKILL: hay que darles ocasión de soltar la GPU.
- pkill -TERM -f 'llama-server .*--port '"$LLM_PUERTO" 2>/dev/null && echo " llama-server parado" || true
- pkill -TERM -f 'tts-server .*--port '"$TTS_PUERTO" 2>/dev/null && echo " tts-server parado" || true
-}
-
-estado() {
- vivo "$LLM_PUERTO" && echo " llama-server arriba :$LLM_PUERTO" || echo " llama-server parado"
- vivo "$TTS_PUERTO" && echo " tts-server arriba :$TTS_PUERTO" || echo " tts-server parado"
- command -v nvidia-smi >/dev/null && \
- nvidia-smi --query-gpu=memory.used,memory.total --format=csv,noheader | sed 's/^/ GPU: /'
-}
-
-case "${1:-estado}" in
- arrancar|start) arrancar ;;
- parar|stop) parar ;;
- estado|status) estado ;;
- *) echo "uso: $0 {arrancar|parar|estado}" >&2; exit 1 ;;
-esac