精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

純C語言手搓GPT-2,前OpenAI、特斯拉高管新項(xiàng)目火了

人工智能 新聞
今天凌晨,前特斯拉 Autopilot 負(fù)責(zé)人、OpenAI 科學(xué)家 Andrej Karpathy 發(fā)布了一個(gè)僅用 1000 行代碼即可在 CPU/fp32 上實(shí)現(xiàn) GPT-2 訓(xùn)練的項(xiàng)目「llm.c」。

眾所周知,大語言模型還在快速發(fā)展,應(yīng)該有很多可以優(yōu)化的地方。我用純 C 語言來寫,是不是能優(yōu)化一大截?

也許很多人開過這樣的腦洞,現(xiàn)在有大佬實(shí)現(xiàn)了。

圖片

今天凌晨,前特斯拉 Autopilot 負(fù)責(zé)人、OpenAI 科學(xué)家 Andrej Karpathy 發(fā)布了一個(gè)僅用 1000 行代碼即可在 CPU/fp32 上實(shí)現(xiàn) GPT-2 訓(xùn)練的項(xiàng)目「llm.c」。

GitHub 鏈接:https://github.com/karpathy/llm.c

消息一出,立即引發(fā)了機(jī)器學(xué)習(xí)社區(qū)的熱烈討論,項(xiàng)目的 Star 量不到七個(gè)小時(shí)就沖上了 2000。有網(wǎng)友表示,大佬從零開始用 C 語言寫大模型只為好玩,我等只能膜拜:

圖片

llm.c 旨在讓大模型(LM)訓(xùn)練變得簡單 —— 使用純 C 語言 / CUDA,不需要 245MB 的 PyTorch 或 107MB 的 cPython。例如,訓(xùn)練 GPT-2(CPU、fp32)僅需要單個(gè)文件中的大約 1000 行干凈代碼(clean code),可以立即編譯運(yùn)行,并且完全可以媲美 PyTorch 參考實(shí)現(xiàn)。

Karpathy 表示,選擇從 GPT-2 開始,是因?yàn)樗?LLM 的鼻祖,是大語言模型體系首次以現(xiàn)代形式組合在一起,并且有可用的模型權(quán)重。

原始訓(xùn)練的實(shí)現(xiàn)在這里:https://github.com/karpathy/llm.c/blob/master/train_gpt2.c

你會(huì)看到,項(xiàng)目在開始時(shí)一次性分配所有所需的內(nèi)存,這些內(nèi)存是一大塊 1D 內(nèi)存。然后在訓(xùn)練過程中,不會(huì)創(chuàng)建或銷毀任何內(nèi)存,因此內(nèi)存占用量保持不變,并且只是動(dòng)態(tài)的,將數(shù)據(jù)批次流過。這里的關(guān)鍵在于手動(dòng)實(shí)現(xiàn)所有單個(gè)層的前向和后向傳遞,然后將它們串聯(lián)在一起。

例如,這里是 layernorm 前向和后向傳遞。除了 layernorm 之外,我們還需要編碼器、matmul、自注意力、gelu、殘差、softmax 和交叉熵?fù)p失。

「一旦你擁有了所有的層,接下來的工作只是將它們串在一起。講道理,寫起來相當(dāng)乏味和自虐,因?yàn)槟惚仨毚_保所有指針和張量偏移都正確排列, 」Karpathy 評論道。

左:我們分配一個(gè) 1D 內(nèi)存數(shù)組,然后將所有模型權(quán)重和激活指向它。右:我們需要非常非常小心地進(jìn)行所有指針運(yùn)算。

一旦你有了前向 / 后向,其余部分(數(shù)據(jù)加載器、Adam 更新等)大多就不足為懼了。

不過,真正的樂趣現(xiàn)在才開始:Karpathy 表示,他現(xiàn)在正在逐層將其移植到 CUDA 上,以便提高效率,甚至期待能在 PyTorch 的合理范圍內(nèi),但沒有任何嚴(yán)重的依賴關(guān)系 —— 現(xiàn)在工作已經(jīng)完成了幾層。所以這是一個(gè)非常有趣的 CUDA 練習(xí)。

對此,有網(wǎng)友表示:即使頂著指針 ptsd,我也能感受到這些代碼的美。

也有人說,這項(xiàng)目簡直就是完美的機(jī)器學(xué)習(xí)工程師在線面試答案。

從這開始,未來該項(xiàng)目的延伸會(huì)包括將精度從 fp32 降低到 fp16 / 以下,以及增加幾個(gè)層(例如 RoPE)以支持更現(xiàn)代的架構(gòu),如 llama 2/mistral/gemma/ 等模型。 

最后,Andrej Karpathy 表示,一旦項(xiàng)目穩(wěn)定起來,就會(huì)出關(guān)于從頭開始用 C 語言寫大模型的視頻。

llm.c 下一步的目標(biāo)包括:

  • 直接的 CUDA 實(shí)現(xiàn),讓速度更快,并且可能接近 PyTorch;
  • 使用 SIMD 指令、x86 上的 AVX2 / ARM 上的 NEON(例如蘋果 M 系列芯片的電腦)來加速 CPU 版本;
  • 更多新型架構(gòu),例如 Llama2、Gemma 等。

看起來,想讓速度更快的目的沒有達(dá)到,這里不得不佩服 PyTorch 如今的效率。對于存儲庫,作者希望維護(hù)干凈、簡單的參考實(shí)現(xiàn),以及可以接近 PyTorch 的更優(yōu)化版本,但代碼和依賴項(xiàng)只占一小部分。

使用方法

要使用 llm.c,首先要下載并 tokenize 數(shù)據(jù)集。tinyshakespeare 數(shù)據(jù)集的下載和 tokenize 速度最快:

python prepro_tinyshakespeare.py

輸出:

Saved 32768 tokens to data/tiny_shakespeare_val.bin
Saved 305260 tokens to data/tiny_shakespeare_train.bin

.bin 文件是 int32 數(shù)字的原始字節(jié)流,使用 GPT-2 tokenizer 標(biāo)記 token ID,或者也可以使用 prepro_tinystories.py tokenize TinyStories 數(shù)據(jù)集。

原則上,llm.c 到這一步已經(jīng)可以訓(xùn)練模型。然而,基線 CPU/fp32 參考代碼的效率很低,從頭開始訓(xùn)練這些模型不切實(shí)際。因此,這里使用 OpenAI 發(fā)布的 GPT-2 權(quán)重進(jìn)行初始化,然后再進(jìn)行微調(diào),所以必須下載 GPT-2 權(quán)重并將它們保存為可以在 C 中加載的檢查點(diǎn):

python train_gpt2.py

該腳本將下載 GPT-2 (124M) 模型,對單批數(shù)據(jù)進(jìn)行 10 次迭代的過擬合,運(yùn)行幾個(gè)生成步驟,最重要的是,它將保存兩個(gè)文件:

  • gpt2_124M.bin 文件,包含在 C 語言中加載模型所需的權(quán)重;
  • gpt2_124M_debug_state.bin 文件,包含更多調(diào)試狀態(tài):輸入、目標(biāo)、logits 和損失。這對于調(diào)試 C 語言代碼、單元測試以及確保 llm.c 與 PyTorch 參考實(shí)現(xiàn)完全可媲美非常重要。

現(xiàn)在,使用 gpt2_124M.bin 中的模型權(quán)重進(jìn)行初始化并使用純 C 語言進(jìn)行訓(xùn)練,首先編譯代碼:

make train_gpt2

這里可以查看 Makefile 及其注釋。它將嘗試自動(dòng)檢測 OpenMP 在當(dāng)前系統(tǒng)上是否可用,這對于以極低的代碼復(fù)雜性成本加速代碼非常有幫助。編譯 train_gpt2 后,運(yùn)行:

OMP_NUM_THREADS=8 ./train_gpt2

這里應(yīng)該根據(jù) CPU 的核心數(shù)量來調(diào)整線程數(shù)量。該程序?qū)⒓虞d模型權(quán)重、token,并使用 Adam 運(yùn)行幾次迭代的微調(diào) loop,然后從模型生成樣本。在 MacBook Pro (Apple Silicon M3 Max) 上,輸出如下所示:

[GPT-2]
max_seq_len: 1024
vocab_size: 50257
num_layers: 12
num_heads: 12
channels: 768
num_parameters: 124439808
train dataset num_batches: 1192
val dataset num_batches: 128
num_activations: 73323776
val loss 5.252026
step 0: train loss 5.356189 (took 1452.121000 ms)
step 1: train loss 4.301069 (took 1288.673000 ms)
step 2: train loss 4.623322 (took 1369.394000 ms)
step 3: train loss 4.600470 (took 1290.761000 ms)
... (trunctated) ...
step 39: train loss 3.970751 (took 1323.779000 ms)
val loss 4.107781
generated: 50256 16773 18162 21986 11 198 13681 263 23875 198 3152 262 11773 2910 198 1169 6002 6386 2583 286 262 11858 198 20424 428 3135 7596 995 3675 13 198 40 481 407 736 17903 11 329 703 6029 706 4082 198 42826 1028 1128 633 263 11 198 10594 407 198 2704 454 680 1028 262 1027 28860 286 198 3237 323
step 40: train loss 4.377757 (took 1366.368000 ms)

但這一步生成的只是 token ID,還需要將其解碼回文本。這一點(diǎn)可以很容易地用 C 語言實(shí)現(xiàn),因?yàn)榻獯a非常簡單,可以使用 tiktoken:

import tiktoken
enc = tiktoken.get_encoding("gpt2")print(enc.decode(list(map(int, "50256 16773 18162 21986 11 198 13681 263 23875 198 3152 262 11773 2910 198 1169 6002 6386 2583 286 262 11858 198 20424 428 3135 7596 995 3675 13 198 40 481 407 736 17903 11 329 703 6029 706 4082 198 42826 1028 1128 633 263 11 198 10594 407 198 2704 454 680 1028 262 1027 28860 286 198 3237 323".split()))))

輸出:

<|endoftext|>Come Running Away,
Greater conquer
With the Imperial blood
the heaviest host of the gods
into this wondrous world beyond.
I will not back thee, for how sweet after birth
Netflix against repounder,
will not
flourish against the earlocks of
Allay

值得注意的是,這里沒有嘗試調(diào)整微調(diào)超參數(shù),因此很可能還有大幅改進(jìn)的空間,特別是在訓(xùn)練時(shí)間更長的情況下。

附上一個(gè)簡單的單元測試,以確保 C 代碼與 PyTorch 代碼一致。編譯并運(yùn)行:

make test_gpt2
./test_gpt2

這里加載 gpt2_124M_debug_state.bin 文件,運(yùn)行前向傳遞,將 logits 和損失與 PyTorch 參考實(shí)現(xiàn)進(jìn)行比較,然后使用 Adam 進(jìn)行 10 次迭代訓(xùn)練,確保損失可與 PyTorch 參考實(shí)現(xiàn)媲美。

圖片

最后,Karpathy 還附上了一個(gè)簡單的教程。這是一個(gè)簡單的分步指南,用于實(shí)現(xiàn) GPT-2 模型的單層(layernorm 層),可以幫助你理解如何用 C 語言實(shí)現(xiàn)語言模型。

教程地址:doc/layernorm/layernorm.md

我們知道,最近 Andrej Karpathy 沉迷于制作教程。去年 11 月,他錄制的《大語言模型入門》在 YouTube 上吸引了很多人觀看。

這次新項(xiàng)目的配套視頻什么時(shí)候出?我們都很期待。

責(zé)任編輯:張燕妮 來源: 機(jī)器之心
相關(guān)推薦

2024-04-11 12:47:37

AI模型

2024-04-09 15:22:24

2023-04-10 15:37:18

AI代碼

2025-08-19 08:40:00

AI技術(shù)模型

2023-08-17 08:00:00

2025-01-16 16:35:42

AI訓(xùn)練模型

2023-05-10 17:33:56

2023-12-16 09:45:56

論文GPT-4AI

2023-06-05 14:04:59

模型AI

2025-10-14 13:55:31

AI代碼訓(xùn)練

2024-12-20 14:37:47

2023-12-15 12:52:17

AI模型

2023-05-10 14:54:23

AI

2022-11-01 13:42:54

雷達(dá)智能

2025-08-18 09:15:00

2023-03-02 12:32:36

2024-11-21 14:30:00

模型訓(xùn)練

2025-06-12 14:26:01

OpenAIChatGPT模型

2020-01-30 14:50:16

谷歌Android技術(shù)

2024-02-29 15:39:00

AI研究算力
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

四虎影视精品| 欧美色图天堂| 久久激五月天综合精品| 欧美成人在线影院| 素人fc2av清纯18岁| 欧美少妇激情| 精品久久久久久中文字幕一区奶水 | 亚洲bt欧美bt日本bt| 欧美成人aaaaⅴ片在线看| 精品国产美女| 亚洲精品乱码久久久久久金桔影视 | 在线观看成人毛片| 四虎5151久久欧美毛片| 欧美一区二区三区播放老司机| 日本一本中文字幕| 一区二区高清不卡| 91免费看视频| 国产精品久久波多野结衣| 欧美一级做a爰片免费视频| 欧美日韩综合| 久久视频精品在线| 右手影院亚洲欧美| 精品国内亚洲2022精品成人| 欧美日韩精品一二三区| 国产亚洲欧美在线视频| 国产蜜臀av在线播放| 国产精品国产三级国产普通话蜜臀| 国产精品亚洲一区| av小说天堂网| 卡一卡二国产精品 | 久久中国妇女中文字幕| 亚洲一区视频在线播放| 里番精品3d一二三区| 日韩一区二区精品葵司在线| 香蕉视频禁止18| 暖暖成人免费视频| 黑人巨大精品欧美一区二区一视频| 国产日韩第一页| 日本中文在线观看| 国产精品美女久久久久aⅴ | 蜜芽tv福利在线视频| 成人一区二区三区视频在线观看| 91色琪琪电影亚洲精品久久| 中文字幕av影视| 日韩不卡一区二区三区| 日本中文字幕不卡免费| 九九精品免费视频| 香蕉精品999视频一区二区 | 精品国偷自产在线视频| www.99热| 久久中文亚洲字幕| 久久精品视频在线| 糖心vlog免费在线观看| 亚洲经典一区| 欧美精品一本久久男人的天堂| 亚洲熟女毛茸茸| 91免费精品| 久久夜色精品国产| 欧美极品aaaaabbbbb| 欧美日韩国产在线一区| 欧美激情高清视频| 国产精品久久久久久99| 香蕉国产精品偷在线观看不卡| 欧美洲成人男女午夜视频| 亚洲欧美自拍视频| 日本91福利区| 亚洲精品欧美日韩专区| 亚洲AV无码成人片在线观看| 成人福利视频网站| 另类小说综合网| 国产高清视频在线| 亚洲欧洲日产国产综合网| 日本一道在线观看| freexxx性亚洲精品| 精品国产户外野外| 国产日韩成人内射视频 | 日韩精品国产欧美| 成人免费视频网| 蜜桃视频久久一区免费观看入口| aaa亚洲精品一二三区| 日本精品国语自产拍在线观看| 尤物网在线观看| 亚洲精品免费在线观看| 国产天堂视频在线观看| 在线视频cao| 在线不卡一区二区| yy6080午夜| 日韩欧美精品| 久久久久免费视频| 国产91av在线播放| 国产91高潮流白浆在线麻豆| 久久久久久高清| 国产原创精品视频| 欧美日韩精品在线播放| 不卡中文字幕在线观看| 欧美三级自拍| 久久综合色88| 国产99免费视频| 国产成人精品aa毛片| 青青影院一区二区三区四区| 污视频网站免费在线观看| 欧美性猛交xxxx偷拍洗澡| 九九九九九国产| 婷婷综合一区| 欧美大成色www永久网站婷| 天堂网视频在线| 国产91精品精华液一区二区三区 | 日韩欧美一二三四区| xxxxx在线观看| 在线日韩中文| 91|九色|视频| 在线看黄色av| 色综合久久久久综合| 中文字幕1区2区| 国产精品7m凸凹视频分类| 欧美一级bbbbb性bbbb喷潮片| 国产日韩欧美视频在线观看| 久久久久久97三级| av高清在线免费观看| av日韩久久| 中文字幕日韩精品在线| 日本午夜视频在线观看| 大白屁股一区二区视频| 久久久成人精品一区二区三区| 91看片一区| 日韩精品视频在线播放| 久久精品第一页| 国产在线精品国自产拍免费| 日韩wuma| 亚洲高清黄色| 国产丝袜一区二区三区免费视频| 国产午夜福利片| 国产二区国产一区在线观看| 在线不卡日本| 日本久久一区| 日韩在线欧美在线国产在线| 无码人妻av一区二区三区波多野 | 亚州欧美一区三区三区在线| 亚洲欧洲日本韩国| 日韩大陆欧美高清视频区| 国产精品变态另类虐交| 成人国产精品免费网站| 日韩成人三级视频| 91成人精品在线| 久久久久久久久国产| 性中国xxx极品hd| 亚洲一线二线三线视频| 国产成人精品一区二区三区在线观看 | 日韩精品在线免费播放| wwwwww国产| 国产亚洲欧美在线| caoporn超碰97| 欧美第一精品| 91久久综合亚洲鲁鲁五月天| 99久久精品免费观看国产| 日韩一区二区三区电影| 黄色小视频在线免费看| 91视视频在线观看入口直接观看www| 一二三四视频社区在线| 私拍精品福利视频在线一区| 欧美中文字幕在线| 四虎久久免费| 日韩欧美一区二区免费| 日本三级欧美三级| 国产色婷婷亚洲99精品小说| 免费一区二区三区在线观看| 一本一本久久a久久综合精品| 7777精品伊久久久大香线蕉语言 | 欧美日韩一区二区高清| 精品在线一区| 国产人妖一区| 久久久久久久久久久亚洲| 性插视频在线观看| 欧美日韩精品福利| 久草视频在线免费看| 99精品热视频| av网站在线不卡| 国色天香一区二区| 免费看成人av| 欧美久久亚洲| 日本电影亚洲天堂| www久久日com| 精品亚洲一区二区三区四区五区| 五月婷婷六月婷婷| 一区二区在线免费| 一区二区精品免费| 国产一区二区三区免费观看| 波多野结衣之无限发射| 日韩专区精品| 精品一卡二卡三卡四卡日本乱码 | 欧美办公室脚交xxxx| 在线看国产精品| 亚洲精品人妻无码| 欧美午夜在线一二页| 欧美成人一区二区三区高清| 久久一二三国产| 国产91在线免费观看| 翔田千里一区二区| 日韩国产小视频| 精品久久久久久久| 国产福利久久精品| 亚洲毛片在线免费| 欧美一级在线亚洲天堂| 在线观看午夜av| 尤物yw午夜国产精品视频| 丰满肉肉bbwwbbww| 欧美人狂配大交3d怪物一区| 久久国产视频播放| 一区二区三区在线免费观看| 黄色片网站免费| www.99精品| 亚洲精品久久久久久| 捆绑紧缚一区二区三区视频| 每日在线更新av| 欧美激情第二页| 亚洲一区二区三区精品视频| 香蕉国产成人午夜av影院| 51国偷自产一区二区三区的来源| 成人av色网站| 热久久免费视频精品| 成人女同在线观看| 久久99久久久久久久噜噜| 欧洲日本在线| 伊人久久久久久久久久| 久草在线青青草| 日韩精品中文在线观看| 欧美一区二区黄片| 精品国产免费久久| www.久久久久久| 欧美一区在线视频| 国产又黄又粗又硬| 欧美日韩精品一区二区在线播放| 国产午夜麻豆影院在线观看| 精品成人av一区| 欧美三级韩国三级日本三斤在线观看 | 中文字幕成人在线| 国产黄在线播放| 亚洲欧美www| 你懂的在线视频| 亚洲毛片在线免费观看| 日漫免费在线观看网站| 亚洲精品国产精品自产a区红杏吧| 亚洲大尺度网站| 精品毛片乱码1区2区3区| www.久久综合| 亚洲国产97在线精品一区| 欧美熟妇乱码在线一区| 精品国产露脸精彩对白| 人妻一区二区三区| 日韩二区三区在线| 暖暖视频在线免费观看| 一本一道久久a久久精品逆3p | 国产一区二区在线免费播放| 日韩精品久久理论片| 亚洲成人福利在线| 国产中文字幕一区| 精品久久久久久无码人妻| 成人精品视频.| 三级男人添奶爽爽爽视频| 久久中文娱乐网| 青青青视频在线播放| 亚洲视频在线观看一区| 青青草原国产视频| 亚洲成人激情av| 国产免费a视频| 在线成人免费观看| 成人精品在线播放| 亚洲欧美福利视频| 欧美r级在线| 欧美夫妻性视频| 日本在线高清| 国产日韩中文字幕在线| 日韩一区免费| 欧美日产一区二区三区在线观看| 欧美艳星介绍134位艳星| 91制片厂免费观看| 99国产精品99久久久久久粉嫩| 日韩精品一区二区三区久久| 日本美女一区二区| 日本成人在线免费| 国产亚洲一本大道中文在线| 91插插插插插插| 福利视频导航一区| 国产精品视频在线观看免费| 亚洲娇小xxxx欧美娇小| 成年人视频在线观看免费| 久久成人精品一区二区三区| 色老头在线一区二区三区| 国产日韩欧美综合| 欧美高清视频看片在线观看| 亚洲国产精品一区二区第四页av| 欧美黄在线观看| 国产又猛又黄的视频| 国产精一品亚洲二区在线视频| 国产麻豆剧传媒精品国产av| 国产精品麻豆久久久| 日本网站在线免费观看| 欧美人伦禁忌dvd放荡欲情| 亚洲人妻一区二区| 欧美精品性视频| 国产成人精品一区二区三区免费 | 91aaa精品| 国产亚洲一二三区| 97免费在线观看视频| 91精品国产欧美一区二区成人 | 九九热hot精品视频在线播放| 亚洲国内在线| 香蕉久久a毛片| 97人妻精品一区二区三区免费| 国产精品嫩草影院com| 成人午夜视频在线播放| 精品国产乱子伦一区| 超碰在线免费播放| 国产日韩专区在线| 国产欧美日韩影院| www.浪潮av.com| 丁香婷婷综合五月| 国产极品国产极品| 欧美老人xxxx18| 在线观看完整版免费| 国产精品吊钟奶在线| 香蕉国产成人午夜av影院| 日韩国产一级片| 成人国产电影网| 久久视频免费看| 日韩你懂的在线观看| 国产黄色在线观看| 成人a在线视频| 999久久久国产精品| 亚洲一级免费观看| 欧美国产日韩a欧美在线观看| av大片在线免费观看| 日韩va亚洲va欧洲va国产| 999福利在线视频| 国产成人女人毛片视频在线| 欧美精品大片| 精品国产一二区| 一区二区三区色| 性做久久久久久久| 午夜精品久久久久久久99黑人 | 亚洲成人久久一区| 女子免费在线观看视频www| 91成人免费视频| 欧美日韩亚洲一区三区| 又色又爽又黄18网站| 亚洲综合偷拍欧美一区色| 亚洲成人av综合| 久久露脸国产精品| 日韩欧美影院| 国产成人手机视频| 亚洲丝袜制服诱惑| 精品久久国产视频| 97精品视频在线播放| 香蕉视频一区二区三区| 99精品视频在线看| 国产欧美日韩不卡| 国产精品久久影视| 久久999免费视频| 精品国产乱子伦一区二区| 日本免费一级视频| 中文字幕免费观看一区| 国产又黄又大又爽| 久久久久久久久91| 美女毛片一区二区三区四区| 欧美伦理片在线观看| 亚洲免费在线视频| 无码人妻丰满熟妇区96| 深夜成人影院| 亚洲 日韩 国产第一区| 狠狠狠色丁香婷婷综合久久五月| 精品国产视频在线观看| 欧美mv和日韩mv的网站| 蜜桃麻豆av在线| 亚洲国产一区二区三区在线| 国产精品小仙女| 中文字幕激情小说| 日韩网站免费观看| 欧美理伦片在线播放| 亚洲激情在线观看视频| 伊人夜夜躁av伊人久久| 你懂的在线看| 91人人爽人人爽人人精88v| 国产亚洲永久域名| 一区二区三区四区五区| 亚洲第一男人天堂| 日本在线一区二区| 久草热视频在线观看| 国产精品久久久久久久久快鸭 | 亚洲电影免费观看高清完整版在线观看 | 欧美夜福利tv在线| 亚洲情侣在线| 丰满圆润老女人hd| 日韩欧美成人激情| 日韩免费小视频| 免费超爽大片黄| 国产精品久久久久9999吃药| 深夜福利视频网站| 成人网欧美在线视频| 久久一二三四| 18精品爽视频在线观看|