Files
AI-Profile-Router/platform/llama/build-llama-cpp.sh
T

30 lines
846 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR="${ROOT_DIR:-/opt/mike-ai}"
SOURCE_DIR="${SOURCE_DIR:-$ROOT_DIR/llama.cpp}"
BUILD_DIR="${BUILD_DIR:-$SOURCE_DIR/build}"
REPO_URL="${REPO_URL:-https://github.com/ggml-org/llama.cpp.git}"
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
COMMIT="$(tr -d '[:space:]' < "$SCRIPT_DIR/LLAMA_CPP_COMMIT")"
if [[ $EUID -ne 0 ]]; then
echo "Dieses Skript muss als root ausgeführt werden." >&2
exit 1
fi
if [[ ! -d "$SOURCE_DIR/.git" ]]; then
git clone "$REPO_URL" "$SOURCE_DIR"
fi
git -C "$SOURCE_DIR" fetch --tags origin
git -C "$SOURCE_DIR" checkout --detach "$COMMIT"
cmake -S "$SOURCE_DIR" -B "$BUILD_DIR" \
-DGGML_CUDA=ON \
-DLLAMA_CURL=ON \
-DCMAKE_BUILD_TYPE=Release
cmake --build "$BUILD_DIR" --config Release --parallel "$(nproc)"
"$BUILD_DIR/bin/llama-server" --version