32 lines
1.1 KiB
Bash
32 lines
1.1 KiB
Bash
#!/bin/bash
|
|
set -e
|
|
|
|
MODELS_PATH="models"
|
|
OUTPUT_DIR="compiled-models"
|
|
IMAGE_NAME="rkllm-builder"
|
|
CONTAINER_NAME="rkllm-compile-$$"
|
|
|
|
mkdir -p "$MODELS_PATH" "$OUTPUT_DIR"
|
|
|
|
echo "🏗️ Сборка образа для компиляции..."
|
|
docker build -f Dockerfile -t "$IMAGE_NAME" .
|
|
|
|
# Клонируем модель на хост (если ещё не клонирована)
|
|
# if [ ! -d "$MODELS_PATH/Qwen3-4B-Instruct-2507-gptq-w4a16-g128" ]; then
|
|
# echo "📥 Клонирование модели из Hugging Face..."
|
|
# cd "$MODELS_PATH"
|
|
# git clone https://huggingface.co/kaitchup/Qwen3-4B-Instruct-2507-gptq-w4a16-g128
|
|
# cd "Qwen3-4B-Instruct-2507-gptq-w4a16-g128" && git lfs pull || true
|
|
# cd ../..
|
|
# else
|
|
# echo "✅ Модель уже клонирована в $MODELS_PATH/Qwen3-4B-Instruct-2507-gptq-w4a16-g128"
|
|
# fi
|
|
|
|
echo "⚙️ Запуск компиляции (может занять 30-60 минут)..."
|
|
docker run --rm \
|
|
--name "$CONTAINER_NAME" \
|
|
-v "$(pwd)/$MODELS_PATH:/models" \
|
|
-v "$(pwd)/$OUTPUT_DIR:/output" \
|
|
"$IMAGE_NAME"
|
|
|
|
echo "✅ Модель сохранена в: $OUTPUT_DIR" |