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

大語言模型量化方法對(duì)比:GPTQ、GGUF、AWQ

人工智能
在過去的一年里,大型語言模型(llm)有了飛速的發(fā)展,在本文中,我們將探討幾種(量化)的方式,除此以外,還會(huì)介紹分片及不同的保存和壓縮策略。

在過去的一年里,大型語言模型(llm)有了飛速的發(fā)展,在本文中,我們將探討幾種(量化)的方式,除此以外,還會(huì)介紹分片及不同的保存和壓縮策略。

說明:每次加載LLM示例后,建議清除緩存,以防止出現(xiàn)OutOfMemory錯(cuò)誤。

del model, tokenizer, pipe
 
 import torch
 torch.cuda.empty_cache()

如果在jupyter中無法釋放顯存,請(qǐng)重啟這個(gè)jupyter notebook。

模型加載

加載LLM的最直接、最普通的方式是通過??Transformers。HuggingFace已經(jīng)創(chuàng)建了一個(gè)套件,我們能夠直接使用

pip install git+https://github.com/huggingface/transformers.git
 pip install accelerate bitsandbytes xformers

安裝完成后,我們可以使用以下管道輕松加載LLM:

from torch import bfloat16
 from transformers import pipeline
 
 # Load in your LLM without any compression tricks
 pipe = pipeline(
    "text-generation", 
    model="HuggingFaceH4/zephyr-7b-beta", 
    torch_dtype=bfloat16, 
    device_map="auto"
 )

我們這里使用zephyr-7b-beta作為示例

這種加載LLM的方法通常不會(huì)執(zhí)行任何壓縮技巧。我們來做個(gè)使用的示例

messages = [
    {
        "role": "system",
        "content": "You are a friendly chatbot.",
    },
    {
        "role": "user", 
        "content": "Tell me a funny joke about Large Language Models."
    },
 ]
 prompt = pipe.tokenizer.apply_chat_template(
    messages, 
    tokenize=False, 
    add_generation_prompt=True
 )

使用內(nèi)部提示模板生成的提示是這樣構(gòu)造的:

然后,我們可將提示傳遞給LLM來生成答案:

outputs = pipe(
    prompt, 
    max_new_tokens=256, 
    do_sample=True, 
    temperature=0.1, 
    top_p=0.95
 )
 print(outputs[0]["generated_text"])

這是一個(gè)最直接的使用流程,但是對(duì)于純推理,這種方法效率是最低的,因?yàn)樵跊]有任何壓縮或量化策略的情況下加載整個(gè)模型。

分片

在我們進(jìn)入量化策略之前,我們先介紹一個(gè)前置的方法:分片。通過分片可以將模型分割成小塊,每個(gè)分片包含模型的較小部分,通過在不同設(shè)備上分配模型權(quán)重來解決GPU內(nèi)存限制。

雖然它沒有任何的壓縮和量化,但是這種方法算是一個(gè)最簡單的加載大模型的方案。

比如Zephyr-7B-β,實(shí)際上已經(jīng)分片了!如果進(jìn)入模型并點(diǎn)擊“Files and versions”鏈接,可以看到模型被分成了8個(gè)部分。

模型的分片非常簡單,可以直接使用Accelerate 包:

from accelerate import Accelerator
 
 # Shard our model into pieces of 1GB
 accelerator = Accelerator()
 accelerator.save_model(
    model=pipe.model, 
    save_directory="/content/model", 
    max_shard_size="4GB"
 )

這樣將模型分成4GB的分片

量化

大型語言模型由一堆權(quán)重和激活表示。這些值通常由通常的32位浮點(diǎn)(float32)數(shù)據(jù)類型表示。

比特的數(shù)量告訴你它可以表示多少個(gè)值。Float32可以表示1.18e-38和3.4e38之間的值,相當(dāng)多的值!比特?cái)?shù)越少,它能表示的值就越少。

如果我們選擇較低的位大小,那么模型就會(huì)變得不那么準(zhǔn)確,但它表示更少的值,從而降低其大小和內(nèi)存需求。

量化是指將LLM從其原始Float32表示轉(zhuǎn)換為更小的表示。我們不希望簡單地使用較小的位變體,而是希望在不丟失太多信息的情況下將較大的位表示映射到較小的位。

所以一般情況下,我們經(jīng)常使用一種名為4bit-NormalFloat (NF4)的新格式來實(shí)現(xiàn)這一點(diǎn)。這個(gè)數(shù)據(jù)類型做了一些特殊的技巧,以便有效地表示更大的位數(shù)據(jù)類型。它包括三個(gè)步驟:

歸一化:將模型的權(quán)重歸一化,以便我們期望權(quán)重落在一定范圍內(nèi)。這允許更有效地表示更常見的值。

量化:將權(quán)重量化為4位。在NF4中,量化級(jí)別相對(duì)于歸一化權(quán)重是均勻間隔的,從而有效地表示原始的32位權(quán)重。

去量化:雖然權(quán)重以4位存儲(chǔ),但它們?cè)谟?jì)算期間被去量化,從而在推理期間提高性能。

我們可以直接使用Bitsandbytes庫進(jìn)行量化操作:

from transformers import BitsAndBytesConfig
 from torch import bfloat16
 
 # Our 4-bit configuration to load the LLM with less GPU memory
 bnb_config = BitsAndBytesConfig(
    load_in_4bit=True, # 4-bit quantization
    bnb_4bit_quant_type='nf4', # Normalized float 4
    bnb_4bit_use_double_quant=True, # Second quantization after the first
    bnb_4bit_compute_dtype=bfloat16 # Computation type
 )

上面的配置指定要使用的量化級(jí)別。比如4位量化表示權(quán)重,但用16位進(jìn)行推理。

然后在管道中加載模型就很簡單了:

from transformers import AutoTokenizer, AutoModelForCausalLM, pipeline
 
 # Zephyr with BitsAndBytes Configuration
 tokenizer = AutoTokenizer.from_pretrained("HuggingFaceH4/zephyr-7b-alpha")
 model = AutoModelForCausalLM.from_pretrained(
    "HuggingFaceH4/zephyr-7b-alpha",
    quantization_cnotallow=bnb_config,
    device_map='auto',
 )
 
 # Create a pipeline
 pipe = pipeline(model=model, tokenizer=tokenizer, task='text-generation')

接下來使用與之前相同的提示:

outputs = pipe(
    prompt, 
    max_new_tokens=256, 
    do_sample=True, 
    temperature=0.7, 
    top_p=0.95
 )
 print(outputs[0]["generated_text"])

量化是一種強(qiáng)大的技術(shù),可以減少模型的內(nèi)存需求,同時(shí)保持性能相似。它允許更快的加載、使用和微調(diào)llm,即使使用較小的gpu。

預(yù)量化(GPTQ、AWQ、GGUF)

我們已經(jīng)探索了分片和量化技術(shù)。但是量化是在每次加載模型時(shí)進(jìn)行的,這是非常耗時(shí)的操作,有沒有辦法直接保存量化后的模型,并且在使用時(shí)直接加載呢?

TheBloke是HuggingFace上的一個(gè)用戶,它為我們執(zhí)行了一系列量化操作,我想用過大模型的人一定對(duì)它非常的熟悉吧

這些量化模型包含了很多格式GPTQ、GGUF和AWQ,我們來進(jìn)行介紹

1、GPTQ: Post-Training Quantization for GPT Models

GPTQ是一種4位量化的訓(xùn)練后量化(PTQ)方法,主要關(guān)注GPU推理和性能。

該方法背后的思想是,嘗試通過最小化該權(quán)重的均方誤差將所有權(quán)重壓縮到4位。在推理過程中,它將動(dòng)態(tài)地將其權(quán)重去量化為float16,以提高性能,同時(shí)保持低內(nèi)存。

我們需要在HuggingFace Transformers中的gptq類模型中加載:

pip install optimum
 pip install auto-gptq --extra-index-url https://huggingface.github.io/autogptq-index/whl/cu118/

然后找到需要加載的模型,比如“TheBloke/zephyr-7B-beta-GPTQ”,進(jìn)行加載

from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
 
 # Load LLM and Tokenizer
 model_id = "TheBloke/zephyr-7B-beta-GPTQ"
 tokenizer = AutoTokenizer.from_pretrained(model_id, use_fast=True)
 model = AutoModelForCausalLM.from_pretrained(
    model_id,
    device_map="auto",
    trust_remote_code=False,
    revisinotallow="main"
 )
 
 # Create a pipeline
 pipe = pipeline(model=model, tokenizer=tokenizer, task='text-generation')

盡管我們安裝了一些額外的依賴項(xiàng),但我們可以使用與之前相同的管道,也就是是不需要修改代碼,這是使用GPTQ的一大好處。

GPTQ是最常用的壓縮方法,因?yàn)樗槍?duì)GPU使用進(jìn)行了優(yōu)化。但是如果你的GPU無法處理如此大的模型,那么從GPTQ開始切換到以cpu為中心的方法(如GGUF)是絕對(duì)值得的。

2、GPT-Generated Unified Format

盡管GPTQ在壓縮方面做得很好,但如果沒有運(yùn)行它的硬件,那么就需要使用其他的方法。

GGUF(以前稱為GGML)是一種量化方法,允許用戶使用CPU來運(yùn)行LLM,但也可以將其某些層加載到GPU以提高速度。

雖然使用CPU進(jìn)行推理通常比使用GPU慢,但對(duì)于那些在CPU或蘋果設(shè)備上運(yùn)行模型的人來說,這是一種非常好的格式。

使用GGUF非常簡單,我們需要先安裝ctransformers包:

pip install ctransformers[cuda]

然后加載模型“TheBloke/zephyr-7B-beta-GGUF”,

from ctransformers import AutoModelForCausalLM
 from transformers import AutoTokenizer, pipeline
 
 # Load LLM and Tokenizer
 # Use `gpu_layers` to specify how many layers will be offloaded to the GPU.
 model = AutoModelForCausalLM.from_pretrained(
    "TheBloke/zephyr-7B-beta-GGUF",
    model_file="zephyr-7b-beta.Q4_K_M.gguf",
    model_type="mistral", gpu_layers=50, hf=True
 )
 tokenizer = AutoTokenizer.from_pretrained(
    "HuggingFaceH4/zephyr-7b-beta", use_fast=True
 )
 
 # Create a pipeline
 pipe = pipeline(model=model, tokenizer=tokenizer, task='text-generation')

加載模型后,我們可以運(yùn)行如下提示:

outputs = pipe(prompt, max_new_tokens=256)
 print(outputs[0]["generated_text"])

如果你想同時(shí)利用CPU和GPU, GGUF是一個(gè)非常好的格式。

3、AWQ: Activation-aware Weight Quantization

除了上面兩種以外,一種新格式是AWQ(激活感知權(quán)重量化),它是一種類似于GPTQ的量化方法。AWQ和GPTQ作為方法有幾個(gè)不同之處,但最重要的是AWQ假設(shè)并非所有權(quán)重對(duì)LLM的性能都同等重要。

也就是說在量化過程中會(huì)跳過一小部分權(quán)重,這有助于減輕量化損失。所以他們的論文提到了與GPTQ相比的可以由顯著加速,同時(shí)保持了相似的,有時(shí)甚至更好的性能。

該方法還是比較新的,還沒有被采用到GPTQ和GGUF的程度。

對(duì)于AWQ,我們將使用vLLM包:

pip install vllm

使用vLLM可以直接加載模型:

from vllm import LLM, SamplingParams
 
 # Load the LLM
 sampling_params = SamplingParams(temperature=0.0, top_p=1.0, max_tokens=256)
 llm = LLM(
    model="TheBloke/zephyr-7B-beta-AWQ", 
    quantizatinotallow='awq', 
    dtype='half', 
    gpu_memory_utilizatinotallow=.95, 
    max_model_len=4096
 )

然后使用.generate運(yùn)行模型:

output = llm.generate(prompt, sampling_params)
 print(output[0].outputs[0].text)

就是這樣。

責(zé)任編輯:華軒 來源: DeepHub IMBA
相關(guān)推薦

2025-11-17 08:00:00

LLMAWQGPTQ

2023-11-27 09:00:00

GPTQ大型語言模型

2025-04-16 02:30:00

2023-04-10 10:32:00

模型排序

2025-09-28 01:55:00

GGUF大模型GPT

2022-08-01 10:15:06

AI模型Meta

2025-03-26 10:57:40

PyTorchGGUF

2025-07-01 07:24:56

2023-07-03 16:15:46

模型訓(xùn)練

2025-08-25 07:00:00

大語言模型LLM人工智能

2023-10-11 09:00:00

2023-12-27 11:31:27

2024-08-05 14:36:17

大型語言模型量化

2024-07-17 09:27:28

2024-01-12 10:29:26

2024-04-26 06:46:27

量化剪枝模型

2025-04-22 08:08:37

2024-04-19 09:37:49

Ollama大語言模型開源

2023-11-27 14:48:34

人工智能深度學(xué)習(xí)大語言模型
點(diǎn)贊
收藏

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

九一成人免费视频| 狼人综合视频| 高清成人免费视频| 91精品国产免费久久久久久 | 国产亚洲欧美一区| 成人亚洲免费视频| 蜜桃麻豆影像在线观看| 亚洲欧洲av另类| 国外成人在线视频网站| 中国女人真人一级毛片| 午夜精品电影| 国产午夜精品全部视频播放| 在线成人免费av| 日本综合久久| 亚洲二区视频在线| 伊人久久大香线蕉成人综合网| 俄罗斯嫩小性bbwbbw| 手机精品视频在线观看| 久久久伊人日本| 亚洲波多野结衣| 久久97视频| 精品99久久久久久| 九一精品久久久| 日本成人伦理电影| 性欧美大战久久久久久久久| 一本色道久久综合亚洲精品婷婷| 香蕉久久国产av一区二区| 国内一区二区视频| 国产精品久久久久久久美男| 97人人澡人人爽人人模亚洲| 欧美成人精品| 久久久精品在线| 国产一级久久久久毛片精品| 日韩精选在线| 亚洲第一网站男人都懂| 国产在线视频三区| 日韩成人综合网| 欧美最猛性xxxxx直播| 亚洲熟妇av日韩熟妇在线 | 韩国福利视频一区| 精品国产视频在线观看| 98精品视频| 色系列之999| 丰满的亚洲女人毛茸茸| 国产不卡一区| 亚洲美女黄色片| 波多野结衣福利| 同性恋视频一区| 日韩av一区在线| 三叶草欧洲码在线| 色婷婷综合久久久久久| 日韩麻豆第一页| 女~淫辱の触手3d动漫| 国产成人aa在线观看网站站| 欧美成人精品福利| 最新中文字幕日本| 噜噜噜天天躁狠狠躁夜夜精品| 精品欧美一区二区在线观看| 久久人妻少妇嫩草av蜜桃| 亚洲高清在线一区| 欧美成人一区二区三区| 一区二区三区四区影院| 国产精品17p| 日韩va亚洲va欧洲va国产| 美女流白浆视频| 国产乱人伦精品一区| 日韩的一区二区| 无码人妻精品一区二区三区温州| 在线观看欧美理论a影院| 国产香蕉97碰碰久久人人| 国产在线免费av| 一区二区日韩欧美| 国内精品小视频| 五月婷婷六月婷婷| 久久 天天综合| 99久久伊人精品影院| 欧美一区二区三区激情| 99久久精品国产观看| 日本黑人久久| 成人直播在线| 五月综合激情日本mⅴ| av无码精品一区二区三区| 先锋影音网一区二区| 精品美女在线播放| 91精品人妻一区二区| 久久在线播放| 久久人人爽人人| 国产又粗又猛又黄视频| 国产一区三区三区| 国产专区一区二区| av午夜在线| 亚洲一区二区三区四区在线免费观看| 国产黄视频在线| 在线免费观看亚洲| 日韩av中文字幕在线播放| 日本免费www| 欧美日韩网站| 国产精品小说在线| 少妇喷水在线观看| 国产精品拍天天在线| 青青草国产精品视频| 九九九精品视频| 日韩精品福利在线| 一区二区在线观看免费视频| 久久在线精品| 国产精品麻豆免费版| yourporn在线观看中文站| 亚洲一区二区四区蜜桃| 少妇网站在线观看| 欧美日韩精品一区二区三区在线观看| 色久欧美在线视频观看| 免费黄色网址在线| 国产98色在线|日韩| 亚洲精品自在在线观看| 超碰91在线观看| 91精品国产一区二区三区 | 欧美人与牛zoz0性行为| 欧美福利小视频| 一炮成瘾1v1高h| 久久久精品日韩欧美| 男的插女的下面视频| 国产精品日本一区二区不卡视频| 国产一区二区三区丝袜| 国产超碰人人爽人人做人人爱| 国产伦精一区二区三区| 中国人体摄影一区二区三区| 亚洲承认视频| 日韩麻豆第一页| 日产亚洲一区二区三区| 国产盗摄视频一区二区三区| 中国老女人av| 欧美综合影院| 精品国偷自产在线| 一区二区三区免费观看视频| 国产午夜精品久久| 日韩有码免费视频| 日韩深夜福利| 午夜精品一区二区三区视频免费看| 国产成人精品一区二三区四区五区| 欧美国产日韩a欧美在线观看| 欧美日韩亚洲第一| 一道在线中文一区二区三区| 欧美亚洲在线观看| 日本大片在线观看| 狠狠躁夜夜躁人人爽超碰91| 97人妻天天摸天天爽天天| 亚洲麻豆一区| 久久综合久久久| 精品免费av在线| 在线观看国产精品日韩av| 波多野结衣电车| 亚洲国产精品二十页| 国产精品久久久毛片| 欧美a级片视频| 91色琪琪电影亚洲精品久久| 蜜桃视频在线观看免费视频网站www| 欧美视频完全免费看| 国产精品麻豆一区| 国内精品伊人久久久久av影院| 自拍亚洲欧美老师丝袜| 欧美视频二区欧美影视| 性视频1819p久久| 青青操在线视频| 欧美在线色视频| 国产亚洲精品久久久久久豆腐| 精品影院一区二区久久久| 麻豆映画在线观看| jizz性欧美23| 欧美做受高潮电影o| 成年人视频在线免费观看| 精品污污网站免费看| 在线观看黄网址| 国产成人av影院| 精品中文字幕av| 日韩夫妻性生活xx| 亚洲free嫩bbb| www在线看| 亚洲偷欧美偷国内偷| 国产又黄又猛又爽| 亚洲国产另类av| 中文字幕网站在线观看| 激情综合网天天干| 久久亚洲中文字幕无码| 精品久久久久久久久久久下田| 成人羞羞国产免费| 黑森林国产精品av| 久久精品视频在线| 天堂av资源网| 在线不卡欧美精品一区二区三区| 久久久精品国产sm调教| 久久久不卡网国产精品二区| 三区视频在线观看| 美女被久久久| 中国女人做爰视频| 加勒比久久综合| 国产精品一区二区三区不卡| 精品三级在线| 日本免费久久高清视频| caopon在线免费视频| 亚洲男人天堂2023| www久久久com| 欧美色综合网站| 韩国av免费观看| 亚洲少妇最新在线视频| 在线不卡av电影| 成人午夜激情视频| 亚洲怡红院在线| 久久久久久黄| 国产精品久久久久9999爆乳| 日韩理论电影| 日本不卡一区| 欧美激情99| 99re热精品| 香蕉久久一区| 国产精品高清免费在线观看| 51精品视频| 久久99视频精品| 麻豆tv在线| 中文字幕亚洲一区| 飘雪影院手机免费高清版在线观看| 日韩一级高清毛片| 91亚洲视频在线观看| 欧美四级电影网| 在线观看日本视频| 午夜精品福利一区二区蜜股av| 欧美日韩在线观看免费| 国产精品不卡视频| 欧美亚洲色综久久精品国产| www国产精品av| a视频免费观看| 99久久国产综合色|国产精品| 岛国精品一区二区三区| 国产精品18久久久久久久久| 激情图片中文字幕| 久久se这里有精品| 日本激情视频在线播放| 蜜桃av一区| 一本久道中文无码字幕av| 免费视频一区| 黄色a级片免费| 久久aⅴ国产紧身牛仔裤| 99热成人精品热久久66| 午夜在线一区| 国产成人无码一二三区视频| 久久久夜精品| 黄色片在线免费| 日本在线不卡一区| 天天视频天天爽| 久久成人免费网| 加勒比av中文字幕| 国产高清在线精品| 色悠悠在线视频| 99久久免费国产| 李宗瑞91在线正在播放| 国产欧美一区视频| 婷婷国产成人精品视频| 亚洲色图欧美激情| 久草视频免费播放| 午夜欧美视频在线观看| 国产69精品久久久久久久久久| 欧美视频在线免费| 欧美国产一级片| 在线播放欧美女士性生活| 国产欧美一级片| 亚洲成人性视频| 蜜桃视频在线观看视频| 这里只有精品视频| 国产视频中文字幕在线观看| 欧美精品激情视频| 亚洲精品福利电影| 国产剧情久久久久久| 国产中文欧美日韩在线| 国产v亚洲v天堂无码| 国产成人精品免费视| 中文字幕一区二区中文字幕| 欧美特黄一区| 116极品美女午夜一级| 免费人成在线不卡| 色诱av手机版| 久久久久久久网| 强乱中文字幕av一区乱码| 午夜成人免费电影| 亚洲字幕av一区二区三区四区| 日韩免费一区二区| 国产精品影院在线| 欧美理论片在线观看| 日韩美女在线看免费观看| 99re国产在线播放| 精品日韩在线| 免费高清一区二区三区| 日本中文在线一区| xxxxxx黄色| ●精品国产综合乱码久久久久| 在线观看 中文字幕| 欧美挠脚心视频网站| 亚洲欧美综合一区二区| 日韩中文字幕网址| 蜜桃视频在线观看播放| 91中文字幕一区| 国产精品欧美日韩一区| 国产精品69久久久| 久久国产精品免费| 熟女俱乐部一区二区视频在线| 亚洲日本电影在线| 日本精品入口免费视频| 精品国产伦理网| 黄网站app在线观看| 日韩av不卡在线| 里番精品3d一二三区| 丰满女人性猛交| 日韩精品乱码免费| 国产黑丝一区二区| 亚洲男同性视频| 中文字幕在线观看视频一区| 亚洲男人av在线| 老司机深夜福利在线观看| 91成人免费观看| 91精品精品| 亚洲免费黄色录像| 国产女人18水真多18精品一级做| 国产乡下妇女做爰视频| 日韩欧美一卡二卡| 秋霞午夜理伦电影在线观看| 国产精品第一区| 久久91麻豆精品一区| 欧美日韩激情视频在线观看| 国产91精品在线观看| 日韩激情综合网| 欧美乱妇15p| 五月天婷婷在线视频| 国产精品国模在线| 视频国产一区| 欧美少妇性生活视频| www国产精品av| 99久久久久久久久| 亚洲视频在线观看视频| 正在播放日韩精品| 久久精品国产精品青草色艺| 亚洲人妖在线| 五月婷婷综合在线观看| 欧美日韩在线视频首页| 天堂av中文在线资源库| 91av视频在线免费观看| 日韩伦理一区二区三区| 成人在线免费观看av| 91免费视频观看| 中文字幕在线看人| 一区二区三欧美| 日韩午夜电影免费看| 综合网五月天| 国产不卡一区视频| 日产亚洲一区二区三区| 亚洲精品视频免费| 成人福利视频| 亚洲精品在线视频观看| 国产主播一区二区| 免费又黄又爽又色的视频| 精品成人一区二区| 在线观看v片| 亚洲精品国产精品国自产| 麻豆精品视频在线| 男人在线观看视频| 精品久久久久久亚洲综合网| 国产精品一二三产区| 欧洲精品在线一区| 精品一区二区久久| 国产亚洲自拍av| 日韩精品在线影院| 欧美黄色成人| 日韩小视频网站| 久久久久综合网| 国产精品无码白浆高潮| 久久久久久成人| 国产探花在线精品一区二区| 天堂av2020| 福利视频导航一区| 香蕉视频在线看| 国产精品视频入口| 日本aⅴ免费视频一区二区三区| 精品人妻伦九区久久aaa片| 精品av久久707| 国产成+人+综合+亚洲欧美| 成人短视频在线观看免费| 91丨porny丨户外露出| 在线播放一级片| 国模吧一区二区三区| 日韩欧美网址| 中文字幕一区二区久久人妻网站 | 国产成人三级在线观看视频| 热99在线视频| 综合激情婷婷| 国产av自拍一区| 精品国产乱码久久久久久免费| 校园春色亚洲| 亚洲啊啊啊啊啊| 久久色成人在线| 亚洲av无码乱码国产麻豆| 国产精品99免视看9| 亚洲精选国产| 日本黄色免费片|