模型概述
模型特點
模型能力
使用案例
🚀 Phi-4-mini-reasoning模型
Phi-4-mini-reasoning是一個輕量級的開源模型,基於合成數據構建,專注於高質量、富含推理的數據,並針對更高級的數學推理能力進行了微調。它支持128K的令牌上下文長度,適用於在內存或計算受限的環境以及有延遲要求的場景中解決多步驟、邏輯密集的數學問題。
🚀 快速開始
推理環境準備
Phi-4-mini-reasoning已集成在transformers
庫的4.51.3
版本中。可以使用以下命令驗證當前transformers
版本:
pip list | grep transformers
建議使用Python 3.8或3.10版本。所需的依賴包列表如下:
flash_attn==2.7.4.post1
torch==2.5.1
transformers==4.51.3
accelerate==1.3.0
推理示例
獲取Phi-4-mini-instruct模型檢查點後,可以使用以下示例代碼進行推理:
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
torch.random.manual_seed(0)
model_id = "microsoft/Phi-4-mini-reasoning"
model = AutoModelForCausalLM.from_pretrained(
model_id,
device_map="cuda",
torch_dtype="auto",
trust_remote_code=True,
)
tokenizer = AutoTokenizer.from_pretrained(model_id)
messages = [{
"role": "user",
"content": "How to solve 3*x^2+4*x+5=1?"
}]
inputs = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
return_dict=True,
return_tensors="pt",
)
outputs = model.generate(
**inputs.to(model.device),
max_new_tokens=32768,
temperature=0.8,
top_p=0.95,
do_sample=True,
)
outputs = tokenizer.batch_decode(outputs[:, inputs["input_ids"].shape[-1]:])
print(outputs[0])
✨ 主要特性
- 專注數學推理:Phi-4-mini-reasoning專為多步驟、邏輯密集的數學問題解決任務而設計,在內存/計算受限的環境和有延遲要求的場景中表現出色。
- 長上下文支持:支持128K令牌的上下文長度,能夠處理更復雜的問題。
- 高效推理:該模型在推理能力和效率之間取得了平衡,適用於教育應用、嵌入式輔導以及在邊緣或移動系統上的輕量級部署。
📦 安裝指南
依賴安裝
確保安裝了以下依賴包:
flash_attn==2.7.4.post1
torch==2.5.1
transformers==4.51.3
accelerate==1.3.0
可以使用以下命令進行安裝:
pip install flash_attn==2.7.4.post1 torch==2.5.1 transformers==4.51.3 accelerate==1.3.0
💻 使用示例
基礎用法
輸入格式
由於訓練數據的性質,Phi-4-mini-instruct模型最適合使用特定格式的提示。以下是兩種主要格式:
聊天格式
此格式用於一般對話和指令:
<|system|>Your name is Phi, an AI math expert developed by Microsoft.<|end|><|user|>How to solve 3*x^2+4*x+5=1?<|end|><|assistant|>
高級用法
在實際應用中,可以根據具體需求調整生成參數,如max_new_tokens
、temperature
和top_p
等,以獲得不同風格和長度的輸出。
📚 詳細文檔
模型概述
Phi-4-mini-reasoning是基於合成數據構建的輕量級開源模型,專注於高質量、富含推理的數據,並針對更高級的數學推理能力進行了微調。該模型屬於Phi-4模型家族,支持128K令牌的上下文長度。
預期用途
主要用例
Phi-4-mini-reasoning旨在解決內存/計算受限環境和有延遲要求場景下的多步驟、邏輯密集的數學問題。一些用例包括形式證明生成、符號計算、高級文字問題以及各種數學推理場景。這些模型在跨步驟保持上下文、應用結構化邏輯以及在需要深度分析思維的領域提供準確可靠的解決方案方面表現出色。
用例考慮因素
該模型僅針對數學推理進行了設計和測試,並非專門為所有下游用途而設計或評估。開發者在選擇用例時,應考慮語言模型的常見侷限性以及不同語言之間的性能差異,並在特定下游用例中使用之前,評估並減輕準確性、安全性和公平性方面的問題,特別是在高風險場景中。開發者應瞭解並遵守與其用例相關的適用法律法規(包括但不限於隱私、貿易合規法律等)。
發佈說明
本次發佈的Phi-4-mini-reasoning針對用戶反饋和市場對緊湊型推理模型的需求進行了優化。它是一個基於Transformer的緊湊型語言模型,針對數學推理進行了優化,旨在在計算或延遲受限的環境中提供高質量的逐步問題解決能力。該模型使用來自更強大模型(更大、更智能、更準確且更擅長遵循指令)的合成數學數據進行了微調,從而提高了推理性能。Phi-4-mini-reasoning在推理能力和效率之間取得了平衡,可能適用於教育應用、嵌入式輔導以及在邊緣或移動系統上的輕量級部署。 如果發現Phi-4-mini-reasoning存在關鍵問題,應通過MSRC研究人員門戶或secure@microsoft.com及時報告。
模型質量
為了瞭解模型的能力,將38億參數的Phi-4-mini-reasoning模型與一組模型在各種推理基準上進行了比較。模型質量的高級概述如下:
模型 | AIME | MATH-500 | GPQA Diamond |
---|---|---|---|
o1-mini* | 63.6 | 90.0 | 60.0 |
DeepSeek-R1-Distill-Qwen-7B | 53.3 | 91.4 | 49.5 |
DeepSeek-R1-Distill-Llama-8B | 43.3 | 86.9 | 47.3 |
Bespoke-Stratos-7B* | 20.0 | 82.0 | 37.8 |
OpenThinker-7B* | 31.3 | 83.0 | 42.4 |
Llama-3.2-3B-Instruct | 6.7 | 44.4 | 25.3 |
Phi-4-Mini (基礎模型, 38億) | 10.0 | 71.8 | 36.9 |
Phi-4-mini-reasoning (38億) | 57.5 | 94.6 | 52.0 |
總體而言,僅38億參數的模型在多語言理解和推理能力方面達到了與更大模型相似的水平。然而,由於其規模的限制,在某些任務上仍然存在侷限性。該模型沒有足夠的容量來存儲過多的事實知識,因此用戶可能會遇到事實錯誤的情況。不過,可以通過為Phi-4添加搜索引擎來解決這一問題,特別是在RAG設置下使用該模型時。
訓練
模型
- 架構:Phi-4-mini-reasoning與Phi-4-Mini具有相同的架構,擁有38億參數,是一個僅含解碼器的密集Transformer模型。與Phi-3.5-Mini相比,Phi-4-Mini的主要變化包括200K詞彙表、分組查詢注意力以及共享的輸入和輸出嵌入。
- 輸入:文本。最適合使用聊天格式的提示。
- 上下文長度:128K令牌
- GPU:128個H100-80G
- 訓練時間:2天
- 訓練數據:1500億令牌
- 輸出:生成的文本
- 日期:於2024年2月進行訓練
- 狀態:這是一個基於離線數據集訓練的靜態模型,公開可用數據的截止日期為2025年2月。
- 支持的語言:英語
- 發佈日期:2025年4月
訓練數據集
Phi-4-mini-reasoning的訓練數據僅由更強大、更先進的推理模型Deepseek-R1生成的合成數學內容組成。目標是從該模型中提取知識。這個合成數據集包含超過一百萬個不同難度級別的數學問題(從中學生到博士級別)。對於合成數據集中的每個問題,採樣了八個不同的解決方案(滾動),並僅保留了經驗證正確的解決方案,從而得到了約300億令牌的數學內容。該數據集集成了三個主要組件:
- 精心挑選的高質量公開可用數學問題以及用於訓練基礎Phi-4-Mini模型的部分SFT(監督微調)數據。
- 由Deepseek-R1模型生成的大量合成數學數據,專門用於高質量的監督微調和模型蒸餾。
- 一組平衡的正確和錯誤答案,用於構建偏好數據,旨在通過學習更有效的推理軌跡來增強Phi-4-mini-reasoning的推理能力。
軟件
硬件
請注意,默認情況下,Phi-4-mini-reasoning模型使用閃存注意力,這需要特定類型的GPU硬件才能運行。我們在以下GPU類型上進行了測試:
- NVIDIA A100
- NVIDIA H100
如果要在以下GPU上運行模型:
- NVIDIA V100或更早一代的GPU:在調用
AutoModelForCausalLM.from_pretrained()
時使用attn_implementation="eager"
。
安全評估和紅隊測試
Phi-4系列模型採用了強大的安全後訓練方法。該方法利用了各種開源和內部生成的數據集。用於進行安全對齊的總體技術是結合了SFT、DPO(直接偏好優化)和RLHF(基於人類反饋的強化學習)方法,利用了人類標記和合成的英語數據集,包括專注於有用性和無害性的公開可用數據集,以及針對多個安全類別的各種問題和答案。
Phi-4-Mini-Reasoning是根據微軟的負責任AI原則開發的。使用Azure AI Foundry的風險和安全評估框架評估了模型響應中的潛在安全風險,重點關注有害內容、直接越獄和模型的根基性。Phi-4-Mini-Reasoning模型卡片包含了關於我們的安全方法和負責任AI考慮因素的額外信息,開發者在使用該模型時應予以瞭解。
負責任AI考慮因素
與其他語言模型一樣,Phi系列模型可能會表現出不公平、不可靠或冒犯性的行為。需要注意的一些限制行為包括:
- 服務質量:Phi模型主要在英語文本和一些額外的多語言文本上進行訓練。非英語語言的性能會較差,並且非英語語言之間也會存在性能差異。訓練數據中代表性較少的英語變體可能比標準美式英語的性能更差。
- 多語言性能和安全差距:我們認為使語言模型在不同語言中更廣泛可用很重要,但Phi 4模型在多語言發佈中仍然存在常見的挑戰。與任何大語言模型的部署一樣,開發者應更好地針對其語言和文化背景測試性能或安全差距,並通過額外的微調和平適當的保障措施對模型進行定製。
- 傷害表示和刻板印象的延續:這些模型可能會過度或不足地代表某些人群,抹去某些群體的代表性,或強化貶低性或負面的刻板印象。儘管進行了安全後訓練,但由於不同群體的代表性水平不同、文化背景不同或訓練數據中反映現實世界模式和社會偏見的負面刻板印象示例的普遍性,這些限制可能仍然存在。
- 不適當或冒犯性內容:這些模型可能會產生其他類型的不適當或冒犯性內容,在沒有針對具體情況進行額外緩解措施的情況下,可能不適合在敏感環境中部署。
- 信息可靠性:語言模型可能會生成無意義的內容或編造聽起來合理但不準確或過時的內容。
- 選舉信息可靠性:該模型在回答與選舉關鍵查詢時的缺陷率較高,這可能導致呈現不正確或無權威性的選舉關鍵信息。我們正在努力提高模型在這方面的性能。用戶應向所在地區的選舉機構核實與選舉相關的信息。
- 代碼範圍有限:大多數Phi 4訓練數據基於Python,並使用常見的包,如“typing, math, random, collections, datetime, itertools”。如果模型生成使用其他包或其他語言的Python腳本,強烈建議用戶手動驗證所有API的使用。
- 長對話:與其他模型一樣,Phi 4模型在英語和非英語語言的非常長的聊天會話中,有時可能會生成重複、無用或不一致的響應。鼓勵開發者採取適當的緩解措施,如限制對話輪數以應對可能的對話漂移。
開發者應應用負責任AI的最佳實踐,包括映射、衡量和減輕與其特定用例以及語言和文化背景相關的風險。Phi 4系列模型是通用模型。當開發者計劃將這些模型用於特定用例時,鼓勵他們針對用例對模型進行微調,並將模型作為具有特定語言保障措施的更廣泛AI系統的一部分加以利用。需要考慮的重要領域包括:
- 分配:在沒有進一步評估和額外去偏技術的情況下,模型可能不適用於可能對法律地位、資源分配或生活機會(如住房、就業、信貸等)產生重大影響的場景。
- 高風險場景:開發者應評估在高風險場景中使用模型的適用性,在這些場景中,不公平、不可靠或冒犯性的輸出可能會造成極大的代價或導致傷害。這包括在準確性和可靠性至關重要的敏感或專業領域提供建議(如法律或健康建議)。應根據部署上下文在應用層面實施額外的保障措施。
- 錯誤信息:模型可能會產生不準確的信息。開發者應遵循透明度最佳實踐,並告知最終用戶他們正在與AI系統進行交互。在應用層面,開發者可以構建反饋機制和管道,將響應與特定用例的上下文信息相結合,這種技術稱為檢索增強生成(RAG)。
- 有害內容生成:開發者應根據上下文評估輸出,並使用適用於其用例的可用安全分類器或自定義解決方案。
- 濫用:可能存在其他形式的濫用,如欺詐、垃圾郵件或惡意軟件生產,開發者應確保其應用不違反適用的法律法規。
🔧 技術細節
基準測試方法
我們在此簡要介紹一下方法,特別是我們如何考慮優化提示。在理想情況下,我們在基準測試中永遠不會更改任何提示,以確保在比較不同模型時始終進行公平比較。實際上,這是我們的默認方法,並且在我們迄今為止運行的絕大多數模型中都是如此。對於所有基準測試,我們考慮使用相同的生成配置,如最大序列長度(32768)和相同的溫度,以進行公平比較。
基準測試數據集
我們使用三個最流行的數學基準對模型進行評估,這些基準是最強推理模型相互競爭的地方。具體如下:
- Math-500:該基準由500個具有挑戰性的數學問題組成,旨在測試模型執行復雜數學推理和問題解決的能力。
- AIME 2024:美國邀請賽數學考試(AIME)是一項備受推崇的數學競賽,包含一系列難題,旨在評估高級數學技能和邏輯推理能力。
- GPQA Diamond:研究生水平的谷歌證明問答(GPQA)Diamond基準專注於評估模型理解和解決各種數學問題的能力,包括直接計算和更復雜的問題解決任務。
📄 許可證
該模型根據MIT許可證進行許可。
商標
本項目可能包含項目、產品或服務的商標或標誌。對微軟商標或標誌的授權使用需遵循微軟商標和品牌指南。在本項目的修改版本中使用微軟商標或標誌不得造成混淆或暗示微軟的贊助。任何第三方商標或標誌的使用需遵循這些第三方的政策。



