A100用transformers推理gpt-oss

A100本地用transformers推理gpt-oss

GPT-oss試用
gpt-oss有兩個原生配置是目前(2025-8-8)Ampere系列顯卡不支持的,分別是默認的MXFP4量化,以及Flash-attn V3。tranformers推理是比較慢的,可以用于研究模型本身,如果是本地部署,最好用vllm,見三步完成,A100本地vLLM部署gpt-oss,并啟動遠程可訪問api。

下載模型參數到本地

國內用魔塔更快,下載到本地xxxx目錄下:

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

創建conda環境

conda create -n vllm python=3.12 -ypip install -U transformers 
pip install -U accelerate 
pip install -U torch 
pip install -U kernels

注意到,這里跟官方給的安裝步驟不太一樣。官方安裝多一個triton,里面包含了Triton kernels for MXFP4 compatibility,也就是gpt-oss專用的一個量化技術 MXFP4,這個量化在A100 GPU上是不被支持的。因此不能安裝,安裝反而會報錯。

模型generate推理

相信大家一般用的最多的還是generate推理,這里給個python示例:

from transformers import AutoModelForCausalLM, AutoTokenizermodel_name = "/mnt/models/gpt-oss-120b" # /mnt/models/gpt-oss-20btokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name,torch_dtype="auto", # autodevice_map="auto",attn_implementation="sdpa", # flash_attention_2 sdpa
)messages = [{"role": "system", "content": "Reasoning: low"},{"role": "user", "content": "Explain what MXFP4 quantization is."},
]inputs = tokenizer.apply_chat_template(messages,add_generation_prompt=True,return_tensors="pt",return_dict=True,
).to(model.device)outputs = model.generate(**inputs,max_new_tokens=1024,temperature=0.7
)print(tokenizer.decode(outputs[0]))

其中model_name就是下載的模型參數目錄,attn_implementation這里,不能選擇flash-attn。因為默認使用flash-attn V3,這不被a100支持,會報錯Sinks are only supported in FlashAttention 3,用flash-attn 2也不行,即使是最新release的2.8.2(2025-8-8),也會報錯一些參數無法識別。messages的第一行{"role": "system", "content": "Reasoning: low"}用來指定模型思考深度,gpt-oss有三個可選思考深度,但不能關閉。

最后,可以用transformers啟動服務,進行終端命令行對話:

transformers serve 
transformers chat localhost:8000 --model-name-or-path /mnt/models/gpt-oss-120b

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/92449.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/92449.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/92449.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

虛擬手機號工具使用

背景:注冊部分國外應用時需要國外手機號驗證,例如在注冊cursor時需要國外手機號 解決:使用虛擬手機號網頁進行驗證 https://temp-number.com/ 選擇自己需要的國家 選擇一個手機號 復制手機號到自己的app注冊頁面 并發送消息,然后…

【線程池】壓測確定線程池合適的參數

【線程池】壓測確定線程池合適的參數【一】案例說明【二】明確線程池核心參數及優化目標【1】線程池核心參數(需壓測驗證的關鍵參數)【2】優化目標【三】壓測前準備【1】環境搭建【2】線程池初始配置(基于經驗值)【3】壓測工具與監…

GPT OSS 雙模型上線,百度百舸全面支持快速部署

GPT OSS 是 OpenAI 推出的重量級開放模型,專為強推理能力、智能體任務及多樣化開發場景設計,標志著大模型在開放性與實用性上的重要突破。該系列包含兩款高性能模型:參數規模為 117B 的 GPT?OSS?120B 和 21B 的 GPT?OSS?20B。二者皆采用 …

C++高頻知識點(十七)

文章目錄81. 你對智能指針的了解82. 一元、二元仿函數的區別和使用背景一元仿函數二元仿函數83. 描述Linux下文件刪除的原理84. 什么是菱形繼承?有什么問題,怎么解決?解決菱形繼承問題85. IO多路復用是什么?selectpollepollselect…

如何優雅的使用進行參數校驗

在spring里面有一個注解 Validated可以在方法的入參里面這樣寫//方法 getActivityFlag(RequestBody Validated QueryActivityDto queryActivityDto) //參數詳情NotBlank(message "userId不能為空")private String userId;NotNull(message "storeId不能為空&q…

Java學習第一百一十部分——CI/CD

目錄 一、前言簡介 二、基本信息 三、優勢價值 四、核心流程 五、技術棧(工具矩陣) 六、最佳實踐 七、與DevOps關系 八、挑戰對策 九、使用建議 十、總結歸納 一、前言簡介 CI/CD 的本質是:通過自動化流水線,實現代碼從提…

關于 Cocoapods 使用

一、Podfile & .podspec 文件 1、Podfile 1.1. 什么是 pod 簡單來說,一個 pod 就是 xcode 里面的一個 dependency: Anyway,pod 就是第三方庫的意思。一個 pod 就是指一個第三方庫。 1.2. Podfile 有什么用 Podfile 可以理解為就是…

編程速遞:2025 年巴西 Embarcadero 會議,期待您的到來

每個英雄都有一段充滿奮斗的旅程,這段旅程引領他走向榮耀,而開發者英雄的旅程是2025年巴西Embarcadero大會的重點,以慶祝Delphi成立30周年。網站現已上線巴西Embarcadero在世界上最受期待的Delphi發展英雄會議召開前90天,推出了Em…

DevOps簡單教程應用

文章目錄概念一、環境準備二、gitlab配置三、.gitlab-ci.yml文件配置概念 Devops是一個概念,就是邊開發邊測試,能夠大大提升開發效率,本文使用pycharmgitlab實現一個簡單的DevOps流程 一、環境準備 需要一個測試環境,模擬部署&…

華為流程管理體系構建與落地 之—— 業務流程規劃【附全文閱讀】

這部分內容聚焦華為業務流程管理,詳細闡述了流程規劃、設計、運營、評估與優化的具體方法和內容,為企業構建和完善流程管理體系提供了全面的指導。流程規劃分類方法:介紹 POS、OES、OMS 等分類法,如 POS 法按規劃、運營、支持劃分…

Android 項目:畫圖白板APP開發(零)——功能介紹(筆鋒,分頁,縮放,多指,硬件加速等)

一、前言 本系列將全面的介紹一些有關Android 畫圖方面的知識。筆觸功能包括:顏色、粗細、透明度、筆鋒、橡皮;繪圖功能包括:分頁、縮放、多指、撤銷恢復、筆畫加速。別看功能這么多,簡單的部分會花較少篇幅介紹,著重會…

香橙派 RK3588 部署千問大模型 Qwen2-VL-2B 推理視頻

演示視頻 香橙派RK3588部署千問大模型Qwen2-VL-2B推理視頻一、場景假設 視頻輸入為一條網絡流,利用大模型對視頻中的圖像幀進行推理。由于大模型推理耗時長,無法對每幀都進行推理,因此采用跳幀推理的方式:當推理完一幀后&#xf…

排序概念以及插入排序

一、排序基本概念1.就地排序:使用恒定的額外空間來產生輸出就地排序只是在原數組空間進行排序處理,也就是輸入的數組和得到的數組是同一個2.內部排序和外部排序:待排序數據可以一次性載入到內存中為內部排序,反之數據量過大就是外…

Webpack 核心配置與最佳實踐指南

Webpack 是現代前端工程化的核心工具,理解其配置原理和優化技巧對開發效率至關重要。 一、Webpack 基礎架構 1、核心概念關系圖 2、核心概念詳解 概念 作用 示例配置 Entry 應用入口起點 entry: ‘./src/index.js’ Output 編譯結果輸出位置 output.path: path.resolve(__d…

GISBox私有云+SaaS:安全協同的地理智能平臺

一、概述 GISBox(GIS 工具箱)是一套能夠對GIS 影像、地形、傾斜攝影進行場景編輯、切片轉化、分發服務的 GIS 工具箱。同時,GISBox還支持私有云并一鍵開啟SaaS服務。 二、什么是私有云? 私有云服務是一種為企業或組織量身定制的…

代理人工智能的隱藏威脅

代理型人工智能的自主性令人興奮,但事實并非如此。主動性越高,不可預測性就越強,這為嚴重的、往往被忽視的安全風險打開了大門。從指令劫持到數字供應鏈的連鎖故障,代理型人工智能不僅智能,而且在不受控制的情況下非常…

SonarQube 掃描多個微服務模塊

SonarQube 掃描多個微服務模塊 在使用 SonarQube/SonarCloud 掃描多個微服務模塊時,核心目標是??確保每個微服務模塊被獨立分析??,并在 SonarQube 界面中以獨立項目展示結果。以下是具體實現方案,分場景說明: ??一、前提條…

當前主流且經過市場驗證的開源 BI 系統推薦

以下是當前主流且經過市場驗證的開源 BI 系統推薦,結合技術特性、適用場景和行業實踐,為不同需求提供針對性解決方案:一、綜合型開源 BI 平臺1. Apache Superset(Apache 2.0 協議)核心優勢:全場景覆蓋&…

第05章 排序與分頁

1.排序數據 1.1 排序規則 1.2 單列排序 1.3 多列排序 2.分頁 2.1 背景 背景1:查詢返回的記錄太多了,查看起來很不方便,怎么樣能夠實現分頁查詢呢? 背景2:表里有 4 條數據,我們只想要顯示第 2、3 條數據怎么辦呢? 2.2 實現規則 分頁原理:所謂分頁顯示,就是將數據…

第4章 程序段的反復執行4.2while語句P128練習題(題及答案)

&#xff08;&#xff08;1&#xff09;閱讀程序#include <bits/stdc.h> using namespace std; //湯永紅 int main(){int n,s0;cin >> n;while(n){s s * 10 n % 10;n / 10;}cout << s << endl;return 0; }分別輸入&#xff1a;0 1024 1234567890輸出…