久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

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

OpenRig實(shí)戰(zhàn):配置驅(qū)動(dòng)的大模型微調(diào)與分布式訓(xùn)練指南

OpenRig實(shí)戰(zhàn):配置驅(qū)動(dòng)的大模型微調(diào)與分布式訓(xùn)練指南 很多人第一次看見 OpenRig 這個(gè)名字第一反應(yīng)多半是Rig 不是鉆井平臺(tái)的意思嗎一個(gè)開源項(xiàng)目起個(gè)鉆機(jī)的名字做什么我當(dāng)初也這么嘀咕過(guò)直到自己動(dòng)手用這個(gè)開源的大模型微調(diào)框架跑完一輪任務(wù)才明白這個(gè)名字有多貼切。鉆井平臺(tái)是把埋在地層深處的油抽到地面OpenRig 這個(gè)項(xiàng)目做的事也很像——把分布式訓(xùn)練這套原本藏在 DeepSpeed 和各種底層基礎(chǔ)設(shè)施里的重型裝備組裝成一個(gè)能讓你直接操作的完整的訓(xùn)練平臺(tái)。你只需要準(zhǔn)備好數(shù)據(jù)、寫好配置剩下的多卡并行、梯度同步、斷點(diǎn)保存這些事情它都替你扛下來(lái)。這篇文章就直接講我的實(shí)操經(jīng)歷從選型、環(huán)境準(zhǔn)備、配置拆解到單卡跑通、多卡訓(xùn)練、踩坑排錯(cuò)。如果你想用自己的業(yè)務(wù)數(shù)據(jù)微調(diào)一個(gè)開源底座模型又不想一上來(lái)就去啃 DeepSpeed 那套晦澀的文檔那這篇內(nèi)容應(yīng)該能幫你少走很多彎路。后面涉及的所有步驟都是基于我在實(shí)際項(xiàng)目里的用法配置思路同樣適用于其他配置驅(qū)動(dòng)型的微調(diào)框架OpenRig 只是我把整個(gè)鏈路跑通的那個(gè)載體。1. 為什么是 OpenRig微調(diào)工具鏈的現(xiàn)狀與選型邏輯1.1 微調(diào)一個(gè)模型通常有哪幾條路現(xiàn)在的開源大模型微調(diào)生態(tài)基本分成三個(gè)流派各有各的取舍。第一類是全家桶式的整合工具比如市面上常見的微調(diào)工廠類項(xiàng)目。這類工具的好處是開箱即用界面化或命令行化內(nèi)置了大量數(shù)據(jù)集格式和模型適配連 LoRA 的 rank 都幫你預(yù)設(shè)好。缺點(diǎn)是封裝層比較厚一旦訓(xùn)練過(guò)程出了奇怪的問(wèn)題你想深入到分布式那一層去看會(huì)發(fā)現(xiàn)自己被框架擋住了很多底層參數(shù)改不動(dòng)出了問(wèn)題也不容易定位。第二類是自己手寫訓(xùn)練腳本。很多資深工程師習(xí)慣用 HuggingFace 的 Trainer 或者自己寫一個(gè) PyTorch 訓(xùn)練循環(huán)只依賴 transformers 庫(kù)再加一個(gè)推理腳本。這條路最靈活你能控制每一步。但它的成本也很明顯分布式支持要自己接梯度累積、梯度檢查點(diǎn)、混合精度、斷點(diǎn)續(xù)訓(xùn)這些機(jī)制都要自己搭等這些基建全部就緒真正調(diào)模型的時(shí)間已經(jīng)被壓縮掉一大半。第三類是直接使用 DeepSpeed 這類分布式引擎提供的接口。它的能力是最完整的像 ZeRO 分片、CPU offload、NVMe offload、張量并行這些重型能力都有。但 DeepSpeed 的配置文件即使到今天也仍然給人一種可編程基礎(chǔ)設(shè)施的感覺(jué)——你必須非常清楚每個(gè)字段背后的內(nèi)存模型和通信模式才敢動(dòng)手改。它面向的是平臺(tái)工程師而不是每天要跑好幾版實(shí)驗(yàn)的微調(diào)算法工程師。1.2 OpenRig 的定位一臺(tái)配置驅(qū)動(dòng)的訓(xùn)練鉆井平臺(tái)OpenRig 給我的感覺(jué)是它刻意站在了全家桶和裸 DeepSpeed中間的位置。項(xiàng)目的名字取得很直白Open 是開放Rig 是鉆井平臺(tái)上那種重型設(shè)備的總稱。它不是一個(gè)用來(lái)發(fā)明新訓(xùn)練算法的框架而是把分布式訓(xùn)練里那些高頻、易錯(cuò)的動(dòng)作標(biāo)準(zhǔn)化成配置和命令。你面對(duì)的仍然是一個(gè)相對(duì)簡(jiǎn)單的 YAML 文件但在這個(gè)配置文件里你能感受到 DeepSpeed 的影子——ZeRO 的級(jí)別、offload 的策略、梯度累積的步數(shù)這些都沒(méi)有被藏起來(lái)而是明明白白地?cái)[在配置項(xiàng)里讓你決定。這種設(shè)計(jì)解決了我的一個(gè)很現(xiàn)實(shí)的痛點(diǎn)實(shí)驗(yàn)的可復(fù)現(xiàn)性。之前我用腳本方式訓(xùn)練時(shí)經(jīng)常出現(xiàn)這種情況——一個(gè)實(shí)驗(yàn)跑完過(guò)兩周再想復(fù)現(xiàn)發(fā)現(xiàn)當(dāng)時(shí)的命令行參數(shù)已經(jīng)不全了或者代碼已經(jīng)改得面目全非。用 OpenRig 這類配置驅(qū)動(dòng)的方式整個(gè)實(shí)驗(yàn)的全部要素都固化在了一份配置文件里。模型路徑、數(shù)據(jù)路徑、訓(xùn)練參數(shù)、分布式策略全都寫在同一處代碼基本不需要改。跑完一個(gè)實(shí)驗(yàn)把配置文件歸檔就等于把這次實(shí)驗(yàn)的 DNA 保存下來(lái)了。1.3 我最終選擇它的三個(gè)判斷標(biāo)準(zhǔn)這里順帶說(shuō)一下我挑微調(diào)框架的三個(gè)標(biāo)準(zhǔn)供你參考。第一是可讀性。配置文件的每一行我自己能不能不看文檔就理解它是在做什么。如果一份配置里充滿了只有框架作者才懂的縮寫那我用它的熱情會(huì)立刻減半。OpenRig 的配置項(xiàng)命名接近 DeepSpeed 和 transformers 的習(xí)慣經(jīng)歷過(guò)這兩個(gè)生態(tài)的人幾乎可以零成本上手。第二是可控性。訓(xùn)練中途我想切換到 ZeRO stage 3或者想臨時(shí)打開 CPU offload或者想調(diào)整梯度累積步數(shù)這些改動(dòng)是否只需要改配置而不需要改代碼。OpenRig 在這點(diǎn)上是滿足我的——分布式策略的切換確實(shí)只動(dòng) YAML 就行。第三是可監(jiān)控性。訓(xùn)練期間我要能拿到每個(gè) GPU 的顯存占用、loss 曲線、樣本吞吐量。這一點(diǎn)我單獨(dú)放在后面一章節(jié)里展開講因?yàn)樗鼪Q定了你排障的效率。2. 把 rig 立起來(lái)環(huán)境準(zhǔn)備與顯存估算2.1 先算賬你的顯卡夠不夠跑全參數(shù)微調(diào)這一步是整個(gè)項(xiàng)目里最不該跳過(guò)的地方。很多人上來(lái)就 pip install結(jié)果數(shù)據(jù)跑起來(lái)幾分鐘后直接 OOM才回頭研究顯存浪費(fèi)時(shí)間。顯存估算其實(shí)有一個(gè)很簡(jiǎn)單的經(jīng)驗(yàn)公式。全參數(shù)微調(diào)的時(shí)候顯存消耗主要來(lái)自四塊項(xiàng)目量級(jí)估算以 7B 模型、FP16 為例模型權(quán)重參數(shù)量 × 2 字節(jié)約 14GB梯度參數(shù)量 × 2 字節(jié)約 14GBAdam 優(yōu)化器狀態(tài)參數(shù)量 × 12 字節(jié)FP32 副本 動(dòng)量 方差約 84GB激活值前向計(jì)算中間結(jié)果取決于 batch size 和序列長(zhǎng)度通常數(shù) GB 到幾十 GB看這個(gè)表你就明白了7B 模型做全參數(shù)微調(diào)光權(quán)重、梯度和優(yōu)化器狀態(tài)加起來(lái)就已經(jīng)超過(guò) 100GB 顯存單張 24GB 的消費(fèi)級(jí)顯卡根本放不下。所以如果你手頭只有一兩張消費(fèi)卡又想跑 7B 以上模型第一反應(yīng)應(yīng)該是做 LoRA 或 QLoRA而不是硬扛全參數(shù)微調(diào)。LoRA 只需要訓(xùn)練低秩適配器優(yōu)化器狀態(tài)只跟 LoRA 參數(shù)有關(guān)顯存需求可以壓到原來(lái)的幾分之一。反過(guò)來(lái)如果你有 4 張或 8 張 80GB 的加速卡且模型在 7B 到 13B 這個(gè)量級(jí)那全參數(shù)微調(diào)就是可行的配合 ZeRO stage 2 或 stage 3顯存壓力會(huì)進(jìn)一步緩解。我當(dāng)時(shí)就是先拿 OpenRig 在一張卡上用 LoRA 把流程跑通然后再上多卡做全參數(shù)微調(diào)這樣每一步的變量都足夠少出了問(wèn)題容易定位。2.2 軟件環(huán)境版本搭配決定了你能走多遠(yuǎn)OpenRig 本身不是一個(gè)獨(dú)立于 PyTorch 生態(tài)的項(xiàng)目它的底座仍然是標(biāo)準(zhǔn)的技術(shù)棧。我用的環(huán)境是 Python 3.10、CUDA 12.1、PyTorch 2.1、DeepSpeed 0.12 左右transformers 保持在一個(gè)相對(duì)較新的版本。這里我踩過(guò)一個(gè)坑transformers 版本如果和底座模型的 tokenizer 格式不匹配會(huì)出現(xiàn)加載模型時(shí)報(bào)莫名其妙的 key 錯(cuò)誤而且錯(cuò)誤信息通常不會(huì)直接告訴你版本不兼容而是報(bào)某個(gè) shape 對(duì)不上。我的建議是首先把 PyTorch 和 CUDA 版本對(duì)齊這兩者不一致會(huì)導(dǎo)致整個(gè)訓(xùn)練在第一步就出錯(cuò)。其次把 transformers 的版本固定在某個(gè)你測(cè)過(guò)的版本上不要隨手升級(jí)到最新版。最后OpenRig 的安裝我用的是本地源碼方式也就是 git clone 下來(lái)之后 pip install -r requirements.txt。這樣做的理由很實(shí)際微調(diào)框架本身迭代快升級(jí)有可能改變配置項(xiàng)的行為固定源碼版本能讓實(shí)驗(yàn)真正可復(fù)現(xiàn)。2.3 目錄規(guī)劃別把所有東西都堆在一個(gè)文件夾里訓(xùn)練項(xiàng)目的目錄結(jié)構(gòu)看起來(lái)是小事但做實(shí)驗(yàn)做到后面你就會(huì)知道一個(gè)干凈的目錄結(jié)構(gòu)能救你多少時(shí)間。我習(xí)慣這樣組織project/ ├── configs/ # 每次實(shí)驗(yàn)的 YAML 配置歸檔 ├── data/ # train.jsonl / valid.jsonl ├── models/ # 底座模型權(quán)重本地路徑 ├── output/ # 訓(xùn)練產(chǎn)物checkpoint、tokenizer、日志 └── scripts/ # 啟動(dòng)腳本、評(píng)估腳本每次實(shí)驗(yàn)跑完我會(huì)把對(duì)應(yīng)的 YAML 配置復(fù)制到 configs 目錄以時(shí)間名稱命名。這個(gè)習(xí)慣讓我在三個(gè)月后仍然能準(zhǔn)確判斷這次實(shí)驗(yàn)到底用的是什么學(xué)習(xí)率和什么數(shù)據(jù)分布而不是靠聊天記錄里的只言片語(yǔ)去猜。3. 配置文件里的門道核心字段逐個(gè)拆解3.1 模型與數(shù)據(jù)讓訓(xùn)練有東西可學(xué)OpenRig 的配置里模型部分通常會(huì)指定一個(gè)model_name_or_path。我強(qiáng)烈建議你把底座模型下載到本地目錄然后用本地路徑加載。理由有兩個(gè)一是訓(xùn)練時(shí)如果每次都走 HuggingFace 下載網(wǎng)絡(luò)抖動(dòng)會(huì)導(dǎo)致加載時(shí)間變得很長(zhǎng)二是本地路徑天然就是不可變快照模型版本不會(huì)在你訓(xùn)練到一半時(shí)突然變化。數(shù)據(jù)集方面最常用的是 JSONL 格式每一行是一條樣本。以指令微調(diào)為例行內(nèi)通常包含 instruction、input、output 這幾個(gè)字段OpenRig 在加載數(shù)據(jù)時(shí)會(huì)根據(jù)你配置的 prompt 模板來(lái)拼接。舉個(gè)例子一條樣本可能是{instruction: 解釋一下什么是梯度累積, input: , output: 梯度累積是將多個(gè)小 batch 的梯度累加后再進(jìn)行一次參數(shù)更新的策略。}這里有個(gè)非常關(guān)鍵但容易被忽略的細(xì)節(jié)拼接模板的時(shí)候output部分一定要作為標(biāo)簽被參與 loss 計(jì)算而instruction部分通常要 mask 掉也就是說(shuō)模型在生成答復(fù)之前看到的所有文本都不應(yīng)該反向傳播誤差。如果你的框架沒(méi)有自動(dòng)處理這一點(diǎn)你需要自己檢查拼出來(lái)的訓(xùn)練樣本確認(rèn) loss 只在 output 部分計(jì)算。我見過(guò)太多人因?yàn)橛?xùn)練模板拼錯(cuò)模型最后學(xué)會(huì)的是復(fù)述問(wèn)題而不是回答問(wèn)題。3.2 訓(xùn)練超參數(shù)從 lr 到 batch size 的聯(lián)動(dòng)關(guān)系很多人第一次接觸配置文件會(huì)一個(gè)個(gè)參數(shù)單獨(dú)去理解這樣容易忽略它們之間的聯(lián)動(dòng)關(guān)系。舉一個(gè)最典型的例子global batch size。global_batch_size per_device_batch_size × gradient_accumulation_steps × 顯卡數(shù)量這公式?jīng)Q定了每一次參數(shù)更新的實(shí)際樣本量。假設(shè)你每張卡per_device_batch_size2梯度累積步數(shù)為 8使用 4 張卡那么 global batch size 就是 2 × 8 × 4 64。這個(gè)值會(huì)直接影響訓(xùn)練的穩(wěn)定性以及學(xué)習(xí)率的選擇。常見的做法是當(dāng) global batch size 變大時(shí)learning rate 也可以適當(dāng)調(diào)大但不要一次調(diào)太多否則 loss 曲線直接起飛。學(xué)習(xí)率的量級(jí)全參數(shù)微調(diào)我一般從 1e-5 到 2e-5 起步LoRA 微調(diào)則通常從 1e-4 到 3e-4 起步。這里面的道理在于LoRA 每次只更新一小部分新增參數(shù)可以承受更大的更新步長(zhǎng)而全參數(shù)微調(diào)動(dòng)的是整個(gè)模型的全部權(quán)重步子邁大了很容易破壞底座模型已經(jīng)學(xué)到的能力。max_length這個(gè)參數(shù)也要好好選。它決定了每條樣本在 token 化后會(huì)被截?cái)嗟蕉嚅L(zhǎng)。我實(shí)戰(zhàn)中的經(jīng)驗(yàn)是訓(xùn)練數(shù)據(jù)里大約 5% 到 10% 的樣本會(huì)超過(guò)你設(shè)定的長(zhǎng)度這是正常的但如果超過(guò)一半的樣本都被截?cái)嗟?max_length說(shuō)明這個(gè)值設(shè)得太短模型根本看不完你給它的完整上下文。你需要先對(duì)數(shù)據(jù)集做一次長(zhǎng)度分布統(tǒng)計(jì)再確定 max_length 的數(shù)值。3.3 分布式策略ZeRO 的每一級(jí)都在做什么既然 OpenRig 定位是鉆井平臺(tái)那么分布式策略就是它身上最核心的機(jī)械設(shè)備。DeepSpeed 的 ZeRO 分為幾個(gè) stage很多人每次都靠死記硬背我換個(gè)說(shuō)法讓你一次記住。ZeRO stage 1把優(yōu)化器狀態(tài)切分到多張卡上。每張卡只管一部分參數(shù)的優(yōu)化器狀態(tài)算完梯度后需要跨卡做一次通信。這是性價(jià)比最高的起步選項(xiàng)顯存省得不多但實(shí)現(xiàn)簡(jiǎn)單、通信開銷低。ZeRO stage 2在 stage 1 基礎(chǔ)上把梯度也做切分。每張卡只保存自己負(fù)責(zé)的那部分梯度進(jìn)一步降低顯存。ZeRO stage 3把模型參數(shù)本身也切分到多張卡。每一層只存在于某一張卡上用到時(shí)才通過(guò)通信把參數(shù)廣播給其他卡。顯存省得最多但通信開銷也最大訓(xùn)練吞吐量往往會(huì)有明顯下降。配置時(shí)你需要根據(jù)顯存壓力來(lái)選擇。我的經(jīng)驗(yàn)是如果顯存足夠優(yōu)先 stage 2因?yàn)樗∠碌娘@存足以支撐全參數(shù)微調(diào)而且訓(xùn)練速度比 stage 3 快很多。只有當(dāng)模型大到 stage 2 也放不下時(shí)才上 stage 3或者配合 CPU offload。offload 是把優(yōu)化器狀態(tài)或參數(shù)搬到內(nèi)存里顯存是省了但訓(xùn)練速度會(huì)受到明顯影響能不用就盡量不用。4. 實(shí)操記錄從單卡驗(yàn)證到多卡訓(xùn)練4.1 先跑通再求快單卡小模型驗(yàn)證整個(gè)鏈路我在正式提交大規(guī)模訓(xùn)練任務(wù)之前有一個(gè)雷打不動(dòng)的習(xí)慣先用單卡、小模型、小數(shù)據(jù)量把整條鏈路跑一遍。具體來(lái)說(shuō)選一個(gè)比目標(biāo)模型小一兩檔的模型數(shù)據(jù)只取幾百條把 epoch 設(shè)為 1跑幾個(gè) step 看日志輸出是否正常。這一步的目標(biāo)不是訓(xùn)練出什么效果而是確認(rèn)三件事——數(shù)據(jù)加載正常、prompt 模板拼出來(lái)的樣本內(nèi)容確實(shí)正確、loss 在第一步后是下降的而不是變成 NaN。這里有個(gè)小技巧我會(huì)在配置里打開一個(gè)打印樣本的開關(guān)把 token 化之后拼接出來(lái)的文本直接打印到控制臺(tái)。肉眼確認(rèn)一下 instruction 和 output 中間沒(méi)有混入奇怪的換行符或特殊 token。很多排錯(cuò)工作在這一步就能提前終結(jié)。4.2 多卡啟動(dòng)命令幾個(gè)容易寫錯(cuò)的地方鏈路驗(yàn)證完畢就可以上多卡了。OpenRig 這類框架通常依賴 DeepSpeed 的啟動(dòng)器來(lái)分配進(jìn)程。我常用的啟動(dòng)命令長(zhǎng)這樣deepspeed --num_gpus 4 ./run_train.py --config ./configs/sft_7b.yaml也可以使用 torchrun 的方式OpenRig 基于 PyTorch 生態(tài)通常兩種都能支持torchrun --nproc_per_node4 ./run_train.py --config ./configs/sft_7b.yaml第一次跑多卡時(shí)最容易出的問(wèn)題反而不是命令本身而是環(huán)境變量。比如CUDA_VISIBLE_DEVICES設(shè)錯(cuò)了會(huì)導(dǎo)致明明有 8 張卡實(shí)際只有 2 張可用。排查這類問(wèn)題啟動(dòng)前先用nvidia-smi確認(rèn)當(dāng)前機(jī)器上卡的編號(hào)和顯存占用情況再設(shè)置對(duì)應(yīng)的可見變量能省很多事。多機(jī)訓(xùn)練時(shí)還需要額外注意節(jié)點(diǎn)之間的網(wǎng)絡(luò)互通。第一次跑分布式訓(xùn)練我不建議直接開多機(jī)先把單機(jī)多卡跑穩(wěn)。單機(jī)多卡的通信走的是 PCIe 或 NVLink穩(wěn)定性和速度都有保障多機(jī)多卡一旦涉及網(wǎng)卡、防火墻、主機(jī)名解析問(wèn)題的復(fù)雜度會(huì)瞬間上一個(gè)量級(jí)。4.3 訓(xùn)練過(guò)程的監(jiān)控loss 之外還要看什么很多人只看 lossloss 一降就覺(jué)得萬(wàn)事大吉。實(shí)際上分布式訓(xùn)練中有三個(gè)指標(biāo)應(yīng)該時(shí)刻盯著。第一是 GPU 利用率。如果你發(fā)現(xiàn)某張卡的利用率一直很低而其他卡很高很可能數(shù)據(jù)加載成了瓶頸或者數(shù)據(jù)在卡間分配不均。第二是顯存占用。如果顯存占用在訓(xùn)練過(guò)程中一路緩慢上漲而不是穩(wěn)定在某個(gè)值附近大概率有顯存泄漏跑兩三個(gè)小時(shí)后 OOM 幾乎是必然的。第三是吞吐量比如每秒處理多少樣本或者每秒處理多少 token。這個(gè)指標(biāo)尤其重要它能告訴你當(dāng)前配置下的訓(xùn)練成本是多少方便你決定是否要做調(diào)整。我習(xí)慣用一個(gè)終端專門開一個(gè)監(jiān)控面板實(shí)時(shí)刷新每張卡的利用率、顯存、溫度然后在訓(xùn)練日志里觀察 loss 和吞吐量。訓(xùn)練的前一個(gè)小時(shí)不建議走開因?yàn)榍耙粋€(gè)小時(shí)往往是問(wèn)題的高發(fā)期。4.4 checkpoint 的管理斷電斷網(wǎng)都不怕OpenRig 這類框架在做 checkpoint 保存時(shí)會(huì)同時(shí)保存模型權(quán)重、優(yōu)化器狀態(tài)、學(xué)習(xí)率調(diào)度器狀態(tài)、當(dāng)前步數(shù)這些內(nèi)容。這樣才能做到真正的斷點(diǎn)續(xù)訓(xùn)。你在配置里設(shè)置好保存間隔比如每 500 步保存一次。訓(xùn)練中斷后重啟命令里指定從最近的 checkpoint 恢復(fù)即可。有一個(gè)細(xì)節(jié)值得留意如果你改了配置里的模型結(jié)構(gòu)相關(guān)參數(shù)比如改了 max_length 或者換了一個(gè)不同的數(shù)據(jù)集那從舊 checkpoint 恢復(fù)時(shí)可能因?yàn)?shape 不匹配而報(bào)錯(cuò)。斷點(diǎn)續(xù)訓(xùn)的前提是你恢復(fù)的是一個(gè)相同實(shí)驗(yàn)的現(xiàn)場(chǎng)而不是一個(gè)半路改了配置的新實(shí)驗(yàn)。我在項(xiàng)目里會(huì)為每次實(shí)驗(yàn)單獨(dú)建目錄checkpoint 按實(shí)驗(yàn)?zāi)夸浉綦x這樣就不會(huì)出現(xiàn)恢復(fù)錯(cuò)了現(xiàn)場(chǎng)的低級(jí)錯(cuò)誤。5. 踩坑記錄OOM、loss 不降、訓(xùn)練卡死5.1 OOM 的三種常見場(chǎng)景顯存溢出大概是微調(diào)過(guò)程中出現(xiàn)頻率最高的問(wèn)題。它有三個(gè)主要來(lái)源處理方式完全不同。第一種是激活值導(dǎo)致的 OOM。前向計(jì)算中每一層的中間結(jié)果都需要占用顯存序列越長(zhǎng)、batch 越大激活值占用越高。解決方法是打開梯度檢查點(diǎn)gradient checkpointing用重計(jì)算的方式騰出顯存或者減小max_length與per_device_batch_size。第二種是優(yōu)化器狀態(tài)導(dǎo)致的 OOM。這一般發(fā)生在全參數(shù)微調(diào)場(chǎng)景權(quán)重和優(yōu)化器狀態(tài)加起來(lái)超過(guò)了顯存。解決方法是升級(jí) ZeRO stage或開啟 offload或者換成 LoRA 方案。第三種是數(shù)據(jù)長(zhǎng)度極端導(dǎo)致的 OOM。假設(shè)你的max_length設(shè)為 2048數(shù)據(jù)里絕大多數(shù)樣本都是幾百 token但偏偏有極少數(shù)樣本長(zhǎng)度逼近 2048那這少數(shù)幾個(gè)樣本就會(huì)讓顯存占用出現(xiàn)尖峰導(dǎo)致 OOM。這種問(wèn)題的特點(diǎn)是不穩(wěn)定——有時(shí)跑幾十步?jīng)]事忽然某一步就炸了。我的經(jīng)驗(yàn)和做法是在數(shù)據(jù)處理階段就按長(zhǎng)度做直方圖統(tǒng)計(jì)把長(zhǎng)度明顯超標(biāo)的尾巴樣本單獨(dú)過(guò)濾掉而不是把風(fēng)險(xiǎn)留在訓(xùn)練過(guò)程中。5.2 loss 不降或者震蕩先查數(shù)據(jù)再查參數(shù)訓(xùn)練開始后最讓人焦慮的莫過(guò)于 loss 長(zhǎng)時(shí)間不降。這種問(wèn)題我的排障順序永遠(yuǎn)是先查數(shù)據(jù)再查代碼最后才動(dòng)訓(xùn)練參數(shù)。數(shù)據(jù)層面第一個(gè)要確認(rèn)的是模板拼接是否正確。把打印出來(lái)的樣本逐條人工檢查確認(rèn) input 和 output 沒(méi)有倒置。第二個(gè)是確認(rèn)數(shù)據(jù)是否被隨機(jī)打亂。如果訓(xùn)練數(shù)據(jù)是純按類別排列的前面幾千條都是同一類樣本模型在早期只會(huì)看到單一分布loss 曲線就會(huì)呈現(xiàn)出奇怪的周期性波動(dòng)甚至長(zhǎng)時(shí)間下不去。代碼層面確認(rèn)是否只有 output 部分參與了 loss 計(jì)算。如果你把整個(gè)拼好的文本都拿去做交叉熵模型的目標(biāo)函數(shù)會(huì)變成預(yù)測(cè)問(wèn)題本身訓(xùn)練出來(lái)的模型效果會(huì)非常差表現(xiàn)為生成時(shí)大量復(fù)述。如果數(shù)據(jù)和代碼都沒(méi)問(wèn)題再考慮學(xué)習(xí)率。全參數(shù)微調(diào)學(xué)習(xí)率過(guò)大時(shí)loss 會(huì)劇烈震蕩過(guò)小時(shí)loss 則下降得極其緩慢。有一個(gè)比較實(shí)用的判據(jù)第一個(gè) step 的 loss 應(yīng)該和隨機(jī)初始化的困惑度差不太多如果第一個(gè) step 就出現(xiàn)極大或極小的數(shù)值通常是數(shù)據(jù)或精度設(shè)置出了問(wèn)題。5.3 分布式訓(xùn)練里的假死不是卡死是等待多卡訓(xùn)練時(shí)最讓人崩潰的往往不是報(bào)錯(cuò)而是整個(gè)訓(xùn)練看起來(lái)完全停住日志半天不動(dòng)。這里我先提醒一句分布式訓(xùn)練里進(jìn)程通信的等待是常態(tài)并不是真的死機(jī)所以不要立刻 kill 進(jìn)程。你首先要確定的是它在通信等待還是真的無(wú)響應(yīng)。如果是第一次多卡通信NCCL 初始化階段經(jīng)常要花一兩分鐘建立連接日志停留時(shí)間較長(zhǎng)是正常的。如果超過(guò)十分鐘仍然一動(dòng)不動(dòng)通常問(wèn)題出在網(wǎng)絡(luò)層面——比如主機(jī)名無(wú)法互相解析、防火墻阻擋了通信端口或者網(wǎng)卡選錯(cuò)。這時(shí)可以把NCCL_DEBUGINFO打開重新啟動(dòng)日志里會(huì)輸出非常詳細(xì)的通信過(guò)程你能看到是哪個(gè)節(jié)點(diǎn)連不上。還有一個(gè)容易被忽略的問(wèn)題多卡訓(xùn)練時(shí)各卡的工作負(fù)載不均衡。DeepSpeed 在 ZeRO 下會(huì)把各層分配到不同卡上如果數(shù)據(jù)長(zhǎng)度分布不均勻某些卡負(fù)責(zé)的層激活值特別大就會(huì)成為顯存瓶頸導(dǎo)致其他卡在等它算完整體吞吐量上不去。這種隱性不均衡不像 OOM 那樣直接報(bào)錯(cuò)但會(huì)表現(xiàn)為訓(xùn)練速度遠(yuǎn)低于預(yù)期。應(yīng)對(duì)辦法是盡量讓數(shù)據(jù)長(zhǎng)度均衡或者在數(shù)據(jù)處理階段按長(zhǎng)度做分桶 padding。6. 跑通之后的收尾實(shí)驗(yàn)管理、效果評(píng)估與下一步擴(kuò)展6.1 實(shí)驗(yàn)管理讓每個(gè)結(jié)果都經(jīng)得起回溯訓(xùn)練跑完僅僅是開始的一半。我會(huì)為每一次成功實(shí)驗(yàn)做三件事第一把最終使用的配置文件復(fù)制一份存檔文件名加上實(shí)驗(yàn)編號(hào)和日期第二把訓(xùn)練日志保存下來(lái)確保 loss 曲線可以被后續(xù)可視化第三記錄一張簡(jiǎn)短的結(jié)果卡包括數(shù)據(jù)集規(guī)模、訓(xùn)練步數(shù)、最終 loss、驗(yàn)證集上的評(píng)測(cè)指標(biāo)、模型輸出示例。這三樣?xùn)|西合起來(lái)才是一次實(shí)驗(yàn)的完整閉環(huán)。為什么要強(qiáng)調(diào)這一點(diǎn)因?yàn)槲⒄{(diào)項(xiàng)目里你大概率要面對(duì)數(shù)十次乃至上百次實(shí)驗(yàn)。如果沒(méi)有這套歸檔習(xí)慣你很容易陷入這次效果好但不知道為什么好的境地。配置驅(qū)動(dòng)框架的最大優(yōu)勢(shì)就是所有變量都在配置里只要你同步歸檔任何一組結(jié)果都能精確復(fù)現(xiàn)。6.2 評(píng)估模型不要只信 loss要跑到生成那里去看很多初學(xué)者的通病是看到訓(xùn)練 loss 下降就覺(jué)得模型已經(jīng)訓(xùn)練好了。實(shí)際做指令微調(diào)時(shí)loss 和真實(shí)生成質(zhì)量之間并不總是完全一致。原因很簡(jiǎn)單loss 是一個(gè) token 級(jí)別的平均交叉熵它反映的是模型對(duì)訓(xùn)練分布的整體擬合程度但不直接代表模型在真實(shí)請(qǐng)求上的表現(xiàn)。我的做法是保留一份專門的評(píng)估集里面的樣本在訓(xùn)練時(shí)絕對(duì)沒(méi)有出現(xiàn)過(guò)。訓(xùn)練結(jié)束后我用這批樣本的 instruction 部分去觸發(fā)模型生成然后人工檢查生成結(jié)果。重點(diǎn)看三件事格式是否符合預(yù)期、是否出現(xiàn)復(fù)述問(wèn)題而不是回答問(wèn)題、生成內(nèi)容是否安全可控。做完這輪人工評(píng)估才敢把模型交給下游推理鏈路。6.3 下一步擴(kuò)展從 SFT 到繼續(xù)預(yù)訓(xùn)練、長(zhǎng)文本、部署銜接跑通一輪 SFT 后OpenRig 這類配置驅(qū)動(dòng)框架的擴(kuò)展空間還是挺大的。最常見的方向有三個(gè)。方向一是繼續(xù)預(yù)訓(xùn)練。SFT 用的是指令問(wèn)答數(shù)據(jù)繼續(xù)預(yù)訓(xùn)練用的是大量領(lǐng)域文檔數(shù)據(jù)這兩種任務(wù)的配置差異主要在數(shù)據(jù)格式、學(xué)習(xí)率和訓(xùn)練步數(shù)。你只需要準(zhǔn)備符合格式的語(yǔ)料調(diào)整訓(xùn)練參數(shù)框架層面基本不用改動(dòng)。方向二是更長(zhǎng)上下文的訓(xùn)練。底座模型的默認(rèn)上下文長(zhǎng)度往往有限如果你想針對(duì)長(zhǎng)文檔場(chǎng)景做適配需要把max_length調(diào)大同時(shí)開啟 DeepSpeed 的序列并行相關(guān)能力顯存壓力會(huì)增加不少可能需要配合梯度檢查點(diǎn)來(lái)平衡。我記得自己在做長(zhǎng)文本適配時(shí)光是顯存估算就來(lái)回調(diào)了好幾輪最后還是靠減小 batch size 才穩(wěn)定跑起來(lái)。方向三和部署銜接。微調(diào)產(chǎn)物如果是 LoRA 這類增量權(quán)重推理前需要把增量權(quán)重合并回底座模型或者用支持 LoRA 的推理框架直接加載。這一步看似簡(jiǎn)單卻經(jīng)常因?yàn)榘姹静灰恢庐a(chǎn)生詭異的問(wèn)題。給底座模型和微調(diào)框架做版本鎖定的價(jià)值在部署那一刻會(huì)體現(xiàn)得淋漓盡致只要版本一致合并動(dòng)作就是確定的不會(huì)有任何意外。我自己在跑完第一輪完整的 OpenRig 微調(diào)項(xiàng)目時(shí)最大的感受其實(shí)不是工具好用而是終于不用把大量精力花在分布式訓(xùn)練的基建上了。之前我至少要花上兩三天去配置 DeepSpeed、調(diào)試多卡啟動(dòng)、處理 checkpoint 恢復(fù)用配置驅(qū)動(dòng)的框架之后這些時(shí)間被壓縮到半天以內(nèi)。省下來(lái)的時(shí)間全都投在了數(shù)據(jù)清洗、樣本審查和生成效果評(píng)估上——而這些恰恰是微調(diào)項(xiàng)目里真正決定最終質(zhì)量的部分。如果你正準(zhǔn)備開始自己的微調(diào)項(xiàng)目我的建議很簡(jiǎn)單一開始不要追求最大的模型、最多的卡先把一套小模型、小數(shù)據(jù)量、完整鏈路的方案跑通。把 rig 架穩(wěn)了再往上加設(shè)備才不會(huì)被各種地基問(wèn)題反復(fù)絆倒。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
成人在线午夜视频一区| 五月开心网| 久久草草欧美精品| 久久αⅴ| 一区,二区,三区视频| 97在线观看播放视频| 老鸭窝日丰县女人| 九九精品热| 96精品久久| 色哟哟国产精品免费网址| 中文字幕精品一区二| 新视频sss国产| 97自拍视频在线| 97综合久久| 亚洲视频小说| www.97在线| 日韩无码黄色片| 欧美男人的天堂| 国产第25页在线观看| 一区二区三区高清| 风骚少妇视频中文字幕| 欧美 亚洲 制服 精品| 亚洲AV成人精品网站在AV| 情色五月天就去干| 大香伊人在线一区| 日本高清电影欧美色图| 久久亚洲精品成人av| 啊啊啊啊啊在线| 欧美91精彩| 婷婷爱五月| 日本操色导航| 一起草欧美| 色色九区| 另类老少妇| 激情图片伦理国产一区二区日韩| 亚洲欧洲网站免费观看| 国内偷自视频区视频综合 | 国产亚洲色停停久久99精品91| 婷婷五月天补不补| 色综合九九| 草草影院最新网址| av天堂精品久久| 久久精品国产亚洲5555| 精品日日人妻| 亚洲欧美综合网 | 欧美日韩在线视频网站| 夜夜嗨视频| 久湿久久| 欧美中字不卡| 青木玲在线不卡| 久久这里精品国产99丫e6| 亚洲精品精品一区二区| 久久五月丁香| 丁香五月成人| 丰满人妻一区二区三区| 99精品久久久久久久婷婷蜜桃| 色97干| 精品乱码久久久久| 日本黄色裸日本黄色裸体 | 国产深夜福利| 超碰色老头| 超碰欧美97资源| 在线观看A啊啊啊| 天天淫人人妻日日色| 亚洲男人天堂2019| 江都AV在线| 九九精品美女高溯喷水| 综合日本女人伊人| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 97干97色| 欧美人与动性人交a| 久久久91| 久久久亚洲Av| 九色在线熟女国产黑人| 亚洲成人综合在线| 伊人久久在线视频观看| 91强奸乱轮| 国产高清成人传媒影视| 亚洲欧洲偷拍一区| 亚洲三级网址久久最新| 污到发麻的视频 国产| 色婷婷综合网| 久久爽爽精品| 亚洲图片欧美偷拍| 亚洲AV成人无码一二三久久| 午夜福利精品| 日本 欧美 亚中文字幕| juliaann丝袜大战黑鬼| 天堂综合| 91免费看一区二区三区| 天天综合网日韩7799| 国产精品久久久久久久黄无码 | 伦理弟一页| 国产噜噜噜噜噜久久久久久久久| 男人的天堂在线| 爱爱久久| se吧提供91精品国产91久久久久久| 国产福利电影| 在线强奷到舒服的无码视频| 91操操| 黑操B| 欧美韩国你懂得在线| 午夜AV污污污| 国产又黄又粗又猛大片| 性色av婷婷久久一区二区点复制| 久久精品免费| 中文字幕黄色一起草| 色欧洲| 欧美性爱日韩性爱| 爱爱60秒免费视频| 午夜精品久久久久久久99热影院 | 98福利在线视频| 欧美激情精品久久久久久| 亚洲av性爱电影| 日本操BAV| 国产精品久久发布| 屁股久久久久久久久| 久操视频在线观看| 免费一级特黄特色大片在线观看看| 国产强奸超碰AV| 人人妻人人操人人乐| 熟妇高潮一区二| 国产精品网址| 五月丁香六月激情综合| 美腿色图| 91精品老女人| 亚洲av乱伦色图网站| 和协无码影院| 免费男人的天堂| 国产精品亚洲无码| 超碰久热| 狠狠躁天天躁日日躁97| 中文字幕在线观看永久| 亚洲国男人的天堂| 少妇久久久久| 日韩人妻精品久久久久| 校园春色美腿丝袜| 天堂俺去俺来也www久久婷婷| 狠狠色婷婷7777久| 日韩精品怡红院| 亚洲av青草久久一区二区| 亚洲天堂7777| 欧美后入式| 国产小黄片在线免费观看| 九九热免费国产视频婷婷伊人| 国产精品一二三| 亚洲最大成人a毛毛片| 91天天综合网,天天综合网| 亚洲综合20p| 亚洲无码一二三区| 怡红院亚洲怡春院av| 午夜福利国产欧美日韩夜夜| 欧美亚洲第1页| laoshunv91| 精品日韩中文在线| 熟女自慰久久久| 国产亚洲精品A在线观看下载| 色综合久| 熟妇女伦乱视频| 五月天激情小说| 神马麻豆福利院| 亚洲日韩美国人妻| 国产三级中文字幕粉嫩| 五月激情综合网| 蜜臀久久久99久久久久 | 天天草夜夜草高潮片| 亚洲自拍青操视频| 亚洲欧美日韩不卡人妻| 国产真实野战在线视频| 97超碰欧美手机在线| 色综合久久88色综合久久天天| 蜜臀99999| 亚洲无码国产探花在线观看| 大香蕉综合| 欧美性第一页| 久久久久久无码人妻中文字幕| 强奸乱伦AV网址| 青青草成人视频在线观看二区| AV一区观看| 91伊人大香蕉| 亚洲熟妇乱女区二区三区| 超碰国产精品久| 亚洲激情片| 亚洲色电影在线| 久热精品在线| 久草免费在线视频| 中日韩免费看男女操逼大全| 无码九九| 欧美91在线| 欧美综合第一页| 亚洲精品欧洲色| 新91视频.cmp| 97综合网| 老熟女搡BBBB搡BBBB视频| 亚州色综合| 亚洲少妇综合| 欧美熟妇精品黑人巨大91| 欧美一级专区免费大片| 九九英色视频| 色综合潮| 精品网站99999| 熟女一区二区三区四区| 精品乱码在线观看| 人人澡人人澡人人| 97亚洲欧美| 国产三级片在线观看| 97天堂| 玖玖综合网| 91精品国产91久久福利| 97啪啪| 中文字幕国产在线天堂| 亚洲熟女综合网| 人妻丰满熟妇av无码区蜜桃| 操逼操逼操| 天天插夜夜操| www五月| 国产丰满少妇久久久精品影院| 亚洲乱熟女一区二区| 最新av网站在线观看| 五月综合婷婷久久网站| 欧美视频激情久久久久久| 992视频一区| 免费少妇一区二区| 国产精品对白内射| 国产传媒日韩| 人妻日日夜夜精品| 久久精品店| 色播五月婷婷| 3PAV乱伦视频| 国产13区| 日本欧美亚洲高清在线看| 麻豆国产成人精品| 极品美女福利在线观看| 噜噜噜亚洲精| 国产精品青青草| 男同专区一区二区三区在线| 日韩三四五区| 翔田千里Av在线| 性欧美天天| 女人天堂av在线播放| 亚洲色五月| 91视频综合网| 国产一区二区久久| 精品一啪| 96麻豆精品一区二区三区| 激情第四色| 欧美性91| 天天综合影院91| 午夜AV人气不卡| 啊嗯嗯啊好大好爽| 婷婷五月天成人网| 午夜舔阴达高潮视频免费看| 亚洲棕合电彰| 日韩三级天堂在线观看| 人人澡人人干| 99这里只有精品| 国产99热| 亚洲色91C| 无码日韩人妻av一| 欧美综合第一页| 丝袜视频一区二区在线播放国产中文| 青青免费在线视频一区| 99久久免费看精品国产一区| 人妻熟妇久草在线| 我中文字幕6区| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 天堂种子在线www网资源| 97欧美| 97综合久第一页| 蜜臀亚洲中文| 天天草AV| 成人无码专区精品视频| 日韩啪啪啪啪啪| 一区二区影院| 333kkkk·亚洲com久久| 国产高清视频无码在线| 97亚洲在线| 蜜臀av网址| 日韩午夜国产| 国产精品视频在线播放| 亚洲大胆人体av| 久九干| 青青青国产| 欧美综合区| 毛片久久| 日躁天天爽爽| 色网亚洲人| 歐美性天天| 大香蕉碰碰| 午夜福利视频在线一区| 新久久AV| 国产精品宅男免费| 亚洲精品人妻在线| 日韩欧美久久婷婷网站| 欧美性爱一区二区三区四区| 午夜精品99久久久久传媒| 强奸乱伦AV网站| 欧美精品第3页| 97视频新免费| 亚洲春色欧美激情自拍| 国产真实子伦对白| 天天懆天天日| 丝袜AV一二三区| 999熟女精品| 女优视频第10页| 亚洲欧洲小说图片视频 | 中国人高清www色视频免费| 日天天九九天堂666| 九9精品| 久久久新亚洲AV| 中文字幕免费看大片| 人人澡人人爽人人精品| 国产日韩久久| 午夜福利久久久噜久噜久久综合| 大干人妻| 亚洲精品精品一区二区| 欧美 亚洲 另类 综合| 欧色网址| 一区在线观看中文字幕| 加勒比综合九九99视频在线播放| 亚洲s色图| 日韩无码一级黄色av片| 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 久草毛片| 国产精品无码av| 久久AV无码网址| 婷婷久久综合久| 免费观看成人www精品视频| 最新日产中文在线麻豆| 天天干天天爽| 欧美日韩小说| 丝袜综合色图| 浪人综合网| 蜜桃一区二区三区| 国产熟女免费观看久久| 91伊人久久在线| 欧美综合区| 亚洲欧美色图片| 麻豆久久久久久久久丝袜| 99这里都是精品| 丁香五六月啪啪| 色狠狠综合噜一二三区| 亚洲无码国产探花在线观看| 黑丝日韩av丝袜av| 无码精品蜜桃一区二区三区ww| 99爱久久视频频| 97超碰中文在线| 无码国产精品午夜不卡(| 婷婷五月天久久精品视频一区二区三区| 亚洲鸥美色图| 国产操逼视频在线观看| 国产精品在线免费| 白 大 人妻 区 在线| 91超碰人人操| 人人人摸人人| 国产强奸乱伦欧美| 人人操人人摸超碰| 天天综合网~91综合网| 国产乱人伦AVA麻豆软件.| 综合 亚洲 欧美| 亚洲诱惑| 97视频网站在线观看| 欧美性生活男人的天堂| 妇女乱色二区| 亚州久久9| 超碰99热| 国产不卡免费在线视频| 成人欧美日超碰| 99精品无码| 久久午夜色播影院免费高清| 日韩人妻无码精品系列| 九九99精品视频在线观看| 97视频在线免费观看| 超碰久久网| 亚州操操穴网| 99热综合| 大香蕉一线视频| 乱伦Av网| 亚洲成熟国产精品美女| 亚洲精品三区在线观看| 欧美成人A√在线一区二区| 国产又黄又爽| 亚洲av青草久久一区二区| 欧美天天综合在线| 亚洲无码国产探花在线观看| A级在线视频| 巨爆乳一区二区爆乳区| 欧美成人A√在线一区二区| 久久尹人大香焦视| 久久超碰天天| 91精品91久久久中77777| 久草毛片| 欧美成人性活片| 男人的天堂网页| 久久久久久九九九九九| 天堂av最新电影网| 久超碰这里只有精品| 1204金沙人妻懂旧版免费| 在线观看黄色电话| 亚州春色| 最近2018中文字幕在线高清第一页| 亚洲导航深夜福利| 四虎AV在线观看| 国产情色第一第二页在线观看| 精品久久久久瑟瑟| 日韩av情韩国爱禁区av一区二区| 精品人妻一区二区三区不卡断 | 狠操91,com| a片 xxxx受爽视频| 婷婷色综合| 久草在| 91无码西班牙视频在线| 国产激情久久久| 性生活无遮挡纯毛片在线看| 久久9久| 日本操BAV| 欧美精品91| 激情综合 婷婷五月 红杏| 久久久久九九九九| 婷婷99狠狠躁天天躁| 啊啊好多水| 国产精品夜夜| wwwcaobibi| 午夜欧美神马久久久久| 天天综合网网欲色| 天天看,天天做| 日韩pv中文| 免费看黄片现成| 97爱爱爱综合| 国产精品自拍xxxx| 天堂网亚洲区手机版| 欧美精品久久久久久久久88| 国产丝袜一区二区三区| 国产亚洲色婷婷久久99精品91| 色眯眯av| 在线 制服丝袜中出 人妻| 中国91AV| 欧美亚洲厕所精品偷拍91| 郑州宾馆老熟女露脸啪啪| 亚洲欧洲激情| 97超碰国产精品| 极品销魂美女一区二区| 色麻豆AV| 99热这里只有精品9| 欧美男人的天堂| 欧美少妇一区二区三区| 四虎在线视频| 白丝1区2区3区| 中文字幕日韩专区精品系列 | 欧亚日本情色| 日产狠狠干| 亚洲av综合伊人久久| 999 久久久| 自偷自拍的亚洲视频| 国产日韩美女小穴视频网站不卡| 国产青一二三| 久久亚洲AV成人精品无码| 九九九九九九九九九国产精品 | 日韩天堂av电影在线观看| 久久东京国产精品视频| 少妇一级婬片免费放一级a性色.| 精品美女少妇一区二区| 色大师网站www永久网站视频| 亚洲欧美自拍偷拍| 青青久久艹| 久草线上视频免费看| 无码91| 色丁香久久| 国产亚洲精品美女久久久| 熟女六十路| 日韩无码人妻中字久久三区四区| 日本999精品| 青娱乐av在线| 丁香六月婷婷久久综合| 成人性爱视频在线看| 亚洲一曲日韩精品| 9色国产精品一区粉嫩| 人妻天堂三区| 96久久久久久久| 久操电影网| 91丰满| 欧美色欧美| 欧美中文字幕精品人妻| 国产白丝AV| 无套后入双马尾| 无码粉嫩白虎一线天b区| 人妻娇喘 激情视频| 91操熟女| 国产亚洲色婷婷久久99精品91葵花宝典| 久久久久国产精品片区无码直播| 亚洲丁香花色| 狠狠亚洲| 欧美性爱一区二区| 美国美女AV在线| 五月天伊人| 激情视频图片| 性久久久| 婷婷色网| 国产热av| 亚洲国产成人精品999| 能在线播放的国产三级| 无码99| 国产日韩中文字幕欧美| 999久久久免费精品国产牛牛| 久久五十路熟女人妻| 国产男女无套视频免费观看| 久久综合18p| 久久噜噜噜精品国产亚洲综合| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 国产毛片在线| 九九国产热| 天天看天天日| 玖玖在线视频| 91免费看一区二区三区 | 成人免费在线网站| juliaann丝袜大战黑鬼| 欧美性爱第一页久久| 91色综| 欧美日韩资源| 欧美九九99久久精品| 夫妻日逼| 亚洲最大的黄色电影网站。| 日韩一级久久毛片| 老熟女区| 精品视频免费在线一区| 9 7超碰在线免费观看| 97亚洲综合| 欧美极品少妇交| 蜜臀久久99精品久久久久久婷婷| 亚洲操人| 九九无码| 久久亚州高清| 十八岁啪啪视频免费看| 国产一区二区三区久久精品太古里| 视频国产精品未满十八禁止在线观看| 天天天天做夜夜夜夜做| 麻豆福利视频导航| 乱欲一区二区| 一级做a爰片性色毛片久久| 日本男人插女人的逼黄色| 国产51色综合久久免费| 丝袜美腿91| 99久久99九九99九九九| 久久天堂| 无码人妻毛片丰满熟妇精品区| 五月婷色| 日本高清_区二区三区 | 伊人丝袜美腿高跟在线观看高清| 久久婷婷亚洲| 天天操夜夜操狠很操| 校园春色 亚洲| 亚射在线| 国产又粗又又黄又猛| 午夜.DJ高清在线观看免费7 | 丁香五月天堂网| 人妻中文字幕精品无码| 精品人妻一区二区三区视频在线| 美女干逼2| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 国产精品无码在线| 97在线视频观看网站| 亚洲欧美黄| 男人天堂导航| 在线播放欧洲免费av| 91黑丝操| 果冻传媒一区二区三区| 91丝袜熟女| 天天干天天日天天射黄色片| 久久9 9 9精品| 亚洲……91| 国产精品女同| 日本亚洲vr欧美不卡高清专区| 日本综合色图| 欧美劲爆视频一区二区| 无套内射性感少妇视频| 91大学精品激情戏| 青青草亚洲一区| 又摸又舔在线观看网站| 老女人91| 91综合网站| 国产1024在线播放| 日韩人妻一区二区| 久久欲| 嗯嗯啊好大| 中文字幕78| 婷婷丁香人妻| 国产在线综合福利网站| 成人激情无码在线视频| 99热18| 密臀在线免费观看| 91老妇女| 色操逼网| 亚洲激情久久| 国产视频第2页| 久久久久久十| 看大黄色大片原件| 五月综合色| 青青草日本中文字幕| 少妇三p| 国产女人成人精品视频| 超碰午夜| 欧美日韩黄片精品在线| 久久本道| 国产熟女无套内射| 久操精品网| 国产一区二区久久| 秋霞 色色| 国产按摩一区二区三区| 后入式五六区| 久久成人午夜精品影院| 久久久精品一区二区| 久热一区二区| 91人妻视频在线| 精品国产乱码久久| 中文字幕视频一区视频二区| 国产午夜精品理论片一二三区区| 蜜臀少妇一区二区| 中文字幕视频在线观看| 亚洲黄色网址视频| 91男人天堂网| 大香蕉专区| 天天看精品动漫视频一区| 91人妻超碰| 伊人一级免费黄片| 九九精品美女高溯喷水 | 在线观看免费视频国产| 老熟妇综合| 无码丰满熟妇一区二区浪潮AV| 国产精品欧美激在线| 中文字幕精品一区二区精| 欧洲一区二区| 国产天天骚| 日本免费一级AAA大片器| 性感美女91影视| 亚洲综合色男人网| 午夜啪啪片| 四虎精品一区二区| 最新av中文字幕高清| 国产精品不卡高清在线观看| 久久黄片国产一区二区| 精品视频久久区| 丝袜美腿诱惑亚洲欧美视频在线观看 | 中文字幕第23区| 69精品人人人人| 日韩电影在线观看网址| 久九9精品| 亚洲精品男人的天堂| 人人做,人人操,人人摸| 97伊人超碰| 欧洲一区二区三区免费| 麻豆蜜桃视频在线观看| 欧美v亚洲v日韩v最新在线二区| 亚洲欧美综合| 色妇综合网| 久久久精品九| 中文字幕免费看| 嗯嗯啊啊用力视频免费| 久色网| 一级A片女人高潮叫床| 一级婬片120分钟试看| 97视频网站| 色吧 综合| 五月天亚洲色图| 超碰99re| 国产精品96| 久久免费9| 中文不卡视频| 91日产桃蜜| 久久久久久久久国产| 超碰97男人| 97就爱干| 国产在线激情| 一中国女人毛片水真多| 超碰人人操97碰| www成人啪啪18秘 免费| 久久久九九网站| 五月天婷婷综合网| 日本有码影片下载| 水澄无码AV| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 91丝袜在线观看视频在线观看| 久久侵犯人妻爽爽爽| 91伊人影视综合| 欧美大战久久久伊人| 大乔未久88一区| 校园春色欧美| 国产在线视频午夜精华在| 欧美日韩插逼视频| 丁香五月天啪啪| 亚洲网自拍| 久久久久深夜无码| 激情小说图片亚洲首页| 草莓精品视频| 久久免费中文字幕在线观看| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 亚洲成人ab| 色色网91| 夜夜爽77777| 中国熟女91| 国产在线激情视频| 2011国产精品| 97久久国产精品女不卡| 日本片日本片祼观看网站在线看中文版网页在线看 | julia中文字幕在线观看| 久午视频| 插日本熟女视频| 日本三级韩国三级99| 超碰69| www.99色| 嗯嗯啊啊好疼| 黄色片A级一区二区三区| 91久久久久免| 欧洲综合色图| 狠狠久久亚洲欧美专区| 日本高清一本二本免费不卡| 中文人妻av高清一区| 精品视频久久久久九九九九9999 | 国产乱子伦久久精品综合一区二区三| 日韩视频啪啪| 国产九九九九九九| 亚洲色欲天天人妻无码系列专区| 亚洲双插| 熟妇熟女视频一区二区三区| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 东北女人av| 国产在线观看91精品一区| 青青草在线视频人人想人人上| 另类图片天天影视| 老熟女熟妇| 国产成人超碰在线| sss视频华人在线| 亚洲精品免费中文字幕| 欧美色图片欧美色图| 免费观看的av| 久久天天艹| 亚洲男人天堂2013| 色香色欲天天综合网天天来吧| 美女骚尻视频| 精品无码久久久| 国产高清MV操逼视频| 99热在线观看| 日韩欧美麻豆 | 中文字幕在线日亚州9| 超碰97人妻在线| 91n处女在线观看| 欧美激情超碰777| av在线资源| 中国一区二区亚洲人妻| 一起草三级AV电影在线观看 | 亚洲码专区| 亚洲国产综合久久久性感熟妇| 91久久免费视频互動交流| 色欲久久99国产精品久久久久久| 欧美青青视频| 香一区二区三区| 熟女六十路| 亚洲阿v天堂无码z2018| 最新亚洲黄色免费电影| 精品午夜福利| 亚洲熟女一区二区| 淫穴高潮色图| 青青三级视频| 啊啊好多水| 超AV色女| 一区二区三区日韩欧美| 国产农村妇女一区二区| 99热这里只有精| 国产欧美美女免费观看视频| 婷婷久久网| 国产免费永久精品无码| 青娱乐久久艹| 一区二区娱乐网站| 99re在线观看| 97国产精品国| 综合激情97 | 夜夜爽夜夜| 国产亚洲色停停久久99精品91| 天天影视色香欲综合网小说| 无套内射人妻在线播放| 激情丁香婷婷| 亚洲精品天天影视综合网 | 少妇国产不卡| 成人熟女区| 欧美美逼| 亚洲色婷婷久久91| 韩国一级婬片A片无码天美 | 色香综合| 国产三级多多影院2022国产AA一级毛片无码| 逼逼逼逼操操操操操操操操操午夜剧场 | 4141514逼喷水三级片| 高清肉丝中文无码| 亚洲巨爆乳一区二区三区四季网| 国产对白刺激视频| 激情婷婷| 天天干1区2区在线| 国产后入| 一区三区啪啪| 国产美女精品| 精品一区二区三区国产 | 欧美在线电影| 思思热影视| 蜜桃久久久久久久| 久久精品99| 国产最新小视频在线播放下载| 25国产精品免费观看| 青青青草伊人精品| 成人aⅴ一区二区三区| 久久久久久久久久久人妻| 精品人妻久久久久一区二区三区| 亚洲一卡2卡3卡4卡乱码网站| 91偷拍欧美亚洲| 久久AV无码AV| 男人天堂.AB| 99无码狠狠久久| 亚洲老熟妇xxx| 天天射日日干| 蜜乳AV一区二区三区四| 爱爱动态试试看6 0秒| 特污精品女优骚货黄色视频在线免费观看| 曰韩操B| 校园春色欧美| 九九色婷婷| 国产精品69久久久久久久| 日本精品高清一二区一本到| 免费男人的天堂| 亚洲色五月| 人人性爱视频免费| 久久宗合亚洲| 殴美在线AⅤ| 亚洲色交| 闷骚老熟女15P| 色欲日韩欧美在线一区| 9精品久久久久| 蜜桃久久久久久| 国产久久av| 東南亚性呦成人伦理资源在线视频| 亚洲高潮少妇| 精品国产av一区二区三区四区入口| 日韩人妻无码精品系列| 极品极品色影院| 插入逼91| 91天美免费| 九热大香蕉| 啪啪一区| 天天做日日爱夜夜爽| 国产黄色剧情影片麻豆免费播放| 二三四区精品| 1区2区3区在线视频| 色哟哟511老熟女| 国产精品原创巨作?v网站| 夜夜久久久| 四虎在线免费视频| 国产精品色哟哟| 97爱免费插| AAA久久| 成人免费不卡在线视频| 国产精品成久久久久午夜午夜| 日韩成人小视频| av草草在线电影| 欧美日韩另类字幕中文| 美女淫穴| 天天爽夜夜欢视| 好爽,再快点啊哈嗯嗯嗯嗯| 欧美论理片| 国产美女精品| 天美传媒AV国产在线| 色91综合网| 磁力99AV| 午夜福利在线合集| 91狠狠狠| 0755午夜福利视频| 亚洲图片欧美色图| 亚洲伊人久久综合97| 在线αⅴ| 五月婷婷丁香中文字幕| 熟女乱伦A| 久草免费在线一区二区| 97人人超| 久久超碰亚洲人| 97 国产一区| 久久精品国产精品| 91亚洲人| 国模不卡| 欧美日韩丝袜| 日本欧美色| 国产在线激情| 成人免费毛片| 天天综合色| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 99xav| 欧美性暴力猛交XXXX| 欧美视频激情久久久久久| 黄色一区三区| 操国产逼| 国产女人9999| 欧美激情 亚洲色图| 人人性爱视频免费| 在线人人人人人人精品超| 青娱乐亚洲热| 欧美日韩色| 免费簧片在线观看| 日本一区二区三区精品| 98超碰欧美| 久久九九视频九九视频| 欧美超碰96| 97精品| 国产极品久久久| 欧洲综合色| 亚洲精品一二区| 天天日日日射| 国产区日韩区在线观看| 97五月天| 香蕉精品二区二区 | 91大神电影天堂| 国产乱伦视频污| 日韩中文字幕熟妇人妻| 天天看精品动漫视频一区| 久悠悠av| 91n处女在线观看| 亚洲?V无码专区在线电影| 欧美99| 四虎在线观看网站| 国产精品久久久久综合| 欧美性天天影院| 日韩人妻中文视频| 一本久久久精品| 欧美亚洲国内自拍| 被操高清无码视频| 精品久久久不卡一区二区| 一牛影视成人片免费| 欧美成人国产精品| 91黑人无码激情在线| 九九av| 粉嫩国产精品久久粉嫩| 襙一襙| 久久精品一区二区三区蜜桃臀| 一区二区娱乐网站| 亚洲天堂一区| 东北老女人的激情视频| 欧美黄色图片| 亚州操逼网| 操www| 蜜区区视频79| 人人摸人人干| 99热综合| 激情网色| 欧美五十路熟| 亚州综合色| 中文字幕免费在线观看| 美女淫穴| 日韩啪啪啪啪啪| 久久黄色性爱视频| 爱逼综合| 黑人在线91| 丝袜色综合| 撸撸成人在线视频| 日韩99神马视频播放片在线播放| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 中出后入| 精久久久| 97超色| 日韩中文字幕宗合在线| 欧洲Au麻豆| 熟女精品一区二区三区| 91操人视频| 无码高清专| 欧美性爱日韩性爱| 最新亚洲人成网站在线影院| 97精品一区二区视频| 熟女熟妇一区二区三四区| 精品综合久久久久久97| 美美91成人国产精品欧美精品久久久久久久 | 亚洲啪啪性视频| se吧提供91精品国产91久久久久久| 精品人妻一区二区三区视频在线| 亚洲色欧| 麻豆91熟妇人妻中文字幕茄子| 91精品国产91久久青草| 日本视频在线中文字幕| 97超碰人人操人人操| 丁香色狠狠色综合久久小说| 国产精品片| 日本一级特级毛片视频| 成人性爱AV在线免费观看| 张柏芝国产一区在线观看| 久久久久亚洲三级电影| 欧美丝袜制服久久| 97色婷婷| 天天综合网在线| 五月天久久婷婷亚洲 | 久久久9 9 9精品| 亚洲性少妇| av天堂加勒比| 色哟哟AⅤ| 中日韩欧美精品无码AⅤ一区二区| 色翁荡息又大又硬又粗又爽| 91操人| 蜜伊人色综合97| 日本高清视频在线观看黄已三辽| 精品人成视频在线观看| 国产一区二区三区影片| 91黑丝少妇| 超碰诱惑| 囯产操逼片| 久久夜夜夜夜| 9久久精品| 国产精品爱欲| 狼人综合婷婷激情四射 | 淫妻综合网| 色眯眯av| 免费一级特黄特色大片在线观看看| 在线观看日韩av不卡| 女同女同恋久久级三级| 丁香五月社区| 97视频在线播放| www.狠狠操| 欧美黑人精品在线播放| 无套后入双马尾| 麻豆天美在线喷水AV| 丁香六月啪啪| 中文字幕精品日韩中文字幕| 97超碰大| 日日日日做夜夜夜夜做无码97| 日韩一级二级| 亚洲欧美国产成人综合不卡| 国产免费黄色一级大片| 亚洲人精品久久久喷水| 国产91 丝袜在线播放| 国产精品久久久吖| 91jk色拍| 九九香蕉网| 久热99999| 熟妇在线视频一区二区| 色在线视频导航| 日本中文字幕一区| 婷婷综合| 无码黑人精品一区二区三区三| 日本免费二区三区| 你草精品在线视频| 色婷婷丁香五月天| 天天干人人干天天日97| 九九九九九九九九九国产精品 | 亚洲AV成人无码一二三久久| 青草伊人久久| 熟女AV一区| 男人天堂.AB| 丁香六月婷| 亚洲午夜福利视频| 99e久久国产精品| 97视频免费在线观看| 正宗无毛一线天嫩逼| 丝袜狂射91| 中文幕97| 老司机久久| 久久久穴999| 白丝AV网站| 97精品一二区| 极品白嫩福利在线| 五月丁香啪啪啪| 综合网欧美在线| 超碰在线人妻| 免费看毛片操穴| 五月激情小说| 久久久久日本视| 色97| 中文字幕精品丝袜| 久久精品视频在线观看| 久操 高清| 精品美女人人干| 亚洲中文字幕久久无码精品| 好爽要喷了| 亚洲成人免费中文字幕| 99婷婷一区二区| 国产精品黄色三级av| 操逼操逼视频操逼| 婷婷亚洲综合| 国色天香av| 91 综合 色| 性色综合网| 天天干天天燥| 婷婷综合视频| 久久精品老司| 青青草五月份天| 超碰精品日韩欧美国产| 国产精品视频麻豆入口| 亚洲色婷婷| 97自拍一区| 久久久久久久| 国产精品干干干| A V少妇特黄三级| a片亚洲一本通视频| 久久久九九九| 激情看片网站| 超碰97欧美日韩| 超碰97人妻| 操久久久久久| 天天激色| 欧美激情另类一区二区| 蜜臀久久一区二区| 亚洲色欧| 国产精品一区二区三区,亚洲综合| 99青草| 99热在线只有精品| 亚洲欧美在线观看2021| 色爱综合网欧美| 亚洲 欧美 精品专区 极品| 婷婷五月天色色| 淫纸中9区| 日韩av影片在线观看| jiujiujiujingpin| 亚洲无无码αⅴ每日更新| 国产精品久久久视频| 亚洲图片91| 97超碰国产精品| 综合 亚洲 欧美| 97操97色| 色综合一本| 久热精品色情| 美女午夜福利免费视频| 性性欧美| 波多野结衣先锋影音| 久久久99999久网站| 精品人妻一区二区视频| 欧美亚洲国产日本在线,久久精品国产| 午夜一级免费毛片| 九九九九九九九九九九九蜜桃| 99精品欧美一区二区三区桃色| 精品一二三区女同| 国产精品免费视频不卡| 亚洲国产综合图区中文字幕| 东京太热久久久| www.黄色在线| 国产激情在线| 怡春苑东京热| 九九黄色视频在线观看| 欧美亚洲激情| 亚洲AV不卡在线观看尤物| www久久99| 亚洲日本激情| 久久久久久久唑| 熟女高潮合集-永久久久-成人AV| 丁香六月综合激情| 国产成人99久久亚洲综合| 国产女人高潮嗷嗷嗷叫小说| 激情文学小说一区二区| 超碰在线人妻不卡| www.色婷婷色综合| 2017人人操,人人摸| 97伊人网| 99久久久| 国产女主播视频在线观看| 熟女自慰久久久| 校园春色制服丝袜中文字亚洲| 国产黄片精品在线| 午夜福利国产欧美日韩夜夜| 加勒比久久av| 久久精品高清无码一区| 精品美女在线视频| 91人妻丝袜无码| 亚洲少妇色|