26 lines
719 B
Bash
Executable File
26 lines
719 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
HOST="${LOCAL_CV_HOST:-127.0.0.1}"
|
|
PORT="${LOCAL_CV_PORT:-8091}"
|
|
MODEL="${LOCAL_CV_YOLO_MODEL:-yolov8n.pt}"
|
|
|
|
if [ ! -d ".venv-local-cv" ]; then
|
|
python3 -m venv .venv-local-cv
|
|
fi
|
|
|
|
. .venv-local-cv/bin/activate
|
|
python -m pip install --upgrade pip
|
|
python -m pip install -r tools/local_cv_requirements.txt
|
|
|
|
if [ "${LOCAL_CV_DISABLE_YOLO:-false}" != "true" ]; then
|
|
LOCAL_CV_YOLO_MODEL="$MODEL" python -c "import os; from ultralytics import YOLO; YOLO(os.environ['LOCAL_CV_YOLO_MODEL'])"
|
|
fi
|
|
|
|
if [ "${LOCAL_CV_PRELOAD_ONLY:-false}" = "true" ]; then
|
|
echo "Local CV dependencies and model are ready."
|
|
exit 0
|
|
fi
|
|
|
|
exec uvicorn tools.local_cv_worker:app --host "$HOST" --port "$PORT"
|