#!/usr/bin/env bash set -euo pipefail SCRIPT_DIR="$(cd -- "$(dirname "${BASH_SOURCE[0]}")" && pwd)" BUNDLE_DIR="${SCRIPT_DIR}" VENV_DIR="${BUNDLE_DIR}/.venv_audio" HOST_PORT="${HOST_PORT:-8100}" # 激活虚拟环境 source "${VENV_DIR}/bin/activate" # 检查端口占用 if lsof -i "tcp:${HOST_PORT}" -t >/dev/null 2>&1; then echo "Port ${HOST_PORT} already in use" >&2 exit 1 fi echo "Starting audio server on port ${HOST_PORT} ..." cd "${BUNDLE_DIR}" export MODELSCOPE_DOWNLOAD_MODE=local export MODELSCOPE_HUB_ENABLE_FILE_CHECK=false export MODELSCOPE_CACHE="${BUNDLE_DIR}/modelscope" # 强制 HuggingFace transformers 离线 export HF_HUB_OFFLINE=1 export TRANSFORMERS_OFFLINE=1 uvicorn speech_server:app --host 0.0.0.0 --port "${HOST_PORT}" --log-level info