亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

CrewAI自定義工具開發(fā)實(shí)戰(zhàn):從設(shè)計(jì)到踩坑全記錄

CrewAI自定義工具開發(fā)實(shí)戰(zhàn):從設(shè)計(jì)到踩坑全記錄 最近在項(xiàng)目里折騰CrewAI多智能體開發(fā)最讓我上頭的不是Agent怎么編排而是“自定義工具”這塊。團(tuán)隊(duì)的需求很直白讓AI自動查庫存、核訂單、跟進(jìn)物流狀態(tài)。聽起來簡單可CrewAI自帶的那幾個工具根本碰不到企業(yè)內(nèi)部接口最后還是得老老實(shí)實(shí)寫自己的工具。這篇就把我在CrewAI里從零創(chuàng)建自定義工具的設(shè)計(jì)思路、代碼實(shí)現(xiàn)、踩坑記錄一起整理出來。適合剛把Agent跑通、卻發(fā)現(xiàn)內(nèi)置工具不夠用的同學(xué)也適合準(zhǔn)備在業(yè)務(wù)場景里擴(kuò)展智能體能力的開發(fā)者。不需要懂框架源碼只要會點(diǎn)Python跟著走一遍就能自己寫出第一支工具。1. 為什么要在CrewAI里寫自定義工具1.1 智能體與工具的“手腳關(guān)系”CrewAI的核心模型很簡單Agent是大腦負(fù)責(zé)理解任務(wù)、拆解計(jì)劃、判斷下一步做什么但大腦不會真的去調(diào)外部系統(tǒng)真正動手的是Tool。模型本身不具備“查詢數(shù)據(jù)庫”“調(diào)用訂單接口”“讀本地文件”這些能力它能做的只是“決定調(diào)用哪個工具、傳什么參數(shù)、怎么解讀返回結(jié)果”。如果沒有自定義工具Agent的能力邊界就非常有限。它只能靠訓(xùn)練時學(xué)到的知識和內(nèi)置工具提供的實(shí)時信息來回答問題一旦遇到私有系統(tǒng)、內(nèi)部API、特定業(yè)務(wù)規(guī)則就會開始編答案。所以自定義工具實(shí)際上是在給智能體“長手腳”每加一個工具就相當(dāng)于給Agent增加一種可以信賴的實(shí)操能力。在CrewAI里一個工具本質(zhì)上是一個可以被模型調(diào)用的函數(shù)包裝包含名稱、描述、參數(shù)定義和執(zhí)行邏輯。模型會從工具描述里判斷“這個工具是干什么的”“什么情況下使用它”。所以工具寫得好不好直接決定智能體能不能正確完成任務(wù)。1.2 內(nèi)置工具解決不了什么問題CrewAI插裝包提供了一些常用工具比如網(wǎng)頁搜索、文件讀取、網(wǎng)站內(nèi)容抓取、RAG檢索等。它們勝在通用開箱即用但問題也很明顯它們只面向“公開、通用、無業(yè)務(wù)規(guī)則”的場景。拿我手里的供應(yīng)鏈項(xiàng)目來說我需要查詢內(nèi)部訂單系統(tǒng)的訂單狀態(tài)這個接口有內(nèi)網(wǎng)訪問限制需要帶token認(rèn)證返回的是我們自定義的JSON結(jié)構(gòu)。內(nèi)置的網(wǎng)頁抓取工具根本不認(rèn)識這個接口也沒法處理認(rèn)證邏輯。更重要的是很多業(yè)務(wù)操作不只是“讀”還包括“寫”——比如審批、提交工單、標(biāo)記異常。內(nèi)置工具不會也不敢封裝這些有業(yè)務(wù)邏輯和權(quán)限控制的操作。所以自定義工具的核心價值在于封裝內(nèi)部系統(tǒng)的訪問邏輯把認(rèn)證、請求、解析細(xì)節(jié)收進(jìn)函數(shù)里把領(lǐng)域規(guī)則和校驗(yàn)邏輯放到可執(zhí)行代碼中模型不需要自己“推理”這些規(guī)則控制返回給模型的內(nèi)容格式避免無關(guān)信息擠占上下文對寫操作做權(quán)限校驗(yàn)和審計(jì)讓智能體的行為可控。1.3 自定義工具應(yīng)覆蓋的現(xiàn)實(shí)場景從實(shí)際項(xiàng)目看最值得自定義成工具的場景通常有幾類。第一類是內(nèi)部數(shù)據(jù)查詢。比如查庫存、查訂單、查客戶信息、查工單進(jìn)度。這類接口一般都在內(nèi)網(wǎng)而且數(shù)據(jù)結(jié)構(gòu)是公司內(nèi)部定義的模型沒法憑空猜到只能通過工具去拿。第二類是業(yè)務(wù)計(jì)算和規(guī)則判斷。比如計(jì)算運(yùn)費(fèi)、判斷是否滿足發(fā)貨條件、校驗(yàn)訂單地址格式。這些規(guī)則用代碼寫清楚比讓模型“看著辦”靠譜得多。第三類是寫操作。比如創(chuàng)建工單、提交審批、發(fā)送消息。這類操作必須控制在工具層不能允許模型即興發(fā)揮否則容易產(chǎn)生不可控的副作用。第四類是外部系統(tǒng)的集成。比如調(diào)用天氣接口、查詢物流軌跡、獲取匯率等只要是有固定API的服務(wù)都可以包成工具。一句話凡是模型不能憑常識完成的、需要實(shí)時數(shù)據(jù)或業(yè)務(wù)口徑支撐的動作都應(yīng)該考慮做成自定義工具。2. 創(chuàng)建前的設(shè)計(jì)決定工具好用不好用2.1 工具本質(zhì)是給模型看的“API文檔”很多人第一次寫自定義工具時注意力全放在“功能怎么實(shí)現(xiàn)”上結(jié)果功能寫對了模型就是不會調(diào)用。問題往往出在描述上。一個工具對模型來說就是一份“API文檔”工具名叫什么、它是干什么的、參數(shù)是什么含義、返回值長什么樣。模型通過這份文檔來決定是否調(diào)用。如果文檔寫得含糊模型要么不敢用要么亂用。我習(xí)慣把工具描述當(dāng)成“給一個認(rèn)真但不太了解業(yè)務(wù)的新人寫的操作說明”。要告訴他什么時候該用這個工具什么時候不該用參數(shù)應(yīng)該填什么格式返回結(jié)果里哪些信息是有用的。比如“order_status_query”的描述我通常會寫成當(dāng)用戶詢問訂單狀態(tài)、物流節(jié)點(diǎn)、簽收情況時使用。參數(shù)order_id是訂單號格式如SO-2025-0001。工具會返回訂單當(dāng)前狀態(tài)和物流節(jié)點(diǎn)如果訂單不存在返回NOT_FOUND。這樣模型一看就知道用戶問“我的單到哪了”時應(yīng)該拿order_id調(diào)用這個工具。2.2 粒度怎么控制自定義工具最怕兩個極端一是功能太粗一個工具里又查庫存又改價格又發(fā)消息模型用起來完全失控二是功能太細(xì)查一個訂單要分“查基本信息”“查物流信息”“查商品明細(xì)”三個工具模型容易選錯任務(wù)流程也變得冗長。我的經(jīng)驗(yàn)是按“業(yè)務(wù)動作的最小完整單元”來切分。也就是說一個工具應(yīng)該完整回答一類問題而不是做一些零碎的操作。例如“查詢訂單詳情”是一個完整動作它應(yīng)該返回模型回答“訂單現(xiàn)在什么狀態(tài)、預(yù)計(jì)什么時候送達(dá)”所需的核心信息?!案掠唵蔚刂贰笔橇硪粋€完整動作它負(fù)責(zé)校驗(yàn)新地址、調(diào)用更新接口、返回更新結(jié)果。粒度控制也不需要一開始就追求完美。我一般是先根據(jù)真實(shí)業(yè)務(wù)問題列一個工具清單然后拿幾個典型問題走一遍流程發(fā)現(xiàn)模型頻繁組合調(diào)用多個工具再考慮是不是要合并發(fā)現(xiàn)某個工具容易被誤用再考慮是不是要拆分。2.3 描述與參數(shù)Schema的拿捏工具設(shè)計(jì)里最容易翻車的兩個點(diǎn)一是description寫得不夠“觸發(fā)”二是args_schema定義得不夠清楚。description的寫法有個小技巧把觸發(fā)條件明確寫出來。不要只寫“查庫存”要寫“當(dāng)用戶詢問某個SKU在當(dāng)前倉庫是否有貨、可用庫存數(shù)量是多少時使用本工具”。觸發(fā)條件越具體模型調(diào)用準(zhǔn)確率越高??梢栽诿枋隼锛訄鼍笆纠热纭袄缬脩魡枴甋KU-10086還有多少貨’就適合調(diào)用本工具”。參數(shù)Schema要盡量用Field把每個字段的含義講清楚必要時給示例值。比如from pydantic import BaseModel, Field from typing import Type class StockInput(BaseModel): sku_id: str Field(..., description商品SKU編碼例如SKU-10086) warehouse: str Field(default, description倉庫編碼缺省為default倉)這樣模型在生成參數(shù)時可以根據(jù)描述填出正確的sku_id而不是隨便傳個“蘋果手機(jī)”之類的模糊值。如果字段是必填的用...表示如果不是必填的給出默認(rèn)值。類型也要卡緊別用object或dict否則模型不知道該傳什么結(jié)構(gòu)。2.4 錯誤處理與返回值設(shè)計(jì)工具返回值會被拼到模型上下文里。模型會基于這段內(nèi)容組織回答。所以返回值設(shè)計(jì)有一個核心原則返回“模型可以直接引用”的結(jié)論而不是返回一團(tuán)原始數(shù)據(jù)。比如查詢訂單接口返回了一大段JSON里面有創(chuàng)建時間、修改時間、內(nèi)部備注、嵌套的商品列表、物流軌跡數(shù)組。如果直接把這段JSON扔給模型模型也能解析但會浪費(fèi)大量token而且容易被無關(guān)字段干擾。更聰明的做法是在工具內(nèi)部提取關(guān)鍵信息整理成“訂單SO-2025-0001當(dāng)前狀態(tài)為已發(fā)貨物流公司順豐當(dāng)前節(jié)點(diǎn)為運(yùn)輸中預(yù)計(jì)明天18點(diǎn)前送達(dá)”這樣的文本。錯誤處理同樣重要。工具執(zhí)行時如果拋異常輕則讓本次調(diào)用失敗重則讓整個Crew任務(wù)中斷。我通常會在工具內(nèi)部捕獲所有異常把它轉(zhuǎn)換成人類可讀的錯誤消息。模型看到“訂單接口請求超時請稍后重試”后會自然地轉(zhuǎn)述給用戶而不是輸出一堆堆棧信息。3. 實(shí)操用BaseTool從零寫一個自定義工具3.1 環(huán)境準(zhǔn)備與項(xiàng)目目錄先準(zhǔn)備好環(huán)境建議用獨(dú)立的虛擬目錄。mkdir crew-tools-demo cd crew-tools-demo python -m venv .venv source .venv/bin/activate pip install crewai crewai-tools安裝完成后創(chuàng)建一個簡單的項(xiàng)目結(jié)構(gòu)crew-tools-demo/ ├── main.py ├── .env └── tools/ ├── __init__.py ├── holiday_tool.py └── order_tool.py把工具放在獨(dú)立文件夾里主要是為了復(fù)用和測試。一個工具文件只負(fù)責(zé)一個領(lǐng)域主流程文件只負(fù)責(zé)Agent和Crew的編排這樣后面維護(hù)起來非常清爽。工具內(nèi)部需要調(diào)用外部API時把地址和密鑰放在.env里用環(huán)境變量讀取不要硬編碼在代碼中。3.2 第一支工具節(jié)假日計(jì)算器先寫一個簡單的工具用來熟悉BaseTool的基本結(jié)構(gòu)。# tools/holiday_tool.py from datetime import datetime from pydantic import BaseModel, Field from crewai.tools import BaseTool from typing import Type class HolidayInput(BaseModel): year: int Field(..., description年份例如2025) country: str Field(CN, description國家代碼CN代表中國US代表美國) class HolidayTool(BaseTool): name: str holiday_calculator description: str ( 當(dāng)用戶詢問某個年份、某個國家的法定節(jié)假日數(shù)量 或最近的一個節(jié)假日日期時使用本工具。 ) args_schema: Type[BaseModel] HolidayInput def _run(self, year: int, country: str CN) - str: # 這里只是演示數(shù)據(jù)生產(chǎn)環(huán)境請?zhí)鎿Q為真實(shí)節(jié)假日API holiday_map { CN: [2025-01-01, 2025-01-28, 2025-04-04], US: [2025-01-01, 2025-01-20], } holidays holiday_map.get(country, []) if not holidays: return f沒有找到{country}的節(jié)假日數(shù)據(jù)請確認(rèn)國家代碼。 return ( f{year}年{country}共返回{len(holidays)}個節(jié)假日 f最近的一個是{holidays[0]}。 )這段代碼的核心結(jié)構(gòu)是定義輸入?yún)?shù)模型HolidayInput繼承BaseTool設(shè)置name和description在_run方法里實(shí)現(xiàn)業(yè)務(wù)邏輯。注意_run方法的參數(shù)名和類型必須和args_schema里的字段對應(yīng)。模型會按照schema生成參數(shù)然后框架把這些參數(shù)傳給_run。3.3 第二支工具查詢內(nèi)部訂單系統(tǒng)節(jié)假日工具只是熱身真正派得上用場的是連接內(nèi)部系統(tǒng)的工具。這里用requests調(diào)一個訂單API并做好錯誤處理。# tools/order_tool.py import os import requests from pydantic import BaseModel, Field from crewai.tools import BaseTool from typing import Type class OrderQueryInput(BaseModel): order_id: str Field(..., description訂單號例如SO-2025-0001) include_items: bool Field(False, description是否返回商品明細(xì)數(shù)量) class OrderQueryTool(BaseTool): name: str order_status_query description: str ( 當(dāng)用戶詢問訂單狀態(tài)、物流節(jié)點(diǎn)、簽收情況時使用本工具。 參數(shù)order_id為訂單號格式如SO-2025-0001。 如果訂單不存在返回NOT_FOUND。 ) args_schema: Type[BaseModel] OrderQueryInput def _run(self, order_id: str, include_items: bool False) - str: api_base os.getenv(ORDER_API_BASE, http://localhost:8000) try: resp requests.get( f{api_base}/api/orders/{order_id}, params{include_items: include_items}, timeout5, ) resp.raise_for_status() data resp.json() except requests.exceptions.Timeout: return 訂單接口請求超時請稍后重試。 except requests.exceptions.HTTPError as e: return f訂單接口返回錯誤{e}。 except Exception as e: return f訂單查詢失敗{e}。 if resp.status_code 404: return NOT_FOUND items_text if include_items and data.get(items): items_text f商品明細(xì)共{len(data[items])}件 return ( f訂單{order_id}狀態(tài)為{data.get(status)} f物流公司{data.get(logistics)} f當(dāng)前節(jié)點(diǎn){data.get(node)}{items_text}。 )這個工具做了幾件重要的事設(shè)置超時時間避免接口卡死捕獲異常并返回可讀信息整理返回結(jié)果只保留模型回答問題所需的信息。如果include_items為True也只返回商品數(shù)量不會把明細(xì)節(jié)全部塞進(jìn)上下文。這樣模型獲得的是干凈、可直接引用的答案。3.4 注冊到Agent并跑通Crew工具寫好后在main.py里把它掛到Agent上。# main.py from crewai import Agent, Task, Crew, Process from tools.order_tool import OrderQueryTool from tools.holiday_tool import HolidayTool order_tool OrderQueryTool() holiday_tool HolidayTool() support_agent Agent( role訂單客服專員, goal準(zhǔn)確回答用戶關(guān)于訂單和假期的詢問, backstory你是一名細(xì)心的客服只使用工具提供的事實(shí)回答不編造信息。, tools[order_tool, holiday_tool], verboseTrue, ) query_task Task( description用戶剛剛問SO-2025-0001這個訂單什么時候能送到請先查訂單狀態(tài)再回答。, expected_output給出訂單當(dāng)前所處節(jié)點(diǎn)與預(yù)計(jì)送達(dá)時間, agentsupport_agent, ) crew Crew( agents[support_agent], tasks[query_task], processProcess.sequential, verboseTrue, ) result crew.kickoff() print(result)執(zhí)行時Crew會先把任務(wù)交給Agent處理。模型看到任務(wù)描述里的“訂單狀態(tài)”再看到可用工具里有名稱和描述匹配的order_status_query就會自動生成調(diào)用參數(shù)并執(zhí)行工具。工具返回結(jié)果被放回上下文模型再組織成最終答復(fù)。如果你用的是其他模型服務(wù)只需要提前配置好對應(yīng)的API Key和模型名CrewAI本身并不綁定某個廠商。這里不展開具體配置按你平時用CrewAI的方式設(shè)置即可。3.5 使用工具時常見配置細(xì)節(jié)新手第一次接自定義工具最容易在導(dǎo)入路徑和類定義上卡住。先說導(dǎo)入路徑。不同版本CrewAI的BaseTool位置不完全一樣有的從crewai.tools導(dǎo)入有的從crewai_tools導(dǎo)入。我實(shí)驗(yàn)過幾個版本建議直接查看你安裝版本的官方文檔或者使用pip show crewai確認(rèn)版本。代碼層面只要導(dǎo)入路徑統(tǒng)一一般不會有大問題。再說工具實(shí)例。一個工具類可以實(shí)例化多次比如訂單工具可以根據(jù)環(huán)境不同創(chuàng)建測試實(shí)例和生產(chǎn)實(shí)例。實(shí)例傳給Agent時要放在tools列表里。有些版本還支持在Task級別臨時傳工具但我更推薦統(tǒng)一放在Agent上這樣Agent相關(guān)的所有任務(wù)都能復(fù)用不會出現(xiàn)某個Task忘了掛工具、模型瞎編的情況。還有一點(diǎn)BaseTool類本身是Pydantic模型所以類屬性里的name和description要定義為類字段并給出值。如果名字取得太隨意比如“tool1”模型很難理解它的用途。工具命名建議用小寫字母和下劃線比如order_status_query和Python函數(shù)命名規(guī)范保持一致。4. 進(jìn)階讓工具更穩(wěn)、更快、更省token4.1 狀態(tài)管理與線程安全多數(shù)自定義工具是無狀態(tài)的輸入?yún)?shù)進(jìn)來調(diào)用外部接口返回結(jié)果。這種設(shè)計(jì)最安全因?yàn)镃rewAI可能并行執(zhí)行多個任務(wù)多個Agent也可能共享同一個工具實(shí)例。如果你在工具內(nèi)部用self.xxx保存可變狀態(tài)就可能出現(xiàn)競態(tài)條件。如果確實(shí)需要統(tǒng)計(jì)調(diào)用次數(shù)、維護(hù)臨時緩存建議用鎖來保護(hù)共享狀態(tài)。比如給訂單工具加一個調(diào)用計(jì)數(shù)器import threading class OrderQueryTool(BaseTool): def __init__(self, **kwargs): super().__init__(**kwargs) self._count 0 self._lock threading.Lock() def _run(self, order_id: str, include_items: bool False) - str: with self._lock: self._count 1 current self._count return 第{current}次調(diào)用... # 實(shí)際內(nèi)容省略這段代碼只是示意實(shí)際項(xiàng)目中這種計(jì)數(shù)器多用于監(jiān)控和限流。核心思路是任何需要修改實(shí)例變量的地方都要考慮線程安全。能不用可變狀態(tài)就不用能用局部變量就用局部變量。4.2 緩存與冪等設(shè)計(jì)有些API查詢邏輯比較重同一個訂單號短期內(nèi)可能被模型反復(fù)查詢。如果能做一層緩存可以顯著減少外部接口壓力。查詢類工具的緩存很好加用內(nèi)存里的字典或者Redis都可以。from functools import lru_cache lru_cache(maxsize128) def _fetch_order_api(order_id: str, include_items: bool) - dict: # 實(shí)際請求邏輯 ...但要注意緩存會帶來數(shù)據(jù)陳舊的問題。訂單狀態(tài)是會變化的如果你把“運(yùn)輸中”的狀態(tài)緩存了30秒模型可能給用戶一個已經(jīng)“已簽收”的舊答案。所以我通常只對“短時間內(nèi)不會變化”的數(shù)據(jù)做緩存或者給緩存設(shè)置很短的過期時間。寫入類操作則要額外注意冪等性同一個操作不能被重復(fù)提交工具內(nèi)部要做防重校驗(yàn)。4.3 外部接口調(diào)用的超時與重試自定義工具一旦接通外部API穩(wěn)定性就成了最大的問題。外部接口可能慢、可能超時、可能返回5xx錯誤。requests庫的timeout參數(shù)一定要設(shè)否則一個接口卡住整個Crew任務(wù)都可能被拖死。我一般的做法是先設(shè)一個較短的連接超時比如3秒再設(shè)一個稍長的讀取超時比如5秒。失敗后可以重試但別無限重試通常兩到三次就夠了。重試之間加一點(diǎn)退避時間避免把下游接口打爆。import time for attempt in range(3): try: resp requests.get(url, timeout(3.05, 5)) resp.raise_for_status() break except requests.exceptions.Timeout: if attempt 2: return 訂單接口超時請稍后重試。 time.sleep(0.5 * (attempt 1))這種重試邏輯寫起來不難但能給整個智能體系統(tǒng)省下很多“看起來像傻了”的故障。模型面對超時錯誤時有時候會反復(fù)調(diào)用同一個工具試圖“碰運(yùn)氣”加上了重試之后至少外部接口層面已經(jīng)盡量可靠了。4.4 輸出精簡與上下文控制一個很多人會忽略的問題是工具返回值會被拼到模型的上下文中如果返回內(nèi)容太長會帶來兩個問題一是token消耗劇增成本變高二是上下文窗口被無關(guān)信息塞滿模型的注意力會被稀釋反而更容易答錯。所以工具返回一定不能“有言必錄”。我見過有人把整個數(shù)據(jù)庫表結(jié)構(gòu)返回給模型結(jié)果模型分不清哪些字段是給用戶看的哪些是內(nèi)部狀態(tài)。正確的做法是只返回“回答用戶問題所需的最小信息集”。如果某個信息用戶不關(guān)心就不要返回。如果結(jié)果是列表比如查到了50條待處理工單不要全部輸出??梢苑祷亍肮?0條前5條為xxxx”同時提供另一個分頁查詢工具讓模型在用戶要求更多的時候再調(diào)下一步。這種設(shè)計(jì)既控制了上下文又保留了擴(kuò)展空間。5. 實(shí)際運(yùn)行中的問題與排查技巧5.1 模型不會調(diào)用工具先改描述最常見的現(xiàn)象是Agent跑完了但完全是靠模型“腦補(bǔ)”回答根本沒有調(diào)用你的工具。打開verbose日志如果看不到Tool調(diào)用記錄基本可以確定是描述沒有觸發(fā)模型。先檢查description是不是寫得“太文縐縐”。模型不是靠語義聯(lián)想來猜工具的它是根據(jù)任務(wù)文本和工具描述的相關(guān)性來判斷的。如果你在描述里只寫“查詢訂單狀態(tài)”可能不夠應(yīng)該寫成“當(dāng)用戶詢問訂單狀態(tài)、物流節(jié)點(diǎn)、何時送達(dá)、簽收情況時必須使用本工具查詢不要自行猜測”。把觸發(fā)詞寫得越具體模型越容易調(diào)用。我還習(xí)慣在描述里補(bǔ)一句“如果訂單不存在請不要編造直接返回NOT_FOUND給用戶”。5.2 參數(shù)傳錯或類型不符另一個高頻問題模型倒是調(diào)用工具了但參數(shù)傳得離譜。比如把訂單號傳成“那筆訂單”或者把year傳成“今年”。這通常是Schema描述不夠清楚導(dǎo)致的。解決辦法有三個層面一是給Field加更詳細(xì)的描述注明格式和示例二是給參數(shù)做兜底處理在_run里做類型轉(zhuǎn)換或默認(rèn)值填充三是工具內(nèi)部對非法參數(shù)返回明確錯誤讓模型有機(jī)會重試。比如if not order_id.startswith(SO-): return 訂單號格式不正確應(yīng)以SO-開頭請確認(rèn)后重試。這樣即模型傳錯了也能得到一個可理解的反饋而不是直接拋異常。5.3 工具拋異常導(dǎo)致對話中斷工具代碼里如果存在未捕獲的異常整個Crew任務(wù)經(jīng)常會中斷而且日志里全是堆棧。用戶體驗(yàn)極差。正確的做法是把異常攔截在工具內(nèi)部。前面訂單工具已經(jīng)演示了try-except的寫法。需要注意的一點(diǎn)是返回錯誤信息時不要返回一堆技術(shù)細(xì)節(jié)比如“KeyError: status”。應(yīng)該轉(zhuǎn)譯成“訂單數(shù)據(jù)缺少狀態(tài)字段暫時無法獲取完整信息”。模型看到這樣的內(nèi)容至少能組織出一句“系統(tǒng)暫時查詢不到該訂單的完整狀態(tài)”給用戶。5.4 智能體陷入循環(huán)或長時間不返回運(yùn)行過程中可能遇到Agent反復(fù)調(diào)用同一工具比如因?yàn)楣ぞ叻祷亓艘粋€錯誤模型不死心又用同樣的參數(shù)調(diào)了一次形成死循環(huán)。CrewAI里可以給Agent設(shè)置max_iter限制最大迭代次數(shù)。如果超過次數(shù)還沒完成任務(wù)會以失敗或部分結(jié)果結(jié)束總比無限循環(huán)好。另外工具本身的耗時也要設(shè)上限。如前所述requests必須設(shè)timeout重試要設(shè)次數(shù)。如果一個工具的平均耗時就超過30秒那整個Crew的交互體驗(yàn)會非常差。遇到這種情況要考慮異步處理或把長任務(wù)拆出去而不是讓Agent一直等著同一個同步接口。5.5 調(diào)試CrewAI應(yīng)用的輕量方法調(diào)試自定義工具我會分三步走。第一步脫離框架單獨(dú)測工具。直接寫一個腳本實(shí)例化工具類調(diào)用_run方法確認(rèn)返回值符合預(yù)期。這一步能過濾掉80%的邏輯問題。第二步用一個極小Crew做集成測試。只放一個Agent、一個Task、一個工具任務(wù)描述是固定的真實(shí)業(yè)務(wù)問題。打開verboseTrue觀察模型是否調(diào)用工具、調(diào)用參數(shù)是什么、返回結(jié)果如何被使用。第三步逐步增加復(fù)雜度。先把一個工具跑順再加第二個工具先跑單Agent再加多Agent協(xié)作。每次只變更一個變量出了問題就能立刻鎖定原因。我還習(xí)慣在工具的關(guān)鍵位置加print或log。CrewAI的verbose輸出會顯示一部分日志但工具內(nèi)部的print內(nèi)容更直接。上生產(chǎn)前再把這些調(diào)試輸出刪掉或改成logging級別。最后說一點(diǎn)個人體會在多個項(xiàng)目里改過自定義工具之后我發(fā)現(xiàn)最深的坑往往不是代碼而是工具描述。剛開始我會把description寫得很“像人話”什么“獲取訂單運(yùn)輸軌跡信息”結(jié)果模型就是不愛用。后來改成“當(dāng)用戶問我的訂單到哪了、快遞到哪了、什么時候能送到時必須使用本工具”調(diào)用準(zhǔn)確率立刻上來了。另一個很深的體會是工具返回一定要精簡別一股腦把原始數(shù)據(jù)丟給模型模型不差信息差的是結(jié)構(gòu)清晰、可直接引用的答案。如果手頭正在搭CrewAI智能體我建議從一個小工具跑起。先挑一個你每天都要重復(fù)查的內(nèi)部接口做成工具掛到一個最簡單Agent上跑通。跑通之后再加第二個工具、再加第二個Agent。這套節(jié)奏看著慢但每一步都能積累可復(fù)現(xiàn)的配置和排查經(jīng)驗(yàn)后面多智能體協(xié)作起來會穩(wěn)得多。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产精品岛国片在线观看| 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | 91蜜臀在线久久久久| 91香蕉国产尤物视频| 2019天天操天天爽天天拍| av在线一区二区三区| 九色 蝌蚪 熟女自| 97干天天| 诱惑人妻欧美一区在线播放| 又黄又爽在线观看视频| 女同性恋久久| 一区操逼| 久操视频在线观看| 密臀在线视频| 久久爽爽精品| 啊啊啊在线看| 99久在线精品99re8热视频在线| 亚洲天堂,男人| 福利操逼| 天堂俺去俺来也www久久婷婷| 青青草五月天| 中文字幕制服欧美久久一区| 五月婷婷激情网| 亚洲欧洲日本精品中文a∨| 久久综合超碰| 偷拍亚洲高清图片| 亚洲天堂男人在线| 午夜天堂啪啪| 婷婷色网| 91天天日| 色五月天AV| 欧美激情综合色综合啪啪五月| 欧美另类精品xxxx| 无码操逼网| a片自拍直播视频| 熟女熟妇一区二区三区视频| 日本999精品| 国产大片精久久久久久| 99国产在线绯色一区| 台湾佬中文娱乐自偷自拍| 久久久久久国产精品免费网站| 欧美十八禁视频| 97天天| 啊啊啊 在线| 超碰无码五月97| 欧美日韩国产电影| 操B久久| 九月丁香婷婷| 欧美第38页| 久久伊人在线五区| 刺激性视频黄页| 女生自91网站| 素颜老阿姨乱情色| 色情婷婷久久五月天| 麻豆一区二区三区精品| 一区二区三区成人 | 骚妻少妇精品性色无码四色A V| 曰韩少妇无码| 热久久无毒不卡| 国产女主播视频在线观看| 亚洲 综合 第一页| 人妻蜜桃臀| 91制服丝袜中文字幕| 天天干人人乐| 欧美区亚洲区偷拍区 | 97一区二压| 亚州欧美综合| 欧美97网| 在线观看无码三级少妇| 成人看片网站| 啊啊啊啊啊操我视频| 日夜久久久九九九久| 日本精品人妻少妇一区二区| 久草电影网| 欧美性夜| 中文?日韩?免费?精品| 国产日韩色综合| 一线黄色免费性爱片| 免费的黄片有限公司| 一区二区三区探花在线观看| 色婷婷久久| 91neishe| 一本久道久久综合狠狠爱一密臀精| 青青色在线观看| 亚洲精品久久久久毛片A片拉屎 | 丰满人妻一区二区三区| 国产精品 久久久精品一牛| 温婉少妇玩3p| 日本一级性爱| 欧美 亚洲 大香| 天天操天天日青青草超碰av| 超碰色老头| 最新日本中文字幕| 18禁中文字幕| 欧美三级免费伊人| 日夜伊人网| 夜夜操青青草| 亚洲av热热色| 91亚洲欧洲| 91bbb| 情趣丝袜无码操逼视频| 久久久久久69国产一区二区| 能看的av| 天天日熟妇| 搡老女人911熟妇老熟女| 国产亚洲深夜激情| 99久久无色码| 九七人妻在线| 精品国产人成在线| 极品色电影院| 精品无码一区二区| 欲色综合| 狠狠穞A片一區二區三區| 国产天美传媒精品| 吖在线不卡一区二区国产剧情| 久热九九| 操B久久| 久久精品无码不卡| 亚洲国产精品久久久久久久久久| 老鸭窝成人| 黑人白女精品一区| 欧美乱色| 天天综合网日韩| 久99| 欧美巨大性舒爽顶到了| 在线观看一卡二卡| 欧美78P| 极品美女福利在线观看| 国产地址二三| 欧美一级特黄淫片在线观看| 九九久久久久久爱| 亚洲熟伦熟妇AV无码春色| 六月天婷婷| 天天操熟妇| 97在线观看| 男人的天堂2010| 女人综合网| 天天做天天爱天天爽| 大干人妻| 九九性爱网| 久久久久久久综合,国产| 日本高清_区二区三区| 欧美午夜视频| 久操操| 国产久9| 九久9精品| 嗯嗯啊好爽| 欧美日韩性爱精品| av网站免费看| 香港久久久| 狠狠操狠狠爱| 国产黄色在线播放观看| 精品无码久久久久| 三级激情网站| …中文字幕亚洲乱,97人妻无码费视…| 自拍偷拍2025在线观看| 极品少妇久久久| 97爱免费插| 操东北女人| 无码人妻丰满熟妇奶水区毛片| 国产美女高潮| 欧美亚洲清纯| 婷婷四五区| 天天操天天日天天干| 精品午夜福利国产一区二区在线观看 | 综合网欧美在线| 凹凸视频在线一区二区| 色婷婷一区二区三区久久午夜| 一级免费啪啪片| 91狠狠综合久久| 九九激情网| 日本一区二区不卡| 中字一区| 国产肏屁眼视频| 91精品无码久久久久久久| 天天摸夜夜摸| 亚洲熟女中文字幕在线| 91精品久久久久五月天精品| 欧洲亚洲人人爽爽视频| 玖玖人人爱| 日本性爰一道本| 亚洲毛片久久| 精品久久久一本一道| www.激情| a级成人毛片免费视频高清| 久草这里只有精品| 亚州男人的天堂| 樱花蜜乳av| 亚洲干B| 欧美性,色九九| 大香蕉免费乱伦视频| 久久久久亚洲Av无码专区老牛影视 | av一区二区三区四区五区久草臀| 久久久久国色αv免费观看| 亚洲18禁| 91色综合激情| 色性荡荡荡荡视频| 亚欧成人综合影院| 蜜乳视频网站| 日本男人天堂| 密臀视频三区免费网站| 欧美人人天天网| 亚洲夜色在线| 亚洲宅男天堂| 亚洲国产日韩欧美熟妇在线| 日韩性爱高清免费视频| 欧美成熟性爱精品| 夜夜夜爽www精品视频| 欧美影音在线| 福利一级版子| www.高清无码诱惑一区.com | 操操啪| 日韩一区二区精彩视频| 国产在线激情| 国产人人干| 久久一本大香蕉 | 亚洲成人无码影院| 激情 欧美 亚洲 小说| 欧美综合第一页| 神马久久免费电影观看| 美女91网址| 51一区二区三区| 超碰在线第一页| 日韩av色图| 亚洲丝袜色图| 九九久久国产精品| 精品一区二区啪啪啪| 欧美性爱另类综合| 亚洲午夜免费狠狠干| 色狠狠色| 欧美黄页在线| 九九成人| 欧美黄色图片| 久久精品99久久久久久| 大白逼三四级| 青娱乐黄色录像| 亚洲骚逼少妇| 国产无马在线| 日韩在线性爱免费视频| 久色99999| AV男人天堂网| 国产精品久久泡妞网站| 天天插网| 国产精品久久成人免费| 天操老女人| 人人干人人操人人爱| 99re不伦| 人人摸人人叼| 欧美亚洲清纯| 99999精品| 丰满人妻一区| 91亚洲不卡一区| 九九九九精品视频| 91人妻爽爽人人做人人澡| 精品毛片av一区二区| 中文字幕一区 二 区 三 四 五 区日 日 骚| 超碰97男人| 北约熟女超碰| 亚洲男人天堂手机版| 91九色网| 91n处女在线观看| 天天日天天干天天整| 亚洲在线| 日韩成人无码| 日本综合色图| 啊啊啊轻点在线观看| 乱色视频中文字幕| 亚洲丝袜天堂| 亚洲最大网站av| 无套后入双马尾| 亚洲国产第一页综合视频| 伊人国产AV| 中美日韩毛片| 水野优香在线观看| 毛片电影一区二区三区| a男人的天堂久久一级A毛片| 青青草色AV| 国产女人9999| 91老熟女91老女人| 亚洲高清在线se| 日本啊啊啊啊啊视频| 91色爽欧美| 亚州色图第三区| 亲子敌伦对白在线播放| 国产九九九九九九| 色香伊人| 91久久国产综合精品| 超碰 另类 欧美 | 丝袜视频网国产90| KK色在线影院| 亚洲色图图片| 日本操逼二区| 一起草三级AV电影在线观看 | 神马久久久久久久久久久久| 天天看特黄的免费网站| 色天堂综合| 精品人妻一区二区三区视频| 日韩成人人妻网站| 日本不卡五区| 岛国毛片在线观看免费| 操逼网站地址| 妺妺跟我一起洗澡没忍住| a级理论午夜日本| 日本十八禁免费看污网站| 97福利视频| 日韩性爱小视频| 999久久久免费精品国产牛牛| 亚洲麻豆av一区二区| 欧美96交| 国产v片在线免费观看| 国产伦乱91| 激情五月综合网| 人人色97| 性欧美第一页| 中国女人内射6XXXXX| 久9久| 欧美性爱一区二区三区| 亚洲综合五月天婷婷丁香| 91高跟美女在线播放| 91色狼| 大香蕉啪啪啪| 超碰99热中文字幕| 天堂网亚洲区手机版| 欧美少妇人妻| 色婷婷激情| 欧美色97| 国产呦精品一区二区三区下载| 美骚妇av高清在线| 99国产在线 精品 视频| 超碰免费欧美7| 欧美亚洲特P| 蜜乳成人AV| 久久一区无码| 久久中文字幕一区不卡| 在线观看啊啊啊啊啊| 91碰碰| 久久久久久少妇| 国产无码久久高清| 欧美日韩夜夜| 欧美色另类| 国产精品老师| 亚洲日韩精品一区二区| 密臀在线免费观看| 日韩亚洲中文有码视频| 精品美女少妇一区二区| 91中文精品日韩欧美在线| 黑人嘿嘿嘿超爽免费视频| 无码视频黄色网战| 91天堂| 久久亚州高清| 激情天天视频| 躁躁日曰躁2020| 亚洲在线网站| 天天热精品| 亚洲第一在线视频| 强奸乱伦av电影| 97免费在线观看| 精品国产乱码久久久久久久| 婷婷色一区| 中国AV美女| 蜜臀久久99'精品久久久| 6080yy午夜理论三级一区二区三区无码| 亚洲欧美日韩二区视频| www国产无码| 精品一区二区久久| 99色视频| 操B视频日韩无码| 99热18这里只有精品| 激情久久久| 天天爽夜夜爽夜夜爽精| 91骚熟女| 天天综合青苹果| 97色欧洲| 成人性交午夜免费片| 牛牛久久国产精品视频一二三| 91蜜臀在线久久久久| 伊人久久88国产女| 日本三级日本三级99| 人人贴人人摸| 日韩一级二级三级免费看完整版| 狠狠色五月亚洲91| 久久9999| 日韩无码服务区| 久久99999| 色九九综合AV| 色五月av| 尤物黄色在线观看网站| 性爱1区| 天天干,夜夜爽| 18一区二区三区| 宅男91视频在线播放| 综合网欧| 91蜜桃传媒精品久久久一区二区| 超碰午夜| 久草新免费| 伦理弟一页| 国产夫妻性生活视频| 中文字幕欧洲有码| 欧美黄色手机在线观看| 久久久久久久久久久久97| 久久久久国产精品人妻aⅴ天堂| 日本东京热大香蕉a片| 免费97视频| 思思热影视| 日韩三四五区| 欧美aⅴ99久久黑人专区| 中文字幕AV片| 亚欧美色| av在线一区二区三区| 色欧美天天| 九九九九免费高| 人人性爱视频免费| 欧美美女在线高潮999| 久久久熟女一区| 国产97av| 九色婷婷| 丝袜高跟澳门91视频| 国产农村妇女精品| 五月天啪啪| 日本在线999| 日本三级韩三级99久久| 亚洲色棕合| 秋霞影音一区二区三区| 欧洲亚洲天堂精品| 色婷视频| 综合国产影视三级| 黄色一区三区| 亚洲一区日韩精品中文字幕| 精品一啪| 国模不卡一本二本三电影| 亚洲天堂精品日韩电影| 日本欧美国内在线| 青青草一区二区高清无码视频| 一本大道不卡一二三区| 日韩综合97P| 影音先锋国产精品| aa片毛片| 美熟女逼导航AV操逼| 夜夜嗨AV一区天天| av绯色| 超碰97最新人妻| 极品销魂美女一区二区| 亚洲一本色码中文字幕| 校园春色宗合网| 一区二区视频在线播放| 国产精品96| 综合91网| 日韩亚洲中文有码视频| JuliaAnnXXX888| 中文字幕少妇色| 大香樵伊人网| 午夜超爽| 久久精品区| 久久久婷婷| 亚欧性爱ab| 亚洲欧洲自拍| 狠狠操狠狠燥| 色九月综合| 国产精品高潮久久久无码| 国产亚洲日本| 大香蕉在线86| 久久性视频| 午夜120视频在线观看| 99久久99九九99九九九| 欧美国产有色电影| 亚洲男人天堂网久久| 天天做日日爱夜夜爽| 四虎国产精品永久入口| 一级免费精品| 欧美 亚洲 91| 天天综合色| 精品人妻一区二区三区四区石在线 | 国产精品网址| 久久久国产精品亚洲精品| 免费一级欧美片片线观看| 0755午夜福利视频| 富二代亚洲精品99| 在线观看AV片| 97国产超碰| 亚洲日产专区婷婷| 欧美亚洲国内自拍| 日本护士高潮| 国产一级特黄大片处女| 在线a亚洲视频播放在线| www.久久超碰| 男人网站婷婷| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 色天堂综合| 亚洲精品丝袜-不卡成人免费……| 另类亚洲一区二区三区| 精品人妻一区二区三区四区| 91欧美丝袜| 色女99一级片在线观看| 激情综合网五月婷婷| 黄色免费网| 国产又爽又黄| 久操com| 亚洲欧美在线观看无码| 国产久久av| 日本视频一区二区三区| 天堂а√在线最新版在线| 99re9| 天堂性色| 玖玖久久久| 色臀AV| 蜜臀久久99精品久久久久电影| 草B在线| 超碰色97| 91精品久久久久五月天精品 | 欧洲色| 在线性黄高清免费视频| 丰满的三级少妇欧美久久久| 久久久无码av精| 91成人久久 | 日韩人妻丝袜中文字幕| 欧美一级AAAAAAA| 一区二区三区免费岛国片| 国产伊人自拍| 免费99精品国产自在在线| 久久色网| 日本午夜久久电影| 天美传媒av 在线| 蜜臀AV成人精品蜜臀AV久久| 好爽免费视频,| 久久久天美| 永久免费观看的毛片的网站| 亚洲最大成人a毛毛片| 亚洲中文字幕97久久精品少妇| 久久亚洲熟妇在线视频| 三级色影综合网| 天天综合网日韩7799| 大胆91| 色av中文字幕| 91中文字幕制服丝袜免费视频| 国产精品一区二区久久精品| 国产日比| 人妻丰满熟妇av无码区蜜桃| 日本操逼视频在线| 欧美亚洲综合色| 久男人久久| 日韩高清黄片| 桃色五月天| 亚洲在线91| 郑州宾馆老熟女露脸啪啪| 蜜桃久久综合视频| 亚洲男人天堂视频| 国产人妖的免费的视频| 亚洲色图20p| 色色色色综合网| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 国产日韩美女小穴视频网站不卡| 人人射人人操人人摸| 97欧美精品综合| 一区二区三| 天天天天天干夜夜夜夜夜操| 老女人91| 一级A片女人高潮叫床| 欧美久久婷婷| 成人av影院在线观看| 婷婷美人网| 久久精品 六十路 熟女 欧美| 东北黄色电影| 91综合在线| 久久久影院| www熟女乱伦com| 老汉网| 久久亚州精品成人Av无| 一区二区不卡免费| 亚洲男人天堂2012| 久久精品久| 富二代亚洲精品99| 一起草欧美| 狠操91,com| 免费看日本操逼视频| 亚洲成人ab| 人人手机欧洲亚洲国产人妻| 亚洲超碰AV| 试看60秒 爽| 婷婷九月丁香| 91操人| 天天影视网综合少妇| yaouchengrenav| 黄久在线| 欧美三级免费伊人| 一区二区三区精品久久| 色妺妺AⅤ| 熟女自慰久久久| 91操碰| 亚洲国产麻豆一区二区三区| 国产女人和拘做爰视频 | 青娱乐淫乱1314| 蜜桃臀久久| 嫩草伊人久久精品| 熟女日韩| 9久综合网| 深爱五月婷婷| 67914亚洲精品| 2020中文字幕| 欧美综合色站| 女优免费一区二区永久| 中日韩熟女| 2020中文在线一区二区三区| 天天看夜夜看日日干| 91精品国产91综合久久蜜臀| 99热66| 综合欧美日韩在线观看| 欧美疯狂做爰xxxx| 无码 有码 国产18p| 最新中文字幕在线亚洲| 国产91精品福利在线| 久久综合亚洲色1080p| 精品亚洲黄色片 国产精品导航一区二区 | 久久男人的天堂| 色欧美亚洲| 日韩偷拍一区二区三区| 色悠久| 欧美极品美女aaaaaa级黄片| 老司机深夜18禁污污网站| 日韩色欲久久一二三四区| 青娱乐国产盛宴视频| 丁香色色网| 懂色AV中文| 欧美日韩一二三| www熟女乱伦com| 99精品欧美一区二区三区桃色| 国产精品熟女九色九色蜜臀| 东京日日夜夜| 在线播放中文字幕| 国产精品亚洲天堂网址| 青娱乐日韩无码| 超碰人人乐97| 二三四区精品| 精品久久久久综合无码| 九九干| 极品色社| 亚洲色图A| 人人干人人搞人人摸| 天天干,夜夜爽| 欧美 日韩 另类 亚洲| 欧美精品欧美精品系列| 一区在线精品中文字幕| 激情五月天视频| 亚洲涩涩| 欧美日韩午夜精品一区二区三区 | 欧美日韩性感| 人人操人人射人人干| 精品九区| 约操熟妇| 亚洲涩涩| 高清国产性猛交xxxx乱大交| 青青草自拍视频在线播放| 成人性交免费视屏| 亚码激情| 91视频伊人| 久久久久骚| 超碰97综合在线| 一级啊性爱在线视频| 日韩中文字幕2020| 人妻日日干| 国产精品夜夜夜| 乱精品一区字幕二区| 国产精品一区二区a| 国产精品秘 福利姬在线观看| 国产精品午夜成人福利| 一级性爱网| 大香蕉综合网| baiduhicn.com。| 国产不卡免费在线视频| 999精品乱码| 和协影院中文字幕三区| 成年人性爱日韩| 91少妇通奸网站| 新婚人妻扶着粗大强行坐下| 欧美激情专区| 在线岛国新天堂8| 久热久操| 精品久久久久黄少妇| 国产av波波国产精品| 91天堂| 亚洲日韩XXX| 亚洲欧洲国产综合av| 亚洲精品欧洲色| 九九热超碰97亚洲最新香蕉| 亚洲黄片免费在线播放| www.男人的天堂| 久久精品视频久久久| 国产97视频免费观看| 男人精品区| 蜜臀AV一区二区三区激情综合| 国产精品嫩草久久久久| 亚洲天堂男人网| 中文字幕欧美日本乱码一线二线 | 五月天综合网| 国产AV色黄看到爽| 国产精品丝袜在线| 欧美成人色| 亚洲综合色男人网| 香蕉综合网| 狠狠色噜噜狠狠狠狠狠色综合久久| 亚洲色图欧美| 国产又粗又长的视频| 色鬼在线综合| 玖玖资源综合在线视频| ,成人免费啪啪视频| 一本久道久久综合狠狠爱一密臀精 | 亚洲av噜噜噜噜噜噜| 日本一区不卡| yaouchengrenav| 男女猛烈无遮掩视频免费软件| 99久久亚洲精品无码毛片潘甜甜| 97欧美超碰| 97久久久久| 一二视频神马久久传媒| 欧美色综合网| 在线观看中文字幕| 中文人妻av高清一区| 久久精品中文字幕无码l| 日本中文字幕不卡视频| 淫荡网址| 天天看夜夜看日日干| 一级性爱视频免费在线| 国产成年女人免费视频播放a| 久综合国内精品自在自线| 久操com| 国产亚洲精品自在线亚洲情侣 | 狠狠中文字幕| 农村妇女精品一区二区| 一本一道久久综合久久| 亚洲色人阁| 男女无套 免费网站| 国产综合色精品在线观看| 亚洲无线码欧洲精品区别| 青青草丝袜在线视频| 中文字幕永久在线| 91夜色chaopeng| 国产亚洲色婷婷99精品91| 精品欧美日韩在线观看| 97超碰精品| 天天操天天干一区二区 | 亚洲中文字幕久久人妻| 97香蕉碰碰人妻国产欧美| 中国黑人三级片网站上区| 亚洲国产精品9999在线观看| 亚洲操逼网| 熟妇高潮二区三区| 69少妇一区二区| 99热99在线| 中文字幕-区二区三区四区视频中国| BBBBB97COM| 亚洲欧综合另类无码一区| 色色亚洲| 99福利社| 91在线免费精品视频| 国产尹人在线视频免费| 91处女视频在线观看| 国产在线播放成人免费| 五月综合久久| 久久久少妇诱惑精品视频| 一级做a爰片久久毛片图片| 思思热在线| 九九九国产| 久操精品网| 欧美碰碰综合色| www.狠狠操| 日夜伊人网| 97久精品| 草久久久| 丰满人妻一区二区三区四区| 亚洲丝袜99| 国产精品亚洲免费| 蜜臀久久99精品久久久久久婷婷 | gogogo免费高清看中国国语| 热热色色综合| 亚洲欧美国产其他二区| 另类欧美| 婷婷香蕉欧美在线一区二区三区| 69一区二区三区 | 最新国内自拍av免费| 九九九午夜| 在线毛片片免费观看| 国产精品午夜成人福利| 9I1性色影院| 欧美熟女逼久久久久久| A级片日韩欧美国产欧美视频精选观看| 欧美网站免费| 欧美第二页午夜| 欧美1区二区三区公司| 91人妻超碰| 熟妇女伦乱视频| 国产超碰人人操| 黑人粗大V S日韩女优视频| 老子午夜伦不卡影院| AV一二区| dy888午夜老子影视达达兔| 日韩一区二区精品视频| 欧美色九九| 激情五月婷婷| 日天天九九天堂666| 国产女人操逼视频| 曰韩少妇无码| 亚洲色 国产 欧美 日韩| 亚洲成人妻日韩在线| 强奸乱伦 亚洲一区| 欧美在线l亚洲| 日韩综合成人免费视频| 亚洲AV无码久久精品蜜桃小说| 欧美日韩在线视频网站| 欧美五区| 成人免费看吃奶视频网站| 久9热| 夜夜躁狠狠躁日日躁av| 艹我哪美一区无码| 99999精品| 1区2区3区在线视频| 亚州色图欧美色图| 久久女人一区二区三区| 9丨久久九九九| 嗯嗯啊啊操死我| 婷婷丁香九月| 屁股久久久久久久久| 一区二区娱乐网站| 青青草大香蕉视频| 伊人婷婷五月天| 国产熟妇 码视频户外直播 | 国产老熟女| 久久黄色视频一区二区三区| 欧美美女后入| 久久久久久久久久久免费精品| 麻豆精品三区视频| 91日本在线观看| 蜜臀99久久精品久久久久| 日韩美女久久一区二区三区| 国产欧美成人第一页在线观看| 九九夜精品九九在线| 亚洲三区视频| 色狠狠一区二区三区香蕉| 97超碰jingpin| 久久精品国产亚洲妲己影视| 精品久久无码午夜福利| 色91综合网| 丁香九月 婷婷| 在线播放中文字幕| 一区二区三区网站日日骚| 亚洲国产奇米影视久久| 夜夜精品视频一区二区| 蜜桃久久久久久久| 亚洲成人性爱在线观看| 97爱综合| 91超碰在线播放| 色噜噜综合在线| 国产精品一区二区三区,亚洲综合| AV色五月天| 欧美 中文字幕 一区| 国产在线视视频有精品| 三级精品三级在线观看| 正宗无毛一线天嫩逼| 久草色悠悠在线视频| 精品在线观看视频在线| 麻豆国产97在线| 激情文学亚洲| 美女91在线观看| 欧美日韩国产黄色片| 综合伊人网12色| 日日躁夜夜躁狠狠躁超爽| 欧美A√综合网 | 秋霞网—男女啪啪亚洲免费体验区| 亚洲情色在线| 欧美中文字幕男人天堂久久精品| 亚洲αv一区二区三区| 日韩性爱一级片| 精品无av| 亚洲综合贴图91 | 人人透人人操| 中文字幕国产| 精品人妻免费观看| 久久伊人影院| 熟女高潮合集-永久久久-成人AV| 精品免费1| 91五月天| Av手机版天堂网| 91天天综合| 清纯唯美激情| 在线 欧美 亚洲| 国产亚洲精品美女| 亚洲综合888| 台欧久久精品视频| 天天日天天爽| 日韩欧美中文日韩欧美色| www.久久制服糖| 久96热在线观看视频| 搡老女人老熟女91老熟女综合网| 国产夫妻性生活视频| 一区二三区四区视频大全套| 九九热这里只有在线精品视 伊人草 成人菠萝蜜视频在线观看 | 无码99| 午夜免费福利视频一区| 特级毛片特黄久久免费看| 神马久久久久久久| 热热色91| 一起草视频在线| 久久二| 97免费视频在线| 色淫网站优优视频| 人人妻人人爽一区二区三区| 91色欧美| 精品人妻一区二区三区四区| 亚洲。天堂。日本在线观看| 天天日美女的B| 天天内射| 美女超碰978| 九九热九九热| 五月天久久久| 九月色婷婷| 九九综合久久| 丝袜熟女一区二区三区| 97人人操人人摸人人爱| 天堂中文资源在线bt| 91丨熟女丨丰满熟女| 日韩不卡毛片Av免费高清| 日韩激情中文字幕有码| 国产黄色av大片网站| 丰满人妻av一区二区三区| 精品国产一级久久| 日韩AV熟女乱伦| 精品偷拍13p欧美dodk视频| 久草国产在线视频| 香蕉人人操tv| 色五月婷婷久久| 91N欧美| 色婷婷综合久久久久中文一区二区| 色综合潮| www99热| 久久这里精品国产99丫e6| 区一二区日韩亚洲乱码av电影| 超碰综合色| 中文乱码99| 91AV天美在线视频| 搡老女人老91二区| 国产极品粉嫩馒头一线天av| 综合国产影视三级| 国产精品岛国片在线观看| 亚洲少妇中文字幕网址| 无码又爽又硬又激情免费视频| 久久熟女人| 先锋音影AV| 97久久超碰亚洲| 欧美激情视频一区二区| 人人摸.人人色| 天天日B夜夜干B时时操B| 日韩一区二区精品视频| 欧美日韩少妇色情| 国产熟女二区| 精品视频一二三中文| 91人妻最真实刺激绿帽| 狠狠色婷婷7777久| 欧美狠狠弄| 牛牛久久国产精品视频一二三| 国产精品97超碰| 人人性爱视频免费| 日本精品高清一二区一本到| 99热97| 欧美在线大香999| 人人操我人人干| www.色操逼| 久久精品视频久久久| 欧美日本不卡在线| 国产精品美女久久久久久网站| 在线一道啪| 九九精品美女高溯喷水 | 国产91会所女技师在线观看| 精品人体无圣光凹凸| 亚洲午夜免费狠狠干| 日韩精品影视| 久久久久久久9| 日韩探花精品在线视频| 第二页中文字幕| 992视频一区| 国产亚洲色停停久久99精品91| 五月丁香啪| 国产极品久久久| 日韩无限资源| 一起草欧美| 啊好大好舒服| 欧美高潮| 国产真乱mangent| 国产精品麻豆成人AV艾秋| 人妻无码后入| 99热在线播放| 九九香蕉网| 美腿丝袜高跟网免费视频免费视频| 九七超碰人人乐| 婷婷综合伊人一区| 99综合网| 性欧美第一页| 欧美日韩国产中文精品字幕自在自线| 日本超碰在线国产一区| av2014 日韩在线中文字幕| 3d成人精品一区二区| 日本不卡二三区| 日韩电影在线观看网址| 懂色AV一区二区三区| 国产精选视频| 婷婷91| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 亚洲影视综合| 婷婷丁香久久| 长久操视频| 韩三级a视频在线观看| 色五月丁香五月| 麻豆天美AV传媒第一页| 天天做日日做天天欢。| 亚洲凸凹超碰成人| 国产极品美女高潮无套在线观看| 亚洲区限制级| 国产成年精品高清在线观看91| 91网亚洲| 国产精品久久久久久高清无码免费看 | 嫩草一区二区在线观看| 夜夜 中文视频rt| 国产日韩欧美亚洲精品95| 福利一级版子| 乱伦av麻豆| 日韩不卡一二三四| 国产亚洲深夜激情| 天天做天天爱天天爽AV| 久久午夜鲁丝片| 午夜福利区| 日韩啊V| 夜草欧美| 黄色网址在线免费观看| 97超碰中文字幕| 日本网色| henhen91| 色综合中文字幕不卡| 日韩av电影成人在线| 少妇内射www在线观看视频| 高清无码在线播放网站| 啊啊啊啊啊啊啊网址在线观看| 黄片不用下载在线观看| 久久久久成人网| 亚洲色9| 最新中文字幕在线亚洲| 人妻少妇无码 | 久久久蜜桃臀无码视频| 日本少妇va7777| 特级丰满少妇一级AAAA爱毛片| 久久亚洲欧美一区二区三区-亚洲国产精品第一区二区 | 少妇极品熟妇人妻无码| 伊人色综合网电影| 97精品免费视频网站| 蜜臀AV成人精品蜜臀AV久久| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 啊啊啊啊啊好大好舒服想要| 竹菊影视国产一区二区| 亚洲男人的天堂va亚洲男人社| 人人操天天爽| 国产精品99精品视频网站| 婷婷另类小说| 日本99久久| 人人看人人插| 欧洲亚洲综合| 又大又长又爽| 日韩亚洲中文字幕在线| 婷婷色香伊人| 小明看看网址| 嗯啊免费视频| 乱伦AVxx| 亚洲网站一区二区在线| 刺激性视频黄页| 色狠狠综合| 亚欧性爱无码| 综合 亚洲 欧美| 午夜精品久久久久久久男人的天堂| 亚洲国产欧美一区二区潘金莲| 久久久三区二区一区| 国产无遮挡| 99久久久er直播网址| 欧美日本成人一区二区| 亚洲日韩黑丝| 欧美成不卡网| 国产成人亚洲精品自产在线 | 一区二区三区四区姦女| www.黄色在线| 亚洲另类欧美精品| 久久精品国产亚洲粉嫩| 爱爱久久| 欧美激情总合网| 手机看片1025| 色色色色日本| 中英熟女操女| 国产AV天美传媒一区二区三区 | 男人午夜天堂| 亚洲色电影在线| 久热99999| 色噜噜人妻丝袜AV资源| 在线国产探花| 国产高清成人mv在线观看| 亚洲婷婷丁香在线| 综合亚洲欧美| 极品人妻少妇综合| 韩日自拍| 久久大陆| 91GD.COM| 操人91| 天堂中文日本在线观看| 国产一区二区三区白丝| 夜夜操美女| 操逼操2| 性91| 精品久久久久黄少妇| 97色在线观看| 欧美亚州手机在线| 91蜜桃婷婷狠狠久久综合9色| 色区久久| 太久视频| 国产精品嫩草影院免费| 亚洲小电影免费涩涩成人在线高清| 国产又粗又大硬免费色网视频| 99999亚洲| 一本一道久久综合久久| 蜜臀久久99'精品久久久| 日韩精品三级片长长久久| 打av高清| 91网站18在线| 久久99国产综合精品女同| 久久久999日本大片| 亚洲色图大香| 黄色污污污污污污网站| 高清不卡视频| 伊人久久国产免费观看视频| 国产有码一区| 日韩/97| 欧美第38页| 青青草国产盗摄一二三区| 又黑又大又粗| 2019天天操天天爽天天拍| 乱老熟女一区二区三区| 日韩 欧美 校园一区| 亚洲三级网址久久最新| 97超碰巨乳| 98福利在线视频| 加勒比人妻综合| 日韩综合色网| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 欧美老熟另类| 日本久久综合| 久久久久久九九九九九九| 国产一区二区在线看| V A在线| 日本淫乱女一区二区三区视频| 99婷婷一区二区| 在线观看亚洲成人精品| 精品成人亚洲午夜电影| 久久三| 国产亚洲女v在线观看| 丁香五月婷婷色| 人妻日日夜夜精品| www.四虎在线| 亚洲诱惑天堂| 中文熟女五十乱码在线|