init
This commit is contained in:
commit
799fe71666
|
|
@ -0,0 +1,73 @@
|
||||||
|
# 专为 macOS 设计的 .gitignore 文件
|
||||||
|
# 生成日期:2025-10-23
|
||||||
|
|
||||||
|
### macOS 系统特定文件 ###
|
||||||
|
# Finder 和操作系统生成的隐藏文件
|
||||||
|
models
|
||||||
|
.DS_Store
|
||||||
|
.AppleDouble
|
||||||
|
.LSOverride
|
||||||
|
|
||||||
|
# 图标必须文件,在 Retina 显示屏上使用
|
||||||
|
Icon?
|
||||||
|
|
||||||
|
# 缩略图
|
||||||
|
._*
|
||||||
|
|
||||||
|
# 文件可能出现在 Apple 文件共享中
|
||||||
|
.Spotlight-V100
|
||||||
|
.Trashes
|
||||||
|
|
||||||
|
### 常见开发环境 ###
|
||||||
|
# 日志文件
|
||||||
|
*.log
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
|
||||||
|
# 依赖目录
|
||||||
|
node_modules/
|
||||||
|
*/node_modules
|
||||||
|
|
||||||
|
# 编译输出目录
|
||||||
|
build/
|
||||||
|
dist/
|
||||||
|
*.min.js
|
||||||
|
*.min.css
|
||||||
|
|
||||||
|
# 临时文件
|
||||||
|
*.tmp
|
||||||
|
*.temp
|
||||||
|
|
||||||
|
# 环境变量文件(包含敏感信息,务必忽略)
|
||||||
|
.env
|
||||||
|
.env.local
|
||||||
|
.env.development.local
|
||||||
|
.env.test.local
|
||||||
|
.env.production.local
|
||||||
|
|
||||||
|
### 集成开发环境 (IDE) ###
|
||||||
|
# Visual Studio Code
|
||||||
|
.vscode/*
|
||||||
|
!.vscode/settings.json
|
||||||
|
!.vscode/tasks.json
|
||||||
|
!.vscode/launch.json
|
||||||
|
!.vscode/extensions.json
|
||||||
|
|
||||||
|
# IntelliJ IDEA
|
||||||
|
.idea/
|
||||||
|
*.iws
|
||||||
|
*.iml
|
||||||
|
*.ipr
|
||||||
|
|
||||||
|
### 其他通用忽略规则 ###
|
||||||
|
# 系统文件
|
||||||
|
Thumbs.db
|
||||||
|
ehthumbs.db
|
||||||
|
Desktop.ini
|
||||||
|
|
||||||
|
# 备份文件
|
||||||
|
*.bak
|
||||||
|
*.backup
|
||||||
|
*~
|
||||||
|
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
3.13.0
|
||||||
|
|
@ -0,0 +1,35 @@
|
||||||
|
## 简介
|
||||||
|
|
||||||
|
本来想直接在docker里面跑 vllm ,但是 mac m2 没有对应的镜像,所以改为直接系统上用python 跑
|
||||||
|
|
||||||
|
## 准备
|
||||||
|
|
||||||
|
下载需要运行的模型,记得修改 `start.sh` 中的模型配置
|
||||||
|
|
||||||
|
例: 使用 `Qwen2.5-0.5B-Instruct` 模型调试
|
||||||
|
|
||||||
|
```
|
||||||
|
# mac 系统
|
||||||
|
# 1. 安装 git-lfs,Git LFS(Large File Storage)是 Git 的一个扩展,专门用于高效地版本控制大型文件,如音频、视频、数据集、图形资产等
|
||||||
|
brew install git-lfs
|
||||||
|
git lfs install
|
||||||
|
|
||||||
|
# 2. 下载模型
|
||||||
|
mkdir models
|
||||||
|
cd models
|
||||||
|
git clone https://www.modelscope.cn/Qwen/Qwen2.5-0.5B-Instruct.git
|
||||||
|
```
|
||||||
|
|
||||||
|
## 命令
|
||||||
|
|
||||||
|
```shell
|
||||||
|
# 启动
|
||||||
|
sh start.sh
|
||||||
|
|
||||||
|
# 关闭
|
||||||
|
sh stop.sh
|
||||||
|
|
||||||
|
# 查看是否成功
|
||||||
|
curl http://localhost:8022/v1/models
|
||||||
|
```
|
||||||
|
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
torch
|
||||||
|
torchvision
|
||||||
|
torchaudio
|
||||||
|
vllm==0.11.0
|
||||||
|
|
@ -0,0 +1,43 @@
|
||||||
|
#!/bin/bash
|
||||||
|
# 启动本地 vLLM OpenAI API 服务 (MPS 模式)
|
||||||
|
|
||||||
|
# ========= 配置区域 =========
|
||||||
|
MODEL_PATH="./models/Qwen2.5-0.5B-Instruct"
|
||||||
|
MODEL_NAME="Qwen2.5-0.5B-Instruct"
|
||||||
|
PORT=8022
|
||||||
|
LOG_FILE="vllm.log"
|
||||||
|
PID_FILE="vllm.pid"
|
||||||
|
VENV_DIR="venv-vllm"
|
||||||
|
API_KEY="sk-local-827ccb0eea8a706c4c34a16891f84e7b"
|
||||||
|
# ===========================
|
||||||
|
|
||||||
|
echo "🔍 检查 Python 虚拟环境..."
|
||||||
|
if [ ! -d "$VENV_DIR" ]; then
|
||||||
|
echo "⚙️ 创建虚拟环境..."
|
||||||
|
python3 -m venv "$VENV_DIR"
|
||||||
|
fi
|
||||||
|
|
||||||
|
source "$VENV_DIR/bin/activate"
|
||||||
|
|
||||||
|
# 检查 vllm 是否安装
|
||||||
|
if ! python -c "import vllm" &>/dev/null; then
|
||||||
|
echo "📦 安装 vLLM 和 PyTorch..."
|
||||||
|
pip install --upgrade pip
|
||||||
|
pip install torch torchvision torchaudio
|
||||||
|
pip install vllm==0.11.0
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 启动 vLLM
|
||||||
|
echo "🚀 启动 vLLM API Server..."
|
||||||
|
nohup python -m vllm.entrypoints.openai.api_server \
|
||||||
|
--model "$MODEL_PATH" \
|
||||||
|
--served-model-name "$MODEL_NAME" \
|
||||||
|
--max-model-len 2048 \
|
||||||
|
--host 0.0.0.0 \
|
||||||
|
--port $PORT \
|
||||||
|
--api-key "$API_KEY" > "$LOG_FILE" 2>&1 &
|
||||||
|
|
||||||
|
echo $! > "$PID_FILE"
|
||||||
|
echo "✅ vLLM 已启动 (PID=$(cat $PID_FILE))"
|
||||||
|
echo "📡 访问地址: http://localhost:$PORT/v1"
|
||||||
|
echo "📜 日志文件: $LOG_FILE"
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
#!/bin/bash
|
||||||
|
# 停止本地 vLLM 服务
|
||||||
|
|
||||||
|
PID_FILE="vllm.pid"
|
||||||
|
|
||||||
|
if [ ! -f "$PID_FILE" ]; then
|
||||||
|
echo "⚠️ 未找到 PID 文件,vLLM 可能未运行。"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
PID=$(cat "$PID_FILE")
|
||||||
|
if ps -p "$PID" > /dev/null 2>&1; then
|
||||||
|
echo "🛑 停止 vLLM (PID=$PID)..."
|
||||||
|
kill "$PID"
|
||||||
|
rm -f "$PID_FILE"
|
||||||
|
echo "✅ 已关闭 vLLM 服务。"
|
||||||
|
else
|
||||||
|
echo "⚠️ 未找到运行中的 vLLM 进程。"
|
||||||
|
rm -f "$PID_FILE"
|
||||||
|
fi
|
||||||
Loading…
Reference in New Issue