Files
MLXServer/run.sh

48 lines
1.0 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
cd "$SCRIPT_DIR"
# Activate virtual environment
source .venv/bin/activate
# --- Model selection ---
# Usage: ./run.sh [gemma|gemma3n|qwen]
# Or set MODEL env var directly for a custom model.
MODEL_CHOICE="${1:-gemma}"
if [[ -z "${MODEL:-}" ]]; then
case "$MODEL_CHOICE" in
gemma)
MODEL="mlx-community/gemma-3-4b-it-4bit"
;;
gemma3n)
MODEL="mlx-community/gemma-3n-E4B-it-4bit"
;;
qwen)
MODEL="mlx-community/Qwen3-VL-4B-Instruct-4bit"
;;
*)
echo "Unknown model choice: $MODEL_CHOICE"
echo "Usage: $0 [gemma|gemma3n|qwen]"
exit 1
;;
esac
fi
HOST="${HOST:-127.0.0.1}"
PORT="${PORT:-1234}"
echo "Starting MLX Server..."
echo " Model: $MODEL"
echo " Endpoint: http://$HOST:$PORT"
echo ""
exec python -m mlx_server.main \
--model "$MODEL" \
--host "$HOST" \
--port "$PORT" \
"${@:2}"