日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

GUI Agent測(cè)試失敗診斷:基于軌跡分析的根因定位與系統(tǒng)可靠性提升

GUI Agent測(cè)試失敗診斷:基于軌跡分析的根因定位與系統(tǒng)可靠性提升 1. 項(xiàng)目概述當(dāng)GUI Agent“翻車”時(shí)我們?nèi)绾尉珳?zhǔn)診斷在AI驅(qū)動(dòng)的軟件自動(dòng)化測(cè)試領(lǐng)域GUI Agent圖形用戶界面智能體正成為一股顛覆性的力量。想象一下一個(gè)能夠像人類一樣操作瀏覽器、點(diǎn)擊按鈕、填寫表單的AI7x24小時(shí)不知疲倦地執(zhí)行測(cè)試用例這聽起來(lái)像是質(zhì)量保障工程師的終極夢(mèng)想。然而夢(mèng)想照進(jìn)現(xiàn)實(shí)時(shí)我們常常會(huì)遇到一個(gè)令人頭疼的問題當(dāng)測(cè)試失敗時(shí)我們很難快速、準(zhǔn)確地知道“為什么”。傳統(tǒng)的軟件評(píng)估方法無(wú)論是基于腳本的自動(dòng)化測(cè)試還是人工測(cè)試在失敗時(shí)通常能提供清晰的錯(cuò)誤堆?;虿僮魅罩?。但GUI Agent的行為由大語(yǔ)言模型LLM驅(qū)動(dòng)其決策過(guò)程像一個(gè)“黑盒”。一次測(cè)試失敗可能源于多種復(fù)雜因素的疊加可能是LLM錯(cuò)誤理解了屏幕上的一個(gè)圖標(biāo)可能是頁(yè)面加載延遲導(dǎo)致Agent點(diǎn)擊了錯(cuò)誤的位置也可能是測(cè)試任務(wù)本身的描述存在歧義。簡(jiǎn)單地報(bào)告“任務(wù)失敗”毫無(wú)意義我們真正需要的是可解釋的、根因明確的診斷報(bào)告。這就是“DiagEval: Trajectory-Conditioned Diagnosis for Reliable Software Evaluation with GUI Agents”這個(gè)項(xiàng)目試圖解決的核心痛點(diǎn)。它不是一個(gè)全新的測(cè)試框架而是一個(gè)構(gòu)建在現(xiàn)有GUI Agent工作流之上的診斷與評(píng)估增強(qiáng)層。其核心思想是“軌跡條件診斷”——即利用Agent執(zhí)行任務(wù)過(guò)程中產(chǎn)生的完整交互軌跡包括截圖、操作序列、LLM的思考過(guò)程結(jié)合特定的診斷模型對(duì)失敗原因進(jìn)行歸因和分析從而讓軟件評(píng)估變得可靠、可信。簡(jiǎn)單來(lái)說(shuō)DiagEval想讓每一次測(cè)試失敗都“死得明白”并且能告訴我們下一步該修復(fù)Agent、優(yōu)化環(huán)境還是澄清任務(wù)。這對(duì)于將GUI Agent從實(shí)驗(yàn)室原型推向真實(shí)的、大規(guī)模的工業(yè)級(jí)軟件測(cè)試場(chǎng)景至關(guān)重要。2. 核心思路拆解為什么“軌跡”是診斷的關(guān)鍵要理解DiagEval首先要拆解其名稱中的兩個(gè)關(guān)鍵詞“Trajectory-Conditioned”軌跡條件和“Diagnosis”診斷。2.1 什么是GUI Agent的“軌跡”在強(qiáng)化學(xué)習(xí)或機(jī)器人領(lǐng)域軌跡通常指智能體在環(huán)境中從起點(diǎn)到終點(diǎn)所經(jīng)歷的狀態(tài)、動(dòng)作序列。對(duì)于GUI Agent而言這個(gè)定義被完美映射狀態(tài)State在每一個(gè)決策步驟Agent所“看到”的屏幕截圖或經(jīng)過(guò)處理的視覺特征以及可能從頁(yè)面中提取的文本、可操作元素列表。動(dòng)作ActionAgent執(zhí)行的操作如CLICK [id‘submit-btn’]、TYPE [selector‘#search’] “hello”、NAVIGATE “https://...”。思考過(guò)程Reasoning Trace這是由LLM驅(qū)動(dòng)的Agent所獨(dú)有的。許多先進(jìn)的Agent框架如AutoGPT、WebGUM等會(huì)讓LLM輸出其決策的“鏈?zhǔn)剿伎肌盋hain-of-Thought。例如“當(dāng)前頁(yè)面有一個(gè)登錄表單。我需要先輸入用戶名。用戶名輸入框的ID是‘username’。因此我將執(zhí)行動(dòng)作 TYPE [id‘username’] ‘test_user’。” 這部分信息是理解Agent意圖和錯(cuò)誤的關(guān)鍵。一個(gè)完整的任務(wù)軌跡就是由一系列(狀態(tài) 思考 動(dòng)作)三元組構(gòu)成的序列。這個(gè)序列包含了Agent完成任務(wù)的全過(guò)程信息遠(yuǎn)比一個(gè)簡(jiǎn)單的“通過(guò)/失敗”標(biāo)簽豐富得多。2.2 “軌跡條件診斷”解決了什么根本問題傳統(tǒng)的評(píng)估指標(biāo)如任務(wù)成功率、完成步驟數(shù)是標(biāo)量且后驗(yàn)的。它們只告訴結(jié)果不解釋過(guò)程。當(dāng)成功率從80%跌到70%時(shí)我們面臨一系列無(wú)法回答的問題是Agent的視覺理解能力變差了嗎是網(wǎng)站的前端UI發(fā)生了改動(dòng)嗎是任務(wù)指令描述得不夠清晰嗎還是測(cè)試環(huán)境如網(wǎng)絡(luò)延遲不穩(wěn)定導(dǎo)致的軌跡條件診斷的核心思路是將診斷任務(wù)本身定義為一個(gè)條件生成或分類問題其條件就是任務(wù)執(zhí)行軌跡。通過(guò)分析軌跡一個(gè)專門的診斷模型可以學(xué)習(xí)將復(fù)雜的、多模態(tài)的軌跡數(shù)據(jù)映射到結(jié)構(gòu)化的失敗原因分類上。這帶來(lái)了幾個(gè)關(guān)鍵優(yōu)勢(shì)可解釋性診斷報(bào)告可以明確指出失敗是因?yàn)椤霸诘谌紸gent將‘保存草稿’按鈕誤識(shí)別為‘提交’按鈕”。歸因精準(zhǔn)可以將問題歸因到具體模塊如“視覺定位錯(cuò)誤”、“任務(wù)規(guī)劃邏輯缺陷”、“環(huán)境異?!?。指導(dǎo)改進(jìn)為開發(fā)者提供明確的改進(jìn)方向。如果是視覺問題可能需要增強(qiáng)截圖預(yù)處理或微調(diào)視覺編碼器如果是規(guī)劃問題可能需要優(yōu)化提示詞工程或采用更好的任務(wù)分解策略。2.3 DiagEval的系統(tǒng)級(jí)視角從系統(tǒng)架構(gòu)看DiagEval并非取代現(xiàn)有的GUI Agent如使用Playwright LLM的Agent而是與之協(xié)同工作。一個(gè)典型的工作流如下軌跡收集GUI Agent在待測(cè)軟件Web/桌面應(yīng)用上執(zhí)行一系列評(píng)估任務(wù)。每個(gè)任務(wù)執(zhí)行時(shí)不僅記錄最終的成敗還全程高保真地記錄下完整的軌跡數(shù)據(jù)屏幕錄像或高頻截圖、DOM快照、操作日志、LLM的思考鏈。軌跡存儲(chǔ)將軌跡數(shù)據(jù)以結(jié)構(gòu)化的格式例如包含時(shí)間戳的序列化JSON存儲(chǔ)到數(shù)據(jù)庫(kù)中并與任務(wù)ID、環(huán)境配置等信息關(guān)聯(lián)。診斷引擎對(duì)于失敗的任務(wù)診斷引擎被觸發(fā)。它加載對(duì)應(yīng)的軌跡數(shù)據(jù)運(yùn)行診斷模型可能是另一個(gè)微調(diào)過(guò)的LLM或一個(gè)多模態(tài)分類模型對(duì)軌跡進(jìn)行分析。報(bào)告生成診斷引擎輸出結(jié)構(gòu)化的診斷報(bào)告包括失敗根因分類、導(dǎo)致失敗的關(guān)鍵步驟截圖、Agent錯(cuò)誤思考的引用、以及可能的修復(fù)建議如“建議在提示詞中明確區(qū)分按鈕A和按鈕B的功能”。評(píng)估看板所有任務(wù)的原始結(jié)果和診斷報(bào)告匯總在一個(gè)評(píng)估看板中提供宏觀的可靠性指標(biāo)如各類錯(cuò)誤的發(fā)生率和微觀的案例審查。注意這里存在一個(gè)“雞生蛋還是蛋生雞”的問題。要訓(xùn)練一個(gè)診斷模型我們需要大量已標(biāo)注診斷結(jié)果的軌跡數(shù)據(jù)。因此DiagEval的實(shí)踐往往從“基于規(guī)則的診斷”或“利用強(qiáng)大LLM如GPT-4進(jìn)行零樣本診斷”開始積累初始數(shù)據(jù)再逐步迭代訓(xùn)練更專、更高效的診斷模型。3. 核心模塊深度解析從數(shù)據(jù)到診斷報(bào)告要實(shí)現(xiàn)上述思路DiagEval包含幾個(gè)關(guān)鍵的技術(shù)模塊。每一個(gè)模塊的設(shè)計(jì)都直接影響最終診斷的準(zhǔn)確性和實(shí)用性。3.1 軌跡數(shù)據(jù)的規(guī)范化與存儲(chǔ)軌跡數(shù)據(jù)是多模態(tài)且高維的高效存儲(chǔ)和快速檢索是首要挑戰(zhàn)。數(shù)據(jù)格式設(shè)計(jì){ task_id: login_test_001, instruction: 使用用戶名‘a(chǎn)dmin’和密碼‘123456’登錄系統(tǒng)。, trajectory: [ { step: 0, timestamp: 2023-10-27T10:00:00.000Z, screenshot_path: /data/screenshots/login_test_001_step0.png, dom_snapshot: html...input idusername.../html, extracted_elements: [ {id: username, type: textbox, bounds: [100, 200, 300, 250]}, {id: password, type: textbox, bounds: [100, 300, 300, 350]} ], llm_thought: 我需要找到用戶名輸入框。根據(jù)截圖和DOM有一個(gè)ID為‘username’的文本輸入框。我將在此輸入用戶名。, executed_action: TYPE [idusername] admin, action_success: true }, { step: 1, timestamp: 2023-10-27T10:00:02.500Z, screenshot_path: ..., llm_thought: 用戶名已輸入?,F(xiàn)在需要找到密碼輸入框并輸入密碼。, executed_action: TYPE [idpassword] 123456, action_success: true }, // ... 更多步驟 ], task_success: false, final_state: 頁(yè)面顯示‘密碼錯(cuò)誤’提示信息。 }關(guān)鍵字段llm_thought和extracted_elements是診斷的黃金信息源。前者揭示了意圖后者提供了環(huán)境事實(shí)。存儲(chǔ)策略大文件如截圖、錄像建議使用對(duì)象存儲(chǔ)如S3/MinIO并存儲(chǔ)鏈接元數(shù)據(jù)和文本字段存入時(shí)序數(shù)據(jù)庫(kù)或文檔數(shù)據(jù)庫(kù)如MongoDB便于按任務(wù)和時(shí)間查詢。實(shí)操心得高頻截圖 vs 事件驅(qū)動(dòng)截圖每一步都截圖數(shù)據(jù)量大但信息完整??梢哉壑忻恳徊奖卮婵s略圖僅在action_successfalse或關(guān)鍵步驟時(shí)存儲(chǔ)高分辨率截圖以平衡存儲(chǔ)成本和診斷需求。DOM快照的取舍DOM信息對(duì)于理解頁(yè)面結(jié)構(gòu)至關(guān)重要但可能很龐大??梢灾淮鎯?chǔ)與當(dāng)前步驟關(guān)注區(qū)域相關(guān)的部分DOM或存儲(chǔ)經(jīng)過(guò)清理和簡(jiǎn)化后的版本。3.2 診斷模型的選型與訓(xùn)練這是DiagEval的技術(shù)核心。診斷模型需要理解多模態(tài)軌跡并做出判斷。主要有幾種技術(shù)路徑基于規(guī)則/啟發(fā)式的方法做法預(yù)先定義一系列規(guī)則。例如如果軌跡中連續(xù)出現(xiàn)三次“元素未找到”的錯(cuò)誤則診斷為“頁(yè)面加載不穩(wěn)定或元素定位策略失效”如果LLM的思考中出現(xiàn)“我認(rèn)為這個(gè)按鈕是X”但截圖顯示按鈕文字是Y則診斷為“視覺/文本理解錯(cuò)誤”。優(yōu)點(diǎn)簡(jiǎn)單、透明、無(wú)需訓(xùn)練數(shù)據(jù)、快速上線。缺點(diǎn)規(guī)則難以覆蓋所有復(fù)雜情況維護(hù)成本高無(wú)法處理模糊和未知錯(cuò)誤?;诖笮驼Z(yǔ)言模型LLM的零樣本/少樣本診斷做法將軌跡數(shù)據(jù)特別是LLM思考和動(dòng)作序列以文本形式組織成提示詞Prompt提交給一個(gè)強(qiáng)大的通用LLM如GPT-4、Claude-3要求其分析失敗原因。提示詞示例“你是一個(gè)GUI測(cè)試診斷專家。以下是AI Agent執(zhí)行登錄任務(wù)的軌跡。任務(wù)失敗了最終頁(yè)面顯示‘密碼錯(cuò)誤’。請(qǐng)分析軌跡指出Agent可能在哪里出錯(cuò)了并給出根因分類。軌跡[插入軌跡的文本摘要]”優(yōu)點(diǎn)非常靈活能處理未見過(guò)的錯(cuò)誤模式利用了LLM強(qiáng)大的推理和自然語(yǔ)言理解能力。缺點(diǎn)成本高API調(diào)用費(fèi)延遲大診斷結(jié)果可能不穩(wěn)定且嚴(yán)重依賴提示詞工程。訓(xùn)練專用的多模態(tài)診斷模型做法這是DiagEval論文中可能探討的進(jìn)階方向。收集大量帶標(biāo)注診斷結(jié)果的軌跡數(shù)據(jù)訓(xùn)練一個(gè)端到端的模型。這個(gè)模型以軌跡序列圖像序列文本序列為輸入輸出診斷分類和解釋。模型架構(gòu)猜想視覺編碼器如ViT處理每一步的截圖。文本編碼器如BERT處理LLM思考和動(dòng)作文本。時(shí)序融合模塊如Transformer或LSTM將多步的視覺和文本特征融合理解整個(gè)軌跡的上下文。診斷頭一個(gè)分類層輸出根因類別如視覺理解錯(cuò)誤、動(dòng)作執(zhí)行錯(cuò)誤、任務(wù)規(guī)劃錯(cuò)誤、環(huán)境問題同時(shí)可接一個(gè)文本生成頭如使用LLaMA架構(gòu)來(lái)生成自然語(yǔ)言的診斷描述。優(yōu)點(diǎn)一旦訓(xùn)練好診斷速度快、成本低、結(jié)果一致可針對(duì)特定領(lǐng)域優(yōu)化。缺點(diǎn)需要大量高質(zhì)量的標(biāo)注數(shù)據(jù)訓(xùn)練成本高模型開發(fā)和維護(hù)復(fù)雜。在實(shí)際項(xiàng)目中一個(gè)混合策略往往是明智的初期用規(guī)則和LLM API快速搭建原型積累數(shù)據(jù)中期用積累的數(shù)據(jù)微調(diào)一個(gè)中小型開源模型如Qwen-VL或LLaVA進(jìn)行初步分類后期數(shù)據(jù)量足夠大時(shí)再考慮訓(xùn)練更定制化的模型。3.3 診斷分類體系的設(shè)計(jì)一個(gè)定義清晰的診斷分類體系是產(chǎn)出 actionable 報(bào)告的基礎(chǔ)。分類不宜過(guò)粗如“Agent錯(cuò)誤”或過(guò)細(xì)難以標(biāo)注。一個(gè)實(shí)用的分類體系可能包括大類子類描述可能的原因/修復(fù)方向感知錯(cuò)誤視覺定位失敗Agent無(wú)法在截圖中找到正確的UI元素。截圖模糊、元素樣式變化、視覺編碼器能力不足。需增強(qiáng)視覺特征或加入DOM信息輔助。文本識(shí)別錯(cuò)誤Agent錯(cuò)誤識(shí)別了屏幕上的文字如將“Cancel”看成“Confirm”。OCR錯(cuò)誤或LLM視覺理解偏差。需改進(jìn)OCR或提供更清晰的文本提示。狀態(tài)判斷錯(cuò)誤Agent錯(cuò)誤判斷了頁(yè)面狀態(tài)如認(rèn)為已登錄成功實(shí)際失敗。缺乏對(duì)成功/失敗狀態(tài)的明確定義。需在提示詞中加入更明確的狀態(tài)檢查指令。規(guī)劃與推理錯(cuò)誤任務(wù)分解錯(cuò)誤Agent將復(fù)雜任務(wù)分解成了錯(cuò)誤的子步驟序列。LLM對(duì)任務(wù)領(lǐng)域的常識(shí)不足。需提供任務(wù)分解的few-shot示例或采用更高級(jí)的規(guī)劃器。邏輯推理錯(cuò)誤Agent在單步推理中得出錯(cuò)誤結(jié)論如“這個(gè)灰色按鈕應(yīng)該是可點(diǎn)擊的”。LLM的推理幻覺。需通過(guò)思維鏈CoT自我驗(yàn)證或引入外部知識(shí)驗(yàn)證。上下文遺忘Agent在長(zhǎng)軌跡中忘記了之前步驟的關(guān)鍵信息。LLM的上下文窗口限制或注意力機(jī)制問題。需設(shè)計(jì)更好的記憶模塊或總結(jié)機(jī)制。動(dòng)作執(zhí)行錯(cuò)誤動(dòng)作參數(shù)錯(cuò)誤動(dòng)作指令正確但參數(shù)錯(cuò)誤如點(diǎn)擊坐標(biāo)偏移。坐標(biāo)計(jì)算不準(zhǔn)或頁(yè)面動(dòng)態(tài)變化。需采用更魯棒的元素定位方式如相對(duì)定位。環(huán)境交互失敗動(dòng)作本身正確但環(huán)境未響應(yīng)如點(diǎn)擊無(wú)反應(yīng)。前端框架延遲、元素未處于可交互狀態(tài)。需增加重試機(jī)制和等待條件。環(huán)境與任務(wù)問題環(huán)境不穩(wěn)定網(wǎng)絡(luò)超時(shí)、頁(yè)面崩潰、測(cè)試數(shù)據(jù)被污染。非Agent問題。需優(yōu)化測(cè)試環(huán)境穩(wěn)定性和數(shù)據(jù)隔離。任務(wù)指令歧義人類提供的任務(wù)描述本身存在多種解釋。需求方問題。需與需求方澄清并優(yōu)化任務(wù)指令的編寫規(guī)范。這個(gè)分類體系需要在實(shí)際項(xiàng)目中不斷迭代和細(xì)化。4. 實(shí)操構(gòu)建指南從零搭建一個(gè)簡(jiǎn)易DiagEval理論說(shuō)了很多我們來(lái)點(diǎn)實(shí)際的。假設(shè)我們已有一個(gè)基于Playwright和GPT-4 API的簡(jiǎn)易GUI Agent現(xiàn)在要為其增加DiagEval診斷能力。我們將采用“規(guī)則引擎 LLM零樣本診斷”的混合模式。4.1 環(huán)境準(zhǔn)備與架構(gòu)搭建技術(shù)棧選擇Agent執(zhí)行端Python, Playwright (用于瀏覽器自動(dòng)化) LangChain/自定義Agent框架 (用于組織LLM調(diào)用)。軌跡記錄器在Agent的每個(gè)動(dòng)作執(zhí)行前后插入鉤子函數(shù)記錄所需數(shù)據(jù)。存儲(chǔ)層SQLite (用于原型快速開發(fā)存儲(chǔ)元數(shù)據(jù)) 本地文件系統(tǒng) (存儲(chǔ)截圖)。診斷引擎Python, 內(nèi)置規(guī)則引擎 調(diào)用OpenAI API (用于復(fù)雜診斷)。可視化看板Streamlit (快速構(gòu)建交互式Web應(yīng)用)。目錄結(jié)構(gòu)diageval_project/ ├── agent/ # GUI Agent核心代碼 │ ├── __init__.py │ ├── gui_agent.py # 主要的Agent類 │ └── actions.py # 定義所有可執(zhí)行動(dòng)作 ├── trajectory/ # 軌跡記錄與管理 │ ├── recorder.py # 軌跡記錄器 │ ├── models.py # 軌跡數(shù)據(jù)模型 (Pydantic) │ └── storage.py # 存儲(chǔ)到SQLite和文件 ├── diagnosis/ # 診斷引擎 │ ├── engine.py # 診斷引擎主入口 │ ├── rule_based.py # 基于規(guī)則的診斷器 │ ├── llm_based.py # 基于LLM的診斷器 │ └── categories.py # 診斷分類定義 ├── evaluation/ # 評(píng)估任務(wù)管理 │ └── task_loader.py # 從YAML/JSON加載測(cè)試任務(wù) ├── dashboard/ # 可視化看板 │ └── app.py # Streamlit 應(yīng)用 ├── config.yaml # 配置文件 (API keys, 路徑等) └── requirements.txt # 依賴包列表4.2 實(shí)現(xiàn)軌跡記錄器軌跡記錄器的核心是“非侵入式”地嵌入到Agent的執(zhí)行循環(huán)中。# trajectory/recorder.py import json from datetime import datetime from pathlib import Path from .models import TrajectoryStep, TaskTrajectory from .storage import TrajectoryStorage from PIL import ImageGrab # 或使用playwright截圖 class TrajectoryRecorder: def __init__(self, storage: TrajectoryStorage, screenshot_dir: Path): self.storage storage self.screenshot_dir screenshot_dir self.screenshot_dir.mkdir(parentsTrue, exist_okTrue) self.current_trajectory [] def start_task(self, task_id: str, instruction: str): 開始記錄一個(gè)新任務(wù) self.current_task_id task_id self.current_instruction instruction self.current_trajectory [] print(f[Recorder] Started recording for task: {task_id}) def record_step(self, step_data: dict): 記錄單步數(shù)據(jù)。 step_data 應(yīng)包含screenshot, dom_snapshot, llm_thought, action, action_success step_num len(self.current_trajectory) timestamp datetime.utcnow().isoformat() # 保存截圖 screenshot_path None if step_data.get(screenshot): # 這里簡(jiǎn)化處理實(shí)際可能用playwright的page.screenshot() filename f{self.current_task_id}_step{step_num}.png screenshot_path self.screenshot_dir / filename step_data[screenshot].save(screenshot_path) # 假設(shè)screenshot是PIL Image # 構(gòu)建步驟對(duì)象 step TrajectoryStep( stepstep_num, timestamptimestamp, screenshot_pathstr(screenshot_path) if screenshot_path else None, dom_snapshotstep_data.get(dom_snapshot), llm_thoughtstep_data.get(llm_thought, ), executed_actionstep_data.get(action, ), action_successstep_data.get(action_success, True), extracted_elementsstep_data.get(extracted_elements, []) # 從DOM解析的可操作元素 ) self.current_trajectory.append(step) def end_task(self, task_success: bool, final_state: str ): 結(jié)束任務(wù)將完整軌跡存入存儲(chǔ) trajectory TaskTrajectory( task_idself.current_task_id, instructionself.current_instruction, trajectoryself.current_trajectory, task_successtask_success, final_statefinal_state ) self.storage.save(trajectory) print(f[Recorder] Saved trajectory for task: {self.current_task_id}, success: {task_success}) self.current_trajectory []在GUI Agent的主循環(huán)中需要集成這個(gè)記錄器# agent/gui_agent.py (部分代碼) class GUIAgent: def __init__(self, llm_client, recorder): self.llm llm_client self.recorder recorder def execute_task(self, task_instruction: str): task_id generate_task_id() self.recorder.start_task(task_id, task_instruction) # Agent的核心執(zhí)行循環(huán) for step in range(MAX_STEPS): # 1. 觀察環(huán)境截圖獲取DOM screenshot, dom self._observe_environment() # 2. LLM思考并決定動(dòng)作 llm_thought, action self._think_and_plan(screenshot, dom, task_instruction) # 3. 執(zhí)行動(dòng)作 action_success self._execute_action(action) # 4. 記錄這一步 step_data { screenshot: screenshot, dom_snapshot: dom, llm_thought: llm_thought, action: action, action_success: action_success, extracted_elements: self._extract_elements(dom) # 輔助函數(shù) } self.recorder.record_step(step_data) if self._is_task_completed(): break final_success self._check_final_success() final_state self._get_final_state_description() self.recorder.end_task(final_success, final_state) return final_success4.3 實(shí)現(xiàn)混合診斷引擎診斷引擎在任務(wù)結(jié)束后被調(diào)用或者由一個(gè)后臺(tái)服務(wù)定期處理失敗任務(wù)的軌跡。# diagnosis/engine.py from .rule_based import RuleBasedDiagnoser from .llm_based import LLMBasedDiagnoser from .categories import DiagnosisResult class HybridDiagnosisEngine: def __init__(self, rule_diagnoser: RuleBasedDiagnoser, llm_diagnoser: LLMBasedDiagnoser): self.rule_diagnoser rule_diagnoser self.llm_diagnoser llm_diagnoser def diagnose(self, trajectory: TaskTrajectory) - DiagnosisResult: 診斷流程先用規(guī)則進(jìn)行快速、確定的診斷 如果規(guī)則無(wú)法確診或置信度低則調(diào)用LLM進(jìn)行深度分析。 # 階段1: 規(guī)則診斷 rule_result self.rule_diagnoser.analyze(trajectory) if rule_result.confidence 0.8: # 設(shè)定一個(gè)置信度閾值 print(f[Diagnosis] Rule-based diagnosis confident: {rule_result.root_cause}) return rule_result # 階段2: LLM診斷 print(f[Diagnosis] Rule-based inconclusive, invoking LLM...) llm_result self.llm_diagnoser.analyze(trajectory) # 可以結(jié)合規(guī)則和LLM的結(jié)果例如LLM結(jié)果覆蓋規(guī)則結(jié)果 return llm_result規(guī)則診斷器示例# diagnosis/rule_based.py class RuleBasedDiagnoser: def analyze(self, trajectory: TaskTrajectory) - DiagnosisResult: # 規(guī)則1: 檢查連續(xù)動(dòng)作失敗 consecutive_failures 0 for step in trajectory.trajectory: if not step.action_success: consecutive_failures 1 if consecutive_failures 3: return DiagnosisResult( root_cause環(huán)境與任務(wù)問題/環(huán)境不穩(wěn)定, details連續(xù)三個(gè)動(dòng)作執(zhí)行失敗可能頁(yè)面未加載完成或網(wǎng)絡(luò)異常。, confidence0.9, problematic_steps[step.step for step in trajectory.trajectory[-3:]] ) else: consecutive_failures 0 # 規(guī)則2: 檢查L(zhǎng)LM思考與動(dòng)作的一致性 for step in trajectory.trajectory: if 點(diǎn)擊 in step.llm_thought and CLICK not in step.executed_action: # 思考說(shuō)要點(diǎn)擊但實(shí)際執(zhí)行了其他動(dòng)作 return DiagnosisResult( root_cause規(guī)劃與推理錯(cuò)誤/邏輯推理錯(cuò)誤, detailsf步驟{step.step}: LLM思考意圖為點(diǎn)擊但實(shí)際執(zhí)行了‘{step.executed_action}’??赡艽嬖谥噶罱馕鲥e(cuò)誤。, confidence0.7, problematic_steps[step.step] ) # ... 更多規(guī)則 # 默認(rèn)返回未知 return DiagnosisResult( root_cause未知, details規(guī)則引擎無(wú)法確定根因。, confidence0.0 )LLM診斷器示例# diagnosis/llm_based.py import openai # 或使用其他LLM SDK from .categories import DiagnosisResult class LLMBasedDiagnoser: def __init__(self, api_key: str, model: str gpt-4-turbo): self.client openai.OpenAI(api_keyapi_key) self.model model def analyze(self, trajectory: TaskTrajectory) - DiagnosisResult: # 將軌跡轉(zhuǎn)換為L(zhǎng)LM可理解的文本摘要 trajectory_summary self._format_trajectory_for_llm(trajectory) prompt f 你是一個(gè)資深的GUI自動(dòng)化測(cè)試診斷專家。請(qǐng)分析以下AI Agent執(zhí)行任務(wù)的軌跡找出任務(wù)失敗的根本原因。 任務(wù)指令{trajectory.instruction} 最終狀態(tài){trajectory.final_state} 任務(wù)結(jié)果{成功 if trajectory.task_success else 失敗} **執(zhí)行軌跡摘要** {trajectory_summary} 請(qǐng)根據(jù)以下分類給出最可能的失敗根因并簡(jiǎn)要說(shuō)明理由。如果你的判斷不屬于已知分類請(qǐng)輸出“其他”并描述原因。 **根因分類** 1. 感知錯(cuò)誤 - 視覺定位失敗 2. 感知錯(cuò)誤 - 文本識(shí)別錯(cuò)誤 3. 感知錯(cuò)誤 - 狀態(tài)判斷錯(cuò)誤 4. 規(guī)劃與推理錯(cuò)誤 - 任務(wù)分解錯(cuò)誤 5. 規(guī)劃與推理錯(cuò)誤 - 邏輯推理錯(cuò)誤 6. 規(guī)劃與推理錯(cuò)誤 - 上下文遺忘 7. 動(dòng)作執(zhí)行錯(cuò)誤 - 動(dòng)作參數(shù)錯(cuò)誤 8. 動(dòng)作執(zhí)行錯(cuò)誤 - 環(huán)境交互失敗 9. 環(huán)境與任務(wù)問題 - 環(huán)境不穩(wěn)定 10. 環(huán)境與任務(wù)問題 - 任務(wù)指令歧義 請(qǐng)以JSON格式輸出包含以下字段 - root_cause: (字符串從上述10個(gè)分類中選擇格式如“規(guī)劃與推理錯(cuò)誤 - 邏輯推理錯(cuò)誤”) - confidence: (浮點(diǎn)數(shù)0.0到1.0) - reasoning: (字符串詳細(xì)解釋你的診斷理由引用軌跡中的具體步驟) - suggested_fix: (字符串給開發(fā)者的修復(fù)建議) try: response self.client.chat.completions.create( modelself.model, messages[{role: user, content: prompt}], temperature0.1, # 低溫度保證輸出穩(wěn)定 response_format{ type: json_object } # 要求JSON輸出 ) result_json json.loads(response.choices[0].message.content) # 將LLM輸出映射到我們的DiagnosisResult對(duì)象 return DiagnosisResult( root_causeresult_json.get(root_cause, 未知), detailsresult_json.get(reasoning, ), confidencefloat(result_json.get(confidence, 0.5)), suggested_fixresult_json.get(suggested_fix, ) ) except Exception as e: print(fLLM診斷失敗: {e}) return DiagnosisResult(root_cause診斷失敗, detailsstr(e), confidence0.0) def _format_trajectory_for_llm(self, trajectory: TaskTrajectory) - str: # 簡(jiǎn)化軌跡只保留關(guān)鍵信息避免token超限 summary_lines [] for step in trajectory.trajectory[:20]: # 限制步數(shù) summary_lines.append(f步驟{step.step}:) summary_lines.append(f 思考: {step.llm_thought[:200]}...) # 截?cái)?summary_lines.append(f 動(dòng)作: {step.executed_action}) summary_lines.append(f 結(jié)果: {成功 if step.action_success else 失敗}) summary_lines.append() return \n.join(summary_lines)4.4 構(gòu)建評(píng)估看板使用Streamlit可以快速構(gòu)建一個(gè)可視化界面。# dashboard/app.py import streamlit as st import pandas as pd from pathlib import Path import sys sys.path.append(str(Path(__file__).parent.parent)) from trajectory.storage import TrajectoryStorage from diagnosis.engine import HybridDiagnosisEngine st.set_page_config(layoutwide) st.title(DiagEval - GUI Agent 評(píng)估診斷看板) # 初始化組件 storage TrajectoryStorage(trajectories.db) diagnosis_engine HybridDiagnosisEngine(...) # 側(cè)邊欄任務(wù)篩選 st.sidebar.header(篩選條件) task_status st.sidebar.selectbox(任務(wù)狀態(tài), [全部, 成功, 失敗]) if st.sidebar.button(運(yùn)行診斷針對(duì)所有失敗任務(wù)): failed_tasks storage.get_tasks_by_success(False) for task in failed_tasks: if not task.has_diagnosis: # 假設(shè)軌跡對(duì)象有一個(gè)標(biāo)記 result diagnosis_engine.diagnose(task) storage.save_diagnosis(task.task_id, result) # 主界面 st.header(任務(wù)執(zhí)行概覽) all_tasks storage.get_all_tasks() if task_status ! 全部: all_tasks [t for t in all_tasks if t.task_success (task_status 成功)] df pd.DataFrame([{ 任務(wù)ID: t.task_id, 指令摘要: t.instruction[:50] ..., 狀態(tài): ? 成功 if t.task_success else ? 失敗, 步驟數(shù): len(t.trajectory), 診斷結(jié)果: t.diagnosis_result.root_cause if hasattr(t, diagnosis_result) else 未診斷 } for t in all_tasks]) st.dataframe(df, use_container_widthTrue) # 點(diǎn)擊查看詳情 selected_task_id st.selectbox(選擇任務(wù)查看詳情, [] [t.task_id for t in all_tasks]) if selected_task_id: task storage.get_task(selected_task_id) st.subheader(f任務(wù)詳情: {selected_task_id}) col1, col2 st.columns(2) with col1: st.text_area(完整指令, task.instruction, height100) st.write(f**最終狀態(tài)**: {task.final_state}) with col2: if task.diagnosis_result: st.info(f**診斷根因**: {task.diagnosis_result.root_cause}) st.write(f**置信度**: {task.diagnosis_result.confidence:.2f}) st.text_area(診斷詳情與建議, task.diagnosis_result.details \n\n建議: task.diagnosis_result.suggested_fix, height150) # 展示軌跡步驟 st.subheader(執(zhí)行軌跡) for step in task.trajectory: with st.expander(f步驟 {step.step}: {step.executed_action} ({成功 if step.action_success else 失敗})): col1, col2 st.columns(2) if step.screenshot_path and Path(step.screenshot_path).exists(): col1.image(step.screenshot_path, captionf步驟{step.step}截圖, use_column_widthTrue) col2.text_area(f思考過(guò)程, step.llm_thought, height150)運(yùn)行streamlit run dashboard/app.py一個(gè)具備基本任務(wù)概覽、篩選、診斷觸發(fā)和軌跡詳查功能的看板就啟動(dòng)了。5. 避坑指南與進(jìn)階思考在實(shí)際構(gòu)建和運(yùn)用DiagEval系統(tǒng)的過(guò)程中你會(huì)遇到許多預(yù)料之外的問題。以下是我從實(shí)踐中總結(jié)的一些關(guān)鍵教訓(xùn)和進(jìn)階方向。5.1 常見陷阱與解決方案軌跡數(shù)據(jù)“海嘯”問題每個(gè)任務(wù)每一步都存高清截圖和完整DOM數(shù)據(jù)量增長(zhǎng)極快幾天就能占滿磁盤。解決方案分層存儲(chǔ)原始數(shù)據(jù)如4K截圖存冷存儲(chǔ)如S3冰川用于事后深度分析。診斷引擎使用實(shí)時(shí)生成的低分辨率縮略圖或視覺特征向量。智能采樣不是每一步都存。只在動(dòng)作失敗時(shí)、或每隔N步、或在關(guān)鍵決策點(diǎn)根據(jù)LLM思考的置信度判斷存儲(chǔ)完整數(shù)據(jù)。數(shù)據(jù)生命周期管理自動(dòng)清理超過(guò)一定時(shí)間的原始軌跡數(shù)據(jù)只保留診斷結(jié)果和元數(shù)據(jù)。診斷模型的“幻覺”與不一致性問題基于LLM的診斷器有時(shí)會(huì)“胡言亂語(yǔ)”給出與軌跡明顯不符的診斷或者相同軌跡兩次診斷結(jié)果不同。解決方案提示詞工程這是關(guān)鍵。在提示詞中嚴(yán)格要求LLM“引用軌跡中的具體證據(jù)”。例如“你的診斷必須基于軌跡中第X步的思考‘...’和第Y步的動(dòng)作‘...’之間的矛盾?!弊晕乙恢滦詫?duì)同一軌跡進(jìn)行多次LLM診斷采樣temperature0取多數(shù)票結(jié)果可以提高穩(wěn)定性。引入驗(yàn)證器訓(xùn)練或設(shè)計(jì)一個(gè)簡(jiǎn)單的二分類模型判斷LLM的診斷理由是否在軌跡中有據(jù)可查過(guò)濾掉“無(wú)源之水”的診斷。診斷分類體系難以覆蓋所有情況問題總會(huì)出現(xiàn)一些奇怪的錯(cuò)誤無(wú)法歸入預(yù)先定義的類別。解決方案設(shè)立“其他”類別并強(qiáng)制要求診斷模型或人工標(biāo)注員用自然語(yǔ)言描述。定期復(fù)盤與迭代每周review“其他”類別下的案例從中抽象出新的錯(cuò)誤模式補(bǔ)充到分類體系中。這是一個(gè)持續(xù)演進(jìn)的過(guò)程。層次化分類采用兩層甚至三層分類。第一層大類感知/規(guī)劃/動(dòng)作/環(huán)境第二層細(xì)分類第三層允許自由文本描述。這樣既有結(jié)構(gòu)又保留了靈活性。性能瓶頸問題LLM診斷延遲高無(wú)法用于大規(guī)模測(cè)試的實(shí)時(shí)反饋。解決方案異步診斷任務(wù)執(zhí)行和診斷解耦。Agent執(zhí)行完即返回診斷作為后臺(tái)作業(yè)慢慢跑。緩存診斷結(jié)果對(duì)相似的軌跡可通過(guò)軌跡特征向量計(jì)算相似度復(fù)用之前的診斷結(jié)果。小模型優(yōu)先用規(guī)則和微調(diào)的小模型處理大部分常見錯(cuò)誤只將疑難雜癥交給大LLM。5.2 從診斷到自愈系統(tǒng)的閉環(huán)演進(jìn)DiagEval的終極價(jià)值不僅僅是“發(fā)現(xiàn)問題”而是“推動(dòng)系統(tǒng)自我改進(jìn)”。這需要形成一個(gè)閉環(huán)診斷驅(qū)動(dòng)提示詞優(yōu)化如果大量錯(cuò)誤被歸類為“任務(wù)指令歧義”系統(tǒng)可以自動(dòng)建議修改任務(wù)描述模板。如果是“視覺定位失敗”集中發(fā)生在某類UI組件上可以自動(dòng)生成針對(duì)該類組件的額外描述加入Agent的上下文。診斷驅(qū)動(dòng)Agent再訓(xùn)練將診斷出的錯(cuò)誤軌跡特別是那些明確歸因于Agent能力不足如特定視覺識(shí)別錯(cuò)誤的作為高質(zhì)量的訓(xùn)練數(shù)據(jù)用于微調(diào)Agent本身的視覺編碼器或規(guī)劃模塊。診斷驅(qū)動(dòng)測(cè)試用例生成發(fā)現(xiàn)某個(gè)交互流程容易出錯(cuò)如“提交訂單后支付頁(yè)面跳轉(zhuǎn)”可以自動(dòng)生成更多圍繞該流程的邊界測(cè)試用例強(qiáng)化測(cè)試覆蓋??煽啃远攘颗c預(yù)警通過(guò)長(zhǎng)期收集診斷數(shù)據(jù)可以計(jì)算各類錯(cuò)誤的“發(fā)生率”趨勢(shì)。當(dāng)“環(huán)境不穩(wěn)定”錯(cuò)誤率突然飆升時(shí)可能意味著測(cè)試基礎(chǔ)設(shè)施出了問題可以自動(dòng)告警。5.3 評(píng)估什么超越“成功率”的可靠性指標(biāo)有了DiagEval我們對(duì)GUI Agent的評(píng)估就可以從單一的“任務(wù)成功率”進(jìn)化到一套多維度的可靠性指標(biāo)體系脆弱性分析統(tǒng)計(jì)各類錯(cuò)誤的比例。例如“感知錯(cuò)誤”占40%“規(guī)劃錯(cuò)誤”占30%。這直接指明了Agent改進(jìn)的優(yōu)先級(jí)??稍\斷率有多少比例的失敗任務(wù)可以被診斷引擎明確歸因這個(gè)指標(biāo)衡量了診斷系統(tǒng)本身的有效性。平均診斷時(shí)間從任務(wù)失敗到產(chǎn)出診斷報(bào)告的時(shí)間。影響修復(fù)效率。誤診率需要人工復(fù)核一部分診斷結(jié)果計(jì)算診斷錯(cuò)誤的比率?;貧w檢測(cè)靈敏度當(dāng)Agent新版本發(fā)布后通過(guò)對(duì)比新舊版本在相同任務(wù)集上的診斷分布可以敏銳地發(fā)現(xiàn)引入的新類型錯(cuò)誤即使總體成功率變化不大。構(gòu)建DiagEval這樣的系統(tǒng)初期投入確實(shí)不小但它帶來(lái)的透明度和可操作性是將GUI Agent從玩具變?yōu)榭尚刨嚨纳a(chǎn)力工具的關(guān)鍵一步。它迫使開發(fā)者以更嚴(yán)謹(jǐn)、更系統(tǒng)化的方式思考智能體的失敗模式而這正是工程化AI應(yīng)用的基石。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
蜜臀久久99精品久久久久久酒店 | 黄页视频网站野外| 精品无码久久| 色偷偷色偷偷欧美日韩| 日本久操视频| 99久久久| 欧美亚洲中文字幕| 日本性感人妻91| 日韩中文9| 久久有碼| 欧美婷婷久久| 中国黑人三级片网站上区| 中文字幕 码精品视频网站| 午夜国产成人精品视频| 日韩欧美字幕亚洲一区二区| 我要色综合网| 91天堂| 久操电影网| 中文字幕人妻色偷偷久久皮 | 日韩八十路老熟女| 色网综合网| 江都AV在线| 欧美性爱伊人| 亚洲av无线观看| 一级婬片120分钟试看| 中文乱码字幕观看| 久久精品久| 中日韓欧美高清| 夜夜国自区| 日本一久是| 九区国产| 91A欧美电影网站| 精久久久| 欧中美三级一区二区三区| 国产熟女高潮一区二区三区| 大香蕉男人的天堂| 日韩三级性| 91国内外在线| 青青青青青手机视频| 超碰97导航| 青青操视频在线| 人妻内射一区二区在线视频| 男人的天堂三级| 果冻传媒A片麻豆熟妇人妻| 熟女熟妇伦久久影院毛片一区二区| 久草综合视频| 超碰 欧美| 少妇蹲下买菜露大唇0| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 亚洲综合五月天| 一区在线国产播放| 婷婷久草一区二区三区| 久久综合日韩亚洲欧美| 欧美日动态视频| 97视频www| 青青草中出视频| 一二三区精品视频| 国产精品不卡一区二区三区av| 人人操我人人干| 福利视频一区二区微拍| 一本久道久久综合狠狠爱| 激情网五月天| 性生活无遮挡纯毛片在线看| 久草看看看| 人妻精品视频一区二区三区| 精品视频免费在线一区| 高凊专区人人操| 青青草色插素人| 欧美色老汉| 日韩少妇无码| 蜜桃av综合网发布| 一区| 97天天日| 国产亚洲色婷婷久久99精品91葵花宝典| 超碰久热| 国产乱码精品久久久久久| 国产欧美日产一区二区三区 - 国产欧美日 | 一区二区三区色综合| 亚洲乱熟女一区二区| 成·人免费午夜在线观看| 亚洲国产一区二区入口| 人妻啊啊人妻啊啊| 另类成人首页一区| 欧美五十路熟| 夜夜高潮夜夜爽高清视频一| 熟女熟妇一区二区三区视频| 在线岛| 久青草影院| 97超碰久久色| 亚洲影院无码在线| 欧美日日夜夜| 九色黄站| 久久婷婷影院| 嗯嗯不要 视频| 天天日天天干天天色| 九九热九九| 天天日美女的B| 无码精品久久| 亚洲97P| 啊啊啊好舒服视频| 免费A V在线| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 美女让帅哥通她小鸡鸡| 在线视频免费播放一区| 亚洲色图欧美另类在线| 91在线精品一区二区三区| 欧美色五月| 97国产精选| 天天综合网日韩7799| 97国伦国色| 狠狠91| 久久伊人大香蕉| AV色五月天| 99久久久无码精品国产人| 极品丝袜无码| 搡老女人老91二区| 青青网三级视频| 天天久久| 超碰97在线 欧美 国产| 2019天天干天天操| av橘色网站| 高清国产av无码| 另类专区加勒比| 每日更新AV| 久久华人网| AV 少妇 人妻 偷拍| 97人人爱人人乐| 婷婷综合五月| a级免费在线观看| 夜夜嗨一区二区| 超碰97国产欧美| 人妻天堂综合网| 麻豆精品一区二区三区四区免费观看| 操美女人妻| 伊人一区二区在线播放| 国产精品国产| 日韩av熟女一区二区三区成人| 日本熟女不卡视频| 囯产精品强| 桃花色涩综合影院| 国产精品精品系列在线观看| 蜜臀久久久国产| 超碰吊日色| 天天干电影| 国产精品成人在线| 97超碰欧美| 天天日天天射天天干| 国产精品99精品视频网站| 国产性感在线观看| 95人妻爽爽人人做人人澡 | 国产真乱mangent| 国产精品丝袜久久亚洲不卡| 国产精品国产拍高清AV| 国产精品白丝| 日噜夜夜夜夜夜夜夜夜夜夜爽爽爽爽爽爽爽爽爽爽爽爽 | 欧美韩日精品99综合| 欧美午夜精品久久久久久3D| 欧洲综合无码| 青青操日韩| 国产精品国产自产拍高清AV| 日本丝袜人妻内射| 欧美综合亚洲综合| 亚洲欧美在线综合| 久久久久中出| 好吊妞转入那个网| 国产中文精品一区二区在线观看| 啊啊啊啊啊在线| 国产1727欧美| 久久久久9999妇女| 日韩女模中文造逼| 超碰成人公开| 我要去看2个日本美女.com曹逼| 亚洲青青草| 第45页一区二区| 在线无码操| 2024黄色视频| 粉嫩av一区二区三区天美传媒| 成人综合网 欧美| 久久久精品国产亚洲AV无码| 精品日韩中文在线| 成人av毛片在线观看| 久久久久久久综合,国产| 丝袜六区| 熟女丰满人妻一区| 能看的av| 校园春色制服丝袜中文字亚洲| 国产乱伦亚洲| 欧美精品成人在线播放| 亚洲成?V人片在线观看福利| 日本不卡高清视频| 国产成人精品必看| 国产中文大片资源中文字幕| 1区2区3区视频| 黄页网站成人免费| 91n.欧美| 欧美色图另类图片| 3级毛片一二| 97碰碰日本乱偷人妻中文的| 日韩紧密久久| 九九热超碰97亚洲最新香蕉| 九九热免费在线国产视频伊人五月| 亚洲偷拍自拍在线视频| 久久夜黄色无码A级大片| 欧美乱伦专区| 综合影院永久入口国产| 久久性爱精品一区| 亚洲一欧洲中文字幕在线| 亚洲色图尤物视频| 人人操人人干网页| 欧美日韩操操操| 夜夜天天噜狠狠爱2021| 精品一二三区久久AAA片| 日本国产欧美高清在线| 五月激情小说| 天堂岛av| 欧美黑人XXXⅩ高潮交| 2018色综合天天操| 亚洲国产剧情少妇激情| 亚洲成人精品久久久| 绯色AV粉色AV蜜臀AV| 91精品电影18| 亚洲色香| 青青草导航在线视频| 91 国产丝袜在线播放-百度| 亚洲人精品久久久| 激情五月综合开心五月| 日本一级性爱| 后X久久| 亚洲图片欧美制度| 操少妞在线视频| 熟妇女伦乱视频视频| 亚洲双插| 精品蜜乳AV免费观看| 日韩操p| 人人干人人操人人..com| 97国产高清视频在线观看| 黄色欧美性爱视频| 久悠悠av| 99re在线视频国产| 精品在线蜜臀| 艹少妇网站| 91 手机在线播放 绯色| 绑缚麻绳人妻寝取完整版| 美女黄码视频午夜| 91亚洲色图| 综合免费无码中文| 久久国色天香香蕉| 亚洲涩图欧美| 日本操逼视频在线| 日本在线播放不卡一区| 超碰 av 女人天堂| 校园春色综合网| 久久精品中文字幕观看| 91在线欧色| 99www.bibizy香蕉资源国产一区二区三区高清 | 欧美色图20P| 操逼网站网站| 色综合婷婷| 色婷婷婷五月天激情四射| 中国一级操逼视频| 青青草日韩无码| 都市激情人妻一区二区青青操视频 | 欧美日韩人妻精品系列一区二区三区| 18禁的网站在线| 国产精品91一样| 亚洲第一男人天堂| 韩国午夜理伦三级好看| 欧美在线l亚洲| 久久啊啊啊| 精品亚洲国产成人av网站| 区日韩亚洲乱码av电影| 女优大全 - 91n| 顶级丝袜熟女一区二区三区 | 黄色av播放免不| a片自拍直播视频| 人人扣人人操| 精品制服美女中文一区二区三区| 黄色片,com| 啊啊啊啊啊在线观看网址 | 老子午夜伦不卡影院| 天天爽天天爽| 免费视频观看60秒| 五月天色图| 男人天堂网手机版婷婷| 九色精品视频导航1| 天天摸天天插天天日| 91操熟女视频| 丁香婷婷色五月| 九九九国产精品| 国产精品成人蜜臀AV在线| av72网| 人妻一区二区三区视频| 啊啊啊好湿久久| 色97干| 欧美夜夜狠| 91黄站| 狠狠狠狠狠狠| 成年无码动漫av片无尽在线| 久草综合京东| 吖在线不卡一区二区国产剧情| 亚洲综合在线高清| 亚洲,日韩,欧美,成人播放 | 91足交| 一摸二插三插| 久久久精品日本一道| 夜夜性| 欧美熟女少妇| 欧美日韩免费性爱| 人妻人久久精品中文字幕| 天天做日日爱夜夜爽| 91网站18+| 国产一区二区在线电影| 欧美+日产+中文| 久久大香蕉手机高清| 国产肏逼网站| 欧美熟妇亚洲版| 国产www色在线观看| 另类欧美| 亚 欧 美 综合| 欧美天天弄| 黄总AV色图| 二对二中文字幕。| 曰本人妻人人澡人人夹| 久久久极品| 午夜精品99久久久久传媒| 久久成年片色大黄全免费网站| 97国产亚洲中文在线| 少妇一级婬片免费放一级a性色.| 好色美女九七第一页| 色色色热| 盗摄女人妻在线| 高清无码91| 91黑丝少妇| 熟女精品va中文字幕| 黑人性欧美| 国产乱婷婷精品二区三区| 一本久道在线综合视频| 色妇综合网| 美女诱惑在线一区| 国产玖玖| 亚洲女毛多水多21P| 麻豆视频一区二区| 精品熟妇视频一区二区| 伊人一区二区三区| 色情综合网| 久久久一区二区三区三州| 亚洲超碰综合网| 人妻熟女一区在| 素人一区二区三区日韩| 亚洲一区二区av| 亚洲熟女乱熟乱熟妇综合网二区| 色综合九九| 高清国产性猛交xxxx乱大交| 78久久| av天堂加勒比| 精品人妻视频一区二区在线播放 | 欧美色图99| 蜜臀久久久| 亚洲影视综合网| 国产一区二区三区精品观看啪| 亚洲AV成人精品网站在AV| 亚洲色图8| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 日本一天色道久久久精品视频| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | AV和黑人在线播放| 中文?日韩?免费?精品| 久久97视频| 婷婷五月天无码| 97久久精品亚洲中六字幕| 丁香九月婷婷| 色99视频| 亚洲精品色| 久热免费视频| 日韩三级一区 | 操逼999| 夜夜骑天天燥| 青青操少妇| 欧美中文字幕一区| 青青草白白色| 欧美后入视频| 福利大香蕉| 色www精品视频在线观看| 少妇一区二区三区在线观看| 日日干夜夜操视频h| 日韩影片中文字幕一区二区三区| 亚洲综合97中文网| 亚洲情色1区| 亚洲中文字幕乱码无码一区二区| 丰满翘臀美女影院视频| 歐美一級亂黃99在綫精品| 久操99| 北京专精特新企业招聘信息| 国产精品久久久蜜臀| 亚州成人a∨| 九九英色视频| 欧美色图在线视频少妇| 日比av无码| 69一区二区| 97超碰人人模人人拍人人| 明星性猛交ⅹxxx乱大交| 午夜舔阴达高潮视频免费看| 欧美偷拍区| 操逼啊啊啊91| 另类天堂| 啊啊啊快操我视频| 四虎精品永久在线观看| 男女一进一出视频久久| 亚洲第一免费视频| 婷婷久久综合久| 久久久久日本视| 美女AV一区二区| 蜜区区视频79 | 色五月亚洲| 亚洲情色五月天| 日韩人妻精品中文字幕| 免费视频观看60秒| 俄罗斯一区二区视频在线观看 | 99热国产精品| 三久久久四久久久久| 91色人妻| 嗯嗯啊中文字幕| 西西美女视频网| 综合熟妇一区二区三区| 无码直播久久久| 成人短视频在线观看| 亚洲最大黄网| 天美传媒精品一区二区三区| 国产黄色剧情影片麻豆免费播放| 户外裸露刺激视频第一区| 爽爽淫人网| 国产精品久久久久久久久久久久久久久 | 欧美日韩制服| 日韩无码a片| 国产玖玖| 一卡二卡在线播放| www.91理论| 欧美78p| 综合色久欲| 日韩一级性爱无码| 青青草操逼逼视频| 亚洲精品久久一区二区三区蜜桃臀| 男人的天堂一区| 天天日B夜夜干B时时操B| 不卡超碰护士AV在线免费播放| 亚洲人久久久网| 亚洲欧洲成人在线电影| 91无码中出人妻视频| 欧美一区二区三区黄色影视| 午夜男女爽爽大片免费观看| 中文字幕日产av人| 国产v亚洲v日韩v欧美v片另类| 在线性黄高清免费视频| 在线情色电影 91大 | 97视频在线观看播放与子乱对白在线……| 91热热色| 色综合久| 日日玩天天干| 亚洲欧美中文日韩视频中国语| 色偷综合| 十八禁的黄污污免费网站| 91网亚洲| 2017av无码免费无线播| 97操97色| 精品人妻中文字幕高清| 五月天春色激情网| 97干在线| 麻豆久久久久久久久丝袜| 国产熟妇 码视频户外直播| 狠狠 91| 久久午夜色播影院免费高清| 国产精品老熟女一区二区| 91n处女在线观看| 成人短视频在线观看| 91精品国| 色穴精品| 精品欧美А∨无码黑人大荫蒂 | 浓厚中出中文字幕在线| 欧美 亚洲 综合 制服 另类| 亚洲αv一区二区三区| 白丝在线一区| 99久久久无码国产精品性男| 欧美伊人电影| 伊色综合天堂色97| 日韩激情无码影院| 欧美综合 站| 婷婷中文网| 美女上床网站| 四虎永久在线精品免费网址| 日韩操逼HD| 丁香7月婷婷| 色婷婷色99国产综合精品| 亚洲中文丝袜美腿诱惑字幕| 精品久久一区二区三区四区五区| 日韩无码视频黄色| 玖玖草久草99蜜月一区二区三区| 九九无码视频| 亚洲色婷婷久久91| 蜜臀一二三区| 亚洲城人男人的天堂| 无码一区二区精品视频久久久春药| 国产成自自拍在线观看| 91人妻Pr| 国产精品久久aV| 99re6在线视频精品免费完整版安卓版| 操逼网免费无码视频| 日韩射精| 久久九操在线观看| 宅男91视频在线播放| 亚洲91在线播放影院| 国产中文字幕在线观看| 97这里都是精品| 国产激情在线| 少妇高潮流水av免费| 91久热| 婷婷综合在线观看| 日韩av乱伦| 中文字幕在线观看永久| 亚州综合网| 久久久91福利姬| 影音综合网| 国产亚洲精品自在线亚洲情侣| 中国AAAAAA黄色片| 国产精品伦理| 超碰到97情色| 青青草十区九区爱夜| 色色色欧美| 福利社区午夜一区二区| 免费操逼91| 东京男人天堂| 美女上床网站| 日本孕妇孕交| 亚洲精品欧洲精品| 亚洲精品一二三四区| 高清在线偷拍自拍视频| 中文字幕精品日韩中文字幕| 午夜啪| 99999精品| 狠狠入| 精品免费成人久久| 伊人久日| 亚洲影视第一页| 欧美 熟女 日韩| 91撸色网 玖玖网 欧美| 久久欧美1卡2卡3| 五月丁香啪| 天天爽人人综合免费7799| 日本午夜操逼| 亚洲AV操| a级成人毛片免费视频高清| 亚洲天堂另类小说男人| 久久婷婷苹果| 在线中文字幕| 色噜噜国产在线| 欧美丝袜亚洲| 夜夜肏2021| 很很干很很操| 亚洲综合小说另类图欧美视频激情小说色五月天| 天天摸夜夜添无码小视频| 人人爱人人乐人人操| 亚洲天天更新| 久久久96| 亚洲九九九| 亚洲熟妇图片| 久久毛卡| 国产精品成人无码av无码免费| 韩日性爱av| 久久男人精品| 91天堂色男人的天堂| 激情综合网五月婷婷五月天| 岛园激情| 男人天堂2012| 国产传媒日本欧美专区| 欧美72网页| AV99热18这里只有精品| 久久精品视频一区三区小泽玛利亚| 男人把坤坤插入女人的下体| 亚洲男人天堂视频| 视频二区美腿制服人妻欧美| 色综合一区二区三区| 中文乱码字字幕在线第5页| 久久超碰国产一区二区三区| 国产在线激情视频| 色色色色网站| 日韩精品区二区三区不卡| 中文字幕 一区二区 亚洲无码| 欧美性,亚州色| 97超碰精品成| 日韩精品-原创伙伴| 激情小说亚洲色图| 影音先锋视频在线| 国产亚洲在线观看| 欧美一区二区日韩传媒搭讪精品| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 亚洲黄色a级片| 天天综合色| 美女主播色欲91抠b在线播放| 中文在线视频| 测评在线观看AV| 国产精品免费美女视频| 99超碰色| 97精品视频在线| 亚洲精品国语在线播放| 日韩性爱小视频在线观看| 亚洲男人天堂Av| 欧美亚洲宗合色性图| 91欧美色| 91成人久久| 无码欧美有限公司| 国产精品午夜福利| 国产成人一级av88| 亚洲国产一区二区三区在线| 97在线视频观看免费| 国产精品福利资源在线尤物| 五月天开心网| 九九热午夜欧亚国产视频| 操逼A∨| 精品人人插人人操| 色麻豆AV| 国产亚洲精品久久久久小| 大香蕉婷婷| 四虎免费视频| 国产精品无码久久久久2025| 97网址www| 99re黄| 91精品丝袜在线观看| 日韩中文字幕2020| 伊人久久综合影院精品久久久 | 少妇被c 黄 免费观看| 人人扣人人操| 久久精品国产97欧美精品亚洲 | 久久久久久久九九九九| a级理论午夜日本| 久久久久久久久久久久九| 69XX一中文字幕人妻91| 熟妇人妻精品一区二区视频色欲| 欧美色老汉| 一级啊性爱在线视频| 久久同城AV| 国产乱伦亚洲| 蜜臀久久久国产| 最新日日夜夜天天干干| 99操| 亚洲熟女性高潮久久久| 欧美国产成人在线| 国产一区二区a毛片| 日夜久久久九九九久| 国产精品第一区第一页| 色呦呦、国产精品| 98人妻精品一区二区色欲 | 高清无码在线播放网站| 97天天综合网| 人人操肉肉| 四虎在线播放| 亚洲色图欧美视频| 五月天久久人妻| 丁香六月婷| 凹凸精品熟女在线观看| 有码人妻系列| 免费公开人人操| 99热日| 香蕉婷婷| 97精品国产| 91新在线欧美| 人人操人人操人人操人人操人人操人人人11.CM| 熟女欧美日韩综合婷婷| 亚洲蜜乳av| 无码人妻毛片丰满熟妇精品区| 自拍鲍鱼一区在线高清观看免费| 久久精品超碰| 国产男女无套97| www黄片免费看com| 人妻天堂三区| 亚洲成人精品久久久| 日韩亚洲中文字幕在线| 久久久久女教师免费一区| 麻豆久久视频在线地址| 国产精品麻豆免费视频| 天操天操夜操夜月月年年操操| 国产精品电影| 无码人妻一区二区三区色欲aⅴ| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 日韩成人大片一区二区| 美女网站91| 欧美日韩国产男人| 亚洲综合在线视频| 亚欧毛片基地国产毛片基地| 久久色AV线| 国产av高清版| 久久香蕉综合一本到3atv| 69一区二区| 98超碰日本| 91色综| 看黄片视频免费| 亚洲欧美日韩激情不卡| 欧美综合 站| 一本一道人妻久久一区二区三区| 国产Aα| 欧美91精品国产自产| 国产日韩欧美| 久久久久久久久久久久久久久乱码| 人人摸人人添人人操| 亚洲天堂精品日韩电影| 欧美日韩系列| 久草男人天堂| 亚洲AV免费在线观看| 手机在线看片免费人成视频| 久久精品人人做人人看| 欧美日韩资源| 久久r精品| 伊人久久亚洲中文字幕不卡| 四虎永久在线精品免费网址 | 国产精品乱码久久久久久久久| 欧洲亚洲人妻无码中字久久三区四区| 日本三级韩国三级99| 亚洲最大成人a毛毛片| 国产精品不卡高清在线观看| julia国产在线| 人妻素股| 九九九精品一区二区无码| 欧美不卡在线美女| 艹我哪美一区无码| 国产无马av| 熟女精品va中文字幕| 久久精品国产亚洲妲己影视| 呦呦一区| 一区二区三区视频| 超碰地址久久| 久久久555| 欧美在线亚洲| 久草电影网| 大色网久久| 久久天堂网| 深夜激情| 色综合大香蕉| 中文字幕三四五区| 精品1区2区3区| 麻豆精品.欧美精品.日韩精品.| 神马久久免费电影观看| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 综合激情一一91| 亚洲性图91| 国模91| 51一区二区三区| 97超碰影音| 99re6在线视频播放免费精品| 婷婷10月天青娱乐| 高清视频一区| 九九九九热| 五月丁香黄色网| 欧美高清18A片| 色欲av一区二区三区蜜芽| 久久久精品电影| 啪啪资源网| 999岛国大片| 狠狠干综合| 青青草原人妻| 蜜臀人妻少妇久久在线观看| 久久一二三四五六七八九区区| 美女黑人91神马| 国产精品色约约| 夜夜性| 肏逼视频日本| 亚洲va有码在线天堂| 亚洲免费人妻在| 色婷婷丁香五月| 青青草视频爽一爽| 91爱欧美| 中文字幕视频二区| 一级性爱视频免费在线| 性影在线视频| 天天天天操| 久久內射| 少妇色欲综合网2| 天天日天天操天天射河南省| 欧美激情性爱视频网站| 亚洲一区日韩| 欧洲射精91| 超碰视97中文| 粉嫩av在线| 欧美日韩性爱无码| 嗯嗯啊啊视频在线看| 西西美女视频网| 巨乳特殊服务按摩| a一区二区三区乱码在线| 天天天天天干夜夜夜夜夜操| 蜜桃精品一区二区三区ww| 嗯嗯嗯啊啊啊干死我吧| 好爽视频在线观看| 91在线视频免费播放| 色欧美天天| 9999亚洲精品| 九九九九热| 欧美性爱伊人| 伊人一区二区三区| 欧洲综合色图| 3p国产欧美99热| 欧美精品偷拍| 91一区二匹| 国产精品无码论坛| 啊啊好多水| 大色综合| 色狠狠综合| 在线小视频| 国产精品不卡一区二区电影| 免费黄色视频网址| 九九九九免费视频| 久久久精品中文字幕爱豆| 精品久热| 亚洲天堂少妇| 日韩国产乱子伦App| 欧美 日韩 国产传媒| 午夜爽爽爽| 91 综合 色| 日本孕妇一区二区视频操逼免费看 | 五月丁香婷婷色| 亚洲丰满很很操| αⅴ天堂| 中文字幕日韩人妻视频一区二区三区交换夫妻| 综合第一页| 婷婷五月丁香五月| 凹凸 69堂 在线播放| 粉嫩粉嫩一区性色AV片| 久久国产对白激情浪潮| 人妻精品视频一区二区三区| 女优视频第10页| 亚洲小说视频| 超碰AV在线| 9九九国产| 午夜国产成人福利视频| 亚洲日韩东京热一区| 最新亚洲人成网站在线影院| 人妻熟女一区在| 久久粉色| 婷婷在线视频| 久久一区二区三区四区五区| 激情综合五月天| 91第一页| 东北夫妻性偷拍| 91色图| 一牛影视久久久一区二区三区| 97se亚洲| 午夜福利视频在线一区| 男人久久精品| 国产精品视频91久久| 天天欧美色| 亚洲春色一区二区三区| 91暧暧| 两女互慰AV高潮喷水在线观看| 91久久久视| 日韩中文字幕人妻视频| 亚洲天堂美臀在线| 国产精品久久久三级无码| 欧美综合中文| 色香阁在线| 亚洲精品免费中文字幕| 大香蕉十区| 国产精品久久aV| 97超碰天天爱天天爱| 芊芊操逼视频无码| 亚洲欧美激情小说| 日韩pv中文| 18禁无码永久免费无限制| 久久久久久久久久久久久久久久9| 岛国AB视频| 91制服丝袜| 久久久久久大| 亚欧成人综合影院| 国产农村妇女毛片精品久久| 99青草| 约操熟妇| 欧美劲爆第一页| 人妻精品一区二区全免费| 美国aaaaa一级黄片| 97视频播放| 日韩99神马视频播放| 东亚亚洲无码高清| 久久久久9999| 啊啊啊啊啊啊啊网址在线观看| 亚洲成人综合在线| 无码高清操逼网址| 熟女熟妇一区二区三区视频| 久久极品伊人| 久久精品毛片免费不卡| 日夜精品| 色阁阁AV综合网| 亚洲AV小说| 逼逼逼逼操操操操操操操操操午夜剧场 | 综合五月婷婷亚洲一区| 国产又粗又长视频| 97在线观视频免费观看| 床上啊啊啊一区二区三区| 久久欲| 搡老女人老91二区| 1024午夜激情男人的天堂| 天天日日舔舔| 欧美专区日本专区| 中文字幕高清精品一区| 亚洲一区二区av| 亚洲AV不卡在线观看尤物| 狠狠久久亚洲欧美专区| 国产亚洲女v在线观看| 九九九九热| 欧美淫乱视频| 久久日本熟女精品一区| 国产人妻精品久久久一区二区三区| 国产亚洲日韩在线三区黑人| 深夜福利黄片| 亚洲天天自拍| 精品久久艹| 日韩中文字幕av在线播放| 亚洲欧美大香蕉| 亚洲欧美在线观看2021| 亚洲精品一区二区精品| 另类图片天天影视| 新怡红院| 另类图片五月天| 久久少妇人妻| 情色五月天久久久| 嗯嗯,啊啊,国产精品| 99操| 国产99 中文字幕日韩小视频| 日韩欧美中文| 日本无码1| 巨爆乳一区二区爆乳区| 无码高清少妇久久| 日韩性爱长视频免费| 女生91网站| 高清视频一区| 亚洲综合在线第一页| 欧美激情 亚洲色图| 久久久久久中文| 九九九九九九免费视频| 免费亚洲国产精品久久一区| 大香蕉宅男伊人| 99re8免费高清在线| 亚洲五区熟女| 神马午夜久久久| 国产美女激情| 天天躁狠狠躁av| 亚洲日韩欧美一区二区| 久久噜| 香蕉大久久久| 欧美丝袜91| 精品久久97观看在线视频| 精品国产乱码久久久| 欧美se综合| 91春色| 999精品国产高清一区二区| 中文字幕精品免费一区二区| 美女裸体无遮挡永久免费观看网站| 97爱爱| 1级黄色夫妻对换性交免费看| 眼镜人妻101.com| www.伪伪| 国产三级电影免费观看| 久久伊人五月天| 日韩AV一区二区三区四四| 偷拍 精品 另类 四区| 嗯嗯嗯,草死我| 色 亚洲 91| 亚洲日韩资源| 综合夜夜| 国产乱伦亚洲| 丰满的三级少妇欧美久久久| 男人的天堂亚洲| 日韩av三四区| 国产精品乱码久久久久久久| 熟女91网站| 91免费看一区二区三区| 大香焦A片| 色五月首页| 一道本东京热加勒比一区二区三区| 亚洲天堂人人妻| 国产一区二区在线看| 欧美激情久操网| 国产熟女乱论| 久久精品一区二区三区不卡| 国产精品91ai| 久久熟女嫩草成人片免费| 91色拍| 五十路三级片| 人妻激情偷乱视频一区二区三区 | 美女性91| 成人精品一区二区91毛片不卡| 亚洲欧美日韩综合在线尤物| 亚洲城人男人的天堂| 亚洲AV不卡在线观看| 亚洲性网| 中国探花熟女| 天美一二三在线观看Av| 综合熟妇一区二区三区| 日本熟女不卡视频| 日韩啪啪网| 一本久久精品中文字| 97天天| 人摸人人操人| 色诱中文字幕| 欧美亚洲手机在线| 福利伊人玖玖国产| 亚洲天堂另类美腿| 热热色青青草| 超碰成人公开| 国产精品经典一卡久久久| 亚洲好色人妻| 欧美一级特黄淫片在线观看| 日韩另类色图| 97 国产精品| 波多野结衣一级视频| 99国内精品| www男人天堂| 人人操人人大香蕉| 91激情网| 日婷婷| 九九热九九热| 日韩十八禁| 无码视频黄色网战| 物业黑人 AV一区| 黄色大片免费在线| 91 国产丝袜在线放观看| 欧美碰碰综合色| 亚洲最大无码中文字幕网站| 少妇内射www在线观看视频| av黄图片在线观看| 中文字幕五区| 色综合天天爱去电影网| 久久久久婷婷| 国内成人圈中文字幕无码视频| 在线欧美69V免费观看视频| 5252色欧美在线| 日韩欧美性爱电影在线观看| 婷婷五月丁香五月| 亚洲综合在线91| 影音先锋国产精品| 色与欲影视天天看综合网| 国产精品免费视频人成| 中出20p| 一起草精品人妻| 亚洲久久东京热一二三四五区视频| 91九色蝌蚪在线观看| 区二区亚洲婷| av最新免费中文字幕| 午夜精品久久久久| 少妇3P性爱自拍| 国产精品不卡一区二区三区| 日韩精品国产一区二区| 西西美女视频网| 日本不卡高清视频| 9国产超碰| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 日本天天干天天搞一区| 三级AV入口| 欧洲精品欧洲精品| 色香色欲天天综合网天天来吧| 东京男人天堂| 91美女丝袜诱惑视频| 天天操夜夜操| 好吊色一区| 93人人操人人| 一卡二卡在线播放| 三级三级三级日本99| 翔田千里AV无码秘 三区| 亚洲 se图 欧美电影| 精品少妇人妻av久久免费| 97久久国产亚洲精品超碰热| 啊视频在线| 亚洲高清视频在线免费观看| 久久久久久九九九九-美女久久久久久久-成人AV | 国模不卡| 东京男人天堂| 97免费在线视频在线观看| 天天谢天天干| 精品少妇一区二区| 美女啊啊啊啊啊啊啊| 91香蕉视频在线观看免费| 97欧美色综合| 日韩乱码av| 亚洲91在线播放影院| 少妇贴图| AV天堂男人的天堂| 日韩中文字幕在线视频观看| 亚洲欧美999| 日本孕妇孕交| 亚洲另类综合欧美| 91人妻做a观看视频| 蜜臀AV午夜精品久| 久久国产精品熟女人妻| 巨爆乳肉感一区二区三区竹菊影视 | 操高情无码| 久久鲁夜| 久久婷婷影院| 一区二区免费电影久久| 亚洲精品蜜桃久久久| 丰满少妇人妻久久久久久| Blackedraw视频一区二区| 欧美天天综合网| 9997se| 婷婷色香| 水野优香在线观看| 在线视频免费播放一区| 色欲天天综合久久久无码网中文| 亚州色阁| 大香蕉伊人网WWWn0n| av一区二区三区 中文| 日韩偷拍一区二区三区 | 午夜理论片在线观看免费| 欲香欲色| 夜夜嗨一区| 日本天天干天天搞一区| 91 亚洲 欧洲| 欧美一级黄片免费播放| 免费日韩黄片| 亚洲天堂精品日韩电影| 中文字幕av片| 日日做夜狠狠爱欧美黑人| 久久欧美1卡2卡3| 亚洲免费看片| 亚洲成a人片在线观看中文!!!| 久久免费少妇| 欧美色蜜桃97| 超碰视97中文| 亚爽爽爽爽爽爽爽爽| 丁香五月天婷婷姐| 开心五月婷婷| 97人人模人人爽人人| jk白丝没脱就开始啪啪| 亚洲 无码 偷拍| 爱爱啊啊啊| 久久国产乱子伦精品免费女,网站| 综合色久欲| 色网综合网| 亚州熟妇精品| 久久99精品九九久久久婷婷| 亚洲精品国产AV天美传媒| 四虎影视在线| 欧美色图亚洲色图成人在在线| 欧美午夜精品久久久久久3D| 探花激情视频| 亚洲欧洲国产综合av| 在线无码操| 亚洲操逼无码| 另类小色呦| 日韩黄色成人性爱| 日本午夜久久电影| 妺妺跟我一起洗澡没忍住| 激情五月天社区| 国产 v乱码一区二| 91超碰人人操| 99视频内射三四| 久久国产三区| 九九无码久久精品视频| 久久精品欧美一区蜜桃| 国产最新AV| ,国产乱人伦精品一区二区三区| 亚洲情色婷婷五月天| 久久天天性久久伊人| 丝袜狠狠草尤物人妻av91| 婷婷五月天久久精品视频一区二区三区| 婷婷国产精品九区| 免费网站观看www在线观|