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

ARTICLE DETAIL

資訊詳情

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

基于RAG的私有知識(shí)庫(kù)問(wèn)答系統(tǒng)實(shí)戰(zhàn):從文檔預(yù)處理到檢索增強(qiáng)生成

基于RAG的私有知識(shí)庫(kù)問(wèn)答系統(tǒng)實(shí)戰(zhàn):從文檔預(yù)處理到檢索增強(qiáng)生成 簡(jiǎn)介這是一套基于RAG檢索增強(qiáng)生成技術(shù)的私有知識(shí)庫(kù)問(wèn)答系統(tǒng)完整項(xiàng)目面向計(jì)算機(jī)相關(guān)專(zhuān)業(yè)需要完成畢業(yè)設(shè)計(jì)、期末大作業(yè)或課程設(shè)計(jì)的學(xué)生也適合想學(xué)習(xí)RAG落地實(shí)踐的開(kāi)發(fā)者參考。項(xiàng)目代碼注釋詳細(xì)經(jīng)過(guò)嚴(yán)格調(diào)試簡(jiǎn)單部署即可運(yùn)行系統(tǒng)功能完善、界面美觀具備知識(shí)庫(kù)管理、智能檢索問(wèn)答等核心能力屬于導(dǎo)師認(rèn)可的高分畢設(shè)作品。資源包共545個(gè)文件約126MB以145個(gè)Python源碼文件為核心輔以96個(gè)pyc編譯文件、166個(gè)png界面截圖、23個(gè)md說(shuō)明文檔同時(shí)包含9個(gè)pdf文檔、35個(gè)js前端腳本及css、yaml、json等配置與依賴(lài)文件代碼、文檔、素材一應(yīng)俱全。目前已有1860人學(xué)習(xí)下載。源碼帶有清晰注釋新手也能讀懂可直接作為畢業(yè)設(shè)計(jì)或課程設(shè)計(jì)提交也可在此基礎(chǔ)上擴(kuò)展二次開(kāi)發(fā)對(duì)理解RAG檢索生成流程、私有化知識(shí)庫(kù)搭建具有很高的參考價(jià)值。1. 基于RAG的私有知識(shí)庫(kù)問(wèn)答系統(tǒng)畢業(yè)設(shè)計(jì)里最值得一試的“萬(wàn)能殼子”站在畢業(yè)設(shè)計(jì)的選題清單前大多數(shù)人的第一反應(yīng)是做一個(gè)XX管理系統(tǒng)但如果你盯上基于RAG的私有知識(shí)庫(kù)問(wèn)答系統(tǒng)要交付的就不是又一個(gè)CRUD而是一個(gè)能“看懂”你喂給它的文檔、并按提問(wèn)給出帶出處回答的系統(tǒng)。RAG檢索增強(qiáng)生成會(huì)把私有文檔切碎、向量化、存進(jìn)向量庫(kù)用戶提問(wèn)時(shí)先檢索最相關(guān)的片段再讓大模型基于這些片段作答。它直接解決一個(gè)真實(shí)痛點(diǎn)通用大模型不知道你內(nèi)部文檔里的內(nèi)容微調(diào)貴且周期長(zhǎng)RAG用最少的算力把“陌生文檔”變成“可回答的問(wèn)題”。這個(gè)方向適合想兼顧算法認(rèn)知和工程落地、又不想把畢業(yè)設(shè)計(jì)做成純調(diào)包演示的本科生和研究生源碼和文檔說(shuō)明寫(xiě)透了答辯時(shí)連“創(chuàng)新點(diǎn)”都能順著檢索鏈路往下講。2. 先把知識(shí)庫(kù)做成“能檢索的樣子”文檔歸一化、切塊與Embedding選型2.1 私有知識(shí)庫(kù)的常見(jiàn)來(lái)源PDF、Word、公眾號(hào)文章怎么歸一化“私有知識(shí)庫(kù)”聽(tīng)起來(lái)高大上落到文件系統(tǒng)里無(wú)非是幾十個(gè)PDF、若干Word/Pages文檔、Markdown筆記還有從微信讀書(shū)或公眾號(hào)里存下來(lái)的網(wǎng)頁(yè)。常見(jiàn)做法是先把所有格式歸一成純文本后續(xù)的切塊、向量化才有統(tǒng)一入口。PDF用pdfplumberWord用python-docxHTML用BeautifulSoup這是我在多個(gè)項(xiàng)目里試下來(lái)最穩(wěn)的組合。from pathlib import Path import pdfplumber from docx import Document from bs4 import BeautifulSoup def load_document(path: str) - str: p Path(path) suffix p.suffix.lower() if suffix .pdf: text [] with pdfplumber.open(path) as pdf: for page in pdf.pages: text.append(page.extract_text() or ) return \n.join(text) if suffix .docx: doc Document(path) return \n.join(para.text for para in doc.paragraphs) if suffix in (.html, .htm): soup BeautifulSoup( p.read_text(encodingutf-8, errorsignore), html.parser ) for tag in soup([script, style]): tag.decompose() return soup.get_text(\n) return p.read_text(encodingutf-8, errorsignore)這段代碼做三件事按后綴分發(fā)解析器PDF每頁(yè)單獨(dú)提取并按頁(yè)拼接HTML先刪掉script和style再取文本。邏輯上要注意extract_text()對(duì)掃描件返回空字符串所以給它兜底o(hù)r 避免整頁(yè)內(nèi)容在后續(xù)處理里靜默丟失Word只取段落文本表格里的內(nèi)容會(huì)丟掉如果知識(shí)庫(kù)里有表格型制度文件要看后面避坑章節(jié)的處理方案。把公眾號(hào)文章存進(jìn)知識(shí)庫(kù)我一般不是去爬而是直接復(fù)制全文到Typora或Obsidian里存成Markdown再走上面的Markdown分支。這樣做的好處是保留了小標(biāo)題結(jié)構(gòu)后面按標(biāo)題切塊時(shí)能拿到干凈的語(yǔ)義邊界也天然避開(kāi)了網(wǎng)頁(yè)里導(dǎo)航、廣告等噪聲文本的干擾。2.2 Embedding模型選型中文私有文檔的四個(gè)候選檢索質(zhì)量的上限由Embedding模型決定不是由大模型決定。這個(gè)順序很多同學(xué)搞反先定LLM然后隨便用一個(gè)Embedding檢索效果差就開(kāi)始調(diào)Prompt這是本末倒置。建議先做一輪Embedding選型再回去定生成模型。下面這組對(duì)比是我在中文制度類(lèi)文檔上常用的候選模型維度是否可本地部署中文效果備注BAAI/bge-large-zh-v1.51024是好密集檢索基線需要配合查詢指令前綴BAAI/bge-m31024是好支持多語(yǔ)言和多粒度內(nèi)存占用偏大text2vec-base-chinese768是中資源占用低適合老舊電腦跑演示云端API百煉、千帆等不等否好零部署但要把文檔內(nèi)容傳到外部私有場(chǎng)景慎用私有知識(shí)庫(kù)的核心訴求恰好在“私有”二字上一般優(yōu)先推薦bge-m3或bge-large-zh-v1.5。前者在長(zhǎng)文檔和混合語(yǔ)言場(chǎng)景更穩(wěn)后者單機(jī)幾個(gè)GB內(nèi)存就能跑。選型時(shí)有一個(gè)容易踩的坑不同Embedding模型產(chǎn)出的向量維度不一樣切換模型之后必須重建向量索引否則FAISS加載時(shí)直接把進(jìn)程崩掉這屬于“換了模型忘了索引”的低級(jí)事故避坑章節(jié)里我會(huì)展開(kāi)講。另外知識(shí)圖譜型知識(shí)庫(kù)KG與RAG知識(shí)庫(kù)是兩條不同的路線。KG適合實(shí)體關(guān)系密集的場(chǎng)景比如公安案件、企業(yè)供應(yīng)鏈關(guān)系查詢但構(gòu)建圖譜的標(biāo)注和抽取成本很高RAG知識(shí)庫(kù)更適合制度文本、操作手冊(cè)這類(lèi)“一段話講清楚一件事”的內(nèi)容。畢業(yè)設(shè)計(jì)里如果選的是制度問(wèn)答老老實(shí)實(shí)走RAG就夠了別為了湊創(chuàng)新點(diǎn)硬上KG。2.3 圖片和表格要不要進(jìn)知識(shí)庫(kù)熱搜里常有人問(wèn)“RAG知識(shí)庫(kù)能存儲(chǔ)圖片嘛”。純文本RAG處理不了圖片像素但有兩種變通一是用多模態(tài)Embedding把圖片和文字一起向量化二是先把圖片轉(zhuǎn)成文字描述再入庫(kù)。畢業(yè)設(shè)計(jì)不建議引入多模態(tài)顯得復(fù)雜且答辯不好講。更實(shí)用的做法是把圖片中的文字用OCR識(shí)別出來(lái)跟圖片的上下文文本拼在一起表格則按行轉(zhuǎn)成鍵值對(duì)文本再入庫(kù)。常見(jiàn)做法是把表格轉(zhuǎn)成“列名: 值; 列名: 值”的拼接文本例如“姓名: 張三; 部門(mén): 研發(fā)部”而不是直接喂原始表格。原因在于切塊和Embedding對(duì)純排版結(jié)構(gòu)不敏感鍵值對(duì)文本的語(yǔ)義密度遠(yuǎn)高于帶空格的表格原樣。這一步雖然土但能顯著減少后端生成的幻覺(jué)。數(shù)據(jù)清洗時(shí)再順手做兩步去掉連續(xù)空行和亂碼字符按標(biāo)題把一篇長(zhǎng)文檔預(yù)切成小節(jié)這樣切塊器工作的目標(biāo)粒度從“整本手冊(cè)”變成“一個(gè)章節(jié)”召回效果會(huì)明顯提升。3. 用Python把“檢索生成”串起來(lái)最小可跑的RAG流水線3.1 本地向量庫(kù)FAISS bge-m3 的建庫(kù)與檢索一個(gè)能拿來(lái)答辯的RAG系統(tǒng)最核心的代碼量其實(shí)只有兩百行左右。我強(qiáng)烈建議不要一上來(lái)就套LangChain的完整流程畢業(yè)設(shè)計(jì)里要先自己手寫(xiě)一遍Embedding和檢索哪怕后面用框架重構(gòu)成產(chǎn)品形態(tài)答辯時(shí)也能講清楚“向量從哪來(lái)、索引長(zhǎng)什么樣、檢索怎么算相似度”。下面這套最小可跑的組合直接用SentenceTransformer加載本地中文Embedding模型用FAISS建密排索引。from sentence_transformers import SentenceTransformer from langchain_text_splitters import RecursiveCharacterTextSplitter import faiss import numpy as np model SentenceTransformer(BAAI/bge-m3) splitter RecursiveCharacterTextSplitter( chunk_size500, chunk_overlap50, separators[\n\n, \n, 。, , , ], ) def load_documents(file_paths: list[str]) - list[str]: # file_paths 來(lái)自上一章 load_document 的歸一化結(jié)果 return [load_document(fp) for fp in file_paths] def build_index(docs: list[str]): chunks [ c for doc in docs for c in splitter.split_text(doc) ] vectors model.encode( chunks, normalize_embeddingsTrue ).astype(float32) index faiss.IndexFlatIP(vectors.shape[1]) index.add(vectors) return index, chunks def search(index, chunks, query, k4): query_vec model.encode( [query], normalize_embeddingsTrue ).astype(float32) scores, idx index.search(query_vec, k) return [ (float(scores[0][i]), chunks[idx[0][i]]) for i in range(k) ]代碼邏輯分三塊切塊器把每個(gè)文檔切成500字的小段段間重疊50字模型把每段變成1024維向量normalize_embeddingsTrue讓向量落在單位球面上檢索用IndexFlatIP也就是內(nèi)積相似度歸一化之后的內(nèi)積等價(jià)于余弦相似度。參數(shù)上chunk_size500對(duì)制度條款類(lèi)中文文本是安全起點(diǎn)overlap50能避免句子被從中間腰斬。這里有個(gè)容易忽略的細(xì)節(jié)split_text返回的是字符串列表RecursiveCharacterTextSplitter的順序是先按“\n\n”切再按句號(hào)切最后按空格這意味著Markdown的段落邊界會(huì)被優(yōu)先保留比固定長(zhǎng)度硬切合理得多。如果裝不上langchain-text-splitters也可以手寫(xiě)一個(gè)按標(biāo)點(diǎn)切塊的函數(shù)但多級(jí)分隔符的優(yōu)先級(jí)順序要保留。3.2 生成環(huán)節(jié)Ollama 本地大模型 帶出處約束的Prompt檢索拿到top-k片段之后生成環(huán)節(jié)的任務(wù)是“忠實(shí)復(fù)述”不是“自由發(fā)揮”。我用Ollama跑本地模型比如qwen2.5:7b通過(guò)OpenAI兼容接口調(diào)用這樣一個(gè)Client可以在本地和云端API之間平滑切換。Prompt里的核心約束是只能依據(jù)給定資料作答資料里沒(méi)有的內(nèi)容要明說(shuō)不知道。from openai import OpenAI client OpenAI( base_urlhttp://127.0.0.1:11434/v1, api_keyollama, # Ollama 本地服務(wù)不校驗(yàn) key占位即可 ) def ask(query: str, hits: list[tuple[float, str]], top_k: int 3): context \n\n.join([ f片段{i1}{text} for i, (_, text) in enumerate(hits[:top_k]) ]) prompt ( 你是一個(gè)嚴(yán)謹(jǐn)?shù)膯?wèn)答助手。請(qǐng)只根據(jù)下面的資料回答問(wèn)題。\n 資料中沒(méi)有的信息請(qǐng)回答“資料中未找到相關(guān)內(nèi)容”不要編造。\n 回答時(shí)標(biāo)注你引用的片段編號(hào)。\n\n f資料\n{context}\n\n f問(wèn)題{query} ) resp client.chat.completions.create( modelqwen2.5:7b, messages[{role: user, content: prompt}], temperature0.2, max_tokens512, ) return resp.choices[0].message.content這里temperature0.2是為防止模型在事實(shí)問(wèn)答里“文采飛揚(yáng)”從而引入幻覺(jué)max_tokens512對(duì)大多數(shù)制度問(wèn)答夠用。讓模型標(biāo)注片段編號(hào)有兩個(gè)作用一是給用戶提供出處答辯時(shí)這是很好的加分項(xiàng)二是當(dāng)模型引用了不存在的片段或半句話你能從編號(hào)反查是切塊問(wèn)題還是檢索問(wèn)題。實(shí)際演示時(shí)一個(gè)常見(jiàn)的翻車(chē)現(xiàn)場(chǎng)是模型滔滔不絕地把檢索片段之外的知識(shí)也講出來(lái)所以Prompt里“不要編造”這五個(gè)字往往比調(diào)大top_k更管用。生成這一步還有個(gè)小技巧把之前的問(wèn)答歷史拼進(jìn)上下文實(shí)現(xiàn)多輪追問(wèn)。簡(jiǎn)單做法是維護(hù)一個(gè)messages列表把前一輪的user/assistant內(nèi)容追加進(jìn)去但要注意上下文膨脹超過(guò)模型窗口后反而把檢索片段擠掉。我一般只保留最近兩輪對(duì)話再多就截?cái)唷?.3 手寫(xiě)流水線 vs Dify/開(kāi)源知識(shí)庫(kù)畢業(yè)設(shè)計(jì)怎么選熱搜里頻繁出現(xiàn)Dify知識(shí)庫(kù)和開(kāi)源知識(shí)庫(kù)很多同學(xué)會(huì)糾結(jié)畢業(yè)設(shè)計(jì)要不要直接用Dify拉流水線我的看法是Dify適合做產(chǎn)品原型和現(xiàn)場(chǎng)演示但如果論文要求“實(shí)現(xiàn)一個(gè)系統(tǒng)”直接拖節(jié)點(diǎn)很容易被答辯老師問(wèn)住——你寫(xiě)進(jìn)論文的“創(chuàng)新點(diǎn)”會(huì)變成“配置點(diǎn)”。手寫(xiě)代碼的另一個(gè)好處是能精確監(jiān)控每個(gè)環(huán)節(jié)的耗時(shí)和丟失率Dify里的“知識(shí)庫(kù)排隊(duì)中”這類(lèi)黑匣子狀態(tài)到了答辯現(xiàn)場(chǎng)很難解釋。不過(guò)這并不意味著不該了解Dify。它的知識(shí)庫(kù)本質(zhì)就是文檔集、切塊策略、向量庫(kù)、檢索參數(shù)四件套你完全可以在論文的“系統(tǒng)設(shè)計(jì)”章節(jié)畫(huà)同樣的四層結(jié)構(gòu)再用自己的Python代碼逐層落地。開(kāi)源知識(shí)庫(kù)也可以拿來(lái)對(duì)比選型但源碼級(jí)研究還是回到FAISS與SentenceTransformer這條主線最省力。底線是界面可以用現(xiàn)成框架套但檢索和生成的鏈路代碼必須能在自己機(jī)器上從零跑通否則論文的“系統(tǒng)實(shí)現(xiàn)”站不住。4. 讓回答從“能跑”到“靠譜”三個(gè)必調(diào)參數(shù)、混合檢索與Reranker4.1 三個(gè)必調(diào)參數(shù)chunk_size、chunk_overlap、top_k把系統(tǒng)跑通只需半天調(diào)參卻可能花掉一周因?yàn)槊總€(gè)參數(shù)都直接影響檢索命中率而命中率又決定生成質(zhì)量。三個(gè)必調(diào)參數(shù)是chunk_size切塊大小、chunk_overlap切塊重疊、top_k送入生成模型的片段數(shù)量。chunk_size語(yǔ)義上等于“模型一次能看到的資料粒度”。設(shè)置太小比如200一個(gè)完整的條款被攔腰拆散檢索到的是殘句設(shè)置太大比如1000向量里混入太多無(wú)關(guān)信息相似度被稀釋。中文制度文檔一般從400到600之間起步。chunk_overlap是防止句子被從中間切開(kāi)導(dǎo)致語(yǔ)義斷裂的緩沖經(jīng)驗(yàn)值是chunk_size的10%到20%。top_k則需要在“上下文完整”和“上下文干凈”之間平衡top_k2時(shí)上下文很干凈但容易漏關(guān)鍵出處top_k6時(shí)召回高但Prompt會(huì)塞進(jìn)噪聲。我常用top_k4做默認(rèn)值再配合重排序修正。調(diào)參不能靠手感要寫(xiě)一個(gè)離線評(píng)估腳本把幾十個(gè)“問(wèn)題-標(biāo)準(zhǔn)答案”喂進(jìn)去算召回率。def evaluate_params( docs: list[str], qa_pairs: list[dict], chunk_size: int, overlap: int, top_k: int, ) - float: splitter RecursiveCharacterTextSplitter( chunk_sizechunk_size, chunk_overlapoverlap, separators[\n\n, \n, 。, , , ], ) chunks [ c for doc in docs for c in splitter.split_text(doc) ] # 注意chunk_size 變了之后必須重建索引 vectors model.encode(chunks, normalize_embeddingsTrue).astype(float32) index faiss.IndexFlatIP(vectors.shape[1]) index.add(vectors) hit 0 for item in qa_pairs: hits search(index, chunks, item[question], ktop_k) texts [text for _, text in hits] if any(item[golden] in text for text in texts): hit 1 return hit / len(qa_pairs)這段代碼把“問(wèn)題-包含答案的片段原文”作為測(cè)試集統(tǒng)計(jì)top_k召回里是否出現(xiàn)答案所在片段。如果數(shù)據(jù)里沒(méi)有一塊完整片段包含答案說(shuō)明chunk_size太小把答案切碎了。這個(gè)“答案落在一個(gè)chunk里”的比率就是檢索系統(tǒng)的底氣比率低于70%先別急著調(diào)Prompt回來(lái)調(diào)切塊。參數(shù)說(shuō)明上chunk_size和overlap在切塊時(shí)就決定了chunk集合的形狀改完必須重建索引top_k只影響檢索讀取多少片段不需要重建索引可以快速掃幾個(gè)值。所以調(diào)參順序是先固定top_k4用腳本掃chunk_size和overlap再固定最優(yōu)切塊掃top_k。批量跑的時(shí)候把結(jié)果記錄成CSV方便寫(xiě)進(jìn)論文的“實(shí)驗(yàn)與分析”章節(jié)。很多人工標(biāo)注問(wèn)答對(duì)的同學(xué)會(huì)忽略一點(diǎn)測(cè)試集要和調(diào)參過(guò)程分離留出至少10個(gè)“沒(méi)用來(lái)調(diào)參”的問(wèn)題做最終驗(yàn)證否則調(diào)參過(guò)程會(huì)過(guò)擬合到自己這批題上。4.2 混合檢索BM25補(bǔ)上精確匹配的盲區(qū)向量檢索用語(yǔ)義相似度找“意思相近”的片段但對(duì)專(zhuān)有名詞、工號(hào)、公文編號(hào)這類(lèi)精確字符串并不敏感。比如你問(wèn)“請(qǐng)找出編號(hào)為ZD-2024-001的制度文件”語(yǔ)義向量很可能把它匹配到“制度文件”上而丟掉編號(hào)?;旌蠙z索的常見(jiàn)做法是對(duì)同一批chunk同時(shí)建BM25倒排索引和向量索引檢索時(shí)分別取結(jié)果再用帶權(quán)重的分?jǐn)?shù)融合合并。from rank_bm25 import BM25Okapi # 中文按字切分最穩(wěn)按詞切分容易切錯(cuò)專(zhuān)有名詞 tokenized_chunks [list(chunk) for chunk in chunks] bm25 BM25Okapi(tokenized_chunks) def hybrid_search(query: str, k: int 4, alpha: float 0.5): vec_scores, vec_idx index.search( model.encode([query], normalize_embeddingsTrue).astype(float32), k * 2, ) bm25_scores bm25.get_scores(list(query)) max_bm25 max(bm25_scores) or 1.0 vec_norm [float(s) for s in vec_scores[0]] max_vec max(vec_norm) or 1.0 combined {} for pos, i in enumerate(vec_idx[0]): combined[i] alpha * (vec_norm[pos] / max_vec) for i in range(len(chunks)): bm25_part (1 - alpha) * (bm25_scores[i] / max_bm25) combined[i] combined.get(i, 0.0) bm25_part top_indices sorted( combined, keylambda i: combined[i], reverseTrue, )[:k] return [(combined[i], chunks[i]) for i in top_indices]上面的權(quán)重融合先把向量分?jǐn)?shù)和BM25分?jǐn)?shù)各自歸一化到0到1再用alpha做線性加權(quán)否則兩類(lèi)分?jǐn)?shù)量綱不同相加沒(méi)有意義。中文場(chǎng)景我建議按單字切分而不是按詞因?yàn)榉衷~器對(duì)制度文本里的新詞很容易切錯(cuò)。alpha控制語(yǔ)義和精確匹配的側(cè)重制度編號(hào)多的文檔alpha取0.4以下口語(yǔ)化問(wèn)答多alpha取0.6以上?;旌蠙z索不是越復(fù)雜越好但BM25插件的成本極低且在答辯里屬于“檢索策略有改進(jìn)”的加分點(diǎn)。4.3 用Cross-Encoder做重排序粗排精排的經(jīng)典打法向量檢索的第一階段是雙塔結(jié)構(gòu)速度快但精度有限第二階段用Cross-Encoder把查詢和每個(gè)候選片段拼起來(lái)打分精度高但慢。RAG流水線里常見(jiàn)做法是向量和BM25各召回幾十分交給重排序模型統(tǒng)一打分再取top_k送入生成。這個(gè)“粗排精排”的思路在搜索引擎里是標(biāo)配放到RAG里一樣成立。from transformers import AutoTokenizer, AutoModelForSequenceClassification import torch tokenizer AutoTokenizer.from_pretrained(BAAI/bge-reranker-v2-m3) reranker AutoModelForSequenceClassification.from_pretrained( BAAI/bge-reranker-v2-m3 ) reranker.eval() def rerank(query: str, candidates: list[tuple[float, str]], top_k: int 3): pairs [(query, text) for _, text in candidates] inputs tokenizer( pairs, paddingTrue, truncationTrue, max_length512, return_tensorspt, ) with torch.no_grad(): scores reranker(**inputs).logits.squeeze().tolist() scored sorted( zip(scores, candidates), keylambda x: x[0], reverseTrue, ) return [item for _, item in scored[:top_k]]Cross-Encoder一次只能處理一對(duì)文本所以它只能在“候選數(shù)量已經(jīng)很小”的環(huán)節(jié)用。我一般讓向量檢索先召回30個(gè)候選重排序后取4個(gè)進(jìn)入生成這樣既保住了檢索的廣度又把生成環(huán)節(jié)的上下文噪聲壓到了最低。這個(gè)設(shè)計(jì)在代碼上成本不高但能在論文里放一張“加Reranker前后回答準(zhǔn)確率對(duì)比”的圖屬于投入產(chǎn)出比很高的優(yōu)化點(diǎn)。需要注意bge-reranker-v2-m3按查詢與片段對(duì)打分分?jǐn)?shù)含義是相關(guān)性不能直接和向量相似度比較。5. 避坑指南最常翻車(chē)的五個(gè)地方現(xiàn)象、原因、解決5.1 PDF表格整段消失檢索永遠(yuǎn)命不中現(xiàn)象喂進(jìn)知識(shí)庫(kù)的PDF里有幾張帶邊框的表格任何關(guān)于表格內(nèi)容的問(wèn)題都檢索不到。 原因pdfplumber的extract_text()只提取文字流邊框表格的單元格文本會(huì)被漏掉或亂序。 解決表格頁(yè)面先用page.find_tables()拿到單元格坐標(biāo)逐格取文本再按行合并也可以直接用page.extract_tables()但合并單元格會(huì)拆成空值。畢業(yè)設(shè)計(jì)數(shù)據(jù)量通常不大我一般優(yōu)先人工整理成Markdown表格再入庫(kù)既不丟信息又省調(diào)錯(cuò)時(shí)間。如果表格實(shí)在太多再用腳本處理別上來(lái)就全自動(dòng)否則你會(huì)花一下午查數(shù)據(jù)去哪了。5.2 切塊把句子攔腰截?cái)啻鸢赣肋h(yuǎn)差后半句現(xiàn)象檢索命中的片段總是“半句話”模型生成時(shí)只能說(shuō)一半怎么調(diào)Prompt都沒(méi)用。 原因切塊器按固定字?jǐn)?shù)切分沒(méi)有感知句號(hào)逗號(hào)separators里沒(méi)放中文標(biāo)點(diǎn)。 解決RecursiveCharacterTextSplitter的separators按順序嘗試邊界要把“?!焙汀啊狈旁诳崭袂懊嫒绻袎K器不支持多級(jí)分隔符就在切之前先給文本做預(yù)分段再按chunk_size聚合。檢查方法是打印前20個(gè)chunk看有多少以句號(hào)結(jié)尾。以我的經(jīng)驗(yàn)中文文本如果chunk里句號(hào)結(jié)尾占比低于80%切塊策略就該調(diào)了。5.3 檢索到了但回答“未找到”P(pán)rompt把答案憋壞了現(xiàn)象檢索出的片段明明包含答案模型卻回答“資料中未找到相關(guān)內(nèi)容”。 原因兩個(gè)常見(jiàn)原因一是top_k2導(dǎo)致答案片段被截到上下文之外二是Prompt要求模型“只能根據(jù)資料回答”時(shí)模型過(guò)于保守或者max_tokens太小把答案截?cái)嗔恕?解決先打印送入生成模型的context確認(rèn)答案是否真的在context里。若不在調(diào)高top_k若在問(wèn)題出在生成環(huán)節(jié)把Prompt改為“優(yōu)先依據(jù)資料回答資料不足時(shí)請(qǐng)說(shuō)明”并調(diào)大max_tokens。這條排查順序非常重要檢索問(wèn)題先于生成問(wèn)題不要在沒(méi)看context時(shí)瞎調(diào)Prompt。5.4 換Embedding模型后進(jìn)程崩潰索引維度寫(xiě)死了現(xiàn)象上午用bge-large-zh建好庫(kù)下午換bge-m3程序啟動(dòng)直接段錯(cuò)誤退出。 原因FAISS索引在創(chuàng)建時(shí)確定了向量維度IndexFlatIP(dim)已經(jīng)寫(xiě)死新模型維度不同index.add()會(huì)內(nèi)存越界。 解決每次切換模型后把索引文件和chunk文本一起重建。建議把模型名和維度寫(xiě)進(jìn)索引文件名比如index_bge-m3_1024.faiss加載時(shí)先校驗(yàn)維度再加載。FAISS索引文件本身可刪可重建真正怕的是chunk文本和索引順序?qū)Σ簧纤运饕募cchunks的序列化文件要成對(duì)保存。5.5 檢索出“相似但不相關(guān)”的片段長(zhǎng)尾問(wèn)法搞不定現(xiàn)象用戶用自然口語(yǔ)提問(wèn)檢索結(jié)果卻總是另一份相似文檔的片段。 原因雙塔Embedding對(duì)字面差異敏感對(duì)語(yǔ)義改寫(xiě)不夠魯棒或者測(cè)試集里這一類(lèi)問(wèn)題本身就少切塊與模型都沒(méi)針對(duì)性優(yōu)化。 解決混合檢索里的BM25能兜住字面匹配Reranker能修正語(yǔ)義排序二者疊加后此類(lèi)現(xiàn)象大幅減少。另一個(gè)有效手段是給查詢加一個(gè)重寫(xiě)步驟把口語(yǔ)問(wèn)題改寫(xiě)成規(guī)范問(wèn)句再檢索比如“工資什么時(shí)候發(fā)”改寫(xiě)成“工資發(fā)放時(shí)間”。這個(gè)邏輯可以寫(xiě)成一個(gè)小函數(shù)也可以讓生成模型在檢索前代為改寫(xiě)但畢業(yè)設(shè)計(jì)階段用規(guī)則或Few-shot最省錢(qián)可控。6. 進(jìn)階用離線評(píng)估和鏈路快照給答辯交一份能復(fù)現(xiàn)的數(shù)字6.1 三個(gè)離線指標(biāo)替代“我覺(jué)得變好了”把系統(tǒng)調(diào)到位之后最容易被忽略的是評(píng)估。答辯最怕老師說(shuō)“這個(gè)效果是你自己調(diào)出來(lái)的換一批文檔還能用嗎”。我最后做的一道工序是把評(píng)估腳本固化召回率k、答案中含golden片段的比例、單次問(wèn)答的生成時(shí)長(zhǎng)中位數(shù)。每改一個(gè)參數(shù)命令行跑一遍輸出對(duì)比表。這里的關(guān)鍵是測(cè)試集要留出一部分“沒(méi)參與調(diào)參”的問(wèn)題防止過(guò)擬合到自己這批文檔上。6.2 把一次問(wèn)答的完整鏈路dump下來(lái)另一個(gè)實(shí)用技巧是把每次問(wèn)答的chunk片段、Prompt、模型輸出全部存成JSON文件翻車(chē)時(shí)對(duì)著JSON看是哪一環(huán)出了問(wèn)題而不是盯著終端猜測(cè)。鏈接口返回異常、檢索為空、生成超時(shí)分別記不同的錯(cuò)誤碼答辯現(xiàn)場(chǎng)出了問(wèn)題也能說(shuō)“這是哪一層的日志”。def save_trace(question, hits, final_answer, pathtrace.jsonl): import json record { question: question, hit_chunks: [text[:100] for _, text in hits], answer: final_answer, } with open(path, a, encodingutf-8) as f: f.write(json.dumps(record, ensure_asciiFalse) \n)這段代碼把當(dāng)前問(wèn)題的檢索片段截?cái)嗪笈c最終答案一起落盤(pán)。字段刻意只保留前100字避免日志文件膨脹你要做的就是每改一次參數(shù)后跑一批問(wèn)題對(duì)比兩次的JSON記錄看答案是變好了還是只是換了個(gè)說(shuō)法。我最深的教訓(xùn)是第一次做RAG時(shí)花了三周調(diào)大模型最后發(fā)現(xiàn)70%的問(wèn)題來(lái)自切塊和Embedding而不是LLM。所以我強(qiáng)烈建議你先跑通離線評(píng)估再去做界面和包裝。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲一区二区麻豆影院| 97色欧洲| 亚洲高潮影院| 国产三级电影免费观看| 天天性射网| 插欧洲美女欧美精品| 97干色| 欧美日韩超碰在线| 成在线人在线观看视频| 九九九九AV| 黑操B| 乱欲一区二区| 色黄污美女啪啪啪免费网站| 亚洲情色一区二区三区| 伊人国产视频| 午夜国产成人福利视频| 色吧5亚洲| 日韩一性一交一A片俄罗斯| 欧美亚洲特P| 日本久久网| 永久电影三级在线观看| 十八禁一区二区无码观看| 亚洲暴力强奸AV| 久久精品熟女亚洲AV麻豆软件| 超碰碰激情97+久| 日韩免费大片一级播放| 亚洲欧洲综合| 清纯唯美综合| 亚洲久9| 大香蕉伊人网WWWn0n| 人人操 欧美| 久久9免费视频| 国产精品经典一卡久久久| 天天操天天舔| 最新日韩黄片| 久久人妻视频| 国产精品999zyz| 性91| 久久久久久网址| 美欧色综合| 凹凸精品熟女在线观看| 成人怡红院| 久久av成人无码免费| 日韩一级欧美一级国产一级台湾| 欧美影院一区二区三区| 日韩欧美中文字亚洲慕| 久久九操在线观看| 美女一区二区国产精品| 精品久| 91精品国产综合久久久蜜臀酒店| 亚洲一区二区在线观看91| 97欧美视频| www久久国产精品| 九九热re99re6在线精品| 91色图片| 五月丁香综合| 999久久久久久久精| 啪啪综合网| 国产精品人人爽人人做可爱福利| 99视频自拍区| 91久久婷婷| 91bbb| 啊啊啊好想要| 在线免费观看日韩一区| 欧美97在线欧| 操逼操网| 香一区二区三区| 九九九久久久久| 欧洲自拍第一页| 精品999一区二区| 女性喷水高潮在线观看| 亚洲国产一区二区三区四区国产| 天天日老熟妇| 亚洲中文字幕有码视频一区二区三区| 青草视频人妻在线观看| 蜜臀AV一区二区三区| 久久久久97| 欧美精品自慰系列寂寞少妇| 欧洲熟妇xxXx欧美老妇裸体| 国语av最新自产拍在线观看| 少妇高潮对白在线观看| 志村玲子视频一区二区| 99热成人| 性性欧美| 老熟女阿 国产91| 亚洲中文字幕av| 97久久精品| 丝袜熟女一区二区三区| 欧美视频在线第3页| 91狼人| 99热这里只有精| 亚洲精品国产精品乱码不卡| 麻豆91熟妇人妻中文字幕茄子| 可以在线观看的黄色网址| 一级黄色牲爱A级片| 91九久| 亚洲天堂电影精品一区| 日韩欧美麻豆 | 国产亚洲日韩欧| 国产一区二区免费福利片| 先锋影音av先锋一区| 99操逼| 欧美 传媒 麻豆 日韩 偷拍| 日韩人人精品| 翔田千里无码中出中文字幕| 天无日色综合| 日日摸天天爽夜夜欢| 国产综合操逼高清| 国产后入清纯| 国产真实子伦对白| 视频在线观看一二三区| 日本福利二区视频| 国产后入精品| 超碰97综合| 欧美 亚洲 偷拍自拍| 裸体1区| 国产午夜精品理论片a大结局| 国产成人免费观看在线视频| 黄呦呦在线| 日韩激情无码影院| 97 九色| 岛国激情视频软件| 久久久久9| 伊人欧美大香蕉视频| 一区二区三区 日韩欧美| 欧美 日韩 国产传媒| 天天看天天日天天操| 婷婷在线视频| 精品久久久久久无码| 99999无码| 91bbb| 精彩视频日韩| 国产精品成人久久一区二区三区| 激情五月天校园春色网| 国产精品人妻免费精品| 天操天操夜操夜月操月年年操 | 欧美大香蕉久| 人妻 欧美 中文| 自拍偷拍草一草| 男插女青青影院| 人妻少妇精品视频一区二区三区| 精品人妻久久久| 国产情侣自拍在线播放| 极品美女嘿咻| 久久久久精| 亚洲无992tv| 9精品在线| 免费观看啪视频| 少妇三p| 小草三级久久观看| 国产视频一区二区免费| 加勒比伊人| 草草网站影院白丝内射| 亚洲激情久久| 人人做,人人操,人人摸| 欧美天天在线| 欧亚在线视频| 夜夜草我| 竹菊一区二区三区AV线| av大香蕉网站| 91成人在线免费视频| 蜜臀Av一区二区三区| 人妻夜夜爽天天爽麻豆三区网站 | 日韩无码AB| 日韩黄色成人性爱| 三级精品三级在线观看| 欧洲一区二区三区四区在线观看| 日韩人妻少妇 一区二区三区| 精品人妻一区二区三区在| 欧亚成人在线视频| 欧美国产日韩清纯唯美| 欧美久久婷婷| 日本成人A片免费看| 天天综合欧美黑人| 中文在线久久字幕| 男人的天堂2019AV| 人妻中文字幕日韩电影| 亚洲巨爆乳一区二区三区四季网| 人妻激情视频| 中文字幕熟女人妻丝袜丝| 太久视频| 天天操天天干一区二区 | 秋霞 色色| 呻吟 欧美 日本 中出| 久久精品欧美一区蜜桃| 国产三级电影免费观看| 久久精品中文字幕观看| 日本操逼aaaaa| 青青青草原| 麻豆影音天美视频| 亚洲另类久操网| www.色婷婷色综合| 日韩不卡毛片Av免费高清| 欧美一区二区三区入口| A级国产欧美激情在线| 舔人妻中文免费视频| 精品97精品97| 亚洲drav色图| 中文字幕福利视频一区二区三区在线观看| 大香蕉之青青草原| 人人爽人人精品乱人伦AV| 日韩一区二区三区四区五区 | 丁香五月天久久精品视频一区二区三区| 久久XX| 成人精品在线免费视频| 亚州综合色| 啊啊啊啊好疼| 人人妻人人爽一区二区三区| 久草精品在线| 91丝袜| 国桃视频产巨乳精品一区二区在线| 特污免视频| 开心激情婷婷| 97人妻色| 中文字幕av久久爽Av| 日本淫色网| 四虎永久在线精品免费网址| 国产精品3| 男人天堂免费| 精品美女少妇一区二区| 91爱| A一区片| 国产人妖的免费的视频| 最新中文字幕在线亚洲| 亚洲欧美精品一区天堂久久 | 日本性爱不卡视频| 欧洲色色| 97超视频在线观看| 国产精品动态一区二区三区四四| 天天色综合影视网| 五十路熟女人妻一区二区三区四区五| 一起草三级AV电影在线观看 | 97亚洲性爱| 天天干2019| 欧美爆操91| 久久久精品中文字幕麻豆| 999久久芭蕾| 加勒比色99999| 翔田千里A片一区二区| 欧美精品23| 午夜爽爽爽在线观看永久入口姬片| 97人妻免费中文字幕| 手机看片1024你懂的国产| 日韩乱伦AⅤ| 黄色高清无码无码破解免费暗网| 午夜婷婷| 在线无码操| 日韩欧美国产高清视频| 人妻熟女午夜精品在线| 亚洲AV乱码专区国产噜噜亚洲| 9热9热综合网| 日日嗷| 久久久不卡| 国产黄色剧情影片麻豆免费播放| 国产成人手机视频激情| 人人摸人人干| 麻豆精品三区视频| 精品一区二区三区免费古装毛片香港三级日本三级人妇 | 日本人妻中文字幕 | 91精品少妇搡搡搡| A一区片| 日本亚洲熟女视频| 极品内射| 久久久久久久人妻丝袜| 免费看A片毛毛片在线播| 天堂蜜桃无码视频一区二区| 97se综合| 成人免费视瓶| 99国内精品| 尤物AV免费网站| 欧美日韩免费性爱| 野狼激情网| 亚洲第一男人天堂| 久久久久久AV无码免费网站| 成人热久久精品| 男人天堂资源| 色综合九九| 精品乱码久久久久| 绯色一区二区三区不卡少妇| 日韩情色视频| 色综合天天爱去电影网| 九九aV| 综合九九| 亚洲精品三| Aa东京男人的天堂| 人人插人人摸人人| 人人搡人人肉久久精品| 乱抡国产91| 精品少妇后入一区二区三区四区人妻巨乳 | 91欧美性| 青娱乐国产精品| 欧美色狠| 色妺妺在线视频| 99999精品| 欧美激情一| 亚洲福利中文字幕在线| 3571色综合一区二区二区| 97久久精品亚洲中六字幕| 日韩无码服务区| 在线可观看的黄色网址| 少妇99| 在线日韩精品一区二区三区| 麻豆久久久一区二区| 亚洲天堂资源在线| 九色97| 国产午夜精品理论片a大结局| AV天天在线观看| 丰满人妻-区二区三区免费看 | 青娱乐蜜桃臀AV色婷| 综合伊人激情| 啊啊啊要高潮了| 成人免费福利网站国产| 加勒比aⅴ| 婷婷五月天社区| 美女91| 久热久一区二区三区| 热思思免费视频| 亚洲人在线| 九色精品视频导航1| 中出后入| 丰满少妇人妻久久久久久| 久久性爱视频免费看| 97超碰色屌| 欧美亚洲尤物久久| 日韩欧美aⅴ综合网站发布| 国产人妻一区二区三区欧美毛片| 福利在线黄片| 日本爽爽爽爽爽爽免费视频| 国内精品99999| 国产精品老熟女一区二区| 无遮挡男女激烈动态图| 国产精品乱码久久久久久久| 67194无码不卡| 国产亚洲中文不卡二区| 三男一女不戴套的A片| 久久99草| 久久久蜜桃一区二区三区| 亚洲精品一区二区精华| 国产91 丝袜在线播放| 操学生天天| 大香蕉黄色一区| 不卡中文字幕aⅴ在线| 精品久操| 久久一二三级一一一| 精品伊人久久久大香线蕉小说| 超碰免费97| 色婷婷一区二区三区久久午夜成人不| 九九热九九热| 十八禁视频网站| 人人爱人人乐人人操| 亚洲AV色图一区| 蜜桃精品一区二区三区ww | 亚洲揄拍网| 日本天天操| 国产精品毛片?v一区二区三区| 在线洲亚线| 亚洲综合骚逼| 美欧老女人97| 久久久9品一区二区三区| 国产精品久久久久久 百度| 亚洲网站一区二区在线| 国产熟女一区二区| 热热色综合网| 日韩综合97P| 日韩少妇丰满亚洲| 日韩99神马视频播放片在线播放| 蜜乳av首页| 乱伦1色页| 久久中文字幕不卡人妻| 欧美97| 久区视频| 2020天天色综合| 又大又长又粗又爽又黄| 国产在线激情视频| 人妻少妇久久中文字幕一区二区 麻豆| 久久久九九| 久久是精品| 久草精品视频| 国产乱子伦一区二区三区免看| 97视频620| 日韩国产十八禁| 伊人大香蕉在线| 啪啪91| 97在线免费看| 国产传媒日本欧美专区| 啊啊啊啊在线观看网址| 99热精品青草在线| 国产一区麻豆免费观看| 闷骚老熟女15P| 久久久久久久久久久人妻| 91肏屄网| 久久亚洲熟妇在线视频| 色偷偷人人玩人人舔人人操人人摸人人爽 | 中出789在线视频| 亚洲揄拍网| 乱码人妻一区二区三区| 97精品网站| 婷婷九月丁香| 成人性交午夜免费片| 天天操天天干美女网址导航| 日本欧美不卡| 日韩性爱啪啪视频| 高清国产成人无码| 极品色www影院| 激情综合五月丁香| 综合亚洲情色| 精品白丝一区| 国产成人在线观看网址| 国产精品视频麻豆入口| 日韩精品人妻中文字幕不卡乱码| 精品人妻一区二区三区四区| 精品国产乱码久久| 美女视频尤物网在线看| 色狠狠色| 天天弄欧美| 999熟女精品| 色综合大香蕉| 日韩无码三级影院| 能看的AV| 99精品伊人| 亚洲资源吧| 国产毛片片精品天天看视频| 大香蕉久| 欧美 综合| 91 亚欧| 日韩电影在线观看网址| 男人a天堂手机在线版| 久久乐| ai欧美亚洲小说| 东京热综合久久一区二区 | 美性中文综合网| 欧美九九九| 一级毛片久久久久久久女人18| 色婷婷狠狠18禁| 夜夜嗷嗷一区二区| 亚洲色人| 色色五月婷婷| 青青草好吊| 国产一区二区免费福利片| 超碰av在线| 色综合20p| 国产强奸无码乱伦| 五月婷婷丁香| 夜夜嗨免费视频| 五月天婷婷在线看 | 亚洲91射| 一区二区三区成人高清视频| 日韩超碰精品综合| 呦呦一区| 天天做天天爱天天爽| 日产123区精品免费观看| 精品无码秘 人妻一区二区| 国产成人精品亚洲日本| 人妻熟女一区二区| 亚洲国产成人福利在线观看| 丰满精品人妻少妇久久字幕| 日韩中文字幕国产| 91天天综合网,天天综合网| 91天堂| 啪啪啪综合网| 女生看匆91网站| 亚州AV无码国产精品| 精品乱码久久久久| 亚洲第2页| 2017大香蕉国产精品久久| 日韩熟女操逼| 国产成人天堂| 秋霞蝌科网日本一区| 久久久男人的天堂| 一区二区三区 日韩欧美| 国产性爱欧美性爱在线| 欧美十八禁导航成人| 性生活无遮挡纯毛片在线看| 太久视频| 色老大| 亚洲丝袜色| 免费国产视频| 国产精品色哟哟| 免费成人在线观看91| 精产国品一区二三产品| 色天使亚洲综合在线观看| 久久久专区| 欧美日韩岛国大片在线观看| 日韩91网| 欧美少妇一区二区三区| 尤物黄色在线观看网站| 国产精品在线一区二区| 超碰99在线观看| 国产女人视频三四五区| 日韩av色图综合| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 2020天天色综合| 丁香六月激情| 国产真乱mangent| 亚洲日韩熟女人妻高清在线| 色综合色欲色综合色综合色综合| 亚州一区二区| 天天色踪合| 九九AV| 国产精品久久久久久高清无码免费看 | 激情终合网| 手机在线人成免费视频| 99久久99久久免费精品蜜臀| 国产精品视频播放| 五月丁香啪啪| 亚洲精品人妻在线| 男人精品区| 精品九九九九九九九九九| 黄色av一区二区在线| 亚洲97在线| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 天堂涩涩| 不卡超碰护士AV在线免费播放| 国产精品蜜臀久久久久无码AV| 99最新日韩偷拍视频| 91久久久久久久久久久| 91天堂色男人的天堂| 啪啪啪综合网| 日韩AV噜噜噜一区二区三区四区 | 变态综合色| 欧美91网站| 天天日日舔舔| 天天做天天爽| 偷窥自拍A片| 亚洲欧美一区二区网址| 先锋女优在线观看视频| 久久久熟女一区| 亚洲欧美九九九| 97色碰| 午夜精品探花| 色婷婷视频| 亚洲中文字幕熟女| 60秒不遮不挡| 亚洲天堂一区二区| 98福利在线视频| 中文97国产| 1024久久高清视频| 五月婷婷综合在线| 国产精品成人无码av| 加勒比在线观看一区二区| 91熟女视频| 日韩在线电影| 夫妻日逼| 亚洲熟女人妻中文字幕一区二区 | 欧美一区二区亚洲天堂| 一级性爱aaaa| 精品黑人一区二区| 欧美视频一区二区在线| 18禁美女裸体无遮挡啪啪| 操啊国产| 亚洲国产av中文字幕久久| 国产性爱强奸乱伦大全| 极品另类| 国产精品免费久久久久久久久久| 99中文字幕| 男人久久天堂| 亚洲毛片基地专区| 亚洲色图 欧美| 国产熟女精品一区二区| 国产毛片片精品天天看视频| 女性喷水高潮在线观看| 精品人妻中文字幕高清| 综合影院永久入口国产| 亚洲无线码欧洲精品区别| 性久久久| 久久精品国产亚洲AV嘿嘿| 日韩 欧美 另类 人妻| 午夜影美女日鸡鸡天天视频国产| 一区二区三区 日韩欧美| 午夜福利视频在线一区| 九九热在线精品视频| 日日夜夜天天| 96爱综合| 男人的天堂日韩| 蜜臀网址在线| 亚洲天天综合| 操操操日本的逼| 中文字幕性感少妇av| 97操操| 艳美熟妇先锋一二三区| 97爱b| 亚洲天堂一二| 毛片久久| 欧美午夜一区二区三区| 五月激情小说| 欧美少妇性乱| 视频二区美腿制服人妻欧美| 日韩三级伦理中文字幕| 国产h片在线观看视频| 国产伦精品一区二区三区在线观| 久久久久久久久久久久久久久性生活视频| A啊啊在线观看| 亚洲成人AB| 精品无码久久久久久久久果冻糖心 | 怡红院一区二区熟女人妻| 亚洲欧美精品一区天堂久久| 欧美天天综| 五十路熟女在线不卡观看一区二区| 色综合天天爱去电影网| 天堂俺去俺来也www久久婷婷| 全球成人中文在线| 日少妇亚洲版| 欧美性爱超碰97| 日本熟女免费視颖| 男人的天堂2019AV| 欧美日韩美女精品久草一区二区三区| 九九九网站| 欧美日韩香蕉| 国产乱弄免费在线视频。 | 欧美日本国产日韩激情视频| 久久精品免费| 精品少妇一区二区| 亚洲最大成人a毛毛片| 啊啊啊操一区| 人妻人久久精品中文字幕| 黄色香蕉视频网站一区| 亚洲第一综合| 加勒比久久av| 免费的很黄很污的全部视频| 91暧暧| 2020中文字幕在线观看| 人妻在线视频| 国产精品不卡一区二区三区| 黄片视频观看| 熟女人妻久久中文字幕一二区| 男人天堂 天天射| 俄罗斯一区二区视频在线观看| 久久久久成人蜜桃精品| 综合网亚洲在线| 色乱二区| 毛片麻豆91糖心精品毛情片| 中文字幕日韩电影人妻| 欧美18禁91| 亚洲精品久久久久毛片A片拉屎| 亚洲综合成人网| 999久久芭蕾| 亚洲一本色道中文无码aV天美| 99RE在线视频精品,这里只有精品| 欧美牲| 亚殴在线| 人人操人人色网| 欧洲无码一区二区| 久久精品一区二区一8| 久久极品一区二区| 欧美少妇人妻| 欧美中文字幕男人天堂久久精品 | 天天欧美色| 日本阿v天堂在线观看| 91欧美高清| 欧美在线播放| 好爽,再快点啊哈嗯嗯嗯嗯| 欧美激情激情xxxx欧美专区| 嗯~啊~快点 死我视频| 综合久久少妇中文字幕| 蜜桃在线观看一区二区三区| 精品国产乱码| 欧美日韩另类字幕中文| 欧美日韩岛国大片在线观看| 91操熟女视频 | 天天综合网亚洲综合网| 天天爽人人综合免费7799| 天天欲望网| 色综合美国| 日韩免费三级黄片电影| 夜夜操一区二区| 一级久久久久久久久久久| 天天性射网| 亚码激情| 懂色av色欲av蜜臀av| 国产AV人人夜夜澡人人爽麻豆| 日本三级日本三级99| 亚洲精品人体| 99啪啪| 探花一区在线| 无码人妻精品酒店| 日日夜夜青青草母狗| 丁香六月东京热| 亚洲激情视频| 97亚洲欧美日韩| AV综合中文字幕干| 在线观看亚洲成人精品| 色偷综合| 91色综| 青青操综合网| 在线中文字幕视频| 传媒免费一区二区三区| 大香蕉综合网| 天天操天天干一区二区 | 亚洲精品乱码久久久久久蜜桃麻豆| 日产狠狠干| 免费αⅴ在线观看| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区 | 欧美大干日韩| 日本伦理一区二区| 亚洲精品成人| 伦激情人妻另类人妻| 四虎免费在线播放| 青青草啪啪网| 中文字幕精品一区二区精品| 国产精品久久久久无码A√| 久夜操| 色在线69堂| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 六月丁香久久| 粉嫩粉嫩一区性色AV片| 精品视频一区二区| 亚洲天堂久久| 天天躁狠狠躁av| 国产精品经典一卡久久久| 熟女突然公开看18禁影片| 在线岛国新天堂8| 欧美综合网在线| 欧美97免费| 丝袜天堂网| 欧美综合在线91| 亚洲熟妇图片| 激情综合五月天| 日本韩欧美在线播放a| 国产特级毛片AAAAAA高潮流水| 麻豆天美91| 蜜臀Av一区二区三区| 久九9精品| 欧美亚州综合图片| 久久嫩草国产成人一区| 久操综合在线| 日本免费中文一区二区三区四区 | 久久97视频| 夜夜嗨老熟女AV一区二区三区| 性性欧美| 超碰碰激情97+久| 五月天伊人| 韩日男人的天堂| 久久久久久久久久久久久久久性生活视频 | 9+1视频网址| 日韩成人网址| 99热伊人| 99re视频在线观看这里只有精品| www.色综合| 激情五月综合网| 色婷婷丁香五月| 99色在线| 成人夜夜爽| 亚洲欧美一区二区三区在钱蜜桃| 99爱视频| 国产欧美一区二区| 欧美日韩资源在线| 国产性刺激| 91l欧美在线| 天天操人人操骚逼网站| 五月天加勒比啪| 91视频综合在线| 99热在线只有精品| 久久黄人人爽视频| 97欧美超碰| 99亚洲国产精品色一区二区三区| 国产精品白丝在线播放| 国产一区二区三区免费视频在性观看| 久久精品国产亚洲AV高清演员表| 三级色综合| 亚洲无码一区二区三区三州| 九九碰九九爱97超碰| 精品国产乱码久久久久久久久1 | 操人人| 看免费的黄片| 亚洲激情深爱文学小说网站| 中文字幕高清精品一区| 狠色婷婷久久一区二区三区_| 日韩中文字幕熟妇人妻| 久久久久久九九九九-美女久久久久久久-成人AV | 亚洲导航深夜福利| 91网亚洲| 精品国产乱码久久久兰草影视| 欧美男人亚洲天堂| 蜜臀久久99精品久久久久电影| 天天干18禁| 人妻一二三区| 久久久18| 久久中出在线| 亚洲欧美综合图片| www.亚洲黄色| 十八禁啪啦拍视频无遮挡| 天综合网| 婷婷九月国产| 操国产高清| 日逼国产| 四虎影视在线| 亚洲熟妇AV日韩熟妇在线| 欧美懂色综合网| 嗯啊抽插大香蕉网页| 爱爱60秒免费视频| 国产精品3| 中文字幕一区二区三区50路| 99re公开精品免费视频| 性色一线| 亚洲色棕合| 国产精品麻豆成人av| 久久ww| 日韩精品99久久久久久中文字幕| 国内一级精品| 人妻少妇被猛烈进入中| 熟女丰满人妻一区| 99热线麻豆| 亚洲伊人a线观看视频| 蜜臀久久99精品久久综合| 2019午夜福利视频| 99亚洲国产精品色一区二区三区| 97人人草| 久久是精品| 欧美一区二区三区入口| 日韩欧美亚洲国产日韩| 91高清欧美| 思思性爱| 中文字幕诱惑制服人妻丝袜美丝袜美 | 亚洲精品国产拍免费91在线| ..日韩av毛片精品久久久| 日本有码影片下载| 啊啊啊好大好深| 青娱乐久久艹| 亚洲欧美在线综合| 性爱视频啪啪啪啪| 97内射偷拍| 一起草三级AV电影在线观看| 亚洲激情网一二三四区| 欧美男人的天堂| av国产无码| 久久久国产护士丝袜美腿一| 亚洲欧洲精品视频发布| 成人在线永久| 丰满岳乱妇一区二区三区| 久久久av爱| 超碰97人妻免费在线| 99re这里只有精品中心播放 | 亚洲夜色在线| 97综合国产| 亚洲国产第一页综合视频| 青草精品视频一日本久久久久网站| 日本一区二区成人在线| 长久操视频| 一级特级aaaa毛片免费观看| 日韩精品三级片长长久久| 亚洲 日本 国产 综合| 欧美日韩婷婷中文| 亚洲无无码αⅴ每日更新| 中文字幕av久久爽Av| 一区二区三区美女超清| 国产嫩草精品A88AV在线| 久久国产AⅤ| 91久久久视| 久久久久久中文版| 福利操逼| chaopen97久久| 色婷婷综合视频| 美女久久久久久久久久久| 亚洲AV无码天美传媒一区| 熟妇乱伦一区二区| 欧美亚洲20p| 嗯啊视频免费在线观看| 夜夜爽爽夜夜精品视频| 人人爱人人操人人性| 999久久芭蕾| 激情五月综合网| PMv在线观看| 不卡一区视频| 激情综合婷婷| 99久久精品国产系列| 中文字幕人妻色偷偷久久皮 | 五月天精品| 人人操人人爽人人操人人| 在线观看视频91| 久操不卡视频| 可免费观看的av毛片中日美韩| 日本 免费 一区二区三区 久久香蕉 | 天天躁日日躁XXXXYY| 91亚洲欧美激情| 久草资源在线视频官方总站日韩丝袜美腿| 午夜视频好爽啊| 91制服丝袜| 中文久久一区| 十八禁啪啦拍视频无遮挡| 免费在线看黄片av| 操淫穴亚洲五月丁香| 天天干,天天日| 欧美性爱免费短视频| 玖色av| 2025亚洲男人天堂| 人妻99p| 亚洲无无码αⅴ每日更新| 亚州,欧美在线| 91精品成人| 丁香五月天堂网| 午夜啪啪片| 97国产人人| 人妻少妇久久中文| 不卡人妻少妇精品毛片一区23区视频| 亚洲第2页| 91P0RNY大屁股人妻| 在线播放欧洲免费av| 99青青草国产视频| 性吧在线视频| 成人福利视频网| 一级人妻性爱视频| 精品人妻一区二区三区鲁大师| 伊人网在线视频| 精品一区二区三区最新| 国产免费久久久久| av天堂天堂av日韩| av毛片aaaaa免费看| 亚洲丝袜二区在线| 1000午夜黄色| 精爱久久| 国产精品国产自产拍高清AV| 欧美综合1性辶| 东方亚洲在线操逼天堂| 精品人妻视频一区二区三区蜜桃视频| 国产刺激视频| 蜜乳AV色欲AVAV无码| 中文字幕久热视频在线| 国产一区二区三区高清视频| 欧美日韩另类激情图片| 亚洲午夜蜜臀| 啊啊啊啊啊啊啊在线| 九热大香蕉| 亚洲 欧美 另类 综合 偷拍| 亚洲无套久久嗯嗯| 天天干天天插| 天天综合色| 99综合视频| 中文激情网| 三级三久久线久久99久目本WW| 国产理论视频在线播放| 国产欧美精选自拍一区| 一区二区三区亚洲| 综合国产影视三级| 一级人妻性爱视频| 国产无码久久高清| 最新日本中文字幕| 91久久久亚洲| 亚洲码在线中文在线观看| 国产毛片片精品天天看视频| 日韩无码极品| 日韩中文字墓| 乱伦熟妇一区二区| A片A5445444| 人人干黄色| 最好看的中文字幕在线2018| 中日亚韩免费视频| 国产欧美一级在线观看| 久久国内| 婷婷综合激情| 97WW精品| 亚洲乱色视频一区、二区在线| 中文字幕在线观看第二页| 天天综合有色网| 牛牛久久国产精品视频一二三| 亚洲老司机123专区| 男女性扦B| 精品一区二区三区18| 国产精品视频在线观看| 亚洲 无码 偷拍| 美国人人操人人操| 在线视频日韩欧美国产| 亚洲熟妇自偷自拍另欧美| 伊人大香蕉在线| 亚洲老司机123专区| 后入式999| 欧亚日韩中文在线| 亚洲国产精品成人综合| 免费簧片在线观看| 熟女精品一区二区三区| 亚洲欧美综合色| 后入式五六区| 精品久| 天堂а√在线最新版在线| 黄片不用下载在线观看| 97网址www| 亚洲综合图片在线| 欧美+日产+中文| 午夜精品久久久久久久久久蜜桃 | 91高潮喷水美女| 久草免费在线视频| 亚洲精品乱码线路中文字幕| 欧美日韩操逼嗦吊| 国产青一二三| 91超碰在线播放| 97精品久久| 中文字幕亚韩| 97干在线看| 亚洲综合色在线| 日本人妻丰满熟妇久久久久久| 日本一区二区三区四区免费观看| 五月天激情小说网| 国产精品久久久久久久久久久久久久久久| 日韩本不卡视频在线观看| 四虎午夜影院| 五月丁香影院| 麻豆人妻偷人精品无码视频| 97日韩欧美| 国产又色又爽又舒服的三级视频 | 日本一区二区三区午夜观看| 91精品久久久久久77777| 亚洲天堂自拍| 欧美色五月| 大香蕉在线SuP| 国产精品日本无码A片| www超碰| 色欧洲97| 亚洲精品白浆高清久久久久久| 婷婷综合| 91精品国| 日本一级婬片试看三分钟| 国产精品一区人妻精品阁在线| 综合色久欲| 无码最新| 性性久久| 91av一区二区在线观看| 超碰亚洲97| 亚洲丝袜少妇在线| 人妻精品视频一区二区| 偷拍综合亚洲| 一类av片在线看| 蜜桃臀 后入 一区 二区 三区 在线| 欧美激情亚洲| 极品白嫩美女白浆成人福利在线看| 91丝袜激情在线| 三级日韩一区二区三区| 91久热这里只有精品| 4虎在线观看| 乱老女人一区二区视频| 91国产伊人大香蕉| 青草青草久热| 欧美黑人91| 91强热人妻| www.av不卡中文字幕| 日韩丰满熟妇| 色哟哟av网址| 黄色小视频日本txt| 五十路人妻在线| 熟女字幕| 五月天人妻综合| 免费精品福利在线观看| 国产后入式在线观看| 国产精品久久久久综合| 夜夜嗨一区二区三区三州加勒比 | 天天综合网亚洲综合网| 日韩欧美国产高清视频| 伊人嫩草| 乱老女人一区二区视频| 精品无码少妇| 亚洲 综合 欧美| 天天日天天操天天射河南省| 任我爽视频在线观看| 国产精品久久久久久久久久梁医生| 熟女中出视频| 乱伦Av网| 欧美综合中文| 色999人与兽| 欧亚无码视频| 日韩少妇在线视频| 免费综合亚洲中文| 国产成人五月天丁香花| 欧美超碰9798| 国产第12页| 亚洲欧美综合网站| 另类小说五月天| 日本久久女同性恋视频| 伊人网在线观看| 国产精品自在自拍视频| AV天堂因数| 黑人中出21连凳花野真衣| 国产亚洲美日韩Aⅴ中文字幕无码成人| 国产精品3| 五月天婷婷成人网| 国产真乱mangent| 日本天天干天天日一区| 免费观看的av| 91av一区二区在线观看| 亚洲欧美啪啪| http://qxhbdz.com| 777AV电影| 美女黄页网站| 四虎免费看黄| 日韩啪啪网| 99亚洲精品| 97资源站国产精品| 真实高潮91| 欧美性爱伊人| 日韩成人高清一区二区| 天天躁夜夜躁狠狠躁AV| 91精品成人www| 人人操,操人人| 超碰成人人人爽人人爽| 色香欲天天天天综合色| 干超碰碰熟女| 亚洲天堂在线怕怕视频 | 91性| 婷婷精品| 精品中文字幕一区二区| 久久激情婷婷| 另类专区加勒比| 清清一区二区三区四区不卡视频| 综合欧美激情网| 狠狠婷婷亚洲中文综合久久| 日本天堂在线播放| 97在线欧洲| 色性综合| 天天看,天天做| 飘花国产午夜精品不卡| 风韵犹存大大大大香蕉| 日韩欧美天天爽爽爽天天爽爽| 91xingse| 色色综合网站| 色伊人91| 精品国产乱码| 免费精品无码一级毛片牛牛影视| 国产精品另类一区大香蕉| 欧美夜夜骑视频| 蜜桃精品一区二区三区ww| 欧美日韩99| 综合欧美日韩在线观看| 欧美性爱免费短视频| 放黄片放3级黄片没穿衣服| 天天干人妻视频| 亚洲欧洲激情| 精品人妻一区春色| 啊啊啊啊啊啊好湿好爽视频| 国产超碰国产97| 五月综合久久| 亚洲综合在线视频| www.超碰在线| 最新国产亚洲精品精品国产亚洲综合| 免费超碰97在线观看| 国产在线视频二区| 国产亚洲日韩欧| 无码不卡八戒| 操逼视频国产无套| 国产在线综合福利网站| 亚洲色图欧美一区二区不卡| 亚洲日韩美女丝袜美腿人妻视频| 后入人妻无码| 伊人97| 中文字幕乱妇免费视频| 97视频一区| 亚洲 欧美综合| 亚洲综合网91| 91伊人| 精品无码久久久久久久杏吧| 日韩在线国产字幕| 欧美欧美啪啪视频| 久久精品国产精品一区| 色婷婷国产精品一区在线观看| 久久精品—区二区三区内射| 日韩大香蕉| 日韩免费a级毛片无码a∨| 乱伦熟妇一区二区| 成人97人人超碰人人| 91在线超高颜值国产| 亚洲最新中文字幕免费| 色牛牛AV| 亚洲丝袜二区| 午夜男人天堂|