iT邦幫忙

2025 iThome 鐵人賽

DAY 12
0
生成式 AI

智慧旅遊顧問--結合 LLM 與 RAG 架構的台灣旅遊資訊助手系列 第 12

【Day12】訓練成果驗收-合併與儲存模型

  • 分享至 

  • xImage
  •  

經過昨天的訓練,AI導遊已經成功地從問答資料集中學習到了新知識。但此時的模型還不是一個完整的獨立個體,它只是一個基底模型加上LoRA適配器。

要讓這個模型能夠在沒有PEFT環境下獨立運行,需要對她做一個:權重合併。這個過程就像是將LoRA學到的新知識,永久地寫入到Gemma模型的核心權重中。

一、執行權重合併

我們會使用model.merge_and_unload()這個方法,它會自動完成LoRA權重與原始模型權重的合併,並釋放記憶體。

from peft import PeftModel
from transformers import AutoModelForCausalLM

# model 是PeftModel實例
model = model.merge_and_unload()

print("成功合併")

合併完成後,模型將不再需要PEFT函式庫來運行,成為一個可以直接使用的獨立模型。

二、儲存模型

最後將合併後的模型儲存到本地,使用model.save_pretrained()。這個儲存後的模型包含了所有微調後的權重。這不僅方便將模型部署到其他伺服器或裝置上,也讓分享訓練成果變得更簡單。

SAVE_PATH = "./gemma-travel"

# 儲存合併後的模型和 Tokenizer
model.save_pretrained(SAVE_PATH)
tokenizer.save_pretrained(SAVE_PATH)

print(f"已儲存")

上一篇
【Day11】模型訓練啟動-LoRA實戰
下一篇
【Day13】認識 Function Calling
系列文
智慧旅遊顧問--結合 LLM 與 RAG 架構的台灣旅遊資訊助手17
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言