feat: 添加服务启动脚本 start.sh
- 自动检查虚拟环境和 .env 配置文件 - 自动加载 DASHSCOPE_API_KEY - 支持自定义端口参数: ./start.sh [端口] (默认402) - 启动前显示服务地址、API文档链接和加速方式 - 使用 exec 替换进程,支持 Ctrl+C 优雅退出
This commit is contained in:
48
start.sh
Executable file
48
start.sh
Executable file
@@ -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
|
||||
Reference in New Issue
Block a user