Spaces:
Sleeping
Sleeping
File size: 2,661 Bytes
c41af55 e27c01a c41af55 9d6ab7a 2df2093 c41af55 e27c01a 9d6ab7a e27c01a 4b90830 9d6ab7a e27c01a 9d6ab7a e27c01a 9d6ab7a 4b90830 9d6ab7a 4b90830 9d6ab7a 4b90830 9d6ab7a 2df2093 9d6ab7a 2df2093 e27c01a c41af55 e27c01a c41af55 9d6ab7a e27c01a c41af55 e27c01a c41af55 9d6ab7a c41af55 e27c01a | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | #!/usr/bin/env bash
# Starts HTTP server on port 7860 immediately, runs conversion in background.
# The HTTP server is the main foreground process โ container stays alive as
# long as it's running regardless of what the conversion does.
set -euo pipefail
mkdir -p /workspace/output /workspace/scratch
LOG_FILE="/workspace/output/conversion.log"
# Kick off the conversion pipeline in the background before anything else
(
exec >> "$LOG_FILE" 2>&1
echo ""
echo "โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ"
echo " DeepSeek-Math-V2 GGUF Converter"
echo "โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ"
echo "Date : $(date)"
echo "Disk : $(df -h /workspace | tail -1)"
echo "Memory : $(free -h | grep Mem)"
echo ""
# Build llama-quantize if not present
if ! command -v llama-quantize &>/dev/null; then
echo "Building llama-quantize (~2 min)..."
cd /opt/llama.cpp
cmake -B build \
-DCMAKE_BUILD_TYPE=Release \
-DLLAMA_NATIVE=OFF \
-DBUILD_SHARED_LIBS=OFF \
-DLLAMA_BUILD_TESTS=OFF \
-DLLAMA_BUILD_EXAMPLES=OFF \
-DLLAMA_BUILD_SERVER=OFF \
2>&1 | tail -3
cmake --build build --config Release --target llama-quantize -j$(nproc)
install -m 755 build/bin/llama-quantize /usr/local/bin/llama-quantize
echo "llama-quantize ready"
cd /workspace
fi
bash /workspace/scripts/convert.sh
if [[ $? -eq 0 ]]; then
echo ""
echo "โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ"
echo " โ Conversion complete! Container staying alive."
echo "โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ"
else
echo ""
echo "โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ"
echo " โ Conversion FAILED. Container staying alive."
echo "โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ"
fi
) &
# Start the HTTP status server in the FOREGROUND โ this is PID 1's main job.
# Container lives exactly as long as this process lives.
exec python3 /workspace/scripts/status_server.py "$LOG_FILE"
|