From a6a471c5c45f0fceccf385f7ef639f30b3e6c019 Mon Sep 17 00:00:00 2001 From: aszerW Date: Sun, 19 Apr 2026 00:33:24 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E5=90=AF=E5=8A=A8=E8=84=9A=E6=9C=AC=20start.sh?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 自动检查虚拟环境和 .env 配置文件 - 自动加载 DASHSCOPE_API_KEY - 支持自定义端口参数: ./start.sh [端口] (默认402) - 启动前显示服务地址、API文档链接和加速方式 - 使用 exec 替换进程,支持 Ctrl+C 优雅退出 --- start.sh | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100755 start.sh diff --git a/start.sh b/start.sh new file mode 100755 index 0000000..7c85d22 --- /dev/null +++ b/start.sh @@ -0,0 +1,48 @@ +#!/bin/bash +# LLM Compass 启动脚本 +# 用法: ./start.sh [端口号] + +set -e + +# 默认端口 +PORT=${1:-402} + +# 获取脚本所在目录 +SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" +cd "$SCRIPT_DIR" + +# 检查虚拟环境 +if [ ! -d ".venv" ]; then + echo "❌ 虚拟环境不存在,请先运行:" + echo " python3 -m venv .venv" + echo " .venv/bin/pip install -r requirements.txt" + exit 1 +fi + +# 检查 .env 文件 +if [ ! -f ".env" ]; then + echo "❌ .env 文件不存在,请创建并配置 API Key" + echo " cp .env.example .env" + echo " 编辑 .env 填入 DASHSCOPE_API_KEY" + exit 1 +fi + +# 加载环境变量 +export DASHSCOPE_API_KEY=$(grep DASHSCOPE_API_KEY .env | cut -d= -f2) + +if [ -z "$DASHSCOPE_API_KEY" ]; then + echo "❌ DASHSCOPE_API_KEY 未设置,请检查 .env 文件" + exit 1 +fi + +echo "🚀 启动 LLM Compass 服务..." +echo "📍 地址: http://localhost:${PORT}" +echo "📖 API 文档: http://localhost:${PORT}/docs" +echo "🔧 路由方式: NVIDIA MPS 加速 (M4 Pro GPU)" +echo "" + +# 启动服务 +exec .venv/bin/python -m uvicorn main:app \ + --host 0.0.0.0 \ + --port "$PORT" \ + --log-level info