Ferdlance's picture
Update build.sh
370df61 verified
raw
history blame
1.59 kB
#!/bin/bash
# Fonction pour afficher des messages informatifs en vert
info() {
echo -e "\e[32m[INFO]\e[0m $1"
}
# Fonction pour afficher des messages d'erreur en rouge
error() {
echo -e "\e[31m[ERREUR]\e[0m $1"
}
# --- Début du script ---
# Étape 1: Création du script de démarrage du serveur
info "Étape 1: Création du script de démarrage du serveur..."
mkdir -p server
START_SCRIPT="server/start_server.sh"
# Utilisation d'un here document pour une génération sans erreur
cat > "$START_SCRIPT" << EOF
#!/bin/bash
MODEL_PATH="/app/models/qwen2.5-coder-1.5b-q8_0.gguf"
if [ ! -f "\$MODEL_PATH" ]; then
echo "Le modèle GGUF est introuvable à: \$MODEL_PATH"
exit 1
fi
"/app/llama.cpp/build/bin/llama-server" \\
-m "\$MODEL_PATH" \\
--port 8080 \\
--host 0.0.0.0 \\
-c 4096 \\
-ngl 999 \\
--threads 8 \\
> "logs/llama_server.log" 2>&1 &
echo \$! > "server/server.pid"
EOF
chmod +x "$START_SCRIPT"
info "Script de démarrage du serveur créé."
# Étape 2: Création du script d'arrêt du serveur
info "Étape 2: Création du script d'arrêt du serveur..."
STOP_SCRIPT="server/stop_server.sh"
cat > "$STOP_SCRIPT" << EOF
#!/bin/bash
PID_FILE="server/server.pid"
if [ -f "\$PID_FILE" ]; then
PID=\$(cat "\$PID_FILE")
kill \$PID
rm "\$PID_FILE"
echo "Serveur llama.cpp arrêté."
else
echo "Aucun PID de serveur trouvé."
fi
EOF
chmod +x "$STOP_SCRIPT"
info "Script d'arrêt du serveur créé."
# Étape 3: Lancement de l'application Streamlit
info "Étape 3: Lancement de l'application Streamlit..."
streamlit run app.py