免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

SFT監(jiān)督微調(diào)實戰(zhàn):從數(shù)據(jù)構(gòu)建到LoRA訓(xùn)練踩坑全解

SFT監(jiān)督微調(diào)實戰(zhàn):從數(shù)據(jù)構(gòu)建到LoRA訓(xùn)練踩坑全解 在本地部署過幾個開源基座模型之后很多程序員的感受其實高度一致模型確實能跑起來但回答總不如官方Demo里那么“聽話”。你問它東它給你續(xù)寫西你要它按JSON格式輸出它偏要自由發(fā)揮加一段解釋。這個差距十有八九出在監(jiān)督微調(diào)SFT這一環(huán)上。SFT全稱是Supervised Fine-Tuning簡單說就是拿一批人工標注好的“指令-回答”數(shù)據(jù)對預(yù)訓(xùn)練基座模型做有監(jiān)督的再訓(xùn)練讓模型學(xué)會人類期望的交互方式。這篇內(nèi)容我會把SFT的原理、數(shù)據(jù)構(gòu)造、超參數(shù)、訓(xùn)練配置、實操流程和踩坑記錄一次性講透。它不是泛泛的科普而是對著能做事的實踐總結(jié)寫下來之前已經(jīng)在多臺機器上反復(fù)驗證過建議直接存下來備查。1. 先搞清楚SFT在整條鏈路里的位置1.1 基座模型只會“續(xù)寫”不會“干活”很多人第一次玩開源基座模型時都會有這個困惑模型明明很大常識也很豐富為什么跟它對話就特別別扭這是因為基座模型在預(yù)訓(xùn)練階段的唯一目標函數(shù)是“下一個詞預(yù)測”。它學(xué)到的本質(zhì)是詞與詞之間的統(tǒng)計關(guān)聯(lián)你輸入一段文本它就按照統(tǒng)計規(guī)律往后接最可能的詞而不是“理解你的問題然后給出答案”。拿生活化的例子來說基座模型像一個博覽群書但沒參加過考試的學(xué)生。你問他一道題他憑記憶和語感展開長篇大論卻不知道答案應(yīng)該是一句話、一段代碼還是一個JSON對象。他不知道考試有固定格式、有標準答案、有答題邊界。這些“約定俗成”的東西預(yù)訓(xùn)練階段沒有專門教過只能靠SFT來補課。這種能力差距在實際部署中非常致命。比如你打算做一個代碼助手希望模型根據(jù)需求生成Python腳本基座模型可能會輸出一大段自然語言解釋再夾幾行偽代碼甚至把問題換個說法又重復(fù)一遍。而經(jīng)過SFT的模型才知道用戶問代碼時應(yīng)該先給代碼塊再給簡要說明。所以SFT解決的是“形式對齊”和“指令跟隨”問題不是知識注入問題。1.2 SFT、預(yù)訓(xùn)練和RLHF的分工關(guān)系大模型從零到可用的鏈路一般可以拆成三個階段預(yù)訓(xùn)練、SFT、偏好對齊常見手段是RLHF/DPO。這三者分工完全不同。預(yù)訓(xùn)練負責(zé)往里灌知識讓模型具備語言能力、事實記憶和推理基礎(chǔ)這一步成本最高通常需要幾千億token和成百上千張顯卡。SFT負責(zé)教模型“怎么把知識組織成用戶想要的樣子”用幾千到幾萬條高質(zhì)量的指令數(shù)據(jù)就能完成任務(wù)。偏好對齊則更進一步它解決的是“模型知道答案是什么但不一定知道哪個答案更符合人類品味”的問題。SFT給的是標準答案就像教科書上的參考答案偏好對齊給的是一堆答案排序就像閱卷老師告訴你“這個回答比那個更流暢、更有用”。SFT是基礎(chǔ)沒有好的SFT模型偏好對齊做起來會非常吃力因為模型連基本的指令格式都沒學(xué)好。我見過不少團隊為了省事跳過SFT直接嘗試用偏好優(yōu)化方法調(diào)基座模型結(jié)果模型學(xué)會了說漂亮話但依然不會嚴格按要求辦事。原因很簡單排序?qū)W習(xí)只能調(diào)整回答風(fēng)格的傾向無法補上“格式不對齊就是聽不懂人話”這個根本短板。SFT是讓模型“聽得懂人話”的最低成本方案。1.3 為什么SFT數(shù)據(jù)不多卻能改變模型行為一個值得思考的問題預(yù)訓(xùn)練看了幾千億token為什么SFT只用幾萬條數(shù)據(jù)就能明顯改變模型行為這里的關(guān)鍵在于SFT改變的不是知識量而是“概率分布的輸出模式”。模型在預(yù)訓(xùn)練階段其實已經(jīng)見過大量問答類文本它具備回答問題的潛力只是不知道怎么判斷“當前這是在問我問題我應(yīng)該認真回答而不是繼續(xù)編故事”。SFT相當于給模型做了行為示范看到指令停止發(fā)散按格式輸出。因為預(yù)訓(xùn)練已經(jīng)給了它足夠的語言能力和知識儲備SFT只需要“撥動開關(guān)”把回答模式從續(xù)寫切換到指令跟隨。這也是為什么SFT數(shù)據(jù)不需要海量但必須高質(zhì)量、格式統(tǒng)一、覆蓋充分。理解了這一點就不會盲目堆數(shù)據(jù)量了。2. SFT數(shù)據(jù)工程成敗的關(guān)鍵不在模型而在數(shù)據(jù)2.1 數(shù)據(jù)長什么樣三種主流格式必須掌握SFT數(shù)據(jù)的組織方式目前大體上有三種主流格式。第一種是“instruction/input/output”三段式適合任務(wù)型微調(diào)一條樣本就是一個獨立問題可以附帶輸入內(nèi)容。第二種是messages對話格式按角色區(qū)分user和assistant消息適合訓(xùn)練多輪對話能力。第三種是ShareGPT風(fēng)格用conversations數(shù)組保存完整對話歷史很多開源訓(xùn)練框架默認用這種格式。我在實際項目中習(xí)慣把數(shù)據(jù)統(tǒng)一轉(zhuǎn)成對話格式因為即便單輪任務(wù)也可以看成一輪對話。統(tǒng)一格式的好處是方便后續(xù)增加多輪樣本模型在推理時也容易保持上下文連貫。這里有個新手經(jīng)常踩的坑不同格式混在一起喂給模型模型會學(xué)到混亂的交互預(yù)期。今天學(xué)的是“首輪直接答”明天學(xué)的是“設(shè)身處地寒暄兩句”最后表現(xiàn)就是時靈時不靈。舉個例子一條標準的對話格式樣本大概長這樣{ conversations: [ {role: system, content: 你是一個專業(yè)的Python開發(fā)助手。}, {role: user, content: 寫一個函數(shù)輸入一個整數(shù)列表返回所有偶數(shù)的平方。要求用列表推導(dǎo)式。}, {role: assistant, content: python\ndef square_evens(nums):\n return [x*x for x in nums if x % 2 0]\n\n\n這個實現(xiàn)用列表推導(dǎo)式一次完成過濾和映射兩個操作時間復(fù)雜度為O(n)。} ] }這個格式里system字段很重要它定義了模型的人設(shè)和行為約束。很多項目為了省事不寫system模型也能跑但泛化性和穩(wěn)定性會差很多。我通常會讓每條樣本都帶system并且準備一個默認的system兜底避免推理時傳空值導(dǎo)致模板錯亂。2.2 數(shù)據(jù)從哪來開源數(shù)據(jù)集、日志清洗與模型構(gòu)造SFT數(shù)據(jù)來源大致有三條路。第一條是直接用社區(qū)已有的開源SFT數(shù)據(jù)集適合快速驗證流程。但這類數(shù)據(jù)集往往質(zhì)量參差不齊可能有回答錯誤、格式混亂、重復(fù)過高等問題直接拿來訓(xùn)練模型很容易學(xué)到臟模式。第二條是從自己業(yè)務(wù)里撈真實數(shù)據(jù)這是最推薦的方式。比如你做客服機器人就把歷史工單里優(yōu)質(zhì)的“用戶問題-客服回答”對挑出來清洗。真實業(yè)務(wù)數(shù)據(jù)與目標場景高度匹配微調(diào)效果通常是最好的。第三條是用強模型構(gòu)造數(shù)據(jù)思路是用能力更強的模型批量生成問答對再人工或者自動篩選。這種方式能快速擴充數(shù)據(jù)規(guī)模但有個隱患強模型自己可能也會犯錯錯誤會原樣傳給學(xué)生模型。我見過有團隊用這種方式一天造了幾萬條數(shù)據(jù)訓(xùn)完模型回答流暢但事實錯誤率很高最后排查才發(fā)現(xiàn)數(shù)據(jù)源頭就錯了。所以用強模型造數(shù)據(jù)抽樣審核環(huán)節(jié)必須跟上。還有一個值得注意的點數(shù)據(jù)構(gòu)造時要考慮分布。如果你做的助手要覆蓋技術(shù)問答、閑聊、拒答三類場景數(shù)據(jù)比例就要和實際使用場景接近。我見過有項目把閑聊數(shù)據(jù)堆到80%結(jié)果模型變得很油滑正事不愛干了。數(shù)據(jù)分布偏了就改不回來重訓(xùn)成本非常昂貴。2.3 清洗與質(zhì)量控制這些細節(jié)決定微調(diào)上限數(shù)據(jù)清洗是SFT里最枯燥但最重要的一環(huán)。我一般按下面的順序處理先做全局去重重復(fù)樣本會讓模型對特定句式過擬合訓(xùn)練時看起來loss很低實際泛化很差。然后做長度過濾過短的樣本沒有學(xué)習(xí)價值過長的樣本會拖慢訓(xùn)練還要處理超過max length的截斷問題。接著做格式標準化統(tǒng)一標點符號、統(tǒng)一換行、統(tǒng)一代碼塊的標記語言讓模型學(xué)到干凈的模式。更關(guān)鍵的是內(nèi)容校驗。如果數(shù)據(jù)里有明顯的錯誤答案模型會當作正確答案來學(xué)。這塊我建議人力抽檢加規(guī)則過濾雙管齊下。比如代碼類數(shù)據(jù)可以嘗試直接執(zhí)行樣本來驗證正確性知識類數(shù)據(jù)可以用關(guān)鍵詞匹配或交叉驗證來做粗篩。用腳本刪掉明顯答非所問的樣本比多訓(xùn)幾百條數(shù)據(jù)有用得多。另外提醒一下編碼問題中文數(shù)據(jù)最容易在清洗時踩這個坑。統(tǒng)一轉(zhuǎn)成UTF-8去掉不可見字符和亂七八糟的空格檢查有沒有打斷JSON解析的轉(zhuǎn)義符。這些小事在幾百條數(shù)據(jù)時看不出問題數(shù)據(jù)量到幾萬條時任何一個臟字符都可能讓訓(xùn)練中斷或者模型輸出亂碼。2.4 用多少數(shù)據(jù)最合適不是多多益善SFT數(shù)據(jù)量沒有一個固定標準但可以給一個經(jīng)驗區(qū)間場景單一的任務(wù)型微調(diào)幾千條高質(zhì)量樣本就夠通用助手的對話能力微調(diào)一到三萬條比較合適再往上增加數(shù)據(jù)收益會明顯遞減。原因前面說過SFT主要是行為對齊模型不需要通過SFT學(xué)海量新知識它只需要足夠多的示范來理解你的指令格式和輸出偏好。我實操下來的體會是數(shù)據(jù)質(zhì)量每提升一檔對最終效果的影響遠大于數(shù)據(jù)量翻倍。同樣一萬條數(shù)據(jù)粗洗和精洗之后的模型效果完全不是一個級別。寧可只有五千條高質(zhì)量數(shù)據(jù)也別硬湊兩萬條垃圾數(shù)據(jù)。額外的數(shù)據(jù)有時反而會引入噪聲讓模型在部分場景下的表現(xiàn)倒退。還有一個容易被忽略的事情驗證集的劃分。SFT不是用完全部數(shù)據(jù)就萬事大吉要留出一部分樣本做驗證。我在每次訓(xùn)練前都固定切出5%-10%的數(shù)據(jù)做驗證集訓(xùn)練過程中持續(xù)觀察驗證集loss。如果訓(xùn)練集loss在降驗證集loss在漲那就說明過擬合了及時停掉可以省下大量時間。3. 訓(xùn)練配置與超參數(shù)把SFT跑穩(wěn)的核心3.1 全參微調(diào)還是LoRA看條件選方案SFT的實現(xiàn)方式主要分成全參微調(diào)和參數(shù)高效微調(diào)兩大類LoRA是后者的典型代表。全參微調(diào)是讓基座模型的全部參數(shù)都參與更新效果上限最高但顯存和算力要求也最狠。以7B模型為例全參微調(diào)用AdamW優(yōu)化器動輒需要60GB以上的顯存單張消費級顯卡基本做不了。LoRA則是凍結(jié)原始權(quán)重只訓(xùn)練注入的低秩矩陣顯存占用大幅下降7B模型的LoRA訓(xùn)練在24GB顯存下就能跑起來。從效果角度說如果數(shù)據(jù)量足夠大、任務(wù)足夠復(fù)雜全參微調(diào)確實能學(xué)到更多細微變化。但對于大多數(shù)業(yè)務(wù)場景LoRA的效果已經(jīng)非常接近全參微調(diào)而且資源消耗少一個量級。我個人的選擇標準是24GB以下顯存無腦用LoRA能上全參微調(diào)的資源優(yōu)先把多余算力投給數(shù)據(jù)清洗和評估而不是一味追求全參更新。LoRA還有一個額外優(yōu)勢就是多個adapter可以共用一個基座模型不同任務(wù)切換非常方便。不過LoRA有個小坑如果基座模型本身難以通過低秩更新達到理想效果比如領(lǐng)域知識嚴重不足LoRA的表現(xiàn)就會比全參微調(diào)差一截。這種情況你得先評估是“不會聽指令”還是“不懂這個領(lǐng)域”前者LoRA能解決后者可能需要考慮增量預(yù)訓(xùn)練或者換更強的基座。3.2 關(guān)鍵超參數(shù)選擇與背后的邏輯SFT常用的超參數(shù)并不復(fù)雜但每個參數(shù)的取值范圍和背后邏輯一定要清楚。學(xué)習(xí)率是第一個要小心設(shè)置的參數(shù)。全參微調(diào)一般用1e-5到2e-5LoRA則可以用到1e-4到2e-4。因為LoRA只更新很少的參數(shù)學(xué)習(xí)率可以步子大一點。如果學(xué)習(xí)率設(shè)得太高模型會快速忘掉預(yù)訓(xùn)練學(xué)到的知識表現(xiàn)出來就是loss降低很快但輸出開始胡言亂語。訓(xùn)練輪數(shù)同樣需要克制。高質(zhì)量SFT數(shù)據(jù)集2到4個epoch是比較穩(wěn)的范圍。數(shù)據(jù)量很大時甚至1個epoch就夠了。這里有個常見的認知誤區(qū)多訓(xùn)幾輪不一定是好事。模型反復(fù)看過同一批樣本后會對訓(xùn)練集的表達方式過度擬合導(dǎo)致泛化能力下降。我在訓(xùn)練時會同時盯著訓(xùn)練loss和驗證loss一旦驗證loss開始回升就立即停止通常能比固定epoch訓(xùn)練得到更好的結(jié)果。批大小和梯度累積對SFT也很關(guān)鍵。因為顯存限制單卡一般只能放很小batch但batch太小會導(dǎo)致梯度噪聲大、訓(xùn)練不穩(wěn)定。解決辦法是設(shè)置一個較小的per_device_batch_size然后用梯度累積湊到等效batch size。比如per_device_batch_size1gradient_accumulation_steps16等效batch size就是16。我習(xí)慣把等效batch size控制在32到64之間既穩(wěn)定又不會太慢。權(quán)重衰減一般設(shè)為0.01warmup ratio設(shè)0.03左右這些是經(jīng)驗值大多數(shù)場景直接照用不會出錯。學(xué)習(xí)率調(diào)度器推薦cosine它在訓(xùn)練末期能把學(xué)習(xí)率平滑降到很低有助于收斂到更好的局部最優(yōu)。3.3 LoRA的rank、alpha和target_modules怎么定LoRA的rank是低秩矩陣的維度直接影響可訓(xùn)練參數(shù)量和表達能力。常見的實踐值是8、16、32。rank太小模型學(xué)不到足夠復(fù)雜的映射rank太大訓(xùn)練參數(shù)變多但收益不一定成比例提升。我通常先用16跑一個小實驗觀察效果后再決定要不要加大。alpha是縮放系數(shù)一般設(shè)置為rank的兩倍比如rank16時alpha32。這個比例在大多數(shù)情況下表現(xiàn)良好。target_modules的選擇是個容易被忽視的細節(jié)。在Transformer結(jié)構(gòu)里L(fēng)oRA可以注入到自注意力層的q/k/v/o投影矩陣也可以注入到前饋網(wǎng)絡(luò)的gate/up/down投影。我測試下來同時注入注意力模塊和前饋模塊效果比只注入注意力要好尤其在做中文指令跟隨任務(wù)時。原因是前饋網(wǎng)絡(luò)承擔(dān)了大量知識記憶的功能通過低秩更新微調(diào)這部分能讓模型更快適應(yīng)訓(xùn)練數(shù)據(jù)里出現(xiàn)的表達習(xí)慣。還有兩個細節(jié)值得提。第一bias參數(shù)通常設(shè)成not update保持和基座模型一致減少訓(xùn)練參數(shù)總量。第二lora_dropout建議設(shè)置0.05到0.1防止過擬合但如果驗證集表現(xiàn)正常dropout設(shè)小一點也能提升收斂速度這個可以微調(diào)。3.4 顯存與訓(xùn)練穩(wěn)定性配置跑SFT之前先想清楚兩個問題用不用梯度檢查點用不用混合精度。梯度檢查點是個顯存換速度的手段開啟后顯存占用可以降低大約30%-40%代價是訓(xùn)練速度變慢。對7B模型加LoRA的場景我建議開啟它因為顯存往往比時間更緊張?;旌暇确矫嬗ミ_較新的卡建議直接用bf16它的動態(tài)范圍和穩(wěn)定性都優(yōu)于fp16不容易出現(xiàn)loss溢出為NaN的問題。老顯卡只支持fp16時記得加上loss scale策略并持續(xù)監(jiān)控訓(xùn)練日志。序列長度max seq length是另一個需要仔細權(quán)衡的配置。它決定模型能看到多長的上下文。設(shè)得太短長對話會被截斷模型學(xué)不到完整的依賴關(guān)系設(shè)得太長顯存占用隨長度線性增長訓(xùn)練速度也會下降。我建議先統(tǒng)計一下訓(xùn)練數(shù)據(jù)中最長的樣本長度然后設(shè)定為覆蓋80%-90%樣本的長度值剩下的長樣本做截斷處理這樣性價比最高。還有兩個工程層面的配置容易出問題。一個是保存間隔建議同時按“步數(shù)”和“時間”兩個維度設(shè)置長時間訓(xùn)練時至少每小時能看到一個可用的checkpoint避免意外中斷后白白浪費時間。另一個是日志打印頻率打開日志打印每10步打一次loss監(jiān)控文本生成。因為有時候loss很漂亮實際生成的文本已經(jīng)完全崩壞只看數(shù)字發(fā)現(xiàn)不了問題。4. 完整實操從原始問答到微調(diào)上線4.1 環(huán)境準備與最低硬件要求實操第一步是準備環(huán)境。我的建議是先建一個獨立的Python環(huán)境避免依賴沖突。核心依賴就是深度學(xué)習(xí)框架、模型加載庫、數(shù)據(jù)集庫和LoRA庫這幾樣就能跑通整個流程。GPU方面如果你想微調(diào)7B量級的開源基座模型24GB顯存是甜點位用LoRA加梯度檢查點可以比較舒服地跑起來。如果顯存只有16GB可以通過4bit量化加載基座模型仍然能完成LoRA訓(xùn)練只是量化后訓(xùn)練精度略有損失。這里有個建議第一次跑通全流程時不要直接上大模型。先用幾億參數(shù)量級的小模型跑通數(shù)據(jù)加載、訓(xùn)練、保存、推理的閉環(huán)再換成目標模型。小模型調(diào)試成本低跑完一個epoch只需幾分鐘任何代碼問題都能快速暴露。我每次接到新任務(wù)都先用小模型驗證數(shù)據(jù)和代碼確認無誤后再換大模型訓(xùn)練這套流程幫我省下了大量調(diào)試時間?;P瓦x擇的核心原則是中英文、代碼、數(shù)學(xué)能力匹配你的目標場景且盡量選擇指令跟隨能力已經(jīng)不錯的版本。如果底子太差SFT要補的課太多效果必然受限。4.2 數(shù)據(jù)格式轉(zhuǎn)換腳本不管原始數(shù)據(jù)是Excel、JSON還是數(shù)據(jù)庫導(dǎo)出的CSV第一步都要統(tǒng)一轉(zhuǎn)成訓(xùn)練框架能讀入的格式。下面這個腳本可以把簡單的“問題-答案”列表轉(zhuǎn)成對話格式的JSONL文件import json # 原始數(shù)據(jù)假設(shè)每條是 {question: ..., answer: ...} raw_data [ { question: 什么是列表推導(dǎo)式, answer: 列表推導(dǎo)式是Python中一種簡潔地創(chuàng)建列表的語法格式為 [表達式 for 元素 in 可迭代對象 if 條件]。 }, # 更多樣本... ] SYSTEM_PROMPT 你是一個專業(yè)的中文技術(shù)助手請用簡潔準確的語言回答用戶的問題。 def convert_to_sharegpt(item): return { conversations: [ {role: system, content: SYSTEM_PROMPT}, {role: user, content: item[question]}, {role: assistant, content: item[answer]}, ] } with open(sft_train.jsonl, w, encodingutf-8) as f: for item in raw_data: f.write(json.dumps(convert_to_sharegpt(item), ensure_asciiFalse) \n) print(f轉(zhuǎn)換完成共 {len(raw_data)} 條樣本)轉(zhuǎn)換腳本的核心邏輯就是把每條樣本包成system、user、assistant三段。有人問system每次都要寫嗎我的建議是默認都寫哪怕內(nèi)容一樣。這樣模型在訓(xùn)練中會穩(wěn)定學(xué)習(xí)到“先讀人設(shè)再看問題”的行為模式。另外寫入文件時一定加ensure_asciiFalse否則中文會被轉(zhuǎn)成\uXXXX的Unicode轉(zhuǎn)義序列可讀性極差后續(xù)檢查數(shù)據(jù)非常痛苦。4.3 訓(xùn)練腳本與關(guān)鍵配置數(shù)據(jù)準備好之后訓(xùn)練腳本的核心部分如下。這個腳本以加載基座模型為基礎(chǔ)套上LoRA配置然后通過訓(xùn)練參數(shù)控制訓(xùn)練過程from transformers import AutoModelForCausalLM, AutoTokenizer, TrainingArguments, Trainer from peft import LoraConfig, get_peft_model, prepare_model_for_kbit_training from datasets import load_dataset # 1. 加載基座模型和tokenizer # base_model_path 換成你手中的基座模型路徑 model AutoModelForCausalLM.from_pretrained( base_model_path, torch_dtypebf16, device_mapauto, ) tokenizer AutoTokenizer.from_pretrained(base_model_path) # 2. 設(shè)置pad token。如果tokenizer沒有pad token用eos代替 if tokenizer.pad_token is None: tokenizer.pad_token tokenizer.eos_token model.config.pad_token_id tokenizer.eos_token_id # 3. 配置LoRA lora_config LoraConfig( r16, lora_alpha32, target_modules[ q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj, ], lora_dropout0.05, biasnone, task_typeCAUSAL_LM, ) model get_peft_model(model, lora_config) model.print_trainable_parameters() # 打印可訓(xùn)練參數(shù)量 # 4. 定義訓(xùn)練參數(shù) training_args TrainingArguments( output_dir./sft_checkpoints, per_device_train_batch_size1, gradient_accumulation_steps16, learning_rate1e-4, num_train_epochs3, logging_steps10, save_steps200, save_total_limit3, bf16True, gradient_checkpointingTrue, optimadamw_torch, lr_scheduler_typecosine, warmup_ratio0.03, weight_decay0.01, report_tonone, ) # 5. 加載數(shù)據(jù)集并按模板格式處理 dataset load_dataset(json, data_filessft_train.jsonl, splittrain) def format_chat(example): # 把conversations拼成模型需要的模板文本 # 這里用簡單的拼接方式實際項目中建議使用tokenizer.apply_chat_template messages example[conversations] text for msg in messages: role msg[role] content msg[content] if role system: text f系統(tǒng){content}\n elif role user: text f用戶{content}\n else: text f助手{content}\n text 助手 return {text: text} tokenized_dataset dataset.map( lambda x: tokenizer( format_chat(x)[text], truncationTrue, max_length2048, paddingFalse, ), remove_columnsdataset.column_names, ) # 6. 創(chuàng)建Trainer并開始訓(xùn)練 trainer Trainer( modelmodel, argstraining_args, train_datasettokenized_dataset, tokenizertokenizer, ) trainer.train()這套配置有幾個數(shù)值值得解釋一下。per_device_train_batch_size1配gradient_accumulation_steps16的組合是為了在24GB顯存下跑7B模型的同時保持batch size不至過小。學(xué)習(xí)率1e-4是LoRA的常見起點如果你發(fā)現(xiàn)訓(xùn)練早期loss出現(xiàn)明顯波動可以降到5e-5繼續(xù)試。max_length設(shè)2048是因為大多數(shù)SFT樣本并不需要那么長的上下文這個長度在顯存和表達能力之間比較均衡。另外訓(xùn)練時打印可訓(xùn)練參數(shù)量是一個好習(xí)慣。一個7B模型的LoRA訓(xùn)練可訓(xùn)練參數(shù)通常只在幾千萬到一億左右占比不到2%??吹竭@個數(shù)字你就明白為什么LoRA這么快了。4.4 推理驗證與adapter合并訓(xùn)練完成后LoRA的權(quán)重是單獨保存的并不會直接寫回基座模型。推理之前需要先加載adapter驗證效果。加載方式有兩種一種是直接生成適合快速驗證另一種是把adapter合并回基座模型生成一個新模型適合部署上線。from peft import PeftModel # 加載基座模型 base_model AutoModelForCausalLM.from_pretrained( base_model_path, torch_dtypebf16, device_mapauto, ) tokenizer AutoTokenizer.from_pretrained(base_model_path) if tokenizer.pad_token is None: tokenizer.pad_token tokenizer.eos_token # 加載訓(xùn)練好的LoRA adapter model PeftModel.from_pretrained(base_model, ./sft_checkpoints/checkpoint-600) model.eval() # 合并adapter到基座模型部署時推薦 merged_model model.merge_and_unload() merged_model.save_pretrained(merged_model) tokenizer.save_pretrained(merged_model)合并這一步值得多說兩點。第一合并后的模型體積和基座模型一樣大但推理時不再需要額外的adapter管理可以直接用常規(guī)方式加載和部署。如果你用的是vLLM這類推理框架合并后的模型兼容性更好。第二合并操作會修改全部權(quán)重所以合并前一定要把原始基座模型備份好。有一次我誤操作直接覆蓋了原始權(quán)重只能重新下載模型那個下載時間足夠?qū)懸黄虏┛土恕r炞C模型效果時我建議同時準備三組測試用例第一組是訓(xùn)練數(shù)據(jù)里沒見過的類似題目看模型泛化能力第二組是訓(xùn)練數(shù)據(jù)里出現(xiàn)過的原題看模型記住了沒有第三組是稍微挑戰(zhàn)指令格式的用例比如要求它用表格輸出、用特定語氣回答看它是不是真的理解了指令跟隨。5. 常見問題與排查技巧實錄5.1 Loss降了模型反而變傻了這個現(xiàn)象出現(xiàn)過太多次了。訓(xùn)練日志上loss一路下降看起來非常健康結(jié)果拿出去一測模型回答質(zhì)量反而比微調(diào)前更差。遇到這種情況第一個懷疑對象就是數(shù)據(jù)質(zhì)量。SFT模型會把訓(xùn)練數(shù)據(jù)中的錯誤、噪聲和格式混亂原樣學(xué)進去。如果loss降得很快說明模型記性好把臟數(shù)據(jù)也記住了。第二個懷疑對象是數(shù)據(jù)分布。比如訓(xùn)練數(shù)據(jù)里80%都是“知識問答”20%是“代碼生成”模型自然會偏向知識問答的輸出風(fēng)格代碼能力反而不升反降。檢查一下訓(xùn)練數(shù)據(jù)的類別占比把比例往目標場景調(diào)整往往是這一類問題最簡單的解決辦法。第三個原因可能是驗證集劃分不合適。如果你留出的驗證集和訓(xùn)練集高度相似驗證loss會一直很樂觀等到真正上線面對新數(shù)據(jù)時才暴露問題。我建議驗證集盡量和線上場景保持一致而不是隨機抽樣。5.2 災(zāi)難性遺忘怎么控制災(zāi)難性遺忘是SFT最頭疼的問題之一表現(xiàn)是微調(diào)后模型對目標場景表現(xiàn)很好但通用能力明顯倒退比如數(shù)學(xué)變差、常識錯誤增多。根本原因在于SFT訓(xùn)練數(shù)據(jù)分布和預(yù)訓(xùn)練數(shù)據(jù)分布差距太大模型在擬合訓(xùn)練數(shù)據(jù)的過程中把原有的知識表達式覆蓋掉了。控制遺忘的方法有幾個第一個是降低學(xué)習(xí)率。學(xué)習(xí)率越高權(quán)重改動幅度越大遺忘越嚴重。我遇到過把學(xué)習(xí)率從1e-4降到5e-5之后目標任務(wù)效果只差一點點但通用能力明顯變好。第二個方法是混合通用數(shù)據(jù)。在目標SFT數(shù)據(jù)里摻入10%-20%的通用指令數(shù)據(jù)或者預(yù)訓(xùn)練語料讓模型在原分布附近“鞏固記憶”。第三個方法是做多任務(wù)混合訓(xùn)練。把多個場景的數(shù)據(jù)混在一起訓(xùn)而不是只訓(xùn)一個單獨任務(wù)模型對指令的理解會更穩(wěn)健。如果你已經(jīng)訓(xùn)練完了發(fā)現(xiàn)模型通用能力受損還有一個補救手段用低學(xué)習(xí)率在通用數(shù)據(jù)上做幾輪“恢復(fù)訓(xùn)練”通常能讓通用能力回來一部分但要謹慎控制輪數(shù)恢復(fù)過頭了目標任務(wù)的收益又會丟掉。5.3 輸出成了復(fù)讀機或者出現(xiàn)亂碼生成階段出現(xiàn)復(fù)讀機很多人第一反應(yīng)是調(diào)采樣參數(shù)比如降低temperature、調(diào)整repetition penalty但從SFT側(cè)來看根因常常在訓(xùn)練階段。學(xué)習(xí)率過高是常見元兇模型在訓(xùn)練集上過擬合生成的token序列容易掉進重復(fù)循環(huán)。把學(xué)習(xí)率降下來重新訓(xùn)練復(fù)讀現(xiàn)象經(jīng)常自動消失。數(shù)據(jù)里的重復(fù)樣本也值得排查。如果某條樣本在數(shù)據(jù)集中重復(fù)了幾十次模型對它的記憶特別深輸出時就容易反復(fù)橫跳。用去重腳本把完全重復(fù)和近似重復(fù)的樣本清理掉能有效緩解這個問題。至于亂碼問題優(yōu)先檢查tokenizer的pad token設(shè)置。很多基座模型的tokenizer沒有pad token訓(xùn)練時如果不指定系統(tǒng)會拿eos token來湊可能導(dǎo)致注意力掩碼錯亂。另一個檢查點是數(shù)據(jù)文本本身確認沒有混入非法字符或者編碼不一致的文本。5.4 顯存OOM的排查路線訓(xùn)練中途報CUDA out of memory是最常見的工程問題但解決辦法并不復(fù)雜按順序處理就好。先減per_device_batch_size從4減到2再減到1。如果batch1還是OOM說明單條樣本太大檢查max_length是不是設(shè)得過高適當截斷長樣本。接著開啟gradient_checkpointing這個能省不少顯存。還不行就考慮換LoRA或者上量化。從全參微調(diào)切到LoRA顯存占用能下降一半以上LoRA再加4bit量化加載7B模型的訓(xùn)練甚至可以壓到16GB顯存以內(nèi)。有一點要提醒batch變小后訓(xùn)練穩(wěn)定性會變差記得同步調(diào)大gradient_accumulation_steps把等效batch size維持住。用大batch換穩(wěn)定用累積換等效是解決顯存問題的通用思路。5.5 微調(diào)效果怎么評估才靠譜很多團隊評估SFT效果只看訓(xùn)練loss這是遠遠不夠的。loss只能說明模型有沒有擬合訓(xùn)練數(shù)據(jù)不能說明模型能不能解決真實問題。我自己的評估體系分三層第一層是規(guī)則指標如果任務(wù)是分類或者抽取計算準確率、F1這些客觀指標第二層是生成質(zhì)量指標比如代碼任務(wù)的passk、文本摘要的ROUGE分但這些只能做參考不能完全替代人工第三層是人工評測準備幾十條覆蓋各場景的測試用例逐個看模型輸出按有用性、正確性、格式規(guī)范度打分。人工評測雖然費時但它最能暴露問題。我通常會讓不直接參與訓(xùn)練的人來做評測這樣能避免“自己訓(xùn)的模型怎么看都好”的主觀偏差。打分表也不要搞得太復(fù)雜三到五個維度足夠了重點看有沒有出現(xiàn)答非所問、格式混亂、事實錯誤這三類致命問題。模型上線前至少做兩輪評估第一輪發(fā)現(xiàn)問題并重訓(xùn)第二輪確認修復(fù)效果這樣形成閉環(huán)才算真正跑完一次SFT。最后說一個我個人的習(xí)慣每次SFT訓(xùn)練跑完之后把所有配置、數(shù)據(jù)統(tǒng)計結(jié)果和評測記錄整理成一個簡單的文檔留檔。別小看這一步模型效果不好時想回溯原因這份記錄能幫你快速定位是數(shù)據(jù)問題、參數(shù)問題還是訓(xùn)練代碼問題。我做過的項目里好幾輪模型效果倒退都是靠文檔記錄快速查出了原因。如果你正準備開始自己的SFT實驗建議也養(yǎng)成這個習(xí)慣。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
四季日韩AV无码综合| 可以免费观看的AV| 色99视| 亚洲成人影视在线| 久久久这里有精品| 98色花堂98t.R| 91精品电影18T| 婷婷九月丁香天堂丁香天堂| 久久您您综合网| 日本久久婷婷| 婷婷操超碰| 六月婷婷亚洲| 色婷婷五月天小说网| 97碰久久| 丁香五月天啪啪| 99热色综合| 激情五月天色色| 五月香婷婷| 婷婷 亚洲图片 丁香| 无码人妻电影| 成人午夜无码视频| 精品久色| 综合五月丁香久久| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 99热99色| 色五月综合网| 五月婷婷丁香啪啪| 五月婷婷成人网首页| 色婷婷亚洲| 伊人玖玖综合| 色婷婷丁香综合中文字幕| 色爱爱综合网| 日本操B片| 日本久久激情| 激情啪啪五月天| 碰97 久| 99热久| 97碰碰视频| 99热手机在线精品| www.日本91| 五月丁香婷婷成人网| 丁香六月五月婷婷| 99热国产免费| 99热久| 婷婷激情六月综合| 91ncom.色| 任你搞网站| 六月丁香网| 免费观看的婷婷五月视频在线| A网在线欧洲| 五月婷婷欧美激情| 天天插天天日| 亚洲AV免费在线| 99re在线视频| 极品人妻VIDEOSSS人妻| 99精品久久久久久久久| 丁香五月中文字幕| 五月婷人妻| 色五月婷婷久久大| 超碰com| 色狠狠999综合| 99九九玖玖| 成人网在线视频| 天堂在线9| 激情五月六月婷婷| 一级片操逼视频| 天天肏在线视频| 日本九九九九九九| 九九热只有精品6| 夜夜骑日日夜夜| 亚洲九九在线| 香蕉综合网| 亚洲另类在线观看| 《久久综合九色综合97婷婷| 99热这里只有精品98| 久久机只有这里精品| 色综合色综合色综合| 色色五月天婷婷丁香| 99热在线只有精品| 99综合成人视频在线观看| 久久激情天堂| 色婷婷激情视频| 亚洲欧美国产高清vA在线播放| 亚洲人人操| 久99久视频| 97色婷婷| 丁香五月激情宗合网| 五月婷婷就去色| 天天操综合网站| 色情久久久| 天天肏夜夜肏| 91网站黄| 五月丁香中文| 欧美久久九九| 一本久久亚洲五月婷婷| 五月天社区| 射婷婷中文字幕| 日韩在线9| 狠狠人人| 激情www| Av中文在线| 婷婷伊人| 欧美综合123区| 爱99干99| 五月婷婷久久爱| 播五月开心婷婷欧美综合| 97干在线视频| 中文字幕在线观看视频www| 五月色婷婷AV| 少妇性按摩无码中文A片| 九九精品系列| 天天操,夜夜骑| 97婷婷色| 乱码操操| 亚洲1区| 久久九⑨| 欧美性丁香色色五月天干干| 婷婷五月激情视频网| 五月亭亭六月色| 99热久| 久久婷婷丁香花综合网| w婷婷五月婷婷w| 精品久热| 婷婷97狠狠干| 色99视频| 五月熟妇婷婷久久| 中字幕视频在线永久在线观看免费| 亚洲小电影在线观看黄999| 精品99爱免费视频在线观看| 亚洲春色奇米影视| 99热国产在线| 精品国婬伦V无码久久久| 天天综合色丁香| 97操在线视频| 日韩狠狠色| 色色丁香色五月| 色五月婷婷DVD| JAPANRCEP老熟妇乱子伦视频| 婷婷五月激情欧美| 久久曰曰| 超碰在线91| 碰碰女| 草草影院爱爱| 亚洲综合在线视频| 十月丁香婷婷| 9色资源在线| 久久伊人日日夜夜| 一区操| 五月婷婷开心综合| 丁香五月婷婷综合精品素人| 大香蕉久操| 婷婷六月啪啪| 欧美搡BBBBB摔BBBBB| VA日本视频| www.99视频| www.婷婷网| www.婷婷五月天.com| 久久婷五月天| 五月婷久久久久综合| 婷婷色五月情| 亚洲天堂大香蕉| 99操碰| 91无码视频| 欧美色宗和激情| 大香蕉婷婷五月| 五月婷婷婷综合网| 国产成人精品一区二三区熟女在线| 99热这里只有精品国产免费| 岛囯综合激情网| 色色综合色| 91婷婷在线观看| 超碰在线免费| 激情五月天之六月婷婷| 天堂在线9| 密黄站| 51精品国自产在线| 91视频一起草| 色综合综合网| 区区久久妻| 97久久人人人干| 婷婷十月激情综合网| 色五月婷婷自拍| 久久婷婷色| 五月天另类综合网| 国产精品色婷婷99久久精品| 人人爽网| 婷婷大香蕉| 色狠狠综合网| 来吧亚洲综合网| www.com操| 久久99jiu9| 婷婷四色五月| 日本色色色| 五月婷婷啪| 婷婷五月激情基地| 思思99热| 91九色首页| 婷婷丁香人妻久久在线观看| 丁香六月色香蕉视频| 丁香婷婷老熟女综合网| 成功精品影院| 色婷婷AV在线| 婷婷五月天电影区小说区| 91人人爽狠狠狠| 国产精产国品一二三在观看| 国产激情综合五月久久| 亚洲99在线| 丁香五月激情六月综合| 五月天激情综合网站| 久草视频大香蕉99| co超碰在线观看| 亚洲黄色影视| 色99在线观看| 在线观看婷婷5月| 操操操97| 99精品在线观看| 五月婷婷在线观看黄| 亚洲综合五月天综合| 91精品91久久久中77777久久玖玖九九 | 热久久成人| 99久久新视频| 欧美丁香五月| 婷五月天六| 亚洲精品久久久无码| 97色婷| 亚洲男女激情| 色婷婷久久| 六月丁香婷婷在线波多| 婷婷 亚洲图片 丁香| 久久综合激情| www.日本久久videos| 五月天婷婷激情在线色图| 亚洲亚洲人成综合网络| 夜精品无码A片一区二区蜜桃| 色婷婷六月天| 亚洲操人| 操一操干一干| 日韩婷婷| 少妇伦子伦精品无吗| 免费观看的av| 99精品视频在线观看| 色婷婷亚洲精品天天综| 久久思思热| 国产成人网站在线观看| 丁香五月AV综合| 九月综合| 色五月天.con| 国产美女最新VA在线免费观看| 五月天激情播播网| 婷婷热婷婷色| 中文字幕性爱丰满| 天天爽天天干| 九九RE视频在线精品| 99热碰碰热| 综合久久高清| 欧美精品999| 99热综合| 99热最新国内| 激情文学第四色婷婷丁香五月| 超碰国产在线观看| 色丁香五月婷婷| 久久免费精品小视频| 66精品国产成人| 俺也去婷婷五月天第五色| 丁香五月综合| 玖玖九九99| 99爱免费在线视频| www.色婷婷| www.五月婷婷久久.com| 99爱在线视频| 婷婷综合av| 成人短视频在线| 伊人婷婷五月天| 色婷婷五月天偷拍| 久99在线| 久99久在线| 69精品人人人人| 五月天另类小说亚洲| 激情综合五月| 五月草影视| 天天天天天天操| 综合网啪| 国产精品久久久久久妇女6080| 日本WwW色偷偷丁香花久久久京东热| 亚洲区在线| 色天堂操| 亚洲激情丁香五月基地| 五月天色影院| 九九综合| 婷婷五月天久久综合88| av 一区三区四区| 色亚洲视频| 五月婷婷自拍视频| 五月花激情| 欧美日本韩国亚洲| 亚洲欧美成人在线| 婷婷五月天六月| 亚州操操| 久久免费高| 99热1| 六月婷五月丁香| 5月婷婷激情网| 日韩亚洲视频| 婷五月天| 婷婷五月永远18免费久久久| 9l视频自拍九色9l视频在线观看| 欧美午夜乱妇午夜福利| 精品久久久人妻| 国产XXXX搡XXXXX搡麻豆| 变态另类色图| 99热99思午夜精品| 五月天综合激情网| 丁香五月激情啪啪啪| 一逼色综合| 六月丁香婷婷在线波多 | 婷婷 月 丁香| 51XX嘿嘿午夜无码| 91超级碰碰| 久久精品视频9| 久久色情| 成人在线综合| 婷婷五月天激情诱惑| 久久这里只精品| 色色色五月天激情资源| 九九热这里只有精品9| 日韩超碰在线| 久久视频婷婷| 噜噜精品| 精品热青草| 五月丁香爱婷婷深深| 停停五月丁香| 欧美超碰亚洲| 五月婷婷开心综合| 超级碰碰97在线| 激情五月天色色| 久久精彩免费视频| 黄页免费一级视频懂色| 天天操夜夜玩!| 久久XX| 丁香婷婷五月综合| 这里只有精品在线视频在线观看| 天天插综合网| 涩 五月 婷婷 狠狠| 色必久悠悠影院| 久综合网| 99re热精品在线视频| 无码色| 午夜福利成人AV91| 色五月天成人| 97热久久五月婷婷| 精品99在线| 色婷婷丁香社综合| www婷婷| 97超碰99热99| 色噜噜狠噜噜视频| 玖玖婷婷精品| 久热伊人| 日韩黄黄| www.ywav| 色五婷婷在线视频| A在线观看| 久久精品系列| 日日爱678| 狠狠色丁香| 91九色在线| 香蕉久久国产AV一区二区| 天堂爱啪啪| AA丁香综合激情| 色婷婷综合电影| 五月天婷久精视频| 99热在线资源| 九九热精品视频在线观看| 99爱视频精品在线观看| 日韩99色99| 五月丁香A片| 丁香五月色欲| 婷婷综合精品| 婷婷五月在线视频| 亚洲欧美国产高清vA在线播放| 亚洲天堂九九九| 五月婷婷免费在线视频| 婷婷五月AV| 涩五月婷婷| site:picc-up.com| 婷婷五月丁香激情图片 | 亚洲成人免费在线| 一本道综合网| 热久69| a在线观看| 五月天天天操天天爽夜夜操| 日韩不卡123| 另类激情综合| 狠狠夜夜五月丁香| 热996精品在线观看| 久久99精品久久久久久三级| 天天草狠狠擦| 中文久久婷婷| 人妻丰满精品一区二区A片| 五月香蕉婷婷| 91丨九色丨熟女| 九九香蕉网| 99热只有这里才是精品| 五月婷婷欧美| 性色99| 97色久| 国产AV一区二区三区最新精品| 丁香五月亚综合图片| 婷婷午夜综合| 亚洲欧洲美女在线观| 五月天久久网站| 再次出发二| 天天操天天插天天射| 少妇搡BBBB搡BBB搡毛茸茸 | 欧美另类五月激情| 亚洲情色一区| WWW色五月| 四虎成人精品永久免费AV九九| www好屌操| 9l视频自拍9l视频自拍九色学生| 激情五月丁香五月色| www.91婷婷| 色婷婷丁香五月天激情综合网| 26uuu丁香婷婷五月| 激情五月天婷婷| 99热在线观看| 久久这里只| 99热这里在线精品| aaa久久| 97人人操人人拍| 天天天天天天操| 激情图片五月天| 国产26uuu视频| 91爱操| www.狠狠操| 五月婷婷婷婷婷婷艺术| 色5在线| www.com色播五月天| 丁香六月激情综合| 色五月综合网| 亚洲区视频| 成人开心五月天| 五月婷婷久久开心网| 久久ww| 超碰无码318604| 欧美三级视频| 久久性综合| 伊人久久艹| 九色91视频| 噜啊噜在线| 亚洲色无码| 综合五月天天天天天五月| 成人天天爽| 99色视频在线观看最新| 久久的爱大香蕉| 六月丁香开心婷婷欧美| 淫视馆av三区| 激情五月瑟瑟| 九伊人网| 草一草avb| 亚洲精品视频电影| 丁香五月激情棕合| 亚洲综合一区二区| 欧日韩成人| 99热亚洲精品| 久久国产色| 欧美色五月| 99久久99九九九99九他书对| 激情欧美五月丁香| 99热8| 激情五月影院| 另类少妇人与禽zOZZ0性伦| 欧美成人A片AAA片在线播放| 丁香婷婷色五月| 在线观看国产高清视频免费网站| 欧美综合激情| 久久九九九九| 久久精典| 翔田千里无码| 日本色五月| 久久狠狠干| 91天天操天天干天天射| 亚洲人妻AV| 丰满少妇猛烈A片免费看观看| 欧美三级巜人妻互换| 激情综合色五月丁香| 超碰人人摸人人操| 六月婷综合| 久久五月情| 91碰超| 综合丁香婷婷五月天| 久久成人性爱| 天天做好综合色| 一月婷婷色色| 综合激情五月丁香| 人人人操 超碰| 99热久久日本| 天天爽爽日日做做| 五月丁香六月花| 五月丁香六月婷婷姐| 97色97干| 国产av一区二区三区| 欧亚中文A V| 在线观看亚洲视频影院| 久久er+| 国产婷婷五月在线视频| 天天干天天操天天拍| 午夜天堂一区人妻| 日韩综合久| 精品婷婷五| 色久五月天| 欧美精品99| 日本少妇裸体做爰高潮片| 色婷婷五月丁香色| 国产伦理精品高清在线观看网站一区二区 | 99久久婷婷国产综合| 五月婷婷亚洲天堂97色婷婷| 色情五月丁香| 婷婷激情五月综合| 久久婷婷视频| 五月婷在线影院| 五月天四色房丁香| 久久与婷婷| 影音先锋男人女人| 亚洲视频a| 五月天婷婷激情综合| 99久久极情精品一区| 狠狠色综合无线观看| 久久xxxx| 婷婷五月天狠狠色| 欧美色一级色| 五月天婷婷黄色视频| 日日夜夜婷婷| 色五月,com| 97人妻碰碰碰久| 婷婷五月天六点丁香五月| 亚洲操B| 啪啪色区| 久久久久丁香婷婷五月天| 桃色五月天| 九九热99免费视频| 无码人妻一区| 日日操夜夜操中国无码| 天天做天天要天天爽| 九九色图| 99ri在线观看视频| 九月婷婷色色| 岛国操B不卡在线| 五月丁香狠狠爱婷婷综合| 五月丁香久人妻中文| Caoub青青超碰 | 精品色色| 国产成人AV人人爽人人澡Va| 激情五月五月婷婷| 久久综合中文| 9久精品视频| 99日精品视频| 五月婷婷六月天| 99久久婷婷综合| 婷婷五月综合啪| 国产又爽又猛又粗的视频A片| 久这里只有精品99| 天天搞天天爽| 丁香五月六月久久综合| 九九亚洲视频| 色综合婷婷| 婷婷五月激情图片| 丁香婷婷六月天| 色玖玖综合网| 99色色爰| 99在线精品视频| 人人干天天舔| 色婷婷成人做爰A片免费看网站| 丁香五月天天| 国产欧美日韩综合精品一区二区| 五月开心婷婷| 免费V片在线| 丁香五月婷老师| 九九色播五月丁香| 永久免费一区二区三区| 久激情网| 少妇高潮呻吟A片免费看软件| 人妻系列久久久久久久久久久| 国产成人精品一区二三区熟女在线| 色色婷五月天| 97成人丁香| 五月天最新网| 丁香六月啪啪啪| 九九久久99| 在线视频色五月| 少妇人妻丰满做爰XXX| 六月丁香婷婷在线波多| 99艹精品在线观看| 97色在线观看视频| 国产VA播放| 综合色色五月| 五月婷婷婷丁香播| 国产激情视频在线观看| 丁香五月自拍| 深爱激情丁香五月| 色欲天天综合| 爱99干99| 色九月婷婷综合| 天天噜天天爱| 影音先锋91男人资源在线播放| 在线天堂9| 综合婷婷六月| 99热全是精品| 东京热免费视频| 岛国av电影网站| 色综合中文色综合网| 久久a热| 丁香五月天综合网| 日韩在线视频网站| 亚洲亚洲人成综合网络| 狠狠99| 精品无码人妻一区| 色五月婷婷激情基地| 激情五月婷婷五月| 亚洲情欲| 婷婷五月天亚洲天堂| 久热re在线视频| 99热6精品| 婷婷五月视频| 丁香婷婷综合五月天| 另类亚洲电影| 专区无日本视频高清8| 日婷婷久久开心| 这里只有精品在线视频精品| 超碰在线观看成人视| 欧美久热| 超碰人人干| 成年人看Va免费视频| 激情综合青草| 色欲影香| 中文成人在线| 91操人人操| 久久婷婷六月综合| 亚洲色情在线| 午夜不卡成人一区二区| 91Chinese在线| 六月婷婷操逼| 日韩国产在线精品| 久操大香蕉| 国产性爱一级| 六月婷婷五月天| 亚洲mm色| 狠狠干五月丁香| 五月天激情综合在线| 91视频久久久| 丁香五月亚洲综合| 国产精品18久久久| 九九色综合| 亚洲永久四色| 极品另类| 婷婷欧美综合| 色婷婷五月综合在线| 手机免费福利视频| 激情综合色五月丁香六月亚洲| 免费精品66| 色久播播| 开心婷婷五月天电影院| 婷婷偷拍网| 六月99天天婷婷激情综合| 99色.com| 丁香五月婷婷偷拍| 久久最新色| 久99热在线观看| 婷婷伊人五月丁香天堂网| 色婷视频| 色五月婷婷五月天激情综合| 国产VA亚洲VA96| 五月婷婷co.m| 丁香六月成人网| 五月丁激情| 五月天激情日色在线| www.狠狠狠.com| 久色成人| av在线色五月丁香婷区久| 日日色五月天| 久99热| 激情文学五月丁香六月婷婷| 六月丁香五月婷婷| 26uuu精品一区二区| 色色无码| 九九色色| 99噜噜噜在线播放| 成人无码精品1区2区3区免费看| 夜夜爽77777妓女免费下载 | 超碰久热| 综合网精品99| 五月婷丁香久久综合| www.99免费视频| 婷婷爱爱蜜臀天天操| 综合网色| 天色综合网站| 日本激情五月天‘| 丁香六月婷婷综合缴| 婷婷五月色情| 九九热九九| 婷婷99狠狠躁天天久久久九九九| 九九在线91| 91人人操| site:esunnet.com| 丁香五月亚洲| 9久热| 成人无码精品1区2区3区免费看| 色婷婷yy久| AAA久久久AAA久久久AAA| 九九Av| 丁香婷婷色五月合集| 婷婷五月天激情诱惑| 性欧美日本| 99国产精品久久久久久久久久久| 久久久.www| 欧美色婷婷| 久久99热精品a片在线观看| 玖玖资源站中文| 99热这里只有精品2| 99亚洲精品| 激情五月天婷婷丁香| 激情综合五| 婷婷五月天伊人网在线观看视频| 在线视频激情网站| 五月亭亭开心网| 色9999综合久久| 丁香婷婷六月激情文学 | 婷婷涩五月天综合| 色五月天丁香| cao视频,现在观看| 性爱先锋AV| 色五月婷婷五月| 五月婷婷深深爱| 99久精品| 欧美色五月天| 午夜大香蕉| 伊人色综合久久久| 久久99热 这里有精品| 大香蕉99热| 五月丁香婷婷成人网| 综合一区二区三区| 天天日天天干天天爱| 99热这里只有精品99| 国产精品久久久爽爽爽麻豆色哟哟| 人妻视频在线| 丁香狠狠色婷婷久久无码视频| 久久人人看| 五月丁香啪啪综合| 色丁香影院| 免费无码毛片一区二区A片| 97人人爱人人操| 欧美va欧美va差| 极品人妻XXXXOOOO| 久久免费9| 色五月综合| 五月天婷婷激情六月久久| 99视频精品视频| 激情五月天丁香| 99热九九在线| 久色婷婷200| 久久婷婷一级片| 六月丁香婷婷网| 久99热| 五月色婷婷在线观看| 国产在线黄色| 五月狠狠| 婷婷八月丁香激情综合| 九97免费视频| 五月天综合婷婷| 丁香五月天堂婷婷| 99er在线观看| 深夜婷婷 丁香| 就爱啪啪婷婷| 欧美成人AAA片一区国产精品| 都市激情久久| 天天操夜夜操| 婷婷激情综合无月| 五月丁香影视| 99精品视频在线免费观看| 日本色五月| 五月丁香六月婷婷亚洲天堂网站| 99热这里只有精品9| 婷婷色婷婷亚洲成人| www.色五月| 爱射综合| 天天色播| 日韩精品AV一区二区三区| 久久色五月天| 日韩精品AV一区二区三区| 狠狠另类视频| 乱乱av| 2025天天操| 婷婷丁香www视频日本韩国| 亚洲国产精品VA在线看黑人| 另类激情四射| 天天色综网| 色久婷婷五月| 香蕉AV福利精品导航| 九九婷婷五月天影视| 欧美精品在线观看| 天天干天天爽天天操| 亚洲丁香婷婷丁香五月天激情| 99色色网站| 五月婷婷激情综合| 婷婷丁香视频| 天天综合网色欲香| 成年人丁香五月| 色99视频| 97一区二区| 五月婷婷啪啪| 久久人妻久久久久| 丁香五月之久操视频| 热99这就是精品视频| 97人妻碰碰碰久久久久-最近国语高清| 成人色图情色成人网 www.5b5b5bcom 五月天| 久久婷狠狠色| 色婷婷综合网站| 人妻熟妇六区| 色色a| 99久久精| 狠狠色婷婷综合开心影视| 婷婷丁香五月婷婷| 欧美色色色| 婷婷在线日韩综合| av狠狠操| 影音先锋女人av鲁色资源网小说免费| 中文字幕不卡网站| 亚洲va成人va成人va在线观看| 无码se| 六月丁香AV| 另类在线| 亚洲99热| 五月视频日本免费观看| 精品国婬伦V无码久久久| 亚洲超碰在线| 五月花丁香婷婷| 大香蕉伊人久久| 狠狠色婷| 大香蕉九九| 亚洲综合五月天婷婷| 色情五月天小说| 色婷综合| 五月色情| 99九九视频| 色婷婷婷婷五月天| 丁香五月婷婷久久久| 激情五月丁香色色去久久| 日本久久99| 久久人妻精品| 五月天激情日色在线| 久久激情五月婷婷| 另类婷婷五月天啪帕帕| 99热官网| 99re免费精品视频| 日韩精品二三区| 深爱激情四射| 91综合在线| 五月婷婷六月综合| 久婷狼色诱惑在线| 丁香婷婷久久 | 97久久综合网| 免费无码毛片一区二区A片 | 玖玖色综合色| 丁香五月性爱| 中文字幕在线日亚州9| 狠狠激情五月天| 婷婷五月天激情小说网站| 超碰在线看| 色色日本欧美| 怡红院成人AV| 久久久噜噜噜www成人| 色伊人91在线视频| 91 九色 熟女| 激情五月天黄色小说| 综合色影院| 综合久久十| 丁香五月婷婷免费视频| 婷婷色婷婷| www超碰| 婷婷成人综合| 久草性爱| 97狠狠色| 久久香蕉影院| 97九色| 亚洲AV日韩无码| www婷婷| 婷婷八月丁香激情综合| 亚洲视频图片婷婷五月| 亚洲情a| 秋霞三及片| 99热这里只有免费| 99热久草| 婷婷色五月在线视频| 特级片神马电影| 99热在线观看这里只有精品| 日日夜夜综合| 久久久久久久久人妻| 久热播这里只有精品| 99色在线观看视频| 狠狠色丁香99| 欧洲高清免费久久| 丁香婷婷综合激情五月色| 久久久久人妻中文| 五月丁香婷爱在线| 操一操干一干| 丁香五月六月综合欧美| 久久香蕉丁香| 婷婷六月啪啪| 狠狠综合| 九九艹女| 成人永久免费视频在线观看| aa久久| 《战争与艾拉》完整版| 丁香伊人激情| 婷婷五月激情在线视频| 亚亚州久久高潮| 人妻激情在线| 亚洲激情综合| 秋霞av吧| 高清成人综合| 俺也去婷婷五月天第五色| caopeng超碰| 亚洲婷婷激情888精品久| 26uuu亚洲精品国产| 色婷婷综合影院| 五月婷婷六月丁香综合在线| 中文字幕乱码亚洲精品一区| 色偷偷人人| 碰超99| 五月丁香婷婷六月天| 五月丁香六月激情综合欧美| 日韩成人AV在线播放| 99爱视频在线观看这里只有精品| 97碰碰碰免费公开在线视频| 丁香五月WWW| 超碰99在线| 天天操夜夜爽| 久热一本| 疯狂做受XXXX高潮A片| www.激情五月天.com| 亚洲五月激情| 综合网激情五月天| 中文av网| 国产精品99久久久久久久女警| 中文字幕成人日韩| 九九Av| 五月天影院| 亚洲色碰| AV片在线观看| 91久久久久久久久18| www.十八禁不禁AV.com| 夜夜躁婷婷AV| www.色五月| 99热综合在线| 婷婷五月激情在线| 97人人操人人干| 国产精品A片在线| 亚洲性受XXXX五月丁香| 日日夜夜婷婷| 国产欧美日韩综合精品一区二区| 99久久97久久欧美综合网| 天天色天天爱天天舔| 丰满人妻一区二区三区| 国产精产国品一二三在观看| 亚洲综合1024| 婷婷丁香人妻天天| 精品色色| 亚洲中文字幕av| 中文乱子伦视频| 亚洲激情网| 色欲五月婷婷| 久久A区B区| 天堂无码人妻精品AV一区| AV无码免费| 久机视频这只有精品| caop视频| 色必久悠悠影院| 草草操操| 久久999久久999久久999久久| 色99综合视频| 91啪啪视频| 91久久精品无码一区二区三区| 99热无码| 五月丁香色停停啪啪啪| 激情五月伊人婷婷| 4399在线日本A片| 日韩精品一区二区刘| 久99久热只有精品国产99| 人人摸人人| 欧美色色色色色色色| 操操操Av| 中文字幕婷婷在线| 久久色五月天综合网| EEUSS鲁片一区二区三区| 91一起操| 日韩亚洲视频| 4399人妻无码久久久| 色XX综合网| 五月丁香狠狠爱婷婷综合| 日韩五月天婷婷| 五月丁香六月激情综合| 91九色国产| 色激情综合| 国产成人av在线播放| 91色在线 | 日韩| 色五月婷婷五月天激情综合| 亚洲色优| 色99色| 久久九九@| 超碰a女人的天堂| 久婷久婷| 色色色干| 激情五月婷婷| 亚洲avjiujiur91| 91婷婷| 色婷婷婷综合五月天| 激情五月婷| 六月婷婷色五月| 色色色色丁香| 99爱视频免费看| 五月婷婷欧洲| 五月丁香六月婷婷网| 欧美日韩五月婷婷| z色五月播播久久| 99视频网址| 婷婷永久在线| 超碰成人在线观看| 99免费在线| VA婷婷| 思思9久久| 婷婷丁香在线播放| 91九色在线观看免费| 99热| 天搞天天天天天| 思思热在线视频精品| 激情网站综合五月天| 91.www综合| 精品色| 婷婷色网| 亚洲视频在线观看| 婷婷色激情五月天| 五月丁香自拍| 久久思思热| 俺去啦综合网| 任你操精品免费| 欧美婷婷五月丁香| 亚洲 无码 中文字幕 中出| 国产91在线视频| 国产avapp 网| 成人久久天天x资源站| 色色色五月天婷婷| 色五月激情五月开心五月| 色欲久久久久久综合网综合网| 激情五月丁香五月| 国产婷婷五月中文字幕高清| 中文字幕综合色| 亚洲啪啪视频| 五月激情丁香五月宗合| 天堂在线婷婷| 久久女婷| 婷婷五月天BBw| 亚韩在线视频| 99色爱| 超碰色色综合| 婷婷五月天综合蜜桃| 97碰 在线视频观看| 91色婷婷综合久久中文字幕二区| 亚洲天堂AAA| 激情綜合網址| 无码日本精品XXXXXXXXX | 色播播五月| 激情com| 激情五月丁香六月综合AVXXXX| 激情五月激情综合网| 九九爱激情| 五月丁香六月婷婷综合在线| 亚洲成人电影在线免费观看| 五月婷婷婷婷| 99精品小视频| 六月丁香五月激情亚洲AV| 日本操B片| 亚洲激情综合| 婷婷情色五月天| 九月色婷婷综合| 久操操| 99热九九在线| 激情内射人妻1区2区3区| 先锋资源91| 一本综合丁香日日狠狠色| 久久大香蕉同僚| av五月天婷婷丁香| www.天天干| 激情婷婷久久| 成人五月天视频播放| 激情五月天视频| 成人短视频免费观看| 日欧一片内射VA在线影院| 丁香九月综合| 五月丁香天堂网| 欧洲综合视频在线观看。欧洲,亚洲综合食品在线观看。 | 色和综合网| 亚洲天堂久久| 久久久五月五丁香| 激情小说五月欧美亚洲丁香| 欧美婷婷五月无砖| 超碰人人超碰| 丁香五月婷婷天堂大香蕉| 超碰操日| 亚洲天堂婷婷丁香| 五月天啪啪啪| 五月婷婷六月丁香综合| 精品人妻久久久久| 人人综合五月人人婷婷| 人人色人人摸人人看| 五月天操逼网| 婷婷亚洲久久| 亚洲9久久精品| 丁香五月婷婷av影院| 99热超碰| 婷婷五月激情综合| 日本超碰在线| 伊人婷婷大香蕉| 99这里有精品视频| 丁香六月欧美| 五月丁香婷婷欧美色图视频五月丁香777电影 | 丁香五月婷婷超碰在线| 亚洲成人另类| 大香蕉人在线65| 色婷在线视频| 在线亚洲综合网| 99caobi| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 51精品国自产在线| 激情综合亚洲| 99精品综合视频| 色色五月丁香| 99在线免费视频| 98国产精品综合一区二区三区 | 丁香五月天啪啪a日本| 丁香五月激情六月| 开心五月婷婷激情网| 99热精品一区| 5月丁香六月婷婷| 99re这里只有精品在线观看| 日日日日操| 婷婷六月丁香五月| 这里只有精品无码| 97色色综合| 91丨九色丨熟女丰满| 激情综合五月天| 日韩成人网址| 精品色色| 婷婷97色| 99caobi| 欧美色99| 激情99热| 婷婷五月天男人影院色色网| xx人人xx| 亚洲综合九九| 人妻中文在线| 色天堂婷婷| 99啪视频在线观看| 2017人人操| 激情五月激情综合俺也去婷婷小说| 开心婷婷五月天电影院| 婷婷丁香激情五月| 天天久综合| 久99久精品| 色色婷| 中文字幕高清av| 色狠狠色综合久久久绯色AⅤ影视| 婷婷亚洲日本| 亚洲久久婷婷| 五月天婷婷免费视频| 香蕉久久国产AV一区二区| 精品夜夜澡人妻无码AV| 91碰操| 色五月婷婷久久| 亚洲综合在线丁香五月| 五月婷婷丁香六月| 亚洲热视频| 偷拍九九热| 玖玖综合网| 九九热这里只有精品12| 99精品视频在线观看| 天天干天干| 超碰v| 99九九热视频免费| a在线观看| 国产熟女日日骚五月丁香爱| 亚洲天堂啪啪| 国产午夜精品一区二区三区四区 | 91久久婷婷| 欧美A级网站| 丁香久久AV| 色久丁香五| 成年人丁香五月| 色九九中文字幕| 91久久综合亚洲鲁鲁五月天| 丁香五月婷婷乱| 五月丁香六月激情| 99色婷婷| 天天综合五月| 久久久五月激| 碰97久久| 羞羞嫩草视频| 丁香九月婷| 亚洲激情.com| 日本天天操| 丁香六月激情综合网| 深爱激情九九五月天| 夜夜躁婷婷AV| 国产日产亚洲系列最新| 影音先锋一区| WWW.夜夜| 色婷婷久久| 狠狠色狠狠爱| 激情合网婷婷| 久久久久9| 加勒比久热| 婷婷五月AA五月在线| 亚洲成人网在线观看| 中文字幕无线久必| 色婷婷WWW| 五月天开心网| 色婷婷亚洲综合网站| 色色网站在线免费观看视频| 色停停香蕉视频| 99精品偷拍视频| 亚洲九九99精品视频在线播放| 成功精品影院| 日本啪啪天堂| 欧美日韩成人在线网站| 丁香六月婷婷激情| 天天色伊人| 五月婷婷影| 婷婷精品在线| 国产精品色色| 中文在线视频久9| 久久精品视频9| 人妻无码视频网| 热无码A∨| www.婷婷| 五月丁香色色综合| 日本一级一级一级一级| 丁香 亚洲 久久| 99九九视频| 丁香六月欧美| 91精品久久久久久综合五月天| 国产av网| 婷婷王月天影院| 午夜]香婷婷深深爱| 三级大香蕉网| 色七色九九| 天天操夜夜操| 六月亚洲婷婷6月中文字幕| 亚洲中文字幕网| 国产精品久久..4399| 26.uuu丁香五月婷婷| 丁香五月婷婷天堂大香蕉| 亚洲第一综合| 91丨九色|PRNY熟妇| 第四色大香蕉| 久久婷狠狠色| 久久xxxx| 五月天婷综合网站| 国产真人做爰视频免费|