欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

CrewAI實戰(zhàn)指南:從零搭建多智能體協(xié)作工作流

CrewAI實戰(zhàn)指南:從零搭建多智能體協(xié)作工作流 如果你最近在關注 AI Agent 方向大概率會注意到一個現(xiàn)象ChatGPT 這類單一大模型已經(jīng)不能滿足復雜任務的落地需求了。真正要做一份行業(yè)研究報告、一套競品分析、一個自動化運營 SOP如果只靠一次 Prompt模型很快就會出現(xiàn)上下文丟失、步驟遺漏、結(jié)果深度不夠的問題。于是“多智能體系統(tǒng)”這個概念被推到了臺前。但說實話多智能體這個概念在業(yè)界的討論熱度遠遠超過了實際落地進度。原因很簡單大模型本身只是“大腦”而多智能體系統(tǒng)要解決的是“多個大腦如何分工、如何協(xié)作、如何把任務跑完”的系統(tǒng)工程問題。很多人看完概念覺得懂了一寫代碼就發(fā)現(xiàn)智能體怎么定義、任務怎么拆分、角色之間怎么交接、失敗怎么重試全是難題。這篇文章要寫的 CrewAI就是目前開源社區(qū)里把“多智能體協(xié)作”這個概念落地得比較完整的一套 Python 框架。它不要求你從零實現(xiàn) Agent 調(diào)度邏輯而是用類聲明式的方式把智能體、任務、流程、協(xié)作工具組裝成一個可運行的 Crew團隊。文章的定位很明確不堆概念直接給你一條能跑通的主線——從 CrewAI 的核心設計講起到環(huán)境搭建、代碼示例、運行驗證、常見問題最后給出工程落地建議。讀完你應該能做到自己定義一個多角色智能體團隊編排任務流程跑出一個真實可用的自動化工作流。1. 這篇文章真正要解決的問題先花一點時間搞清楚為什么在多智能體這個方向上我們特別需要 CrewAI 這種框架如果你自己嘗試過用 LangChain 或者直接調(diào)用 OpenAI SDK 寫 Agent你會發(fā)現(xiàn)真正的痛點不是讓模型“變聰明”而是把復雜任務結(jié)構(gòu)化。比如要做一個企業(yè)輿情分析報告任務天然包含以下環(huán)節(jié)采集信息源篩選高價值信息判斷情緒和風險等級撰寫分析正文整理成固定格式的報告。如果只讓一個 Agent 完成全部工作它既要會搜索、又要會寫作、還要會判斷不僅系統(tǒng) Prompt 會寫得非常長而且任何一個環(huán)節(jié)失敗都會導致整條鏈路不可用。更麻煩的是這種單體 Agent 出現(xiàn)錯誤時你很難定位是采集的問題還是判斷邏輯的問題還是生成格式的問題。多智能體系統(tǒng)的核心價值就是把這種“大而全”的任務拆成多個“小而?!钡慕巧蝿?。每個智能體只把自己負責的環(huán)節(jié)做到位再通過流程機制實現(xiàn)任務上下文傳遞和結(jié)果匯總。CrewAI 解決的問題概括起來就是三件事智能體定義如何用清晰的角色Role、目標Goal和背景故事Backstory定義一個專職智能體。任務編排如何把多個任務按順序、按層級或者按事件驅(qū)動的方式串起來形成完整工作流??蛇\行的自動化流程如何讓這套多智能體系統(tǒng)不僅存在于文檔里還能真正跑出結(jié)果并接入大模型 API、外部工具和企業(yè)數(shù)據(jù)。所以這篇文章適合的讀者有三類。第一類是剛開始了解 Agent 開發(fā)、想找一套能快速跑通的腳手架的人第二類是已經(jīng)用 LangChain 寫過 Agent但覺得直接編排多角色太痛苦的人第三類是團隊里要評估多智能體框架選型需要看 CrewAI 到底能做什么、不能做什么的技術負責人。一句話總結(jié)我的判斷CrewAI 不是讓 AI 從“單打獨斗”變成“一堆 Agent 聊天”而是把多智能體協(xié)作變成了可配置、可復用、可維護的工程代碼。這種變化才是它真正值得關注的原因。2. CrewAI 核心概念與設計思想CrewAI 之所以上手門檻比從零寫調(diào)度器低是因為它把多智能體系統(tǒng)中的幾個高頻抽象概念直接做成了框架的基礎組件。理解這幾個概念勝過背誦十篇 API 文檔。2.1 Crew、Agent、Task 是三大基礎組件CrewAI 的頂層抽象是 Crew團隊/劇組它定義了一個多智能體組織負責管理這個系統(tǒng)里有哪些智能體、要執(zhí)行哪些任務、任務之間以什么方式流轉(zhuǎn)。Agent智能體是 Crew 里的執(zhí)行單元。每個 Agent 是一個“帶角色設定的大模型實例”它擁有獨立的角色、目標和背景信息。CrewAI 里的 Agent 還有一個重要特性它可以配置工具Tools比如搜索、網(wǎng)頁訪問、自定義 Python 函數(shù)這樣它在執(zhí)行任務時就有能力調(diào)用外部資源。Task任務是分配給 Agent 的、明確要輸出結(jié)果的工作單元。Task 包含任務描述、期望輸出格式、負責任務的 Agent 等信息。多個 Task 之間允許有依賴關系后置任務可以把前置任務的輸出作為輸入上下文。下面用一個表格把這幾個概念對照一下概念通俗理解解決的核心問題CrewAI 中的關鍵配置Agent團隊里的一個“員工”每個角色只做專業(yè)的事role、goal、backstory、llm、toolsTask安排給員工的一條工作指令工作邊界和輸出標準description、expected_output、agentCrew一條完整的業(yè)務流水線把角色和任務組裝成可運行流程agents、tasks、processProcess流水線的執(zhí)行方式?jīng)Q定任務串行還是分級管理sequential、hierarchicalFlow基于事件驅(qū)動的工作流控制器更靈活的編排與狀態(tài)管理start、listen、狀態(tài)對象只看表格可能還不夠“切膚”。要理解這些概念最好的方式是把 CrewAI 比作一個劇組導演Flow 或 Hierarchical Process 中的 Manager不親自演戲但決定哪個演員在什么節(jié)點上場。編劇和攝影師Agent是不同的執(zhí)行單元編劇寫腳本攝影師拍畫面。每個拍攝任務Task都有明確交付物。整部電影Crew是以上所有元素的集合。當然這個類比只是為了幫新手建立心智模型。真正寫代碼時Agent 不會像人一樣“商量”著干活它靠的是結(jié)構(gòu)化 Prompt、工具調(diào)用和任務上下文傳遞。2.2 Process 決定協(xié)作是順序還是分級多智能體系統(tǒng)里最容易讓人困惑的一點是多個智能體到底怎么協(xié)作是我命令你、你命令他還是大家各干各的最后拼在一起CrewAI 提供兩種內(nèi)置 ProcessSequential Process順序流程。所有任務按聲明順序依次執(zhí)行Agent 像流水線工人一樣逐個處理自己負責的環(huán)節(jié)。優(yōu)點是好理解、好排錯、成本和延遲可控。適合上下文強依賴、不適合并行的任務鏈。比如“先生成大綱再根據(jù)大綱寫正文再基于正文配摘要”。Hierarchical Process層級流程。Crew 里會安排一個 Manager Agent 或指定 manager_llm由它負責任務規(guī)劃、分配、審查和交接普通 Task 不預先綁定 Agent而是由 Manager 動態(tài)決定。優(yōu)點是有全局統(tǒng)籌適合任務拆解不固定、依賴關系相對動態(tài)的場景。缺點是多一次管理調(diào)度會引入額外的大模型調(diào)用開銷和不確定性。社區(qū)里經(jīng)常討論“多智能體的四種交互模式”典型分類包括順序鏈、并行分組、主從委派、事件驅(qū)動協(xié)作等。對應到 CrewAI 里順序模式對應 Sequential Process主從委派對應 Hierarchical Process事件驅(qū)動模式對應基于 Flow 的編排方式并行分組可以通過多個異步 Task 來組合實現(xiàn)。換句話說你不需要把這些模式當作孤立術語它們的本質(zhì)是任務關系圖的結(jié)構(gòu)差異。2.3 Flow比 Process 更靈活的工作流層Process 解決了一個 Crew 內(nèi)部任務的線性和層級調(diào)度問題但真實業(yè)務往往沒有這么規(guī)整。你會發(fā)現(xiàn)很多自動化流程是循環(huán)的、條件是跳轉(zhuǎn)的、不同 Crew 之間需要嵌套調(diào)用。CrewAI 的 Flow 組件就是為這種場景設計的。Flow 允許你定義一個帶狀態(tài)的數(shù)據(jù)類通過start()裝飾器標注流程的起點通過listen()裝飾器監(jiān)聽某個方法完成后觸發(fā)下一個動作。這種事件驅(qū)動機制可以處理條件分流根據(jù)某個步驟輸出決定走 A 分支還是 B 分支流程合并幾個獨立結(jié)果匯聚到一個最終總結(jié)步驟父子流程一個 Flow 內(nèi)部調(diào)用另一個已經(jīng)定義好的 Crew。如果你之前用過自動化測試框架或者數(shù)據(jù)管道調(diào)度框架Flow 的概念不會陌生。它本質(zhì)上就是用裝飾器和狀態(tài)對象來描述有向無環(huán)圖DAG。2.4 一個容易被忽略的設計Agent 的 Post-Tools很多新手用 CrewAI 時會有一個誤區(qū)Agent 收到任務后會自動“思考”然后調(diào)用工具。實際上Agent 是否調(diào)用工具、調(diào)用什么工具取決于你在創(chuàng)建 Agent 時傳給它的tools參數(shù)以及任務的描述是否明確提示它需要使用工具。CrewAI 官方還有一個Agent的post_tools參數(shù)策略就是讓 Agent 在正式回答前先調(diào)用一組工具來增強信息避免“不知道答案也硬編”。這里不展開細節(jié)但你要記住一個原則在這類多智能體系統(tǒng)里工具的掛載位置會直接影響任務質(zhì)量——工具掛得太少Agent 只能靠模型幻覺補充信息工具掛得太多Agent 容易在無關工具上浪費 Token 和時間。3. 適用場景與框架選型CrewAI 到底適合什么多智能體框架目前不是一個贏者通吃的賽道。選型錯誤往往不是框架的問題而是需求和框架的匹配出了問題。因此在寫代碼之前值得先把選型問題理清楚。先看 LangChain。LangChain 是 Agent 開發(fā)的“瑞士軍刀”它提供了組件化的工具鏈和大量第三方集成但它本身不定義任務協(xié)作模型。如果你想基于 LangChain 寫多智能體協(xié)作自己需要設計 Agent 之間的通信協(xié)議、記憶共享、任務分配機制實際上是從零搭一套框架。再看 AutoGen 或 Semantic Kernel。這類框架擅長對話驅(qū)動的多智能體交互多個 Agent 通過消息傳遞完成合作。這在研究、對話式推理場景里很有優(yōu)勢但業(yè)務落地上Agent 之間自由對話往往意味著不確定性高、調(diào)試困難輸出格式也較難約束。CrewAI 的定位恰好介于兩者之間。它更接近“結(jié)構(gòu)化團隊協(xié)作”用 Crew、Task、Process 這種有邊界的模型把任務編排固化成代碼。你定義角色定義任務框架幫你執(zhí)行任務結(jié)果結(jié)構(gòu)化可控性強容易復用。對比維度LangChain AgentAutoGenCrewAI核心抽象Chain Agent ToolConversable Agent 對話流Crew Agent Task Process多智能體協(xié)作方式需要自行設計對話驅(qū)動聲明 流程驅(qū)動任務結(jié)果可控性中等偏低較高上手難度中等偏高較低適合業(yè)務場景工具鏈復雜、組件化集成研究探索、開放對話企業(yè)流程自動化、內(nèi)容生產(chǎn)流水線那 CrewAI 最適合哪些場景根據(jù)實際項目經(jīng)驗我可以給出幾個比較明確的場景清單。第一個是內(nèi)容與研究報告生產(chǎn)流水線。比如收集資料、整理觀點、撰寫初稿、校對優(yōu)化如果把這幾個環(huán)節(jié)拆成專職 Agent配合固定的任務輸出格式產(chǎn)出質(zhì)量會明顯高于單 Agent 長文本生成。第二個是企業(yè)業(yè)務運營自動化。例如客服工單分類、競品監(jiān)控日報、銷售線索初篩。這類任務有清晰輸入輸出有固定流程非常適合用 Crew 封裝成可重復調(diào)用的服務。第三個是多工具編排場景。CrewAI Agent 支持掛載工具你能把搜索工具、數(shù)據(jù)庫查詢工具、內(nèi)部 API 工具掛到不同 Agent 上讓它們各司其職。不太適合 CrewAI 的場景也有一個典型高實時性、強交互的對話助手。CrewAI 本身不是對話狀態(tài)管理框架它有 Memory 和短期上下文設計但面向用戶的多輪對話系統(tǒng)還是應該用專門對話 Agent 框架來做把 CrewAI 作為服務端內(nèi)部任務編排組件。換言之不要讓用戶直接和 CrewAI 的 Agent 自由對話而是通過 API 去觸發(fā)一個明確的 Crew 工作流。4. 環(huán)境準備與工程目錄設計在動手寫代碼之前先把運行環(huán)境說清楚。CrewAI 是一個基于 Python 的框架底層封裝了 LangChain 的若干能力同時支持 OpenAI、Anthropic、Gemini、Ollama 等不同模型來源。我建議你在一個干凈的環(huán)境中安裝避免跟已有 LangChain 項目里的依賴發(fā)生版本沖突。建議環(huán)境如下Python 3.10 或更高版本推薦 3.10 到 3.12具體以官方當前支持版本為準pip 包管理器一個可選用的虛擬環(huán)境工具比如 venv 或 conda準備一個大模型 API Key。如果你用 OpenAI 兼容接口可以配置OPENAI_API_KEY環(huán)境變量。安裝 CrewAI 的命令很簡單pip install crewai如果計劃讓 Agent 使用瀏覽器搜索、網(wǎng)頁內(nèi)容讀取等常用工具可以一起安裝工具包pip install crewai[tools]CrewAI 生態(tài)迭代速度較快重要版本的 API 可能有調(diào)整因此creai的具體版本號建議以官方 PyPI 頁面為準。本文的代碼示例以當前主流的類聲明式用法為主。安裝完成后可以先做一個最小驗證python -c import crewai; print(crewai.__version__)如果這條命令能正常輸出版本號說明框架安裝沒問題。工程目錄方面如果你只是學習跑通建議先建一個單文件腳本如果是正式業(yè)務項目我更推薦這樣的目錄結(jié)構(gòu)project/ ├── agents/ │ └── researcher_agent.py # 智能體定義 ├── tasks/ │ └── research_task.py # 任務定義 ├── crews/ │ ├── research_crew.py # 組裝 Crew │ └── flow.py # 基于 Flow 的工作流 ├── tools/ │ ├── search_tool.py │ └── custom_tool.py ├── config/ │ └── llm_config.py # 模型統(tǒng)一配置 ├── output/ │ └── reports/ ├── main.py # 入口 └── requirements.txt這種拆分方式的好處是智能體、任務、流程互相解耦。一個 Agent 可以參與不同 Task一個 Task 也可以在不同 Crew 里復用將來接入 Web 服務時只需要在 API 層調(diào)用Crew.kickoff()整個業(yè)務能力就被封裝成函數(shù)了。實際項目里我更建議把智能體定義和任務描述放到配置文件里管理代碼里只負責注冊和組裝。CrewAI 也支持 YAML 配置方式對團隊協(xié)作和后續(xù)維護更友好。不過本文為了減少認知負擔直接用 Python 代碼描述。5. CrewAI 完整示例從最小 Crew 到事件驅(qū)動 Flow下面開始進入實操環(huán)節(jié)。我們從最簡單的一 Crew 一 Agent 開始逐步增加角色和任務最后用一個 Flow 示例演示事件驅(qū)動工作流。5.1 最小示例研究助手 Crew先跑通最小環(huán)境。創(chuàng)建一個first_crew.py文件代碼如下# 文件路徑first_crew.py from crewai import Agent, Task, Crew, Process # 1. 定義智能體 researcher Agent( role高級技術研究員, goal圍繞用戶給定主題調(diào)研技術原理并形成結(jié)構(gòu)化摘要, backstory( 你是一位經(jīng)驗豐富的技術研究員 擅長快速從資料中提煉關鍵事實 不喜歡無依據(jù)的推測。 ), verboseTrue ) # 2. 定義任務 research_task Task( description調(diào)研 CrewAI 的核心概念輸出一份面向開發(fā)者的摘要。, expected_output( 一份包含核心概念、主要用途、適用場景的 Markdown 列表 每項不超過 50 字。 ), agentresearcher, ) # 3. 組裝 Crew crew Crew( agents[researcher], tasks[research_task], processProcess.sequential, verboseTrue, ) if __name__ __main__: result crew.kickoff() print( 最終輸出 ) print(result)這里需要解釋幾個關鍵參數(shù)。Agent里的role設置了智能體的角色身份goal設定了總體目標backstory是給大模型的背景補全信息這三者拼在一起實際構(gòu)成了 Agent 系統(tǒng)提示詞的核心。verboseTrue表示在命令行輸出任務執(zhí)行的中間過程排錯時非常有用。Task里的description是任務內(nèi)容expected_output是期望的輸出結(jié)構(gòu)和風格。多智能體系統(tǒng)里任務描述寫得好不好決定了大模型和下游協(xié)作者能不能理解結(jié)果。這塊不要偷懶。Crew接收agents列表和tasks列表processProcess.sequential表示順序執(zhí)行。kickoff()是 Crew 的入口函數(shù)調(diào)用后框架會自動拉起整個流程。運行方式python first_crew.py如果配置好了大模型 API你會看到控制臺依次輸出 Agent 的思考步驟、工具調(diào)用和最終結(jié)果。kickoff()返回的對象是 CrewOutput直接print(result)可以看見任務輸出正文。5.2 順序編排內(nèi)容生產(chǎn)流水線下面把場景升級用三個 Agent 組成一條內(nèi)容生產(chǎn)流水線分工做“選題策劃 → 初稿撰寫 → 校對潤色”。# 文件路徑content_crew.py from crewai import Agent, Task, Crew, Process planner Agent( role內(nèi)容策劃編輯, goal根據(jù)主題規(guī)劃文章大綱和核心觀點, backstory你是一位資深內(nèi)容策劃善于把復雜技術問題拆解成清晰的文章結(jié)構(gòu)。, ) writer Agent( role技術文章作者, goal根據(jù)大綱撰寫技術教程正文, backstory你是一位有一線開發(fā)經(jīng)驗的技術作者擅長用示例和步驟講清楚概念。, ) reviewer Agent( role質(zhì)量審核編輯, goal從準確性、結(jié)構(gòu)完整性和表達清晰度方面審核文章輸出修改建議, backstory你是一位嚴格的編輯重點檢查文章是否存在術語誤用、邏輯斷裂和缺少示例。, ) plan_task Task( description( 主題如何使用 Python 實現(xiàn)定時任務。 請輸出文章大綱包括引言、環(huán)境準備、核心示例、常見問題四部分。 ), expected_output結(jié)構(gòu)化的 Markdown 大綱每個章節(jié)下寫清楚要點。, agentplanner, ) write_task Task( description( 基于以下大綱撰寫技術教程正文\n {plan_output}\n 要求每段給出可運行的代碼示例語言風格平實、專業(yè)。 ), expected_output完整的 Markdown 技術文章正文包含代碼塊。, agentwriter, context[plan_task] ) review_task Task( description( 審核以下技術文章檢查內(nèi)容準確性和結(jié)構(gòu)\n {write_output}\n 輸出具體修改建議不要直接重寫全文。 ), expected_output按嚴重程度排序的修改建議列表。, agentreviewer, context[write_task] ) content_crew Crew( agents[planner, writer, reviewer], tasks[plan_task, write_task, review_task], processProcess.sequential, verboseTrue, ) if __name__ __main__: result content_crew.kickoff() print( 審核建議 ) print(result)這個示例里有幾個關鍵點值得展開。第一個是context參數(shù)。write_task聲明了context[plan_task]意思是它執(zhí)行時會把plan_task的輸出作為上下文傳入。review_task同理依賴write_task的輸出。相比直接使用{plan_output}這種變量占位context更明確地建立了任務級依賴關系。實際上CrewAI 在 Task 執(zhí)行時會把 context 中任務的輸出拼到當前任務描述后面因此你可以在任務描述里用大括號引用。如果任務之間沒有顯式依賴就不要亂加context減少不必要的 Token 消耗。第二個是任務描述里的占位符寫法。{plan_output}是引用前序任務輸出的快捷方式。用不熟悉的開發(fā)者很容易忽略這一點導致下游任務拿不到上游結(jié)果。第三點是Process.sequential只負責按列表順序執(zhí)行任務它不代表“每個 Agent 都只執(zhí)行一次任務”??蚣軆?nèi)部會協(xié)調(diào)上下文你只需要定義清楚哪些角色、哪些任務、哪些依賴。運行內(nèi)容生產(chǎn) Crew 后你會看到作者 Agent 產(chǎn)出初稿審核 Agent 對初稿給出意見。如果你希望把審核意見直接應用到文章里只需要再增加一個編輯 Agent 和對應 Task承接修改任務即可。這就是流水線編排的威力每增加一個環(huán)節(jié)只是新增一個角色和一條任務。5.3 層級流程Manager 統(tǒng)籌模式業(yè)務場景里還有一種更常見的情況任務不是一開始就能寫死成固定步驟的需要根據(jù)實際內(nèi)容動態(tài)拆解。比如“調(diào)研某技術方向的趨勢并輸出報告”具體要訪問哪些網(wǎng)站、要看哪些材料不應該是我們預先硬編碼的而應該由一個統(tǒng)管 Agent 來判斷。這種場景適合用 Hierarchical Process。# 文件路徑hierarchical_crew.py from crewai import Agent, Task, Crew, Process researcher Agent( role前沿技術觀察員, goal搜集指定技術方向的最新動態(tài)與發(fā)展趨勢, backstory你長期跟蹤 AI 工程化領域動態(tài)善于發(fā)現(xiàn)關鍵信號。, ) analyst Agent( role商業(yè)技術分析師, goal對收集到的信息進行結(jié)構(gòu)化分析并形成判斷, backstory你擅長從分散信息中歸納趨勢給技術決策者提供可執(zhí)行的結(jié)論。, ) report_task Task( description調(diào)研多智能體編排框架的行業(yè)采用趨勢并輸出一份分析簡報。, expected_output包含關鍵趨勢、代表項目、落地建議的 Markdown 簡報。, ) hierarchical_crew Crew( agents[researcher, analyst], tasks[report_task], processProcess.hierarchical, manager_llmNone, # 不顯式指定時會復用默認 LLM manager_agentNone, # 也可以指定一個 Agent 作為 Manager verboseTrue, ) if __name__ __main__: result hierarchical_crew.kickoff() print( 層級流程輸出 ) print(result)注意在層級流程的寫法里report_task沒有綁定agent參數(shù)。這是因為在 Hierarchical Process 中負責任務分配的 Manager 會動態(tài)決定把 Task 交給哪個 Agent 執(zhí)行不需要預先綁定。你需要提供的是 Agent 池Manager 從池中選擇合適的執(zhí)行者。如果你希望 Manager 既當裁判又當運動員可以顯式傳入一個manager_agent如果只告訴 Crew 用哪個模型做管理就傳manager_llm。二者選擇其一即可。實際生產(chǎn)環(huán)境中為避免 Manager 模型和執(zhí)行 Agent 模型混用導致成本難以核算更推薦用manager_llm指定一個更高配置的模型執(zhí)行 Agent 使用相對輕量的模型。用層級流程時要注意 Token 消耗。Manager 的每一步規(guī)劃、審查、總結(jié)都會調(diào)用大模型。任務一多成本會顯著上升。如果業(yè)務步驟固定、拆解明確優(yōu)先使用順序流程層級流程作為兜底和補充。5.4 自定義工具讓 Agent 不再只靠記憶多智能體 Agent 真正落地一般離不開工具調(diào)用能力。一個只靠模型內(nèi)部知識回答問題的 Agent本質(zhì)上還是一個高級聊天機器人只有讓它可以查詢數(shù)據(jù)庫、調(diào)內(nèi)部接口、搜索網(wǎng)頁它才算進入工作流。CrewAI 的 Agent 通過tools參數(shù)掛載工具工具可以是內(nèi)置的serper_dev_tool、scrape_website_tool也可以是自己寫的一個普通 Python 函數(shù)再包裝成tool裝飾器。演示一個自定義工具。假設我們需要讓 Agent 查詢本地配置好的知識庫 API# 文件路徑knowledge_tool.py from crewai_tools import tool tool(知識庫搜索) def search_knowledge_base(query: str) - str: 在內(nèi)部知識庫中搜索與 query 相關的知識內(nèi)容。 如果未找到返回 NO_RESULT。 # 實際項目中這里會調(diào)用內(nèi)部知識庫 API 或向量數(shù)據(jù)庫 # 這里只做演示使用一個簡單映射表 knowledge { 部署: 生產(chǎn)環(huán)境部署前必須備份數(shù)據(jù)庫并執(zhí)行回歸測試。, 回滾: 回滾操作優(yōu)先使用上一穩(wěn)定版本鏡像并觀察監(jiān)控指標。, } for key, value in knowledge.items(): if key in query: return value return NO_RESULT然后掛載到 Agent 上# 文件路徑tool_crew.py from crewai import Agent, Task, Crew, Process from knowledge_tool import search_knowledge_base ops_agent Agent( role運維知識顧問, goal回答基于內(nèi)部知識庫的運維問題, backstory你只能依據(jù)內(nèi)部知識庫回答不要憑空補充沒有來源的操作步驟。, tools[search_knowledge_base], ) answer_task Task( description請回答生產(chǎn)環(huán)境部署時的注意事項有哪些, expected_output一段不超過 100 字的安全操作建議。, agentops_agent, ) tool_crew Crew( agents[ops_agent], tasks[answer_task], verboseTrue, ) if __name__ __main__: result tool_crew.kickoff() print(result)這里一個關鍵細節(jié)是tool裝飾器里的函數(shù)文檔字符串。大模型并不是靠你的“函數(shù)名”理解工具的它靠的是函數(shù)簽名、參數(shù)說明、文檔字符串綜合判斷何時調(diào)用該工具。因此工具描述要寫清楚“什么場景用、輸入什么、返回什么、找不到時返回什么”。一個含糊的工具描述很可能讓 Agent 在無關請求上頻繁調(diào)用工具消耗大量 Token。這里也回應一個網(wǎng)絡熱詞很多人問“如何把小龍蝦或者愛馬仕集成到多智能體系統(tǒng)中”其實當一個 Agent 能通過 MCPModel Context Protocol等協(xié)議掛載外部工具時重點不是對象本身叫什么名字而是它暴露了什么工具接口、返回什么格式的數(shù)據(jù)。真正值得研究的是 MCP 服務器如何把業(yè)務數(shù)據(jù)抽象成 Agent 可調(diào)用的工具。5.5 事件驅(qū)動工作流基于 Flow 實現(xiàn)動態(tài)編排前幾個示例里的 Process 都是把一個 Crew 內(nèi)部的任務按固定方式跑完。如果業(yè)務包含多個 Crew、條件分支或循環(huán)處理就要用 Flow。下面這段代碼演示一個“熱點內(nèi)容自動加工”流程收到主題后先生成研究摘要如果摘要長度不夠走增強補充路徑最后匯總輸出。# 文件路徑research_flow.py from typing import Any from pydantic import BaseModel from crewai.flow import Flow, listen, start from crewai import Agent, Task, Crew, Process class ResearchState(BaseModel): topic: str 人工智能編排框架 raw_summary: str final_summary: str need_expand: bool False class ResearchFlow(Flow[ResearchState]): start() def initiate_research(self): # 首輪 Agent 執(zhí)行快速生成摘要 agent Agent( role行業(yè)研究員, goal快速生成指定主題的研究摘要, backstory你擅長快速判斷主題的核心脈絡。, ) task Task( descriptionf圍繞主題《{self.state.topic}》生成 150 字以內(nèi)摘要。, expected_output一段簡潔摘要。, agentagent, ) crew Crew(agents[agent], tasks[task], processProcess.sequential) self.state.raw_summary crew.kickoff().raw # 判斷是否需要擴展比如摘要是否過短 self.state.need_expand len(self.state.raw_summary) 50 listen(initiate_research) def expand_if_needed(self): if not self.state.need_expand: return # 第二輪覆蓋針對缺失細節(jié)做補充 agent Agent( role細節(jié)補充編輯, goal對短摘要進行事實擴充, backstory你是嚴謹?shù)木庉嬔a充內(nèi)容必須與摘要主題一致。, ) task Task( descriptionf基于摘要《{self.state.raw_summary}》擴展成 300 字左右的完整段落。, expected_output一段內(nèi)容完整、信息密度高的文字。, agentagent, ) crew Crew(agents[agent], tasks[task], processProcess.sequential) self.state.final_summary crew.kickoff().raw listen(expand_if_needed) def finalize(self, output: Any): # 如果沒有經(jīng)過擴展final_summary 為空這里兜底賦值 if not self.state.final_summary: self.state.final_summary self.state.raw_summary print( 最終研究結(jié)果 ) print(self.state.final_summary) if __name__ __main__: flow ResearchFlow() flow.kickoff()這段代碼里Flow 的用法主要通過裝飾器和狀態(tài)對象完成繼承Flow[ResearchState]ResearchState繼承了pydantic.BaseModel用來定義整個 Flow 運行期間的狀態(tài)字段。start()標記的initiate_research是入口方法任何流程只能有一個或多個入口它們是 Flow 的開始。listen(initiate_research)表示監(jiān)聽某個方法執(zhí)行完后的結(jié)果。只有前一個方法執(zhí)行成功被監(jiān)聽的方法才會執(zhí)行。狀態(tài)對象self.state負責在多個方法之間傳遞數(shù)據(jù)。這樣一來MCP 調(diào)用、Crew 執(zhí)行、分支判斷等都變成了方法之間的數(shù)據(jù)流動整體更接近傳統(tǒng)后端工程師熟悉的 Service 代碼。Flow 是 CrewAI 新版本里力推的編排層但不是說每個項目都必須用它。如果是固定順序的 3 到 5 個步驟直接用Crew.kickoff()就夠了如果流程里有分支、循環(huán)、嵌套多個 Crew建議升級到 Flow。6. 運行驗證與判斷標準跑通代碼只是第一步。真正需要注意的是你怎么判斷多智能體系統(tǒng)的運行結(jié)果是“成功”的。6.1 命令行運行觀察什么當verboseTrue時CrewAI 會在控制臺打印每個 Agent 的執(zhí)行過程。不同 Agent 完成任務后你會看到類似這樣的輸出結(jié)構(gòu)任務開始提示Agent 正在處理的任務描述思考過程Agent 如何理解任務工具調(diào)用與觀察結(jié)果如果調(diào)用了工具會顯示工具輸入和返回值任務最終輸出Agent 的最終回答。如果某個環(huán)節(jié)的輸出明顯不符合任務描述中的要求比如“本應輸出 Markdown 列表實際輸出了純文本”這就說明任務描述不夠嚴格。所有任務描述都必須顯式聲明 expected_output否則大模型不知道交付標準結(jié)果會非常不穩(wěn)定。6.2 結(jié)果判斷的三種方式第一種是人工閱讀。適合調(diào)研報告、內(nèi)容生產(chǎn)判斷標準是信息準確、邏輯清晰、沒有幻覺。第二種是結(jié)構(gòu)化字段校驗。適合數(shù)據(jù)抽取、分類、工單處理。可以把Task配置output_pydantic或output_json讓 Agent 輸出 JSON 格式然后在Crew.kickoff()返回結(jié)果中用 Pydantic 模型校驗字段完整性和類型。第三種是外部斷言。適合自動化任務比如 Agent 判斷“某事件風險等級為高?!毕掠蜗到y(tǒng)再拿著這個結(jié)論觸發(fā)不同告警通過業(yè)務規(guī)則確保輸出被正確消費。6.3 第一優(yōu)先級看的失敗點如果運行失敗不要急著改 Prompt。先按以下順序排查看 API Key 是否配置、是否欠費或限流。這是大多數(shù)第一次運行失敗的根因??匆蕾嚢姹?。CrewAI 與 LangChain 生態(tài)版本耦合較緊升級某個包可能導致內(nèi)部接口不兼容??慈蝿罩g的上下文變量名是否正確。占位符寫錯不會直接報錯但會輸出原始字符串到下游??磛erbose日志里 Agent 最后執(zhí)行到哪個節(jié)點。如果某個 Agent 從頭到尾沒有輸出大概率是它的任務描述沒有進到 Agent 的執(zhí)行上下文。7. CrewAI 常見問題與排查思路我整理了多智能體開發(fā)過程中出現(xiàn)頻率最高的幾個問題。這張表可以直接作為你排錯時的檢查單。問題現(xiàn)象可能原因排查方式解決方案第一次運行報錯 401/429API Key 錯誤、額度不足或觸發(fā)限流單獨調(diào)用模型 SDK 驗證 Key檢查賬號余額更新 Key提高限流閾值或切換模型供應商Agent 沒有調(diào)用工具工具描述不清晰或任務描述未提示工具查看 verbose 日志中 Agent 是否“考慮”過工具調(diào)用的可能性優(yōu)化工具描述在任務描述里明確“允許使用知識庫搜索”流程中途報錯“Could not parse LLM output”大模型返回內(nèi)容不滿足 JSON、代碼塊等結(jié)構(gòu)化要求查看報錯前后 LLM 原文確認是否超過上下文長度縮小任務粒度配置output_json或output_pydantic更換更強模型下游任務引用了空上下文context 任務未執(zhí)行或任務描述中變量名寫錯先獨立運行上游任務確認輸出非空檢查引用變量名檢查 Task 列表順序和 context 關系任務結(jié)果很好但耗時太長/費用過高任務鏈過長、層級 Manager 反復調(diào)度、Agent 反復重試在 verbose 日志中統(tǒng)計每個環(huán)節(jié)步數(shù)查看 API 用量面板減少 Agent 數(shù)量用順序流程替代層級流程降低重試次數(shù)不同 Agent 之間格式不統(tǒng)一每個 Task 都未規(guī)定 expected_output查看多個 Task 的返回結(jié)果在 expected_output 中規(guī)定 Markdown/JSON/列表等格式Flow 中l(wèi)isten方法不執(zhí)行監(jiān)聽的方法名寫錯或監(jiān)聽方法拋異常被吞掉檢查裝飾器中的函數(shù)引用是否與實際情況一致添加 try/except 打印異常修正監(jiān)聽參數(shù)對異常做顯式捕獲生產(chǎn)環(huán)境頻繁變更導致流程不可用模型版本、提示詞、Agent 配置沒有版本管理檢查是否有配置文件和流程代碼的版本標簽將 Agent/Task 配置納入 Git對 Prompt 變更做回歸測試這里單獨強調(diào)兩個新手最容易出的問題。第一個是任務越寫越大。很多人覺得一個 Agent 一次做多個步驟能省錢實際結(jié)果往往相反——大模型在長任務里的注意力和指令遵循能力會下降一步錯步步錯。更合理的拆法是一個 Agent 只完成“一個思維動作”檢索就檢索分析就分析寫就寫審就審。第二個是沒有給 Agent 定義清晰的“不做什么”。一個 Agent 的 backstory 里只寫了“你擅長寫文章”它就可能在需要調(diào)用工具時選擇自己“編內(nèi)容”。所以在 backstory 中要明確加一句邊界比如“你只能依據(jù)資料輸出不臆造事實”“如果缺少必要信息明確說明缺少哪些信息”。8. 多智能體系統(tǒng)開發(fā)最佳實踐與工程建議從“代碼能跑”到“系統(tǒng)能上線”中間還差著一整套工程化約束。下面是我認為在多智能體系統(tǒng)開發(fā)中比較重要的幾條建議。8.1 為任務設計明確的外部上下文邊界多智能體系統(tǒng)穩(wěn)定性的最大隱患是上下文污染。當 Agent 數(shù)量變多、任務鏈變長如果一個早期任務的輸出含錯誤信息后續(xù) Agent 可能會在錯誤前提上繼續(xù)生成而且錯誤會被逐步放大。因此不要把所有歷史結(jié)果都傳給下游。每個 Task 的 description 只保留完成任務所需的關鍵上下文即可。必要時可以在任務間加入“信息抽取”環(huán)節(jié)讓一個專門 Agent 從上游長文本中抽取出精煉的結(jié)構(gòu)化信息再傳給下游。這會讓 Token 成本更可控也會顯著提高結(jié)果穩(wěn)定性。8.2 用最小授權和沙箱隔離工具權限如果你給 Agent 掛載了能執(zhí)行代碼、訪問數(shù)據(jù)庫或調(diào)用內(nèi)部 API 的工具必須遵循最小權限原則。一個做內(nèi)容分類的 Agent 不需要刪除數(shù)據(jù)庫的權限一個做數(shù)據(jù)查詢的 Agent 不應獲得生產(chǎn)環(huán)境的寫權限默認只讀。工具調(diào)用應該有三層護欄第一層是在代碼層做好參數(shù)校驗和權限校驗第二層是在工具描述中明確邊界第三層是核心操作前加入人工審批或條件約束。8.3 日志、追蹤和評估是生產(chǎn)上線的前提傳統(tǒng)的單元測試很難覆蓋自然語言輸出的不確定性。多智能體項目上線前需要至少做到每個任務的輸入、輸出、Token 用量、延遲都記錄到日志里對結(jié)果做結(jié)構(gòu)化評估例如 JSON 字段校驗、關鍵詞規(guī)則、核心指標是否出現(xiàn)準備一組典型用例作為回歸集修改 Prompt 或任務步驟后用同一組用例重新跑一遍數(shù)據(jù)敏感時做脫敏后再記錄日志。8.4 Prompt 和配置要納入版本管理多智能體系統(tǒng)的核心其實是提示詞工程和任務編排。Agent 的 role、goal、backstory、Task 的 description本質(zhì)上都是代碼的一部分需要走 Git 管理。實際操作中可以把 Agent 和 Task 配置抽成 YAML 文件再通過 CrewAI 的配置加載機制讀取避免把大量自然語言配置散落在 Python 類的文件里。8.5 固定模型版本和 Provider 配置同一個 Prompt 在不同模型上的表現(xiàn)差異很大。團隊在開發(fā)階段如果用高配模型驗證效果但生產(chǎn)環(huán)境為了省錢換了小模型很可能出現(xiàn)規(guī)則不穩(wěn)定的現(xiàn)象。更穩(wěn)妥的做法是在配置中心統(tǒng)一管理模型選擇評估階段固定一組模型輸出結(jié)果全部保留對比記錄生產(chǎn)切換模型時必須做回歸。8.6 控制并行度和異步任務粒度CrewAI 支持任務異步執(zhí)行。當多個相互獨立的任務存在時可以用async_executionTrue讓它們在同一個 Crew 內(nèi)并行執(zhí)行減少總耗時。但并行并不是越多越好并行度太高短時間內(nèi)的 Token 消耗會猛增同一個模型供應商的限流也會導致大面積失敗。建議從 2 到 3 個并行任務開始觀察 API 每分鐘請求數(shù)和 Token 消耗再逐步調(diào)高。9. 總結(jié)與后續(xù)學習方向回到這篇文章開頭提出的判斷CrewAI 的真正價值是把多智能體系統(tǒng)從“研究玩具”推進到“工程化任務編排工具”的位置。它用 Crew、Agent、Task、Process、Flow 這幾個清晰的概念讓開發(fā)者能用聲明式代碼搭建一條可運行的自動化工作流。從實際項目經(jīng)驗來看這不只是省掉了一部分調(diào)度代碼更是改變了多智能體系統(tǒng)的維護方式——你不再需要讀完幾千行調(diào)度邏輯才能理解系統(tǒng)在干什么看配置就能知道哪些角色、按什么順序、完成哪些任務。如果你是第一次接觸 CrewAI下一步可以按這個路徑實踐-先復現(xiàn)第 5.1 節(jié)的最小示例跑通環(huán)境把第 5.2 節(jié)的內(nèi)容生產(chǎn)流水線改成你自己的業(yè)務場景找一個小型工具按第 5.4 節(jié)的方式把它封裝成 Agent 工具如果流程進入分支和循環(huán)再開始用 Flow。值得繼續(xù)深入研究的方向有三個一是 CrewAI 與 MCP 協(xié)議的集成方式這決定 Agent 能否接入企業(yè)內(nèi)外部豐富的工具生態(tài)二是多智能體系統(tǒng)的評測體系因為它直接影響你能不能把系統(tǒng)從開發(fā)環(huán)境穩(wěn)定遷移到生產(chǎn)環(huán)境三是記憶機制的設計什么時候需要短期記憶、什么時候用長期記憶、什么時候干脆不要記憶需要基于業(yè)務做取舍。建議你把這篇文章收藏下來作為一個從零搭建多智能體系統(tǒng)的索引。遇到具體問題比如模型調(diào)用失敗、任務上下文丟失、Agent 輸出格式不對優(yōu)先查第 7 節(jié)的排查表再回來看對應章節(jié)的示例代碼。多智能體開發(fā)是一條需要反復調(diào)試的路但只要你把基本概念和最小示例跑通了往后加角色、加任務、加工具都只是在這個框架里做增量擴展而已。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
正宗黄色毛片| 天天做天天视天天谢| 婷婷99狠狠| 丁香五月影视| 91伦| 婷婷综合| 色人妻五月| 五月叮香啪| 99re在线观看| 丁香婷婷情色五月天| 在线不卡AC| 热99在线精品| 夜夜做夜夜愛| 九九99精品| 婷婷五月俺要去| 五月天婷婷激情网| 色呦呦在线| 97碰久久| 五月激情综合网| 开心丁五月| 五月婷婷先锋| 午夜天天精品视频| 热久久91| 超碰99资源站| 欧美25p| 九九熱最新視頻| 99久久.www| 91碰碰| 五月丁香免费看| 精品色情一区二区三区四区| 婷婷久久网| 五月婷婷丁香日韩在线| 熟女人妻视频| av高清无码| 碰碰女| 婷婷开心激情五月激情网| 大香蕉综合在线| 中文字幕丰满乱孑伦无码专区| 996热| 色欲天天综合| 五月开心深爱激情网| 国产色丁香| www久久久久| 婷婷激情五月吧| 五月天婷婷激情网| 五月丁香黄色| 婷婷性爱网| www.久操| 在线不卡中文字幕| 色婷婷伊人| 国产女生爱爱AA| 欧美性生交XXXXX无码小说| 婷婷五月丁香基地| 婷婷丁香六月| 五月天激情美女久久| 五月天婷婷色| 成人av在线网| 91xxxx九色| 色婷婷91激情小说| 99热超碰天堂网| 大香蕉丁香婷婷| 精品香蕉99久久久久网站| 97干在线| 91热久88| 91视频精品99| 久色成人| 天天色视频| 色婷婷婷婷| 激情网 五月天| 综合97五月| 色情五月天丁香社区| 婷婷九月综合| 无码毛片992367| 秋霞午夜理论| 天天操天天插天天射| www.夜夜| 狠狠色综合网站久久久久| 欧美天堂婷婷日韩| 丁香九月综合激情| 狠狠草婷婷| 综合五月天天天天天五月| 五月婷婷 六月丁香| 五月婷婷成人网首页| Se.婷婷五月天| 婷婷伊人激情婷婷| 任你操精品免费| 亚洲成人免费电影| 怡红院AV亚洲一区二区三区H| 天堂伊人干| 中文字幕不卡网站| 99热亚洲| 综合图区激情| 人妻久久久久久| 人人97碰| 超碰成人公开| 色综合九九| 丁香六月AV| 婷婷色色播五月天| 色婷婷成人| 亚洲综合激情五月久久| www色婷婷com| 亚洲婷婷激情888精品久| 激情五月久久| 99re热视频这里只精品| 亚洲综合婷婷五月| 丁香六月综合激| 无码yw| 五月丁香啪啪综合| 久久精品亚洲一级牲爱综合| 激情五月天社区| 538在线精品| 亚洲影院婷婷色| 五月婷婷六月天| 99在线观看视频精品| 日日爽日日爽| 秋霞AV吧| 色五月丁香五月激情五月激情| 日本成人噜噜| 99久久国产宗和精品1上映| 久久五月情| 婷婷免费精品视频| 九九99九九99偷拍视频免费看| 噼里啪啦在线观看免费完整版视频| 亚洲av电影网站| 婷婷五月天堂| 欧美日本黄色| 国产精品汇聚精彩第二页 - 高清完整版在线 - 青蛙AV | 99热在线观看| 五月婷婷av| 久久小片| 九九爱精品网站| 国产伦理精品高清在线观看网站一区二区| 亚洲午夜一区二区| 97五月综合网| 舔色婷婷| www.91AV.COM| 六月丁香五月天| 丁香婷婷激情综合五月激情| 玖玖资源站蜜臀| www.久久久久| 五月丁香婷婷综合在线| 激情綜合W W W,激情五月天| 五月婷婷深深的爱| 五月丁香| 婷婷五月中文在线| 五月天婷婷色| 色六月丁香婷婷狠狠干| 最新高清无码专区| 色婷婷五月天成人网| 色播五月| 亚州激情在线视频| 亚洲欧洲中文日韩久久AV乱码| av在线观看网站| 人草人人| 激情久久久久久久久| 色婷婷视频综合| 搡BBBB搡BBB搡18| 思思热久久阴99| 欧日韩成人| 狠干综合| 亚洲综合无码| 69精品人人人人| 91精品国产91久久久久青草| 久久视这里只有精品| 婷综合| 99人人干人人| 99re8这里只有精品99re8热视频| 欧美日韩AAAAA| 激情图片五月天| 色婷婷综合网站| 超碰成人公开| 色五月综合激情| 五月做爱| 涩综合网| 婷婷五月天影院| 99久久国产宗和精品1上映| 欧美色97| 就99这里只有精品| 亚洲欧美综合7777色亭亭| 激情 婷婷 插| www91久久| 国产精品国产| 免费色色色| 99精品在线观看| 天天插天天很| 久久狠婷婷| 亚洲综合另类| 99热6这里只有精品6| www99热| 色之综合网| BBWCUCKOLD精品熟妇| 日 日干 日日做| 99婷婷狠狠成为人免费视频| 天堂网啪啪| 超碰av在线| 激情小说在线视频| 永久AⅤ1| 99re这里只有精品99| 97人人射| 五月丁香六月| 婷婷开心综合人妻小说网址| 久久免费操| 欧美日韩一区二区三区四区| 亚洲综合热| 丁香五月综合激情性爱| 免费在线观看AV网站| 久久精品只有这| www婷婷| 综合色99| 久热精品在看| 中国女人内射6XXXXX| 婷婷狠狠色| 超碰在线人妻| 色很久综合| 91九色精品熟女内射| 情情五月天色| 99热最新| 超碰人人99| 日日操天天操| 99精品视频在线观看| 无码A片一区二区免费| 五月天丁香网| 久草热在线视频| 六月激情久久婷婷| 亚洲乱码在线观看| 玖玖玖婷婷婷| 亚洲愉拍99热成人精品| 九九成人视频| 九九99久久| 激情五月天伊人av| 久久草婷婷丁香网站| 成人婷婷| 六月婷色| 99青青草99| 九月色婷婷| 久久欧洲综合网| 伊人影音无码一区二区三区| h亚洲| 欧美 色婷婷| 婷婷久久五月天| 五月丁香在线综合| 狠狠色狠狠干| 国内裸舞二区| 综合激情五月丁香9999久久精| 久久婷婷内射| 欧美三级黄色片久久| 秋霞AV吧| AV在线免费观看不卡| 五月天激情综合| 97性视频| 四色永久成人网站| 日日.c| 五月天精品| 伊人狠狠操| 色九区| 婷婷五月天黄色网址| 婷婷久久婷婷色五月| 久久婷婷五月综合色欧美| 亚洲六月婷婷| 1000部毛片A片免费观看| 啪啪91| 99久久99九九九99九他书对| 五月婷婷性爱| 五月激情在线| 538在线精品| 日本综合色图| 欧美情色一区| 丁香色情五月综合激情| 五月丁香婷婷啪啪综合| 成人精品人妻| 日本三级中国三级99| 久久9热| 色色色区| sesesesezonghe| 五月天国产成人| 99这里有精品久久97| 丁香九月久久| 亚洲av网站在线观看| 五月丁香婷婷视频| 99热9999| 激情小说五月天| 久久精品99国产精品日本| 99视频只有精品| 91丨九色丨东北熟女| 丁香五月天啪啪| 9999久久久久| 亚洲欧美日韩VIP| 玖玖99婷婷| 天堂网操| 婷婷在线视频| 新激情五月天色播| 成人在线日韩欧美| 久久小说| 激情五月色婷婷| 亚洲色婷婷| 综合性爱网| 在线观看免费狠狠色丁香香综合| 色久播播| 亚洲va在线∨a天堂va欧美va| enecarbon-materials.comWu染请涟系Bao护@wip1688 | 六月婷婷激情小说网| 播五月丁香六月| 99在线精品视频| 日韩啪啪视频| 99福利视频导航| 97婷婷在线| 97av在线视频| 五月天播播综合| 丁香五月天人体| 婷婷丁香五月天中文字幕| 色播丁香婷婷五月激情| 五月天色图| Blackedraw视频一区二区| 第一区久久网站| 天天天天天色| 99在线热| 国产九月婷婷| 婷婷天天舔| 99热精品无码| 免费超碰在线观看| 色愛综合网| 五月丁香婷婷俺| 91se在线视频| 久久婷婷东京热大香樵| 蜜臀av无码久久久久久久久| 超碰人人操在线| 成人在线观看国产| 婷婷,五月天,丁香,第一| 激情网站综合五月天| 91se在线观看| 人人摸人人干| ji'qing'luan'ren'lun| 99精品视频在线观看| 一级七香蕉| 丁香香五月激情免费视频| 狠狠五月天| 久久久中文| 五月丁香婷婷成人版| 能看的AV网站| 激情五月综合| aaaaa不卡| 天天插轮理| 天天插综合| 夜精品无码A片一区二区蜜桃| 超级碰碰碰碰视频| 停婷丁五月在线| ..真实国产乱子伦对白在线_欧| 97久人人| 亚洲精品99| 国产毛片欧美毛片久久久| 人人插9| 五月婷婷亚洲天堂97色婷婷| 丁香五月天色综合| 开心五月天激情网| 色色色激情| 激情五月婷婷色播网| 色婷视频| 噜色精品| 电影91久久久| 五月涩涩网| 久久久久久久人妻| 亚州欧美国产久精国产99综合视频| 婷婷五月丁香超碰| 成人电影AV在线观看| 婷婷五月激情视频在线| 色五月婷婷青娱乐| 影音先锋一区| 色婷婷久久综合| 99色热视频| 丁香婷婷五月人体| 色欲影香| 成人av免费观看| 伊人久久婷婷| 月婷婷亚洲| 99爱爱| 天天情天天狠天天透| 欧美精品999| 9色在线视频| 色播婷婷五月天| 免费成人中文字幕| 99riAV国产精品视频| 婷婷伊人75| 91avse| 激情久久五月天| www.婷婷| 日本成人噜噜噜噜噜| AV成人在线网站| 五月天婷婷影院影院| 超碰在线50| 成年人看Va免费视频| 99久在线精品99re8| 超碰自拍天堂| 99热亚洲| 婷婷五月丁香激情色情| 亚洲性爱AV| 激情网五月天| 天天搞夜夜叫| 婷婷激情综合色五月久久91| 97操操操| 婷婷涩五月天综合| 欧美A片在线视频免费观看| 激情五月婷婷色| 激情五月婷婷视频一区二区三区| 五月婷婷成人| 亚美欧色影院| 婷婷激情丁香五月婷婷激情丁香五月婷婷 | 五月丁香青草综合啪啪| 成人一区在线观看| 色99在线视频| 亚洲成人av在线| 色999五月色| 亚洲综合婷婷六月丁香五月| 任我肏| 欧美日韩欧美| 五月婷婷六月激情| 五月丁香999| 91综合在线观看首页| 99久久综合| 九九视频热| 亚洲成人av在线播放| 人妻精品在线| 国产一二三四五六七八视频| AA丁香综合激情| 婷久久久| 99ri国产在线| 色丁香五月婷婷在线| 六月婷婷激情图片| 九色激情| 国产成人精品一区二三区熟女在线| 色黄啪啪| 狠狠综合| ji'qi'luan'ren'lun| 久久精品婷婷| 日本丁香久在线| 夜精品无码A片一区二区蜜桃| 这里只有精品视频在线| 日日做天天操夜夜爽| 婷婷五月激情图片| 丁香五月www| 日韩免费视频| 天天综合色| 亚洲欧美成人在线| 婷婷五月综合色拍| 亚洲综合另类| 久久思思热| 五月丁香六月婷婷综合| 亚洲综合在线伊人婷| 看逼中文字幕| 久久33视频| 婷婷激情五月| 五月激情小说| 九九热在线99| 激情久久肏屄视频| 丁香六月激情国产| 欧美色骚婷婷五月天| 九九碰九九爱97超| 亚洲午夜电影| 操操自拍| a九九热www| 亚洲色综合色网| 九九婷婷激情综合网| 亚洲妇女熟BBW| 91日本在线| 婷婷色操| 久久狠狠干| 97色婷| 婷婷丁香五月网| 激情五月天激情小说| 丁香婷婷色五月| 五月婷婷基地| 亚洲色婷婷五月天| 九九碰九九爱97| 日本久久综合| 久久亚洲精品成人无码网站导航| 色婷婷五月天天天天天天天天天| 激情婷婷五月色| 综合五月天婷婷色| 五月天色综合| 天天干 夜夜爽| 综合久久99| 五月婷婷六月丁香| 亚洲天堂色| 婷婷综合另类| 激情婷婷丁香五月天小说| 五月网激情| 五月丁香六月婷婷不卡免费无码| 一级操逼内射在线视频| 色99色| 五月激情影视| 久久密臀婷婷| 日本色婷婷| 五月婷婷天天色| 国产另类综合| 精品成人久久久久久久_一二三四视| 99热9| 成人午夜天| 亚洲殴洲精品Av在线| 亚洲色综久久五月| 久久99这里| 欧美VA在线观看| 久久色亭亭五月天| 极品人妻VIDEOSSS人妻| 亚洲一区二区无遮挡A片| 激情五月综合| 久久久久久久合一狠狠做深爱| 9l视频自拍九色9l视频在线观看| 99国产精品久久久久久久久久久| 激情婷婷视频在线| 99热这里只有精品手机在线观看| 狠狠色综合精品视频在线| 九九色逼| 久久久久视剧HD| 67194成I人在线观看线路1| 亚洲五月天天| 亚洲婷婷91丁香| 无码人妻丰满熟妇奶水区码| 99久在线精品99re8热| 五月婷色| www:99热视频| 丁香狠狠| 97综合在线| 成人精品免费在线观看| 成人深爱丁香五月| 91丁香五月| 精品人妻午夜一区二区三区四区 | www.minyis.com【JT】实力收量可预付QQ2101460746 | 无码一区精品一区视频| 婷婷激情综合网| 天天爽天天摸人妻综合网| 丰满人妻一区二区三区| 日韩美女羞羞网站在线观看| 天天色综合综合| 26uuu成人网| 狠狠久久婷婷| 婷婷五月花西瓜| 五月天久久久| 亚洲第一黄网| www.maotanji.com| 69久热| 五月 丁香 欧美| www.超碰在线| 五月天操逼网| 十一月婷婷激情四射| 99热99精品在线观看| 激情五月婷黄版| 日本色久| 久久最新色| 五月天精品视频| 91男同视频| 激情深爱婷婷网| 久99久视频| 伊人狠狠色婷婷综合丁香一区| 1995年关宝慧版蜘蛛女| 国产婷婷色综合AV蜜臀AV | 在线观看中文字幕亚洲| 婷婷的色色五月天| 97色天堂| 五月天伊人综合| 色小说五月天| 禁片二区| 五月丁香成人视频| 人妻操日日| 一本久道综合色婷婷五月| 婷婷五月天久草在线| 另类激情五月| 色天使色综合| 99热在线只有精品| 婷婷终合色图| 97久久久久| 婷婷九九| 99综合网| 久久久月丁香| 丁香亭亭激情四射| 这里只有精彩视频| 久久婷婷五月综合精品蜜芽| 色999五月色| 色综合激情| 五月综合亚洲色| 成人av在线网| 噜噜色天天开心| 婷婷五月天av| a v色婷婷| 日本操B视频| 色色COm| 色五月色情| 婷婷色导航| 免费黄色AV| 久久久久er热| 五月丁香六月激情网| 婷婷五月激情四射手| 日本色色色| 九九综舍久久| 欧美久热| 亚洲丁香五月| 成年人夜夜喷水| 人人草人人舔| 人。妻久久| 99热综合在线| 99ER热精品视频| 99久久玖玖| 大香蕉99热| 97色婷婷| 色久丁香五| 色婷婷综合网站| 无码日本精品XXXXXXXXX | 日韩精品二三区| 六月丁香大香蕉| 日本丁香五月婷婷| 日韩AV在线免费| 久久东京热婷婷五月| 免费99情趣网视频| 日韩欧美一道四区中文字幕| 狠狠色婷婷7777久| 久久久这里有精品| 国产Va视频| 99 福利 导航| 99热国品| 成人在线网址| 久热这里只有精品视频免费观看| 91狠狠综合久久| 久久5 9视频免费观看| 色色五月婷婷久久| 五月婷婷六月基地| 精品国产人人爱人人| 丁香五月www| 色五月亚洲| 久久婷婷亚洲| 五月婷婷丁香六月在线| 激情五月开心五月在线视频| 中文字幕av亚洲| 97精品人人A片免费看| 婷婷97碰碰| 1995年关宝慧版蜘蛛女| 色综合久久久久| 久久中国毛毛片爱久久| 秋霞AV吧| 丁香六月啪啪| 亚洲色久| 精品成人在线观看| 天天影院色| 五月丁香六月婷婷综合伊人| 五月丁香综合网色欲| 99在线资源| 亚洲99一级无嗎特制在线| 99色热| www九九热| 伊人婷婷五月天| 婷婷五月天激情丁香| 五月婷无码| 亚洲五月丁香综合网| 五月天久久综合| 亚洲欧洲一二| 91九色 熟| 久久久av久av久片一区二区| 色五月亚洲| 夜夜躁爽日日| 婷婷五月天综合在线| 97超碰人人操| 五月天婷婷av| 日韩色色色色色| 99亚洲视频| 婷婷五月综合啪| 激情五月天福利| 婷婷五月天亚洲综合网| 久热精品9999| 五月综合激情图片| 青青草五月天| 色婷婷玖玖影院| 久久五月天免费网站| 婷婷丁香黄色| 秋霞AV美国| 九九色之九九色之88| 99热69| 婷婷丁香色情| 91操操| 丁香色五月 97干| 久久99网站| 高清一区二区三区日本久| 亚洲激情久久| WwW色婷婷| 五月天小说激情| 久久久色情| av最新在线| 97在线/亚洲| 9l视频自拍9l九色成人| VA日本视频| 丁香婷婷五月天色播| 色五月色综合| 五月丁香婷婷基地| 久久色婷婷| 在线只有精品| 国产黄色在线| 99偷拍视频在线日本| 天堂中文国产| 精品国产va久久久久久久| 色五月激情基地| 激情五月天伊人影院| 色五月综合| www.激情| 久久久国产精品黄毛片| 五月伊人婷婷999| 97干视频| 五月四色色| 天天操婷婷| 久久综合九九| 影音先锋91网站在线观看| 一区=区操屄高清大全av| www.婷婷.com| 婷婷五月天综合蜜桃| 人妻无码精品一区| www.操.com| 精品综合网在线| 伊人网碰碰| 色五月婷婷五月久久| 夜夜干夜夜操| 开心婷婷五月激情网小说| 丁香五月冃欧美| 丁香婷婷色情| 六月成人网| 热99在线精品| 色婷五月丁香久亚洲| 婷婷刺激综合| 九九亚洲天堂| 一区二区三区视频| 99九九精品| 激情五月丁香婷婷| 操逼国产91| 五月六月丁香婷婷在线观看| 波多野结衣AV无码Porn| 丁香婷婷五月份| 久草 天堂| 激情五月色综合| 婷婷综合五月| 日韩精品一区二区亚洲AV观看| 深爱激情网婷婷| 九九色综合网| 操逼五月天| \\五月天婷婷激情| 九九色图| 麻豆精品| 久久 视频这里只有精总| 日日夜夜狠狠| 影音先锋一区| 蜘蛛女侠2003满天星免费观看| 图片区 小说区 区 亚洲五月| 午夜婷婷久久| 停停五月丁香| 久久精品熟女亚洲AV麻豆| 人人干天天舔| 色香蕉影院| 超碰在线超碰| 综合婷婷都市激情| 五月婷婷综合成人| 久久久人人人妻丝丝丝| 久久婷婷五月天| 五月婷久久| 国产免费一区二区三区三州老师F1F1.CC | 五月激情另类| 99热这里| 婷婷五月天堂网| 五月天综合久久| 色香久久| 亚洲婷婷五月| 91精品无码久久久久久五月天| 99日这里只有精品| 草草色情综合网| 五月色欧美| 国产XXXX搡XXXXX搡麻豆| 久久五月天合网| 免费观看的av| 婷婷综合激情五月中文字幕| 丁香五月激情天AV无码| 超碰99热| 丁香五月婷婷狠狠色| 天天色图| 婷婷九月| 伊人婷婷五月天| 婷婷丁香色五月亚洲| 99性视频| 狠狠色噜噜狠狠色噜噜噜999| 精品人妻一区二区三区四区不卡在| 99欧州偷拍视频| 大香蕉五月丁香| 超碰99在线观看| 99爱在线免费视频| 婷婷久久久久久久| 国产3p露脸普通话对白| 第一区久久网站| 丁香狠狠色婷婷久久无码视频| 午夜婷婷五月天| 99资源人人| 五月丁香激情综合啪啪| 久久五月丁香婷婷| 夜夜干天天操| 亚洲婷婷婷| 色天使色综合| 色爱综合网| 91爱啪啪| 无码激情AAAAA片-区区| 毛片毛片毛片毛片| 怡春院久操| 久久激情网| 亚洲 小说 欧美 激情 另类| 91综合在线观看| 琪琪色五月天| 99热20| 99久久久精品| 国产操碰| 天天综合天天玩夜夜玩天天玩夜夜玩 | 丁香五月婷婷网| 人人摸人人操人人爽| 精品久久99| wwwwww.色| 久久3p| 色五月激情五月| 激情深爱综合网| 超碰成人在线观看| 97色婷婷| www.夜夜操| 亚洲激情 久久| 亚洲天堂玖玖| 亚洲天天操| 五月婷婷之美女图片| 淫视馆AV在线| 国产AV一区二区三区日韩| 美女五月狠狠| 99色啊| 停停综合色色| 精品一区二区三区免费毛片爱| 噜噜色噜噜网| 五月色亭丁香| 国产精品国产| 久久综合婷婷激情| 久久综合爱| 久久综合婷婷激情| 五月久久婷婷| 久8色色| 99色视频| 欧美婷婷九月| 江苏少妇性BBB搡BBB爽爽爽 | 婷婷五月天在线看| 人人综合色| 综合激情婷婷| 狠狠爱婷婷爱| 丁香六月婷婷姐网| Xx色综合| 色九月婷婷综合| tingtingseav| 人妻丰满精品一区二区A片| 超碰猛烈的性猛交| 五月成人综合| 久久亚洲色导航| 色琪琪一综合久久激情五月视频| 亚洲成AV人片在线观看| 久色网| 丁香五月婷婷超碰在线| 亚洲最大视频| 婷婷色五月情| 一區四區歐美日韓| 国产99热| 久久婷婷五月丁香网| 超级碰人人操人人干| 国产无遮挡又黄又爽免费网站| 九九这里都是精品| 六月丁香色色| 五月丁香六月色| www.99成人视频| 婷婷色五月情| 狠狠操狠狠狠| 婷婷五月天激情偷拍| 婷婷激情中文综合| 婷婷永久在线| 九九九热精品| 日本九九网| 丁香花操逼| 色婷狠狠| 激情碰碰碰| 婷婷九月久久| 影音先锋一区二区资源站| av一级棒av| 777米奇影视第四色| 精品国产AV色一区二区深夜久久| 丁香五月天视频| 婷婷丁香色五月| 91综合在线| 大香蕉啪啪网| 丁香五月天激情视频| 九九香蕉网| 婷婷色在线观看| 色噜噜综合网| 激情五月六月婷婷| 99精品在线观看视频| AV人人操| 深爱五月婷婷| 国产成人AV| 激婷网| 五月丁香婷婷激情图片| 国产女生爱爱AA| 精品视频网| 888久久久| 日本女人久久| 亚洲AV成人在线| 青草网在线观看| VA日本视频| 婷婷五月天激情在线观看| 黄色99网| 激情五月,深深爱五月| 五月天激情亚洲| 精品久久人妻| 天天看A片| 丁香五月性| 99热精品9| 天天操天天草天天草天天| 丁香六月色婷婷| 婷婷成人视频| 色一情一乱一乱一区91| 99热18| 五月丁香花成人社区| 久久蜜臀婷婷| 99干视频| xx色综合| 婷婷五月激情五月激情| 色碰碰| 1000部毛片A片免费观看| 五月婷婷av在线| 婷婷欧美激情| 色噜噜狠狠色综合伊人| 99成人无码| 女人被男人吃奶到高潮| 亚洲色网址| 久久婷婷超碰| 99操无码视频观看| 欧美精品久久久久久视频观看| 五月激情丁香| 综合另类视频| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 色五月开心婷婷| 色五月婷激情| 色综合久久44| 艹B高清无码| 丁香五月天.com| 婷婷五六日| 天天射影院| 99成人| 五月婷婷成人| 综合色五月天| 五月丁香久人妻中文| 亚洲第一成人无码A片| 黄久久久| 日韩六十路91性交电影| 性高潮久久久久久-九九九九九九九九九九热-成人AV | 天天操,夜夜骑| 热九九精品| 婷婷九月久久| 久久婷婷成人视频| 天天草天天爽| 日日操夜夜擼| 久久98| 日本在线va| 亚洲熟妇AV乱码在线观看| 538任你爽视频不一样的| 色婷婷丁香五月在线| 日本视频99| 伊人免费视频9| 99热99成人| 色无码| 久久婷婷五月综合色欧美| 特黄三级片| 夜夜操夜夜操| 欧美性生交XXXXX无码小说| 婷婷的99视频网站| 韩国激情五月天综合网| 色爽干| 六月丁香五月婷婷首页| 伊人婷婷大香蕉| 操b视频在线观看一区二区| 中文字幕丁香五月| 丁香五月天啪啪| 久草五月天| 综合久久五月天| 色五月婷婷777| peg 2区三区四区的| 日韩999| 青青草轻轻操| 久久五月天综合| 久久天堂女人| 亚洲一区二区无码蜜乳av| 丁香激情网| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 亚洲成人av在线播放| 欧美日韩aaaa| 激情五月天天| 天天爽人人爽| 中字幕视频在线永久在线观看免费| 色九区| 色综合色五月| 五月婷婷激情| 久久女人天堂| 激情五月婷| 97色永久免费视频| 成人中文字幕在线| a久久| 牛牛色av| 激情综合网五月婷婷| 九九综合88| 色色色色色色色色综合网| 色色五月天 亚洲| 日韩av网址大全| www,setingting| 牛牛碰免费| 天天操天天插天天射| 五月天婷婷丁香社区| 婷婷五月综合中文字幕| 天天爽天天做| 丁香婷婷综合色五月激情国产基地| 丁香婷婷成人在线播放| 九九无毛| 天天摸天天舔天天天天爽| 亚洲av网址| 丁香六月激情| 午夜丁香婷婷| 99精品在线观看| 婷婷六月爽| 丁香五月婷婷免费视频| 五月深爱激情网| 怡红院成人AV| 婷婷无码视频| 美女天天久久| 欧美成人猛片AAAAAAA| 丁香五月激情图片| 色综合香蕉视频| 97碰碰视频在线观看| 久久久精品99亚洲综合| 无码激情AAAAA片-区区| 婷婷色情小说| 另类亚洲视频| 久机视频这只有精品| 99久久这里只有精品免费官网| 99超超碰| 激情五月天婷婷丁香| 欧美久久婷婷| 成人精品一区日本无码网 | 国产偷人爽久久久久久老妇APP| 色婷婷狠狠干芒果TV| 秋霞日本免费毛片A片| 色色a| 99热成人在线观看| 日本一毛片| 噼里啪啦完整版中文在线观看| 五月草影视| 久99视频在线观看| 欧美丰满熟妇BBB久久久| 综合婷婷五月丁香在线观看| 色碰碰| 国产日产亚系列精品版优势| 亚洲激情网| 日本妈妈乱| 丁香婷婷五月综合欧美另类| 99re视频在线播放| 伊人成人宗合网| 888久久久| 日韩成人综合网| 婷婷狠狠干| 五月婷婷伦理| 碰人人操| 国外亚洲成AV人片在线观看| 亭亭五月色男人| 伊人影音无码一区二区三区| 狠狠色噜噜狠狠狠狠狠色综合久久| 激情AV在线| 天天综合亚洲综合| 超碰成人在线观看| 波多婷婷久久| 深爱五月婷婷| 少妇综合网| 九九爱看亚洲| 久久性爱视频| 9久热在线精品| 99精品久久| 99精品国产在热久久婷婷| 提提热五月天婷婷| 丁香婷婷五月激情| 五月婷婷综合色啪首页 | 五月天亚洲图片婷婷| www.久操| 国产AV一区二区三区日韩| 色丁香久久| 天天爽,夜夜爽| 五月丁香激情婷婷综合字幕| 黄色片区子| 久久五月天激情婷婷| 国产黄大片在线观看画质优化| 五月天色色网站| 久狠狠| 丁香五月天激情网| 人人干天天操五月丁香| 91婷婷在线| 狠狠色大香蕉| 九九色网| 狠狠干最新地址| 欧美激情综合色综合啪啪五月| 秋霞A V毛片| 色偷偷色婷婷| 色播丁香婷婷五月激情| 涩综合在线| 九九色婷婷| 91久久精品无码一区二区三区| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 影音先锋一区二区资源站| 亚洲综合五月天婷婷丁香| www.超碰| 久久精品视频99| 五月婷激情影院| 日韩色色视频| 色婷婷AV久久久久久久| 色综合久久88色综合中文字幕| 成人va在线观看视频| 久综合网| 久久久久久久久久8888| 99热主页日本| 婷婷五月综合久久中文字幕| 欧美人人女女精品综合五月天| 9在线9在线婷婷在线国产| 丁香婷婷五月激情四射网| 玖玖婷婷色欲| 9国产在线视频| 亚洲妇女熟BBW| 97在线观看| 色五月婷婷777| 成人五月丁香花| 人人插操| 欧美性爱丁香五月| 五月婷婷电影院| 天天综合天综合久久网| 色六月 婷婷| 9热在线| 亚洲AV日韩AV永久无码网站| 天天操天天国产三级片处女学生妹| 人妻有码乱操| 久草视频大香蕉99| 欧洲区自拍| 国产精品丝| 97干欧美| 精品视频这里只有精品| 精品无码色| 开心五月丁香啪| 天天天天爽爽天干| 婷婷婷婷婷婷婷婷| 91超碰在线播放| 激情www| 无码色| 久久性都花花世界成人免费视频| www网站在线观看| 色五月大| 丁香六月啪啪| 五月天婷婷六月| 婷婷五月花西瓜| www.婷婷,com| 精品人妻一区二区| 欧美成人AAA片一区国产精品| WWW.HENHENL.| 激情久久久久久久久久久| 五月丁香六月色婷| 99热在线这里只有精品| 久久精热| WWW,五月| 91男人操女人视频| 久啪欧美| WWW.天天日| 日本熟女一区二区| 色噜噜狠狠色综无码久久合欧美| 综合激情站| 老师高潮流白浆喷水的A片| Caop在线| www色婷婷久久综合久色| 这里只有精品9| 8区视频在线| 少妇真实被内射视频三四区| 久久婷婷大香蕉| 99色色网| 日日撸日日操| AV成人在线播放| 激情五月丁香五月| 精品成人无码A片观看香草视频| 沈娜娜av| 色玖玖综合网| 丰满人妻一区三区三区| 99性爱视频| 日本三级大片| 在线综合91| 久热这里只有精品6官网亚洲| 伊人久久丁香婷婷六月五月综合| 中文字幕AV网址| 欧美性生交XXXXX无码小说| 碰碰操91| 伊人丁香五月| 棕合影院色色| 97超碰,人人舔,人人操,人人摸 | 伊人五月天综合网| 欧美色爱五月天| 亚洲精品亚洲人成人网| 免费操超碰| 好好日激情五月天| 色婷婷免费视频| 色五月丁香91| 五月天激情综合网俺也去| 丁香五月婷婷色偷偷| 亚洲操逼网| 五夜丁香| 深爱五月婷| 五月天激情婷婷| 丁香六月激情四射| 婷婷五月激情在线视频| 丁香六月天| 丁香六月色婷婷| 99热九九热| 日韩综合成人| 99re99热| 另类激情五月| 在线91日韩| 丁香婷婷色五月合集| 五月丁香综合啪啪| 五月婷婷激情久久| 五月色影院| 色综合综合综合| 美妞av| 五月激情啪啪啪| 丁香婷婷婷五月综合色情| 乱轮A片| 五月开心播播网| 无码网| 夜夜骑夜夜操| 欧美三级欧美一级| 五月丁香婷婷网在线在线| 婷婷情色五月| 五月天五月色| 97色色色| 六月婷婷成人| 色色五月丁香| 人伦30P| 丁香五月AV| 亚洲成人网站在线| 五月天婷久精视频| 天堂va久久久噜噜噜久久Va| 丁香婷婷久久老熟女综合网| 国产特级毛片AAAAAAA高清| 99久久99视频只有精品| 丁香五月天啪啪| 欧美精品99| 丁香九月久久| 日本久热| 99视频自拍| www.五月婷婷久久.com| 亚洲天堂啪啪| 外国碰视频网站97| 久久久.COM| 欧洲不卡视频| 色9999日韩国产| 九九热黄色| 99热色精品| 五月丁香久久综合| 亚洲色色色| 天天做天天双| 黄网在线免费观| 天天做天天爱综合| 99啪在线视频|