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

三步完成,A100本地vLLM部署gpt-oss,并启动远程可访问api

A100本地vLLM部署gpt-oss,并启动远程可访问api

GPT-oss试用
gpt-oss有两个原生配置是目前(2025-8-8)Ampere系列显卡不支持的,分别是默认的MXFP4量化,以及Flash-attn V3。官方给出的vllm教程也是默认使用的是H系列显卡。因此,A100部署可能会遇到类似Sinks are only supported in FlashAttention 3的报错。

下载模型参数到本地

国内用魔塔更快,下载到本地xxxx目录下:

pip install modelscope
modelscope download --model openai-mirror/gpt-oss-120b --local_dir xxxxxx

新建conda环境

conda create -n vllm python=3.12 -yconda activate vllmpip install --upgrade uvexport TORCH_CUDA_ARCH_LIST="8.0"uv pip install --pre vllm==0.10.1+gptoss \--extra-index-url https://wheels.vllm.ai/gpt-oss/ \--extra-index-url https://download.pytorch.org/whl/nightly/cu128 \--index-strategy unsafe-best-match --force-reinstall --no-cache

这里官方给的pytorch是cu128,如果a100当前驱动低于12.8不确定会不会报错,我这里提前将GPU驱动(nvidia-smi)以及工具链(nvcc -V)都升级到了12.8,老一点的驱动可能也行。

启动vllm服务

分两种场景,看你是只需要本机访问api,还是需要可远程访问api。远程api:

export TORCH_CUDA_ARCH_LIST="8.0"
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6
VLLM_ATTENTION_BACKEND=TRITON_ATTN_VLLM_V1 vllm serve \/mnt/models/gpt-oss-120b \-tp 2 \--served-model-name gpt-oss-120b \--host 0.0.0.0 \--port 8005 \--api-key 12345

最关键的是VLLM_ATTENTION_BACKEND=TRITON_ATTN_VLLM_V1,不使用Flash-attn,因为gpt-oss默认使用V3,这在A100不受支持。其他设置为FLASHINFERdefaulttriton我这里测试都不行。这里--host 0.0.0.0是让该服务监听所有,远程可访问。如果只想本机可访问,改成--host 127.0.0.1即可。/mnt/models/gpt-oss-120b是你下载模型参数的目录,--port 8005这是服务的端口,不设置默认是8000,--api-key 12345设置访问该API服务需要用这个key验证,--served-model-name gpt-oss-120b这里是设置当使用API访问时,用什么model_name来识别该服务。-tp 2表示用两张卡。

API访问

这里给一个python脚本访问api的示例:

from openai import OpenAI
import jsonclient = OpenAI(base_url="http://localhost:8005/v1",api_key="12345"
)result = client.chat.completions.create(model="gpt-oss-120b",messages=[{"role": "system", "content": "Reasoning: high"},{"role": "system", "content": "You are a helpful assistant."},{"role": "user", "content": "Explain what MXFP4 quantization is."}],max_tokens=2048
)print(result.choices[0].message.content)with open('./model_response.json', "w") as f:json.dump(result.model_dump(), f, indent=4, ensure_ascii=False)

这是本地访问。如果是远程访问,将localhost替换成你启动服务的服务器的IP即可。将模型输出保存为json,方便查看分析模型输出的组成部分。messages的第一行{"role": "system", "content": "Reasoning: high"}是用来指示思考深度的,共三个选择highmediumlow
启动的服务默认是支持流式输出的,这里给个流式返回的python示例:

from openai import OpenAIclient = OpenAI(base_url="http://localhost:8005/v1",api_key="12345"
)response = client.chat.completions.create(model="gpt-oss-120b",messages=[{"role": "system", "content": "Reasoning: high"},{"role": "system", "content": "You are a helpful assistant."},{"role": "user", "content": "Explain what MXFP4 quantization is."}],max_tokens=2048,stream=True
)for chunk in response:# 有的 SDK 版本 chunk 可能是对象,也可能是字典# 尝试用 dict 访问if isinstance(chunk, dict):choices = chunk.get("choices", [])if choices:delta = choices[0].get("delta", {})content = delta.get("content")if content:print(content, end="", flush=True)else:# 如果是对象,尝试用属性访问try:delta = chunk.choices[0].deltacontent = getattr(delta, "content", None)if content:print(content, end="", flush=True)except Exception:passprint("\n--- done ---")

其中stream=True就标识了流式输出,跟openai的普通API类似。

http://www.lryc.cn/news/614156.html

相关文章:

  • 串口转以太网实战:S7-200驱动大棚温湿度监控、HMI与通风设备
  • Vue框架进阶
  • FPGA实现Aurora 64B66B数据回环传输,基于GTX高速收发器,提供2套工程源码和技术支持
  • 机器学习支持向量机(SVM)
  • 论文精读(二)| 开源软件漏洞感知技术综述
  • 深度学习·MAFT
  • Linux中的内核同步源码相关总结
  • 2025华数杯数学建模A题【 多孔膜光反射性能的优化与控制】原创论文分享
  • 提升LLM服务效率的秘密武器——vLLM!
  • 【MongoDB学习笔记2】MongoDB的索引介绍
  • [GESP202309 五级] 2023年9月GESP C++五级上机题题解,附带讲解视频!
  • 【具身智能】具身智能的革命——人形机器人如何重塑人类日常生活
  • VIOO IQOO7手机 解锁BL ROOT教程
  • Effective C++ 条款30:透彻了解inlining的里里外外
  • 安装CST时,报错问题处理
  • Suno AI 完全上手教程:从文字到音乐,打造自己专属音乐
  • Qwen Agent 入门介绍与简单使用示例
  • 用不均匀硬币实现公平决策
  • 【Bellman负环】Cycle Finding
  • 遥测自跟踪天线系统组成、特点、功能、工作流程
  • 降低程序运行时CPU和GPU峰值占用的技术方案
  • ADB 命令执行模块开发:双模式(普通模式Shell交互模式)实现、线程安全与资源管理优化
  • 机器学习——支持向量机(SVM)实战案例
  • Android 中解决 Button 按钮背景色设置无效的问题
  • BGP笔记及综合实验
  • 如何在simulink中双击一个模块弹出一个exe?
  • 三防平板+天通卫星电话,打通无人之境的通信经脉
  • 前端开发:JavaScript(7)—— Web API
  • 从手工到智能决策,ERP让制造外贸企业告别“数据孤岛“降本增效
  • 生产管理ERP系统|物联及生产管理ERP系统|基于SprinBoot+vue的制造装备物联及生产管理ERP系统设计与实现(源码+数据库+文档)