免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

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

GUI Agent測試失敗診斷:基于軌跡分析的根因定位與系統(tǒng)可靠性提升 1. 項目概述當GUI Agent“翻車”時我們?nèi)绾尉珳试\斷在AI驅(qū)動的軟件自動化測試領(lǐng)域GUI Agent圖形用戶界面智能體正成為一股顛覆性的力量。想象一下一個能夠像人類一樣操作瀏覽器、點擊按鈕、填寫表單的AI7x24小時不知疲倦地執(zhí)行測試用例這聽起來像是質(zhì)量保障工程師的終極夢想。然而夢想照進現(xiàn)實時我們常常會遇到一個令人頭疼的問題當測試失敗時我們很難快速、準確地知道“為什么”。傳統(tǒng)的軟件評估方法無論是基于腳本的自動化測試還是人工測試在失敗時通常能提供清晰的錯誤堆?;虿僮魅罩?。但GUI Agent的行為由大語言模型LLM驅(qū)動其決策過程像一個“黑盒”。一次測試失敗可能源于多種復雜因素的疊加可能是LLM錯誤理解了屏幕上的一個圖標可能是頁面加載延遲導致Agent點擊了錯誤的位置也可能是測試任務(wù)本身的描述存在歧義。簡單地報告“任務(wù)失敗”毫無意義我們真正需要的是可解釋的、根因明確的診斷報告。這就是“DiagEval: Trajectory-Conditioned Diagnosis for Reliable Software Evaluation with GUI Agents”這個項目試圖解決的核心痛點。它不是一個全新的測試框架而是一個構(gòu)建在現(xiàn)有GUI Agent工作流之上的診斷與評估增強層。其核心思想是“軌跡條件診斷”——即利用Agent執(zhí)行任務(wù)過程中產(chǎn)生的完整交互軌跡包括截圖、操作序列、LLM的思考過程結(jié)合特定的診斷模型對失敗原因進行歸因和分析從而讓軟件評估變得可靠、可信。簡單來說DiagEval想讓每一次測試失敗都“死得明白”并且能告訴我們下一步該修復Agent、優(yōu)化環(huán)境還是澄清任務(wù)。這對于將GUI Agent從實驗室原型推向真實的、大規(guī)模的工業(yè)級軟件測試場景至關(guān)重要。2. 核心思路拆解為什么“軌跡”是診斷的關(guān)鍵要理解DiagEval首先要拆解其名稱中的兩個關(guān)鍵詞“Trajectory-Conditioned”軌跡條件和“Diagnosis”診斷。2.1 什么是GUI Agent的“軌跡”在強化學習或機器人領(lǐng)域軌跡通常指智能體在環(huán)境中從起點到終點所經(jīng)歷的狀態(tài)、動作序列。對于GUI Agent而言這個定義被完美映射狀態(tài)State在每一個決策步驟Agent所“看到”的屏幕截圖或經(jīng)過處理的視覺特征以及可能從頁面中提取的文本、可操作元素列表。動作ActionAgent執(zhí)行的操作如CLICK [id‘submit-btn’]、TYPE [selector‘#search’] “hello”、NAVIGATE “https://...”。思考過程Reasoning Trace這是由LLM驅(qū)動的Agent所獨有的。許多先進的Agent框架如AutoGPT、WebGUM等會讓LLM輸出其決策的“鏈式思考”Chain-of-Thought。例如“當前頁面有一個登錄表單。我需要先輸入用戶名。用戶名輸入框的ID是‘username’。因此我將執(zhí)行動作 TYPE [id‘username’] ‘test_user’?!?這部分信息是理解Agent意圖和錯誤的關(guān)鍵。一個完整的任務(wù)軌跡就是由一系列(狀態(tài) 思考 動作)三元組構(gòu)成的序列。這個序列包含了Agent完成任務(wù)的全過程信息遠比一個簡單的“通過/失敗”標簽豐富得多。2.2 “軌跡條件診斷”解決了什么根本問題傳統(tǒng)的評估指標如任務(wù)成功率、完成步驟數(shù)是標量且后驗的。它們只告訴結(jié)果不解釋過程。當成功率從80%跌到70%時我們面臨一系列無法回答的問題是Agent的視覺理解能力變差了嗎是網(wǎng)站的前端UI發(fā)生了改動嗎是任務(wù)指令描述得不夠清晰嗎還是測試環(huán)境如網(wǎng)絡(luò)延遲不穩(wěn)定導致的軌跡條件診斷的核心思路是將診斷任務(wù)本身定義為一個條件生成或分類問題其條件就是任務(wù)執(zhí)行軌跡。通過分析軌跡一個專門的診斷模型可以學習將復雜的、多模態(tài)的軌跡數(shù)據(jù)映射到結(jié)構(gòu)化的失敗原因分類上。這帶來了幾個關(guān)鍵優(yōu)勢可解釋性診斷報告可以明確指出失敗是因為“在第三步Agent將‘保存草稿’按鈕誤識別為‘提交’按鈕”。歸因精準可以將問題歸因到具體模塊如“視覺定位錯誤”、“任務(wù)規(guī)劃邏輯缺陷”、“環(huán)境異?!薄V笇Ц倪M為開發(fā)者提供明確的改進方向。如果是視覺問題可能需要增強截圖預處理或微調(diào)視覺編碼器如果是規(guī)劃問題可能需要優(yōu)化提示詞工程或采用更好的任務(wù)分解策略。2.3 DiagEval的系統(tǒng)級視角從系統(tǒng)架構(gòu)看DiagEval并非取代現(xiàn)有的GUI Agent如使用Playwright LLM的Agent而是與之協(xié)同工作。一個典型的工作流如下軌跡收集GUI Agent在待測軟件Web/桌面應(yīng)用上執(zhí)行一系列評估任務(wù)。每個任務(wù)執(zhí)行時不僅記錄最終的成敗還全程高保真地記錄下完整的軌跡數(shù)據(jù)屏幕錄像或高頻截圖、DOM快照、操作日志、LLM的思考鏈。軌跡存儲將軌跡數(shù)據(jù)以結(jié)構(gòu)化的格式例如包含時間戳的序列化JSON存儲到數(shù)據(jù)庫中并與任務(wù)ID、環(huán)境配置等信息關(guān)聯(lián)。診斷引擎對于失敗的任務(wù)診斷引擎被觸發(fā)。它加載對應(yīng)的軌跡數(shù)據(jù)運行診斷模型可能是另一個微調(diào)過的LLM或一個多模態(tài)分類模型對軌跡進行分析。報告生成診斷引擎輸出結(jié)構(gòu)化的診斷報告包括失敗根因分類、導致失敗的關(guān)鍵步驟截圖、Agent錯誤思考的引用、以及可能的修復建議如“建議在提示詞中明確區(qū)分按鈕A和按鈕B的功能”。評估看板所有任務(wù)的原始結(jié)果和診斷報告匯總在一個評估看板中提供宏觀的可靠性指標如各類錯誤的發(fā)生率和微觀的案例審查。注意這里存在一個“雞生蛋還是蛋生雞”的問題。要訓練一個診斷模型我們需要大量已標注診斷結(jié)果的軌跡數(shù)據(jù)。因此DiagEval的實踐往往從“基于規(guī)則的診斷”或“利用強大LLM如GPT-4進行零樣本診斷”開始積累初始數(shù)據(jù)再逐步迭代訓練更專、更高效的診斷模型。3. 核心模塊深度解析從數(shù)據(jù)到診斷報告要實現(xiàn)上述思路DiagEval包含幾個關(guān)鍵的技術(shù)模塊。每一個模塊的設(shè)計都直接影響最終診斷的準確性和實用性。3.1 軌跡數(shù)據(jù)的規(guī)范化與存儲軌跡數(shù)據(jù)是多模態(tài)且高維的高效存儲和快速檢索是首要挑戰(zhàn)。數(shù)據(jù)格式設(shè)計{ 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有一個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: 頁面顯示‘密碼錯誤’提示信息。 }關(guān)鍵字段llm_thought和extracted_elements是診斷的黃金信息源。前者揭示了意圖后者提供了環(huán)境事實。存儲策略大文件如截圖、錄像建議使用對象存儲如S3/MinIO并存儲鏈接元數(shù)據(jù)和文本字段存入時序數(shù)據(jù)庫或文檔數(shù)據(jù)庫如MongoDB便于按任務(wù)和時間查詢。實操心得高頻截圖 vs 事件驅(qū)動截圖每一步都截圖數(shù)據(jù)量大但信息完整??梢哉壑忻恳徊奖卮婵s略圖僅在action_successfalse或關(guān)鍵步驟時存儲高分辨率截圖以平衡存儲成本和診斷需求。DOM快照的取舍DOM信息對于理解頁面結(jié)構(gòu)至關(guān)重要但可能很龐大??梢灾淮鎯εc當前步驟關(guān)注區(qū)域相關(guān)的部分DOM或存儲經(jīng)過清理和簡化后的版本。3.2 診斷模型的選型與訓練這是DiagEval的技術(shù)核心。診斷模型需要理解多模態(tài)軌跡并做出判斷。主要有幾種技術(shù)路徑基于規(guī)則/啟發(fā)式的方法做法預先定義一系列規(guī)則。例如如果軌跡中連續(xù)出現(xiàn)三次“元素未找到”的錯誤則診斷為“頁面加載不穩(wěn)定或元素定位策略失效”如果LLM的思考中出現(xiàn)“我認為這個按鈕是X”但截圖顯示按鈕文字是Y則診斷為“視覺/文本理解錯誤”。優(yōu)點簡單、透明、無需訓練數(shù)據(jù)、快速上線。缺點規(guī)則難以覆蓋所有復雜情況維護成本高無法處理模糊和未知錯誤?;诖笮驼Z言模型LLM的零樣本/少樣本診斷做法將軌跡數(shù)據(jù)特別是LLM思考和動作序列以文本形式組織成提示詞Prompt提交給一個強大的通用LLM如GPT-4、Claude-3要求其分析失敗原因。提示詞示例“你是一個GUI測試診斷專家。以下是AI Agent執(zhí)行登錄任務(wù)的軌跡。任務(wù)失敗了最終頁面顯示‘密碼錯誤’。請分析軌跡指出Agent可能在哪里出錯了并給出根因分類。軌跡[插入軌跡的文本摘要]”優(yōu)點非常靈活能處理未見過的錯誤模式利用了LLM強大的推理和自然語言理解能力。缺點成本高API調(diào)用費延遲大診斷結(jié)果可能不穩(wěn)定且嚴重依賴提示詞工程。訓練專用的多模態(tài)診斷模型做法這是DiagEval論文中可能探討的進階方向。收集大量帶標注診斷結(jié)果的軌跡數(shù)據(jù)訓練一個端到端的模型。這個模型以軌跡序列圖像序列文本序列為輸入輸出診斷分類和解釋。模型架構(gòu)猜想視覺編碼器如ViT處理每一步的截圖。文本編碼器如BERT處理LLM思考和動作文本。時序融合模塊如Transformer或LSTM將多步的視覺和文本特征融合理解整個軌跡的上下文。診斷頭一個分類層輸出根因類別如視覺理解錯誤、動作執(zhí)行錯誤、任務(wù)規(guī)劃錯誤、環(huán)境問題同時可接一個文本生成頭如使用LLaMA架構(gòu)來生成自然語言的診斷描述。優(yōu)點一旦訓練好診斷速度快、成本低、結(jié)果一致可針對特定領(lǐng)域優(yōu)化。缺點需要大量高質(zhì)量的標注數(shù)據(jù)訓練成本高模型開發(fā)和維護復雜。在實際項目中一個混合策略往往是明智的初期用規(guī)則和LLM API快速搭建原型積累數(shù)據(jù)中期用積累的數(shù)據(jù)微調(diào)一個中小型開源模型如Qwen-VL或LLaVA進行初步分類后期數(shù)據(jù)量足夠大時再考慮訓練更定制化的模型。3.3 診斷分類體系的設(shè)計一個定義清晰的診斷分類體系是產(chǎn)出 actionable 報告的基礎(chǔ)。分類不宜過粗如“Agent錯誤”或過細難以標注。一個實用的分類體系可能包括大類子類描述可能的原因/修復方向感知錯誤視覺定位失敗Agent無法在截圖中找到正確的UI元素。截圖模糊、元素樣式變化、視覺編碼器能力不足。需增強視覺特征或加入DOM信息輔助。文本識別錯誤Agent錯誤識別了屏幕上的文字如將“Cancel”看成“Confirm”。OCR錯誤或LLM視覺理解偏差。需改進OCR或提供更清晰的文本提示。狀態(tài)判斷錯誤Agent錯誤判斷了頁面狀態(tài)如認為已登錄成功實際失敗。缺乏對成功/失敗狀態(tài)的明確定義。需在提示詞中加入更明確的狀態(tài)檢查指令。規(guī)劃與推理錯誤任務(wù)分解錯誤Agent將復雜任務(wù)分解成了錯誤的子步驟序列。LLM對任務(wù)領(lǐng)域的常識不足。需提供任務(wù)分解的few-shot示例或采用更高級的規(guī)劃器。邏輯推理錯誤Agent在單步推理中得出錯誤結(jié)論如“這個灰色按鈕應(yīng)該是可點擊的”。LLM的推理幻覺。需通過思維鏈CoT自我驗證或引入外部知識驗證。上下文遺忘Agent在長軌跡中忘記了之前步驟的關(guān)鍵信息。LLM的上下文窗口限制或注意力機制問題。需設(shè)計更好的記憶模塊或總結(jié)機制。動作執(zhí)行錯誤動作參數(shù)錯誤動作指令正確但參數(shù)錯誤如點擊坐標偏移。坐標計算不準或頁面動態(tài)變化。需采用更魯棒的元素定位方式如相對定位。環(huán)境交互失敗動作本身正確但環(huán)境未響應(yīng)如點擊無反應(yīng)。前端框架延遲、元素未處于可交互狀態(tài)。需增加重試機制和等待條件。環(huán)境與任務(wù)問題環(huán)境不穩(wěn)定網(wǎng)絡(luò)超時、頁面崩潰、測試數(shù)據(jù)被污染。非Agent問題。需優(yōu)化測試環(huán)境穩(wěn)定性和數(shù)據(jù)隔離。任務(wù)指令歧義人類提供的任務(wù)描述本身存在多種解釋。需求方問題。需與需求方澄清并優(yōu)化任務(wù)指令的編寫規(guī)范。這個分類體系需要在實際項目中不斷迭代和細化。4. 實操構(gòu)建指南從零搭建一個簡易DiagEval理論說了很多我們來點實際的。假設(shè)我們已有一個基于Playwright和GPT-4 API的簡易GUI Agent現(xiàn)在要為其增加DiagEval診斷能力。我們將采用“規(guī)則引擎 LLM零樣本診斷”的混合模式。4.1 環(huán)境準備與架構(gòu)搭建技術(shù)棧選擇Agent執(zhí)行端Python, Playwright (用于瀏覽器自動化) LangChain/自定義Agent框架 (用于組織LLM調(diào)用)。軌跡記錄器在Agent的每個動作執(zhí)行前后插入鉤子函數(shù)記錄所需數(shù)據(jù)。存儲層SQLite (用于原型快速開發(fā)存儲元數(shù)據(jù)) 本地文件系統(tǒng) (存儲截圖)。診斷引擎Python, 內(nèi)置規(guī)則引擎 調(diào)用OpenAI API (用于復雜診斷)??梢暬窗錝treamlit (快速構(gòu)建交互式Web應(yīng)用)。目錄結(jié)構(gòu)diageval_project/ ├── agent/ # GUI Agent核心代碼 │ ├── __init__.py │ ├── gui_agent.py # 主要的Agent類 │ └── actions.py # 定義所有可執(zhí)行動作 ├── trajectory/ # 軌跡記錄與管理 │ ├── recorder.py # 軌跡記錄器 │ ├── models.py # 軌跡數(shù)據(jù)模型 (Pydantic) │ └── storage.py # 存儲到SQLite和文件 ├── diagnosis/ # 診斷引擎 │ ├── engine.py # 診斷引擎主入口 │ ├── rule_based.py # 基于規(guī)則的診斷器 │ ├── llm_based.py # 基于LLM的診斷器 │ └── categories.py # 診斷分類定義 ├── evaluation/ # 評估任務(wù)管理 │ └── task_loader.py # 從YAML/JSON加載測試任務(wù) ├── dashboard/ # 可視化看板 │ └── app.py # Streamlit 應(yīng)用 ├── config.yaml # 配置文件 (API keys, 路徑等) └── requirements.txt # 依賴包列表4.2 實現(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): 開始記錄一個新任務(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): # 這里簡化處理實際可能用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)建步驟對象 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ù)將完整軌跡存入存儲 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)中需要集成這個記錄器# 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思考并決定動作 llm_thought, action self._think_and_plan(screenshot, dom, task_instruction) # 3. 執(zhí)行動作 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 實現(xiàn)混合診斷引擎診斷引擎在任務(wù)結(jié)束后被調(diào)用或者由一個后臺服務(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ī)則進行快速、確定的診斷 如果規(guī)則無法確診或置信度低則調(diào)用LLM進行深度分析。 # 階段1: 規(guī)則診斷 rule_result self.rule_diagnoser.analyze(trajectory) if rule_result.confidence 0.8: # 設(shè)定一個置信度閾值 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ù)動作失敗 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ù)三個動作執(zhí)行失敗可能頁面未加載完成或網(wǎng)絡(luò)異常。, confidence0.9, problematic_steps[step.step for step in trajectory.trajectory[-3:]] ) else: consecutive_failures 0 # 規(guī)則2: 檢查LLM思考與動作的一致性 for step in trajectory.trajectory: if 點擊 in step.llm_thought and CLICK not in step.executed_action: # 思考說要點擊但實際執(zhí)行了其他動作 return DiagnosisResult( root_cause規(guī)劃與推理錯誤/邏輯推理錯誤, detailsf步驟{step.step}: LLM思考意圖為點擊但實際執(zhí)行了‘{step.executed_action}’??赡艽嬖谥噶罱馕鲥e誤。, confidence0.7, problematic_steps[step.step] ) # ... 更多規(guī)則 # 默認返回未知 return DiagnosisResult( root_cause未知, details規(guī)則引擎無法確定根因。, 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)換為LLM可理解的文本摘要 trajectory_summary self._format_trajectory_for_llm(trajectory) prompt f 你是一個資深的GUI自動化測試診斷專家。請分析以下AI Agent執(zhí)行任務(wù)的軌跡找出任務(wù)失敗的根本原因。 任務(wù)指令{trajectory.instruction} 最終狀態(tài){trajectory.final_state} 任務(wù)結(jié)果{成功 if trajectory.task_success else 失敗} **執(zhí)行軌跡摘要** {trajectory_summary} 請根據(jù)以下分類給出最可能的失敗根因并簡要說明理由。如果你的判斷不屬于已知分類請輸出“其他”并描述原因。 **根因分類** 1. 感知錯誤 - 視覺定位失敗 2. 感知錯誤 - 文本識別錯誤 3. 感知錯誤 - 狀態(tài)判斷錯誤 4. 規(guī)劃與推理錯誤 - 任務(wù)分解錯誤 5. 規(guī)劃與推理錯誤 - 邏輯推理錯誤 6. 規(guī)劃與推理錯誤 - 上下文遺忘 7. 動作執(zhí)行錯誤 - 動作參數(shù)錯誤 8. 動作執(zhí)行錯誤 - 環(huán)境交互失敗 9. 環(huán)境與任務(wù)問題 - 環(huán)境不穩(wěn)定 10. 環(huán)境與任務(wù)問題 - 任務(wù)指令歧義 請以JSON格式輸出包含以下字段 - root_cause: (字符串從上述10個分類中選擇格式如“規(guī)劃與推理錯誤 - 邏輯推理錯誤”) - confidence: (浮點數(shù)0.0到1.0) - reasoning: (字符串詳細解釋你的診斷理由引用軌跡中的具體步驟) - suggested_fix: (字符串給開發(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對象 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: # 簡化軌跡只保留關(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]}...) # 截斷 summary_lines.append(f 動作: {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)建評估看板使用Streamlit可以快速構(gòu)建一個可視化界面。# 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 評估診斷看板) # 初始化組件 storage TrajectoryStorage(trajectories.db) diagnosis_engine HybridDiagnosisEngine(...) # 側(cè)邊欄任務(wù)篩選 st.sidebar.header(篩選條件) task_status st.sidebar.selectbox(任務(wù)狀態(tài), [全部, 成功, 失敗]) if st.sidebar.button(運行診斷針對所有失敗任務(wù)): failed_tasks storage.get_tasks_by_success(False) for task in failed_tasks: if not task.has_diagnosis: # 假設(shè)軌跡對象有一個標記 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) # 點擊查看詳情 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思考過程, step.llm_thought, height150)運行streamlit run dashboard/app.py一個具備基本任務(wù)概覽、篩選、診斷觸發(fā)和軌跡詳查功能的看板就啟動了。5. 避坑指南與進階思考在實際構(gòu)建和運用DiagEval系統(tǒng)的過程中你會遇到許多預料之外的問題。以下是我從實踐中總結(jié)的一些關(guān)鍵教訓和進階方向。5.1 常見陷阱與解決方案軌跡數(shù)據(jù)“海嘯”問題每個任務(wù)每一步都存高清截圖和完整DOM數(shù)據(jù)量增長極快幾天就能占滿磁盤。解決方案分層存儲原始數(shù)據(jù)如4K截圖存冷存儲如S3冰川用于事后深度分析。診斷引擎使用實時生成的低分辨率縮略圖或視覺特征向量。智能采樣不是每一步都存。只在動作失敗時、或每隔N步、或在關(guān)鍵決策點根據(jù)LLM思考的置信度判斷存儲完整數(shù)據(jù)。數(shù)據(jù)生命周期管理自動清理超過一定時間的原始軌跡數(shù)據(jù)只保留診斷結(jié)果和元數(shù)據(jù)。診斷模型的“幻覺”與不一致性問題基于LLM的診斷器有時會“胡言亂語”給出與軌跡明顯不符的診斷或者相同軌跡兩次診斷結(jié)果不同。解決方案提示詞工程這是關(guān)鍵。在提示詞中嚴格要求LLM“引用軌跡中的具體證據(jù)”。例如“你的診斷必須基于軌跡中第X步的思考‘...’和第Y步的動作‘...’之間的矛盾?!弊晕乙恢滦詫ν卉壽E進行多次LLM診斷采樣temperature0取多數(shù)票結(jié)果可以提高穩(wěn)定性。引入驗證器訓練或設(shè)計一個簡單的二分類模型判斷LLM的診斷理由是否在軌跡中有據(jù)可查過濾掉“無源之水”的診斷。診斷分類體系難以覆蓋所有情況問題總會出現(xiàn)一些奇怪的錯誤無法歸入預先定義的類別。解決方案設(shè)立“其他”類別并強制要求診斷模型或人工標注員用自然語言描述。定期復盤與迭代每周review“其他”類別下的案例從中抽象出新的錯誤模式補充到分類體系中。這是一個持續(xù)演進的過程。層次化分類采用兩層甚至三層分類。第一層大類感知/規(guī)劃/動作/環(huán)境第二層細分類第三層允許自由文本描述。這樣既有結(jié)構(gòu)又保留了靈活性。性能瓶頸問題LLM診斷延遲高無法用于大規(guī)模測試的實時反饋。解決方案異步診斷任務(wù)執(zhí)行和診斷解耦。Agent執(zhí)行完即返回診斷作為后臺作業(yè)慢慢跑。緩存診斷結(jié)果對相似的軌跡可通過軌跡特征向量計算相似度復用之前的診斷結(jié)果。小模型優(yōu)先用規(guī)則和微調(diào)的小模型處理大部分常見錯誤只將疑難雜癥交給大LLM。5.2 從診斷到自愈系統(tǒng)的閉環(huán)演進DiagEval的終極價值不僅僅是“發(fā)現(xiàn)問題”而是“推動系統(tǒng)自我改進”。這需要形成一個閉環(huán)診斷驅(qū)動提示詞優(yōu)化如果大量錯誤被歸類為“任務(wù)指令歧義”系統(tǒng)可以自動建議修改任務(wù)描述模板。如果是“視覺定位失敗”集中發(fā)生在某類UI組件上可以自動生成針對該類組件的額外描述加入Agent的上下文。診斷驅(qū)動Agent再訓練將診斷出的錯誤軌跡特別是那些明確歸因于Agent能力不足如特定視覺識別錯誤的作為高質(zhì)量的訓練數(shù)據(jù)用于微調(diào)Agent本身的視覺編碼器或規(guī)劃模塊。診斷驅(qū)動測試用例生成發(fā)現(xiàn)某個交互流程容易出錯如“提交訂單后支付頁面跳轉(zhuǎn)”可以自動生成更多圍繞該流程的邊界測試用例強化測試覆蓋??煽啃远攘颗c預警通過長期收集診斷數(shù)據(jù)可以計算各類錯誤的“發(fā)生率”趨勢。當“環(huán)境不穩(wěn)定”錯誤率突然飆升時可能意味著測試基礎(chǔ)設(shè)施出了問題可以自動告警。5.3 評估什么超越“成功率”的可靠性指標有了DiagEval我們對GUI Agent的評估就可以從單一的“任務(wù)成功率”進化到一套多維度的可靠性指標體系脆弱性分析統(tǒng)計各類錯誤的比例。例如“感知錯誤”占40%“規(guī)劃錯誤”占30%。這直接指明了Agent改進的優(yōu)先級。可診斷率有多少比例的失敗任務(wù)可以被診斷引擎明確歸因這個指標衡量了診斷系統(tǒng)本身的有效性。平均診斷時間從任務(wù)失敗到產(chǎn)出診斷報告的時間。影響修復效率。誤診率需要人工復核一部分診斷結(jié)果計算診斷錯誤的比率?;貧w檢測靈敏度當Agent新版本發(fā)布后通過對比新舊版本在相同任務(wù)集上的診斷分布可以敏銳地發(fā)現(xiàn)引入的新類型錯誤即使總體成功率變化不大。構(gòu)建DiagEval這樣的系統(tǒng)初期投入確實不小但它帶來的透明度和可操作性是將GUI Agent從玩具變?yōu)榭尚刨嚨纳a(chǎn)力工具的關(guān)鍵一步。它迫使開發(fā)者以更嚴謹、更系統(tǒng)化的方式思考智能體的失敗模式而這正是工程化AI應(yīng)用的基石。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月天婷婷爱| 色色色色五月天| 五月综合激情网| 欧美日韩成人一区二区| 97婷婷丁香五月| 操碰久| www.99色| 色五月婷婷五月天| 97婷婷五月天| 欧美综合激情五月| 欧美精品久久久久久视频观看| 日本网站久久| 色五月婷婷在线观看第一页舔| 午夜九九九九九九九九九九九九九| 五月天激情综合在线| 1024AV视频| 99综合在线| 天天射综合网夜夜操| 激情综合五| 91 影音先锋| 色综合九九色综合88| 欧美综合婷婷网| 草草操操| 丁香五月91| 亚洲欧洲美女在线观| 99热97| 99热这里只有精品免费| 六月婷婷开心| 79精品视频在线观看,| hd五月婷婷在线| 超碰93在线观看| 亚洲三A| 五月激情网站| 亚洲五月婷婷| 九月丁香亭亭| 大香蕉久艹| 六月丁香VA| 爱草视频在线观看| 欧美黑人巨大猛烈cuckold| 99re免费精品视频| 丁香亭亭久久| site:esunnet.com| 天天干天天干天天干天天干天天干天天干天天 | 无码网| 亚洲欧洲国产精品| 97操碰| 大香蕉婷婷五月| 激情五月天色色色| 色噜噜五月丁香婷婷| 久久性都花花世界成人免费视频| 色情网综合| 色综合久久之分久久| 亚洲久久激情| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 婷婷五月丁香综合人妻| 欧美婷婷综合| 天天做夜夜爽| 激婷网| 国产精品扒开腿做爽爽爽A片唱戏| 久草热在线视频| 亚洲人妻AV| 超碰成人在线观看| 九九亚洲| 亚洲国产网址| 日韩999| 激情五月综合| 色高清无码视频| 色色婷五月天| 婷婷六月激情综合| 亚洲综合激情五月久久| 婷婷五月天天| 99啪啪网| 丁香五月瑟瑟| 色狠狠婷婷| 在线视频99| 人妻视频在线| 大战熟女丰满人妻AV| 成人无码精品1区2区3区免费看| 无码激情AAAAA片-区区| 国产综合丁香五月天| 激情五月天99色| 91avse| 丁香五月天色| 五月丁香久人妻中文| 97碰免费视频在线| 激情综合文学| 三级三久久线久久99久目本WW| 丁香九月综合| 丁香六月激情综合| 日本一级淫| 男人的天堂在线婷婷| 色娸娸综合网| 激情综合五月色丁香婷婷| 五月天婷婷色综合| 国产AV一区二区三区最新精品| 激情婷婷在线| 成人五月天色天堂| 亚洲无码成人| WWW、日本色丁香、co m| 久久久jd| 五月天综合在线观看| 1024人妻| 好色婷婷| 亚洲成人人人操| 97人人操在线| 国产性爱色| 九九综合九九| 五月久视频| 天天爽夜夜操| 99热国产精品| 香蕉人在线香蕉人在线 | 色五月婷婷五月天| 欧美色色干| 精品无码色| 天天插天天插天天插天天插| 久久婷婷青青| 久久人妻情侣| 人妻少妇色综合| 久久婷婷激情四射五月天| 久久婷婷成人视频| 色五月综合网| 性欧美日本| 精久久色| 五月伊人91| 综合色久| 97婷婷色| 婷婷久久五月丁香| 日韩色久| 五月婷婷深深爱| 丁香五月,激情五月,深爱五月| 26uuu成人网| 五月开心啪啪| 欧美人人草| 丁香六月婷婷久久综合| 激情五月天色| 99操视频| 五月综合婷婷网| www.狠狠| 激情五月天噢美| 六月丁香啪啪啪| 国产高清av黄色看片| 丁香 婷婷 激情 综合 五月| 五月天激情图片| 五月婷综合| 丁香激情婷婷网| 开心五月色婷婷综合开心网| 69激情小说| 综合五月婷婷| 婷婷色无码| 91超级碰| 六月天六月婷| 婷婷五月乱交换| 激情婷婷另类| 涩婷婷视频快播人妻| 新激情五月天色播| 久久婷婷五月激情综合| 亚洲综合色色| 激情综合网婷婷久久| av九九| 婷婷色婷婷亚洲成人| 99久久婷婷国产综合精品草原| 五月丁香无码| 99热伊人| 亚洲激情免费视频| 丁香五月婷婷欧美激情-中文天堂最新版在线观看| 五月丁香六月欧美| 97自拍99| 91狠狠色丁香婷婷综合久久| 色婷婷激情五月天在线观看| 五月天丁香久久| 99在线免费视频| 丁香婷婷九月| 一本大道嫩草AV无码专区| 天天成人五月天| 久久精品一区二区三区四区| 色色色色色色网| 婷丁香五月天| 99热这里只有精品8| 婷婷五月天色网久| 1024成人在线观看| 国产欧美熟妇另类久久久| 天天摸天天高潮天天爽| 超碰无码318604| 五月丁香婷婷色| 丁香五月天无码AV| 九九在线91| 五月天另类小说| 国产激情av| 中文字幕在线日亚洲9| 丁香五月天激情网址| 99色视频| AV成人在线播放| 六月99天天婷婷激情综合| 超级碰碰97在线| 能直接看的av网站| ss五月天激情| 色135综合网| 国产探花AV在线| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 五月天 无码| 操碰99| 天天日天天色| 成人电影在线免费试看| 色天天综合成人网| 色噜噜狠狠色综合AV兰草影视| 在线看的免费网站| 亚洲精品无码久久| 99re热在线视频观看| 很很操96| 碰碰女| 欧美成人AAA片一区国产精品| 婷婷五月天六月丁香| 丁香六月色婷婷欧美| 日韩欧美性爱| 超碰日韩成人| 亚洲综合色网| 国产成人99久久亚洲综合精品| 五月丁香伊人网| 91超碰在线观看| 丁香五月婷婷啪啪视频| 亚洲综合五月天婷婷丁香| 亚洲视频色婷婷| 六月丁香婷婷色综合| 91操屁股| 五月婷婷精品| 伊人成综合五月婷婷| 亚洲无码色| 99热这里只有精品4| 亚洲avjiujiur91| 国产精品国产| 超碰精品国产首页| 日本久久极品| 国产超碰av| 九九热视频在线观看| 天天搡日日搡aaaaⅩ| 丁香六月亭亭久久综合| 色丁香五月婷婷在线| 五月婷婷五月天激情视频| 成人在线视频一区| 婷婷久久婷婷| 第五婷婷伊人丁香| 2013AV天堂| 香蕉久日夜| 五月婷婷色播| 久久伊人大香蕉| 激情99热| 日本久久综合| 亚洲免费婷婷| 五月丁香六月婷婷网| 色狠狠999综合| 天天爽天天爽视频| 五月在线| 站长推荐无码播放| 久久色婷婷| 五月丁香六月| 操97| 99∨VTV| 丁香五月六月| 亚洲中文字幕在线观看| 免费色婷婷| 色婷婷性爱网| 大香蕉丁香| 五月天婷婷网站| 五月激情综合婷婷| 日韩日比视频| 国产精品久久久99视频| 亚洲十月婷婷综合| 亚洲va在线∨a天堂va欧美va| 狠狠操狠狠做| 狠狠色大香蕉| 337p大胆噜噜噜噜噜91Av| 99色在线| 高清免费在线视频| 日本3级片偷拍网站| 日本一级特黄大片AAAAA级| 婷婷综合色网| 99热99在线| 色五月丁香激情视频| 婷婷 激情 五月| 九九久久综合网站| 丁香五月综合激情性爱| 五月天开心网| 午夜日韩久久久网站| 99热精品观看| 日本天天综合| 另类综合色| 9l视频自拍九色9l视频自拍九色9l社区 | 亚洲激情免费久久| 五月天久久网站| 久久婷婷综合五月天| 97碰人人操| 天天色色天天| 五月丁香狠狠爱婷婷综合| 日笨久久网| 色婷婷影院| 亚洲另类婷婷五月综合| 性爱网五月天| 色色色九九九五月婷婷| 亚洲综合色婷婷| 五月婷高清视频| 久久成人人妻| 亚洲亚洲人成综合网络| 97色婷婷五月天| 六月色婷婷欧美| 深爱激情五月婷婷| AA片在线观看视频在线播放| 亚洲AV网站在线观看| 日本女va| 91视频五月丁香| 丁香五月天激情综合| 丁香五月婷婷久久久| 激情综合五月| 播五月开心婷婷欧美综合| 噜噜视频| 26UUU欧美激情一区二区| 26uuu国产色| www激情| 激情网五月天| 亚洲无线视频| 五月婷婷婷丁香播| 百度一下国产精品A| 婷婷五月激情图片| 婷婷成年人免费视频| 色综合99| 玖玖爱资源站| 99免费视频| 日韩人妻AV在线| 久久综合丁香| 婷婷狠狠操| 日本无码专区| 色的色综合| 五月激情婷婷综合| www,com,五月色色| 久久婷婷五月天蜜桃| 99噜噜噜在线播放| VA国产在线综合网站| 色五月婷婷影院| 性欧美大战久久久久久久83| 深爱五月激情网| 五月天另类激情在线| 日韩久久系列| 深爱五月最新网址| 激情久久伊人| 激情五月丁香激情综合网 | 五月综合色| 六月婷欧美| 婷婷五月天欧美| 国产毛片精品一区二区色欲黄A片| 大香蕉婷婷丁香天堂AV| 久热欧美| 五月婷在线观看| 五月婷婷成人| 亚洲婷婷婷| 五月天com| 丁香六月婷婷激情| 综合五月婷婷| 操操自拍| 综合色播| 日日天天天| 激情五月丁香五月| 开心五月天私房婷婷| 97人人干人人操| 五月丁香久久呀| 五月天婷婷影院| 99五月婷| 99综合视频| 五月丁香另类图片| 丁香五月天激情| 狠狠五月激情在线| 99re欧美精品| 天天爽天天摸天天爱| 我想看国产大学生口爆吞精的视频| 五月停停丁香| 综合网啪| 激情色播| 色亚洲色宗合| 欧美久久久久久久久中文字幕| 天天插综合| 一级黄色操B| 色五月丁香婷婷在线观看| 婷婷的色色五月天| 91啪啪视频| 怡红院院在线导航网| 欧美日本日韩| 99精品亚洲| 激情av在线| 激情综合在线观看| www.激情五月| 婷婷久久六月费| 久久综合五月情| 五月婷婷真爱激情网| 天堂爱啪啪| 久草五月天| 日日干夜夜撸夜夜骑| 国内自拍1区| 99热这里只有精品5| 亚洲一级色电影| 深爱激情五月天| 青青草婷婷综合五月| 亚洲成人综合网在线免费观看| 日本色五月婷婷| 激情综合五月| 91久久18| 亚洲成人网站在线观看| www.五月瑟| 99riAV国产精品视频| 色婷婷丁香五月| 五月婷婷香| 日本三级中国三级99人妇网站| 国产精品18久久久| 色婷婷狠狠18禁| 亚洲精| 国内久久亭亭| 国产真实乱对白精彩| 六月婷婷开心| 99性感视频| 婷婷色啪| 9精品国产在热久久| 五月丁香六月婷| WWW.桔色成人.COM| 噜噜噜噜噜在线| 婷婷字幕在线| 国产精产国品一二三在观看| 99热18| 日本A片一区| 99在线精品视频| 丁香婷婷五月| 色六月天| 第2色五月婷| 激情五月婷黄版| 日99网站| 五月综合色| 亚洲激情婷婷| 狠狠操综合| 开心激情久久久久久久| 少妇丁香婷婷| 九九综合九九| 九九自拍网| 91亚洲视频| 五月婷婷六月丁香| 99热久| 五月丁香婷婷网在线在线| 操啊操av| 婷婷五月天首页| 99热6这里只有精品6| 99热亚洲| 激情五月天啪啪| 九九在线91| 日本乱子人伦在线视频| 国产午夜精品一区二区三区四区| 九九碰九九爱97| 另类专区在线| 色婷婷97| 超碰碰碰碰| 色婷久九| 中文字幕人妻在线| 日本三级韩三级99久久| 99热亚洲精品| 天天爽天天操| 五月婷婷六月天| 婷婷精品在线| 欧美日韩99| 庭庭久久内射| 色欲av伊人久久大香线蕉影院 | 97婷婷五月丁香| 操操操B| 全部老头和老太XXXXX| 涩涩五月天| 1024人妻| 中文字幕乱码亚洲精品一区| 少妇高潮呻吟A片免费看软件| 内射爽无广熟女亚洲| 大香蕉久操| 99精品久久| 五月丁香| 在线视频婷婷| 日本A片一区| 丁香五月成人丝袜| 伦乱天堂| 亚洲第一色色色| 丁香五月另类小说在线阅读| 九九精品在线网| 色婷婷丁香香香蕉视频| 67194中文字幕| 色婷婷a v| 五月婷婷六月丁香| 91精品激情9| 亚洲182在线观看| 丁香社92视频| 精品牛仔裤超碰| 天天爽在线视频| 日本美女天天日天天爽| 亚洲色亚洲精品| 热思思| 婷婷娌伦网| 婷婷色网站| 激情五月天婷婷| 激情五月婷婷老师| 九洲一级A片| 丁香五月婷婷啪| 国产精品色色色色| 九九性爱网| 天天干电影| 熟女强人妻一区二区三区四区无| 久久久27操| 狠狠五月激情在线| 丁香五月婷中字幕| 婷婷九月| 婷婷五月色情| 激情网第四色| 99久.| 亚洲中文字幕在线观看| 色综合久久44| 99色视频免费在线规看| 丁香成人五月天| 国产精女同一区二区三区久 | 五月丁香六月综合激情网| 五月丁香六月婷婷姐| 婷婷五月天福利| 久久久久久9热不雅视频| 丁香五月电影| 天天色噜| 久婷狼色诱惑在线| 人人操Av| 亚洲无码播放| 欧美在线视频9| av 一区三区四区| 激情五月影院| 亚洲一级 片内射网站在线观看| 天天色播| 超碰不卡在线| 91女人18毛片水多国产| 天天日夜夜夜操操操操| 狠狠草在线观看| 无码一级片| 极品 少妇 内射| 超碰免费人人| 色色色区| 色噜噜狠狠一区二区三区| 天堂无码人妻精品AV一区| 996热re视频精品视频| 天天操天天日天天操| 婷婷五月激情综合| 秋霞免费三级片| 五月丁香啪啪网| 亚洲va久久久噜噜噜久久天堂| 天天操夜夜啊 | 久久激情五月| 大香网伊人久久综合| 天天干电影| 色99久草在线| 欧美激情-区二区三区| 免费看欧美成人A片无码| 丁香六月啪| 婷婷五月天综合网| 色9月| 可以直接看的av| 九一九九黄色| 岛国AV网站| 色五月婷婷在线观看第一页舔| 精品国产人人爱人人| 97色欧美| 玖玖婷婷婷丁香五月| 久久久久er热| 91av色色乱视频| 亭亭社区五月天| http:色情日本com| 人妻五月天激情开心网| 久久精品一区二区三区四区| 桃色激情婷婷伊人网| 五月丁香婷婷色| 91色五月| 狼人久草| 色婷婷99| 91操碰| 亚洲精品乱码久久久久久按摩观| 色色五月天激情| 五月婷婷深深的爱| 狠狠干,狠狠操| 久热这里只有精品在线观看 | 久久er+| 天天操天天插| 人妻肉射免费观看| 丁香婷婷浪潮AV久久综合| 五月婷色丁香| 91操女| 性日本精品| 97超碰色| 亚洲综合五月天婷婷丁香| 99熟女啪啪视频| 99久在线精品99re8热| 亚洲av成人在线| 国产亚洲在线| 久久久久99精品成人片| 六月婷婷操逼| 欧美日韩成人高清在线| 性爱动图国产麻豆一区二区三区| 五月天婷婷久久视频| 伊人六月丁香婷婷| 丁香婷婷激情四射五月| h在线看免费版在线看| 婷婷性爱网| 激情五月天婷婷五月天| 婷婷五月天激情五月天网站| 精品动漫 无码av| 色婷久| 五月丁香猫咪久久婷婷综合视频激情四射网入口| 99re思思久久| 激情综合五月婷| 免费无码毛片一区二区A片 | 99色免费在线观看| 五月天另类图片| 婷婷五月天久久| 国产寻花在线| 久久中国毛毛片爱久久| 久久草大香蕉| 人。妻久久| 色五月激情视频在线综合| 国外亚洲成AV人片在线观看| 啪啪小说五月天| 激情五月,色五月| 激情四射亚洲| 大香蕉五月丁香| 天天拍夜夜撸| 丁香五月色色婷| 五月激情在线| AAAA网站| 天天激情综合| 亚洲婷婷基地| 桃色五月婷婷| 日狠狠| 欧美婷婷色五月| 99热销国产这里有精品| 日本欧美成人片AAAA| 狠狠色综合网| 久久99热精品a片在线观看| 一起肏在线视频| 超碰人人干| 亚洲色小说在线综合| 金品在线视频99| 亚洲春色奇米影视| 丁香六月婷婷色XXXXX| 天天爽夜夜爽夜夜爽精品视频| a色色色色色| 亚洲激情六月| 五月激香蕉网| 丁香五月综合| 97香蕉碰碰人妻国产欧美| 婷婷五月天成人基地| 五月激情视频| 色婷婷丁香综合中文字幕| 影音先锋日本三级资源| www.狠狠| 天天综合在线网| 色婷婷基地| 五月天a婷婷伊人| 玖玖在线视| 亚洲热久| 丁香五月伊人| 亚洲春色奇米影视| 大色鬼综合| 五月激情六月综合| 99综合| 婷婷五月天亚洲五码| 婷婷激情五月天在线| 久色姿源| 欧美va亚洲va| 色婷婷五月六月丁香综合视频| 99热丁香五月| 97热在线精品| 婷婷五月色惰| 日hao1区| 碰97久久| 踪合专区啪啪| 新97人人上人人| AV网站免费在线| 激情综合九月| 97干网站| 亚洲最大在线| 黄色99视频| 婷婷五月天色色| 五月婷在线观看| 色五月激情| 热99精品视频五月| 久热超碰| 天天做天天爱天天日| 狠狠五月激情在线| site:hcxsz888.com| 亚洲五月天综合色| 国产va在线视频| 婷婷天天舔| 成人国产欧美大片一区| WWW.桔色成人.COM| 无毒黄色网址| 狠狠色狠狠色综合日日91| 9色免费网| 午夜丁香 婷婷| a在线免费v| 婷婷久久综合久| 精品在线| 玖玖资源站视频| 《蜘蛛女》梁铮1995| 久久综合影院 | 亚洲色图五月丁香| 九九亚洲视频| 欧美69久成人做爰视频| 九九久久精品國產| 99啪| 天天粽合合合合| 婷婷激情网五月天| 婷婷综合一二三| 开心激情五月天网| 大香蕉色婷婷伊人在线| 97五月婷婷| 99久久99视频只有精品| 六月婷婷亚洲| 亚洲天堂色色| 天天上天天爽| 五月婷婷丁香五月婷婷丁香| 精品久久99| 人妻无码视频网| se色综合网| 天天看片日日夜夜| 亚城区在线| 五月婷婷大香蕉| 96自拍视频九色在线观看| 丁J香六月首页| 99久热| 天天狠狠色| 涩五月婷婷| 丁香五月天久久| 生活片五区| 狠狠色情婷婷| 九九热色视频| 99久久综合| 久久99久久99久久99人受| 67194中文在线| 精品在线网站| 天天色综网| 激情综合一| 婷婷丁香先锋资源网站| site:minyis.com| 久久99激情丁香婷婷小说网| 久久人妻精品| 久久婷婷夜| 99视频精品8| 五月丁香婷草| 狠狠色综合久久久久| 他改变了拜占庭| 婷婷成人AV| 婷婷综合九色伊人| 色久在| 色婷婷a| 99热这里只有精品99| 六月丁香av| 国产裸舞表演WWWW| 色五月综合激情网| 伊人春天av| 欧美色99| 久久久精品99| 激情五月婷婷丁香综合网| 国产成人网站在线观看| 久久婷婷亚洲| 婷婷五月丁香色综合| 狠狠五月天| 碰碰91| 天天日天天色| 五月情涩综合婷婷| 亚洲噜色| 99婷五月| 色插综合网| 日本天天操| 天堂A∨在线| 久久久大香蕉| 亚洲欧洲午夜成人精品av| 婷婷五月丁香六月综合网| 九九成人电影婷婷| 天天草天天日| 在线理论片| renrencaoav| 人人操av| 丁香六月婷婷综合激情欧美| 99精品视频在线观看| 婷婷的99视频网站| 丁香五月天啪啪| 亚洲操逼片| 亚洲AV网站在线观看| 日韩aaaaa| 五月婷久久草| 第四色五月婷婷| 亚洲无码成人| 操操人人| 亚洲色五月| 99热精品无码| 综合狠狠干| 大战熟女丰满人妻AV| 激情五月丁香激情综合网| 人妻熟人中文字幕一区二区| 天天成人综合视频| 香蕉99网| 一级二级色大片| 日熟女| 影音先锋四区| 99热热九九| 成人片黄网站色大片免费毛片| 亚洲九九九九| 人妻有码乱操| 婷婷五月综合网| 欧美va视频| 亚洲爆乳无码精品AAA片蜜桃| 五月激情另类| 91在线看片| 亚洲色另类| 99色在线视频| 六月激情网| 日日舔夜夜操| 久综合九| 无码激情AAAAA片-区区| 日日操,夜夜撸| 婷婷色六月| 五月天开心激情综合网| 美女婷婷六月色| 日韩AV在线电影| 国产免费一区二区三区三州老师F1F1.CC | 日韩AV大全| www.maotanji.com| 一本道在线电影| 五月婷婷丁香综合网| AV大片在线观看| 99九九在线视频| 色播五月婷婷| 色情网综合| 色丁香五月| 九九爱看亚洲| 久久全意婷婷| 99热大香蕉| 99re久久| 中文字幕人妻AV| 日本99视频| 五月播播| 六月丁香久久| 婷婷国产五月天17c| 狠狠爱综合网| 五月丁香免费看| 丁香五月婷婷久久综合激情网 | 亚洲AV综合在线观看| 狠狠色激情在线| 99热天堂| 国外亚洲成AV人片在线观看| 国产成人在线精品| 久久五月天激情视频| 久婷婷婷| 丰滿爆乳一区二区三区| 亭亭玉月丁香| 色五月天成人| 俺也去综合| 99热日韩| 久久玖玖综合| 亚洲乱码日产精品BD| 欧美内射AA| 99精品小视频| 五月丁香婷婷啪啪综合网| 久久久久亚洲AV无码网影音先锋| 久操香蕉| 午夜一区| 91丨九色丨东北熟女| 精品人妻久久久久| 午夜精品777| 久久五月丁香| 五月天天堂久久| 99视频这里有精品| 开心激情婷婷| 婷婷综合网站| 9久久久久久久久久久| 婷婷色欧美激情| 插插插色综合网| 97色婷| 久久人人九九| 亚洲天堂碰碰婷婷| 久久性爱网| 九九热精品视频在线观看| WWW.桔色成人.COM| 五月天色社区| 天天插天天| 婷婷五月综合在线视频| 久99久视频| 五月丁香花视频| 欧美人人女女精品综合五月天| 丁香六月婷婷操逼网| 激情内射人妻1区2区3区| 色色色色色色网站| 91精品综合久久久久久五月丁香| 婷婷在线视频| www久久艹| 天天射影院| 九九热免费视频| 色五月婷婷在线观看| 日韩爱操视频| 综合一本道| 思思热精品在线| 啄木鸟丝袜美女福利视频| 桔色成人在线| 99热这里只有免费精品| 色综合色色| 伊人五月天婷婷| 97韩国久久电影院| 六月丁香久久| 国产在这里只有精品| 久久99网| 这里只有精品无码| 五月天丁香成人| 久艹大香蕉| www九九热| 天天干夜晚夜操| 能看的av| 嫩草AV久久伊人妇女超级A| 九月激情婷婷丁香| 五月桃花网综合| 97色色色色色| 伊人玖玖网| 香蕉国产2013| 国产精品色色| ..真实国产乱子伦毛片| 色五月色五天色情网址| 国产精品视频网| 91人人操人人爱| 成人AV在线电影| 五月婷婷色丁香| 天天爽天天爽夜夜爽| 色吧五月婷婷| 五月婷婷说| 五月婷婷啪啪啪| 伊人91| av一级棒av| 婷婷激情五月视频| 婷婷五月成人| 六月婷婷激情小说网| 人人干人人操人人摸| 色五月综合网| 色135综合网| 百度4399有码精品V在线观看 | 日本三级中文字幕| 色噜噜狠狠色综无码久久合欧美| 91嫩草国产线观看亚洲一区二区| 91制片厂久久久国产电影| 五月花激情网| WWW色五月天| 欧美婷婷五月| 综合色五月| 99综合五月免费视频色婷婷| 任我鲁这里有精品视频| 99热国产国产| 婷婷午夜综合| 五月丁香六月婷婷成人电影| 成人精品视频99在线观看免费| www.com任你艹| 97操操| 五月婷婷中文字幕| 婷婷天天日婷婷| 日本9区视频| 色婷婷五月天中文字幕| 99热这里只有精品86| 五月婷婷综合网| 少妇伦子伦精品无吗| 91婷婷色| 9999热这里只有精品| 婷婷久久综合久| 国产jd1024基地手机看国产| 99色综合网| 婷婷五月天激情网站| 久久人妻视频| 99色中文| 3www激情| 国产精品久久欧美久久一区| 天天色99| 婷婷五月花西瓜| 久操热线| 99日本黄站| 99综合视频| 久久人妻少妇嫩草AV| 九九热超碰| 久久这里都是精品| 久操乱| 久久只有精| 超碰在线免费9| 成人国产欧美大片一区| 中文字幕AV网址| 97婷婷五月天| 国产亚洲精品久久久久久牛牛| www.婷婷六月天| 激情小说五月欧美亚洲丁香| 五月综合激情| 五月婷婷草| 久久九九视频| 国产jd1024基地手机看国产| 99久久66| 色婷婷视频在线| 欧美色97| 99ri视频在线观看| 亚洲va欧美va国产综合久久久| 激情AV| 久久97| 丁香婷婷色情| 99免费偷拍视频| 情婷婷五月天| 日本三级99人妇网站| 婷婷激情六月中文| 久久激情网| 久热这里只有国产| www色色色com| 中文字幕av在线| 五月丁香综合影院| 视频一二区| 五月天伊人综合| 色欧美日| 色久综合| 色色五月天com| 人人爱摸视频| 97热精品| 人人九色| 91精品无码| 91成人品| 色10月婷婷视频| 综合网啪| 亚洲啪视频| 狠狠干,狠狠操| 99久久亚洲精品视频| 色综合99| 丁香五月天激情五月天激情五月天激情网| 人人干av| 久久五月丁香激情综合| 欧美性生交XXXXX无码小说| 精品色色网| 精品99*| 夜夜爽天天干| 色99在线观看| 97色干| 美妞av| 亚洲色无码A片一区二区麻豆| 99精品爱| 九月丁香八月婷婷久久综合久97| 六月激情综合| 色九九综合| 九九aV| 久热这里只有精品66| 超级碰91| 亚洲成人av在线| 久热久色| 99国产在线精品视频| 久久偷拍综合五月天| 一区二区乱码视频| 激情婷婷| 99精品视频在线| 777精品久无码人妻蜜桃| 婷婷五月天成人综合网| 色婷婷久久综| www激情| 午夜国产精品AV在线播放| 丁香六月婷| 玖玖色综合| 热久久视频99| 国产永久一黄| 日韩婷婷| 99er精品视频| 色五月成人| 五月丁香 久久久| 国产jd1024基地手机看国产| 午夜成人网站在线观看| 六月伊人婷婷| 人人超碰99| 成人在线99| 色婷婷视频在线| 538任你爽| 丁香六月婷婷基地| 国产精品视频免费看| 熟女网站久久| 99国产精品久久久久久久久久久| 五月婷婷色激情| 久99| 97婷婷五月| 国产精品色色| 色婷婷六月综合| 丁香六月婷婷综合激情欧美| 伊人五月婷| 色色色婷| 深爱激情网综合| 久久五月六月| 日本欧特黄色刺激一区影视久精品无码| 色色色色综合网| 激情网五月天| 婷婷色5月天在线。| 日韩高清成人| 色欲五月丁香| 五月天综合网| 91婷色| 五月婷在线视频免费播放| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 99综合| 伊人超碰在线| 中文字幕丰满孑伦无码专区| 亚洲成人AV在线播放| 互月天综合| 九九视频这里只有精品在线播放 | 琪琪色网址| 五月丁香久久| 成人亚洲精品| www.com操| www.五月天婷婷.com| 99热爱爱干干日| 亚洲av成人一区二区电影在线| 噼里啪啦在线观看免费完整版视频| 99碰碰视频| 五月婷婷在线播放| 婷婷五月天免费| 色天天久婷婷| 99色色爰| 色婷婷婷婷| www.久久久久久| 色色色丁香| 亞洲自怕| 超极99精品| 最近韩国日本免费高清观看| 激情综合一| 成人丁香五月| 开心五月激情婷婷| 五月天激情网页| 五月花成人网| 无码G高清天| 天天综合天天做天天综合| 日韩人妻无码专区| 成年人夜夜喷水| 久久大香蕉同僚| 大香蕉伊在| 综合超碰熟| 99热99天堂| 国产精品A片在线| 五月丁香狠狠爱婷婷综合| 久久久精品免费啪啪国| 国产婷婷色综合AV蜜臀AV | 色欲一区二区三区精品A片| 成人国产欧美大片一区| 99色| 成人做爰高潮A片免费视频| 五月天伊人| 性爱久久| 做爰丰满少妇1313| 韩国中文字幕91| 大伊香蕉精品视频在线| 五月停停大香蕉| 免费观看日韩成人av| 婷婷五月另类网站| 婷婷伊人綜合| 久婷婷五月综合欧美| 色五月大| 7超碰自拍| 丁香五月天欧美成人| 亚洲人成网亚洲欧洲无码久久| 色色色色色级无码| 久久婷婷亚洲五月天| 五月丁香亭亭天天舔| 婷婷射丁香| AV在线免费播放| 夜夜 操无码| 色九九综合| www.lchjjc.com| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 久久9久| 天天影院色| 五月天色综合| av在线免费网站 | 婷婷丁香高潮了| 丁香五月婷婷色播艳门照| 五月婷婷中文| 婷婷色中文字幕| 欧美S码亚洲码精品M码| 97超级碰人人| av国产精品偷| 翔田千里aV中文字幕| 毛片新网地| 99精品视频免费观看| 狠狠干无码| 精品国产乱码久久久久久免费| 丁香五月很很肏| 香蕉综合在线| 婷婷五月天在线观看av| ji'qi'luan'ren'lun| 亚洲操操| 亚洲va成人va成人va在线观看| 五月天丁香婷婷久久九| 伊人色综合久久久| 欧洲激情五月天婷婷| 国产色五月| 婷婷五月激情综合| 丁香五月天堂婷婷| 1024操逼视频| 丁香五月婷婷88在线| 色婷婷五月天久久| 激情图片五月天| 综合九色| 激情文学天天| 久久九九在线视频| AV中文在线| 色色色色色日韩午夜激情| 婷婷五月色播网| 五月天激情网页| 丁香久久| 婷婷久久婷婷| 欧韩性爱| 久热这里| 91夫妻视频| www.com在线操视频免费观看| 天天做天天视天天谢| 婷婷五月丁香六月| 久久婷婷六月综合| 天天操天天操综合| www99热| 99热在线观看免费精品| 五月伊人婷婷999| 夜夜天天久久婷婷| 第四色五月婷婷| www.玖玖九| 天天弄天天爽| 五月天色综合| 久久婷婷五月天丁香| 色五月之第四色| 婷婷丁香激情| 九九热免费视频| 欧美精产国品一二三区| se99视频| 五月丁香六月激情综合| 熟女激情网| 国产欧美va| 欧美色图片88| 天天日综合网射| 日韩操人| 久久久久久久久久91| 丁香五月成人在线| 国产乱人偷精品人妻A片| 亚洲婷婷视频| 五月丁香色婷婷| 欧在线一区| 操你av| 黄网在线免费| 丁香亭亭久久| 婷婷五月天AV| 久综合色| 99玖玖免费视频| 1024在线视频| 丁香六月亭亭久久综合| 亚洲九N| 五月天天天操天天爽夜夜操| 久久五月综合| 日本人妻A片成人免费看片| 热99在线精品| 日本nghangse中文字幕| www.99热. com这里只有精品| 亚洲午夜成人av电影网| 9999热精品在线免费播放| 91热爆在线| 怕怕av| 99re在线播放| 五月天婷亚洲天综合网综合| 九九热这里| 精品无码色| AA片在线观看视频在线播放 | 色宗合,宗合网|