嗨,朋友們!今天我來給大家分享超實(shí)用的大模型微調(diào)教程,哪怕你是小白,跟著做也能輕松上手哦,草侶蟲都能學(xué)會,所以大家趕緊收藏點(diǎn)贊關(guān)注呀!
咱們直接在 openAI 的 dashboard 里進(jìn)行可視化微調(diào),操作那是相當(dāng)簡單。雖說這教程有點(diǎn)長,但咱得先在簡單操作里把微調(diào)的關(guān)鍵搞清楚。
首先,來到 openAI 官網(wǎng),看看官方咋說微調(diào)的。官方講微調(diào)就 4 個(gè)步驟:一是準(zhǔn)備數(shù)據(jù)集,二是訓(xùn)練,三是評估測試效果,四是開始使用。聽起來挺簡單吧?但啥時(shí)候用微調(diào)呢?官方說了,先試試靠提示詞能不能解決問題,很多時(shí)候調(diào)整提示詞就行,因?yàn)榈崾驹~比微調(diào)結(jié)果方便多了,這有點(diǎn)勸退的意思哦。不過要是試了提示詞還不行,那之前試的提示詞也不浪費(fèi),用在微調(diào)模型上效果更好。
那微調(diào)能改善啥情況呢?像設(shè)定風(fēng)格,比如模仿誰說話、固定回答格式啥的。還有些難懂的,咱就重點(diǎn)理解這條:有些東西靠嘴說不清楚,但給例子展示結(jié)果就容易,就像讓模型理解網(wǎng)友幽默感,或者訓(xùn)練溫柔暖心的心理醫(yī)生,形容詞太虛說不明白,給它看很多相關(guān)例子讓它自己悟,這就是微調(diào)的厲害之處。而且微調(diào)里最重要的是先想好目標(biāo)和結(jié)果,沒考核標(biāo)準(zhǔn),做啥都可能白搭。
接著說給 AI 看啥示范數(shù)據(jù),格式是 jsonl 格式,看著暈別慌,其實(shí)就是一組組對話,一行就是一組,寫明希望啥輸入對應(yīng)啥輸出。比如我準(zhǔn)備訓(xùn)練一個(gè)偶爾會寫錯字拼錯詞的醫(yī)生,像 “左手用力或者變換成一定的姿勢是吳腕背部精疼,有時(shí)候睡覺疼醒了?!薄澳愫?,你說的情況可能是韌帶肌腱炎引起的啊,建議指導(dǎo)你注意休息,不要著涼服用這個(gè)片,祝你健康” 這樣的對話,就是我們期望模型達(dá)到的效果。這里面一條信息有 3 個(gè)角色,系統(tǒng)內(nèi)容(如 “你是一個(gè)偶爾會拼錯單詞的助手”,數(shù)據(jù)少更好寫上)、用戶輸入、助手回答。練習(xí)時(shí)可以網(wǎng)上找公開數(shù)據(jù)集或者按格式自己準(zhǔn)備,我也會給大家打包好哦。準(zhǔn)備數(shù)據(jù)集時(shí),openAI 提示至少 10 組示例,50 - 100 個(gè)效果更好,還建議分成訓(xùn)練和測試兩部分。
數(shù)據(jù)集好了就到 dashboard 微調(diào)。點(diǎn)擊左邊 fine tuning 微調(diào)再點(diǎn)創(chuàng)建。這里 base model 選基礎(chǔ)模型,比如 4.0 啥的,然后上傳訓(xùn)練數(shù)據(jù)(jsonl 文件),驗(yàn)證數(shù)據(jù)可傳可不傳。給模型起個(gè)名字,像我叫 tengsheji。種子能固定訓(xùn)練效果,相同種子和參數(shù)訓(xùn)練結(jié)果相同,不寫系統(tǒng)隨機(jī)生成。還有超參數(shù),batch size 批次大小,就像人學(xué)習(xí)聽完知識得總結(jié)更新參數(shù),它規(guī)定大模型看多少數(shù)據(jù)更新一次參數(shù),太大太小都不好,得選合適的;學(xué)習(xí)率呢,大模型找更優(yōu)解就像在山里找低谷,學(xué)習(xí)率決定步子邁多大,高了找不到更低點(diǎn),低了可能只找到局部更低點(diǎn),影響學(xué)習(xí)速度和穩(wěn)定性;訓(xùn)練輪數(shù)就是大模型看完整遍數(shù)據(jù)集算一輪,輪數(shù)太多會過擬合,像人學(xué)傻了一樣,問啥只按數(shù)據(jù)答,沒泛化能力。openAI 建議開始別指定參數(shù),用默認(rèn)值,不行再調(diào)整,訓(xùn)練是個(gè)反復(fù)調(diào)整檢驗(yàn)的過程。
點(diǎn)擊創(chuàng)建,很快就訓(xùn)練好了,有成功模型后就能去 Playground 測試,還能在外部通過 API 調(diào)用。好啦,這次簡單的大模型微調(diào)之旅就到這,記得點(diǎn)贊收藏關(guān)注哦,下次再見!