【202601更新】记录大模型推理服务部署和使用过程中的一些资源,包括但不限于部署环境、部署框架常用优化、模型调用、多模态对话模型、多模态向量模型等(非特殊说明,均为Linux环境、Nvidia显卡)

模型部署环境

  • Nvidia显卡、Docker部署环境:Ubuntu Nvidia Docker单机多卡环境配置

  • CUDA安装与更新:cuda 历史发布版本及安装cuda版本与显卡驱动对应关系

    • CUDA卸载
      apt-get --purge remove "*cuda*" "*cublas*" "*cufft*" "*curand*" "*cusolver*" "*cusparse*" "*npp*" "*nvjpeg*" "nsight*" "nvidia-cuda-toolkit"
      apt-get autoremove
      
    • CUDA安装
      chmod +x cuda_13.0.0_580.65.06_linux.run
      sudo ./cuda_13.0.0_580.65.06_linux.run \
          --toolkit \
          --silent \
          --override \
          --no-drm \
          --no-man-page \
          --toolkitpath=/usr/local/cuda-13.0
      
    • CUDA安装确认
      # 检查安装
      nvcc --version  # 应显示 13.0
      nvidia-smi      # 查看GPU状态
      ls -la /usr/local/cuda  # 确认软链接
      
      注意: 如果需要是用NVIDIA Docker,还需要重新配置,安装可参考第一条Nvidia、Docker部署环境里面的内容
  • Nvidia安装与更新:Nvida各显卡驱动下载,安装可参考第一条Nvidia、Docker部署环境里面的内容

模型下载&服务

模型下载

  • 国内外常用的模型下载平台
    • Modelscope,阿里维护,活跃度高,模型覆盖度高且范围广,国内首推使用
      下载方式:推荐git lfs下载方式,大文件下载友好,模型库搜到相关模型,点击进去偏右上角‘下载模型’
      首推下载方式,git lfs  + nohup
      比如下载qwen3-vl-8B-instruct模型:
      第一步:GIT_LFS_SKIP_SMUDGE=1 git clone https://www.modelscope.cn/Qwen/Qwen3-VL-8B-Instruct.git
      第二步:进入Qwen3-VL-8B-Instruct目录,先执行:git lfs pull --include='*.json',下载配置文件
      第三步:下载模型权重文件,可使用nohup命令,也可不使用,不使用的命令: git lfs pull --inlcude='*.safetensors'
      
    • Hugginface,世界级更新,国内外一些不常见模型在此均能找到,国内访问&下载受限

模型服务

模型部署(vLLM)

注意文本模型和多模态模型部署存在一定差距,大部分参数都相同,但有自己独特参数,建议多看vLLM官方文档

  • 文本模型部署示例(http版,https版不记录)
docker run -d --runtime nvidia --gpus 4 --ipc=host -p 8000:8000 -v /root:/root --name=ds_r1_32b vllm vllm-openai:v0.11.0 --model /root/models/ds_r1_32b -instruct --trust-remote-code --served-model-name ds_r1_32b --max_num_seqs 128 --tensor-parallel-size 4 --gpu_memory_utilization 0.95  --no-enforce-eager --disable-custom-all-reduce  --compilation-config '{"level": 3, "cudagraph_capture_sizes": [1, 5, 20]}' --enable-prefix-caching  --enable-chunked-prefill --rope-scaling '{"rope_type":"yarn","factor":4.0,"original_max_position_embeddings":32768}' --max-model-len 131072 --reasoning-parser deepseek_r1 --enable-auto-tool-choice --tool-call-parser hermes 
  • 多模态模型部署示例

模型访问

首推OpenAI SDK调用大模型服务,下面是一个示例,注意后面的备注:

from openai import OpenAI

API_KEY=xxx
BASE_URL=xxx
MODEL_NAME=xxx

client = OpenAI(
    api_key=API_KEY,
    base_url=BASE_URL,
)

instruct = "今天天气怎么样"
response = client.chat.completions.create(
    model=MODEL_NAME,
    messages=[
                {"role": "user", "content": instruct }
            ],
    temperature=0.01,
    max_tokens=2048)
print(response)
print(response.choices[0].message.content)
print(f"【usage】: {response.usage}")

注意:
- 控制qwen模型的思考模式: extra_body={“chat_template_kwargs”: {“enable_thinking”: False}} # qwen3开关模式
- 控制gpt-oss模型的思考模式:extra_body={“reasoning_effort”: “low”}, # gpt-oss 开关模式

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐