sync: scripts/montar_fuse_modelo.sh
Browse files
scripts/montar_fuse_modelo.sh
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/usr/bin/env bash
|
| 2 |
+
# Script SRE para empaquetamento e montagem de modelo GGUF via VFS CROM
|
| 3 |
+
set -e
|
| 4 |
+
|
| 5 |
+
DIR_BASE="/home/j/Área de trabalho/crompressor-ia"
|
| 6 |
+
BIN="$DIR_BASE/crompressor_bin"
|
| 7 |
+
CODEBOOK="$DIR_BASE/dict.cromdb"
|
| 8 |
+
MODEL_GGUF="$DIR_BASE/models/qwen2.5-crom-dna.gguf"
|
| 9 |
+
MODEL_CROM="$DIR_BASE/models/qwen2.5-crom-dna.gguf.crom"
|
| 10 |
+
MNT_DIR="$DIR_BASE/mnt_crom"
|
| 11 |
+
|
| 12 |
+
echo "=========================================="
|
| 13 |
+
echo " 💿 CROM-IA FUSE MOUNT MANAGER"
|
| 14 |
+
echo "=========================================="
|
| 15 |
+
|
| 16 |
+
if [ ! -f "$MODEL_GGUF" ]; then
|
| 17 |
+
echo "[ERRO] Modelo base não encontrado: $MODEL_GGUF"
|
| 18 |
+
exit 1
|
| 19 |
+
fi
|
| 20 |
+
|
| 21 |
+
echo "[1/3] Verificando arquivo compactado (.crom)"
|
| 22 |
+
if [ ! -f "$MODEL_CROM" ]; then
|
| 23 |
+
echo " Compactando ($MODEL_GGUF) para CROM. Isso pode levar uns segundos..."
|
| 24 |
+
"$BIN" pack -i "$MODEL_GGUF" -o "$MODEL_CROM" -c "$CODEBOOK" --cdc
|
| 25 |
+
echo " [OK] Modelo compactado HNSW O(1) gerado em $MODEL_CROM"
|
| 26 |
+
else
|
| 27 |
+
echo " [OK] Arquivo .crom encontrado. Compressão bypassada."
|
| 28 |
+
fi
|
| 29 |
+
|
| 30 |
+
echo "[2/3] Preparando Ponto de Montagem VFS"
|
| 31 |
+
mkdir -p "$MNT_DIR"
|
| 32 |
+
# Desmonta caso já exista algo montado
|
| 33 |
+
fusermount -u "$MNT_DIR" 2>/dev/null || true
|
| 34 |
+
|
| 35 |
+
echo "[3/3] Iniciando FUSE Mount via Mmap..."
|
| 36 |
+
"$BIN" mount -i "$MODEL_CROM" -m "$MNT_DIR" -c "$CODEBOOK" &
|
| 37 |
+
FUSE_PID=$!
|
| 38 |
+
|
| 39 |
+
# Aguarda a montagem
|
| 40 |
+
sleep 1
|
| 41 |
+
if mount | grep -q "$MNT_DIR"; then
|
| 42 |
+
echo " [SUCESSO] FUSE montado sob $MNT_DIR !"
|
| 43 |
+
ls -lah "$MNT_DIR"
|
| 44 |
+
echo ""
|
| 45 |
+
echo "⚠️ O Daemon está rodando em plano de fundo (PID: $FUSE_PID). O modelo virtual está em:"
|
| 46 |
+
echo " $MNT_DIR/qwen2.5-crom-dna.gguf"
|
| 47 |
+
echo " Utilize fusermount -u $MNT_DIR para desmontar depois."
|
| 48 |
+
else
|
| 49 |
+
echo " [ERRO FATAL] Falha ao montar o daemon FUSE."
|
| 50 |
+
exit 1
|
| 51 |
+
fi
|