当前位置: 首页 > news >正文

qwen3.6-27B-FP8部署

目录路径按需调整

当前根目录/

1、环境安装

cd /

conda create -n vllm-env python=3.10
conda activate vllm-env
python3 -m venv vllm-env
source vllm-env/bin/activate
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
pip install vllm

2、验证

import vllm
print(vllm.__version__)
3、魔塔社区下载

pip install modelscope

mkdir Qwen3.6-27B-FP8

modelscope download --model Qwen/Qwen3.6-27B-FP8

4、模型启动脚本:


#!/bin/bash
export CUDA_VISIBLE_DEVICES=0,1

# Qwen3.6-27B-FP8 双卡自动部署脚本
# 功能:激活指定虚拟环境,自动停止旧服务,并使用双卡启动 vLLM

# --- 配置区域 ---
VENV_PATH="/vllm-env"
MODEL_PATH="/root/ai-models/Qwen/Qwen3___6-27B-FP8" # 本地模型绝对路径
PORT=8000
HOST="0.0.0.0"
TP_SIZE=2 # 张量并行度,双卡设为 2
MAX_MODEL_LEN=262144 # 上下文长度,根据显存调整 (32k/64k/128k)
GPU_MEM_UTIL=0.9 # 显存利用率
LOG_FILE="vllm_server.log"

# --- 函数定义 ---

# 1. 激活虚拟环境
#activate_venv() {
# if [ -f "${VENV_PATH}/bin/activate" ]; then
# echo ">>> 正在激活虚拟环境: ${VENV_PATH}"
# source "${VENV_PATH}/bin/activate"
#else
# echo "错误: 虚拟环境路径不存在: ${VENV_PATH}/bin/activate"
# exit 1
#fi
#}

# 2. 停止现有服务
stop_existing_service() {
echo ">>> 检查端口 ${PORT} 是否被占用..."
PID=$(lsof -ti:${PORT} 2>/dev/null)
if [ -n "$PID" ]; then
echo ">>> 发现占用进程 PID: $PID,正在终止..."
kill -9 $PID
sleep 2
echo ">>> 旧进程已终止。"
else
echo ">>> 端口 ${PORT} 空闲,无需停止旧进程。"
fi
}

# 3. 检查环境
check_environment() {
if ! command -v vllm &> /dev/null; then
echo "错误: vLLM 未安装。请确保在虚拟环境中已执行: pip install vllm"
exit 1
fi

if [ ! -d "${MODEL_PATH}" ]; then
echo "错误: 模型路径不存在: ${MODEL_PATH}"
exit 1
fi

GPU_COUNT=$(nvidia-smi --query-gpu=name --format=csv,noheader 2>/dev/null | wc -l)
if [ "$GPU_COUNT" -lt 2 ]; then
echo "警告: 检测到少于 2 张 GPU,但配置为 TP_SIZE=2。请确认硬件连接。"
fi
}

# 4. 启动服务
start_service() {
echo ">>> 正在启动 Qwen3.6-27B-FP8 (TP=${TP_SIZE}, Context=${MAX_MODEL_LEN})..."
echo ">>> 日志将输出到 ${LOG_FILE}"

nohup vllm serve ${MODEL_PATH} \
--host ${HOST} \
--port ${PORT} \
--tensor-parallel-size ${TP_SIZE} \
--max-model-len ${MAX_MODEL_LEN} \
--gpu-memory-utilization ${GPU_MEM_UTIL} \
--dtype auto \
--served-model-name qwen3-local \
> ${LOG_FILE} 2>&1 &

NEW_PID=$!
echo ">>> 服务已在后台启动,PID: ${NEW_PID}"
echo ">>> 等待服务初始化..."

for i in {1..30}; do
if curl -s http://localhost:${PORT}/health > /dev/null 2>&1; then
echo ">>> 服务启动成功!访问地址: http://${HOST}:${PORT}/v1"
return 0
fi
sleep 2
done

echo ">>> 警告: 服务启动超时,请查看 ${LOG_FILE} 排查错误。"
return 1
}

# --- 主执行流程 ---
echo "========================================"
echo " Qwen3.6-27B-FP8 双卡部署助手"
echo "========================================"

#activate_venv
check_environment
stop_existing_service
start_service

echo "========================================"
echo " 部署完成。使用 'tail -f ${LOG_FILE}' 查看实时日志"
echo "========================================"

http://www.jsqmd.com/news/748044/

相关文章:

  • Transformer多头注意力机制计算效率优化实践
  • 实战利器:通过快马平台创建企业级Windows服务器运维管理工具
  • 三步解锁全球最大同人创作平台:AO3镜像站完全使用指南
  • 今日GitHub趋势:4款Claude Code插件同时上榜,AI编程工具生态正在补全
  • 谷歌地球手机版下载资源分享
  • 如何在Windows上快速部署Android应用:完整解决方案指南
  • 别再傻傻分不清!LM193/LM393/LM2903电压比较器选型指南(附典型应用电路)
  • Python量化配置自动化革命:基于Docker+Poetry+GitHub Actions的CI/CD配置流水线(附可运行模板)
  • Pytorch图像去噪实战(二十七):EMA指数滑动平均实战,让图像去噪模型推理结果更稳定
  • Google Chrome谷歌浏览器下载安装教程【安卓版+电脑版+鸿蒙版+mac版安装包】
  • 从贪吃蛇到仪表盘:Bubble Tea实战,教你用Go打造终端‘摸鱼’小工具合集
  • MCP生态智能诊断工具:自动化环境检查与协议兼容性验证
  • 用STM32和DAC8563制作一个简易信号发生器:SPI通信与波形生成实战
  • 23.树形DP
  • AI大模型网关存在SQL注入、影响版本LiteLLM 1.81.16~1.83.7(CVE-2026-42208)
  • 零基础入门:用快马AI生成你的第一个带详解的Python服务器
  • 实战演练:基于快马平台构建电商订单状态同步的kafka消息系统
  • 【C++ STL】探索STL的奥秘——vector底层的深度剖析和模拟实现!
  • 新手福音:基于快马平台轻松掌握stlink驱动安装全流程
  • 用快马平台实践vibe coding:5分钟生成极简风待办应用原型
  • 告别重复造轮子:用快马AI一键生成ESP32网络通信模块代码
  • Flutter+开源鸿蒙实战|智联邻里Day8 Lottie动画集成+url_launcher跳转拨号+个人中心完善+全局UI统一
  • AI学术写作技能库:模块化设计赋能精准高效科研创作
  • AI协研系统:大语言模型如何革新科研与医疗
  • 微博图片溯源神器:3秒找到原作者,告别图片版权困扰
  • 2026.5.3:Docker高级:Docker Harbor安装与使用教程
  • 实战指南:基于快马模板部署高可用、可监控的Hermes Agent生产服务
  • 【工业级Python模型调试实战】:覆盖92%线上故障的7类可复现case及自动化检测脚本
  • SPI传感器网络架构与嵌入式通信优化实践
  • Fan Control:让Windows电脑风扇静音又高效的终极解决方案