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

ARTICLE DETAIL

資訊詳情

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

AI Agent開(kāi)發(fā)入門(mén):從零手寫(xiě)Agent循環(huán),別一上來(lái)就啃框架

AI Agent開(kāi)發(fā)入門(mén):從零手寫(xiě)Agent循環(huán),別一上來(lái)就啃框架 1. 先搞清楚AI Agent 到底是個(gè)什么東西1.1 別被術(shù)語(yǔ)嚇到它就是個(gè)“會(huì)自己干活的程序”很多人第一次聽(tīng)到 AI Agent 這個(gè)詞腦子里浮現(xiàn)的是科幻電影里那種有自我意識(shí)的機(jī)器人。其實(shí)完全不是那么回事。你把它理解成一個(gè)“能自己判斷下一步該干什么的程序”就行了。傳統(tǒng)的程序是什么樣你寫(xiě)死邏輯第一步調(diào)A接口第二步判斷B條件第三步寫(xiě)C數(shù)據(jù)庫(kù)。每一步都是你提前規(guī)定好的程序自己不會(huì)變通。AI Agent 不一樣的地方在于它中間有一個(gè)“大腦”——通常是大語(yǔ)言模型——會(huì)根據(jù)當(dāng)前的情況自己決定下一步做什么。你給它一個(gè)目標(biāo)它自己拆解步驟、自己選工具、自己判斷有沒(méi)有做完。舉個(gè)例子。你讓傳統(tǒng)程序去“幫我查一下明天北京的天氣然后決定要不要帶傘”你得寫(xiě)調(diào)天氣API、解析返回結(jié)果、判斷降水概率是否大于某個(gè)閾值、輸出結(jié)論。每一步都是硬編碼。而 AI Agent 的做法是你把“查天氣”和“判斷是否帶傘”這兩個(gè)能力以工具的形式給它然后告訴它“幫我看看明天北京要不要帶傘”它自己會(huì)決定先調(diào)天氣工具拿到結(jié)果后自己推理最后告訴你結(jié)論。這就是本質(zhì)區(qū)別傳統(tǒng)程序是“你告訴它怎么做”AI Agent 是“你告訴它做什么”。那為什么現(xiàn)在 AI Agent 突然火起來(lái)了因?yàn)榇笳Z(yǔ)言模型的能力到了一個(gè)新的臨界點(diǎn)。2023年之前語(yǔ)言模型的理解和推理能力還不夠穩(wěn)定你讓它自己規(guī)劃步驟它經(jīng)常跑偏。但現(xiàn)在的主流模型在指令遵循、工具調(diào)用、多步推理這幾個(gè)維度上已經(jīng)相當(dāng)可靠了這才讓 Agent 從論文里的概念變成了能實(shí)際跑起來(lái)的東西。1.2 一個(gè) Agent 的最小構(gòu)成四個(gè)零件不管多復(fù)雜的 Agent 系統(tǒng)拆到最底層核心就四個(gè)部分第一大腦LLM。這是整個(gè) Agent 的決策中心。它負(fù)責(zé)理解用戶意圖、規(guī)劃步驟、選擇工具、判斷結(jié)果是否滿足要求。你可以用 OpenAI 的接口、Claude 的接口、也可以用本地部署的開(kāi)源模型。選哪個(gè)模型直接決定了 Agent 的“智商上限”。第二工具Tools。Agent 不能只靠嘴說(shuō)它得能干活。工具就是它跟外部世界交互的手段。查數(shù)據(jù)庫(kù)是一個(gè)工具發(fā)郵件是一個(gè)工具執(zhí)行一段代碼是一個(gè)工具甚至調(diào)用另一個(gè) Agent 也是一個(gè)工具。工具的定義通常包括名稱(chēng)、描述、參數(shù)列表、執(zhí)行邏輯。描述寫(xiě)得清不清楚直接影響到模型能不能正確選用這個(gè)工具。第三記憶Memory。包括短期記憶和長(zhǎng)期記憶。短期記憶就是當(dāng)前對(duì)話的上下文讓 Agent 知道剛才發(fā)生了什么。長(zhǎng)期記憶通常是外掛一個(gè)向量數(shù)據(jù)庫(kù)讓 Agent 能記住幾天前甚至幾個(gè)月前跟用戶的交互內(nèi)容。沒(méi)有記憶的 Agent 就像金魚(yú)每次對(duì)話都從零開(kāi)始。第四規(guī)劃Planning。這是 Agent 最核心也最難做好的部分。簡(jiǎn)單任務(wù)一步就完了但復(fù)雜任務(wù)需要拆解。比如“幫我策劃一場(chǎng)團(tuán)建活動(dòng)”Agent 得自己拆成確定人數(shù)、選場(chǎng)地、定預(yù)算、安排交通、發(fā)通知。怎么拆、按什么順序拆、拆到什么粒度這些都是規(guī)劃要解決的問(wèn)題。把這四個(gè)零件拼起來(lái)一個(gè)最簡(jiǎn)版的 Agent 循環(huán)就是接收用戶輸入 → LLM 思考該做什么 → 調(diào)用工具 → 拿到結(jié)果 → LLM 再思考 → 再調(diào)工具 → 直到任務(wù)完成 → 輸出最終結(jié)果。1.3 為什么新手容易走彎路一上來(lái)就啃框架的陷阱我見(jiàn)過(guò)太多人聽(tīng)說(shuō) LangChain 火上來(lái)就 pip install langchain然后對(duì)著文檔里那一堆 Chain、Agent、Tool、Memory 的類(lèi)發(fā)呆。折騰了兩天跑通了一個(gè) demo但問(wèn)他“這個(gè) Agent 為什么這么決策”完全答不上來(lái)。問(wèn)題出在哪框架幫你封裝了太多東西導(dǎo)致你看不到底層發(fā)生了什么。LangChain 確實(shí)好用它把工具調(diào)用、提示詞模板、輸出解析這些常見(jiàn)模式都封裝成了現(xiàn)成的類(lèi)。但這也意味著當(dāng) Agent 行為不符合預(yù)期的時(shí)候你根本不知道是提示詞的問(wèn)題、工具描述的問(wèn)題、還是模型本身能力不夠。你面對(duì)的是一個(gè)黑盒而調(diào)試黑盒是最痛苦的。我的建議很明確先用最原始的方式手寫(xiě)一個(gè) Agent 循環(huán)跑通了、理解了再去用框架。手寫(xiě)一個(gè)最簡(jiǎn) Agent 大概只需要 50 行 Python 代碼不依賴任何框架直接調(diào)模型的 API。這個(gè)過(guò)程會(huì)讓你真正理解 Agent 的工作原理之后再用 LangChain 或者 Spring AI 的時(shí)候你就知道框架在幫你做什么出了問(wèn)題也知道去哪里找原因。2. 新手和轉(zhuǎn)行者到底該先學(xué)什么2.1 第一優(yōu)先級(jí)Python 基礎(chǔ)但不用學(xué)到能寫(xiě)爬蟲(chóng)的程度AI Agent 開(kāi)發(fā)目前最主流的語(yǔ)言就是 Python。原因很簡(jiǎn)單幾乎所有大模型的官方 SDK 都是 Python 優(yōu)先LangChain、CrewAI、AutoGen 這些主流框架也都是 Python 寫(xiě)的。你用 Java 也能做Spring AI 就是干這個(gè)的但生態(tài)豐富度確實(shí)差一截。那 Python 要學(xué)到什么程度我的標(biāo)準(zhǔn)是能看懂函數(shù)定義和調(diào)用、會(huì)用列表和字典、知道怎么裝第三方庫(kù)、能寫(xiě) if-else 和 for 循環(huán)、會(huì)處理 JSON 數(shù)據(jù)。就這些足夠了。你不需要會(huì)寫(xiě)裝飾器、不需要理解元類(lèi)、不需要搞懂 GIL。那些東西等你真正遇到性能問(wèn)題或者需要讀框架源碼的時(shí)候再補(bǔ)。一開(kāi)始就抱著《流暢的Python》啃大概率是啃到一半就放棄了。具體來(lái)說(shuō)你需要掌握的知識(shí)點(diǎn)變量和基本數(shù)據(jù)類(lèi)型字符串、數(shù)字、布爾值列表和字典的增刪改查for 循環(huán)和 while 循環(huán)if-elif-else 條件判斷函數(shù)的定義和調(diào)用理解參數(shù)傳遞導(dǎo)入模塊和使用 pip 安裝包讀寫(xiě)文件尤其是 JSON 文件異常處理try-except虛擬環(huán)境的使用venv 或 conda這些內(nèi)容如果每天投入兩小時(shí)零基礎(chǔ)大概兩周就能達(dá)到“夠用”的水平。有編程基礎(chǔ)的人兩三天就能撿起來(lái)。注意不要花時(shí)間去學(xué) Python 的面向?qū)ο缶幊谈呒?jí)特性。Agent 開(kāi)發(fā)中你更多是在寫(xiě)函數(shù)和調(diào) API類(lèi)繼承、多態(tài)這些概念等你需要讀框架源碼的時(shí)候再學(xué)也不遲。2.2 第二優(yōu)先級(jí)理解大模型 API 的基本用法Agent 的大腦是 LLM所以你必須知道怎么跟 LLM 打交道?,F(xiàn)在主流的方式就是通過(guò) API 調(diào)用。不管你是用哪家的模型基本流程都是一樣的注冊(cè)賬號(hào)拿到 API Key安裝對(duì)應(yīng)廠商的 SDK或者直接用 HTTP 請(qǐng)求構(gòu)造請(qǐng)求把提示詞和參數(shù)傳進(jìn)去解析響應(yīng)拿到模型返回的文本以 OpenAI 的接口為例最核心的參數(shù)就幾個(gè)model用哪個(gè)模型比如 gpt-4o、gpt-4o-minimessages對(duì)話歷史是一個(gè)列表每條消息有 role 和 contenttemperature控制隨機(jī)性0 最確定1 最隨機(jī)max_tokens限制返回的最大長(zhǎng)度tools可調(diào)用的工具列表這是 Agent 的關(guān)鍵你需要理解messages的結(jié)構(gòu)。它通常包含三種角色system系統(tǒng)提示詞設(shè)定 Agent 的身份和行為規(guī)則user用戶輸入assistant模型之前的回復(fù)多輪對(duì)話就是把歷史消息都塞進(jìn)messages列表里模型會(huì)根據(jù)整個(gè)上下文來(lái)生成回復(fù)。這個(gè)機(jī)制看起來(lái)簡(jiǎn)單但它是 Agent 記憶功能的基礎(chǔ)。還有一個(gè)關(guān)鍵概念是Function Calling或者叫 Tool Use。這是 Agent 能干活的核心機(jī)制。你可以在請(qǐng)求里定義一組工具模型在回復(fù)的時(shí)候如果覺(jué)得需要調(diào)用某個(gè)工具它不會(huì)直接返回文本而是返回一個(gè)“工具調(diào)用請(qǐng)求”告訴你它想調(diào)哪個(gè)工具、傳什么參數(shù)。你的代碼拿到這個(gè)請(qǐng)求后執(zhí)行對(duì)應(yīng)的函數(shù)把結(jié)果再塞回對(duì)話歷史讓模型繼續(xù)處理。這個(gè)循環(huán)就是 Agent 的核心循環(huán)。手寫(xiě)一遍你就徹底懂了。2.3 第三優(yōu)先級(jí)手寫(xiě)一個(gè)最簡(jiǎn) Agent不依賴任何框架現(xiàn)在到了最關(guān)鍵的一步。我下面給出一段最簡(jiǎn) Agent 的偽代碼邏輯你用任何語(yǔ)言都能實(shí)現(xiàn)# 定義工具 def get_weather(city): # 實(shí)際調(diào)用天氣API return 晴25度 # 工具描述告訴模型這個(gè)工具是干什么的 tools [ { name: get_weather, description: 查詢指定城市的天氣, parameters: { city: 城市名稱(chēng) } } ] # 主循環(huán) messages [ {role: system, content: 你是一個(gè)助手可以查天氣}, {role: user, content: 北京今天天氣怎么樣} ] while True: # 調(diào)模型 response call_llm(messages, tools) # 如果模型返回的是工具調(diào)用 if response.has_tool_call(): tool_name response.tool_name tool_args response.tool_args # 執(zhí)行工具 result execute_tool(tool_name, tool_args) # 把工具結(jié)果塞回對(duì)話 messages.append(response.message) messages.append({ role: tool, content: result }) else: # 模型返回了最終文本 print(response.content) break這段代碼的核心邏輯就是調(diào)模型 → 看它要不要調(diào)工具 → 要就執(zhí)行工具并把結(jié)果喂回去 → 不要就輸出結(jié)果結(jié)束。就這么簡(jiǎn)單。你把這個(gè)邏輯手寫(xiě)一遍用真實(shí)的 API 跑通你就已經(jīng)跨過(guò)了 AI Agent 開(kāi)發(fā)的門(mén)檻。后面再學(xué) LangChain、LangGraph、Spring AI你就是在學(xué)“怎么把這個(gè)循環(huán)寫(xiě)得更優(yōu)雅、更可擴(kuò)展”而不是在學(xué)“Agent 是什么”。2.4 第四優(yōu)先級(jí)再學(xué)框架而且要有選擇地學(xué)等你手寫(xiě)跑通了再來(lái)看框架你的視角就完全不一樣了。你看到 LangChain 的AgentExecutor你會(huì)想“哦這就是把我剛才那個(gè) while 循環(huán)封裝了一下”。你看到Tool類(lèi)你會(huì)想“這就是我剛才那個(gè) tools 列表的面向?qū)ο蟀姹尽薄D强蚣茉趺催x我的建議是LangChain / LangGraph生態(tài)最全文檔最多社區(qū)最大。LangGraph 是 LangChain 團(tuán)隊(duì)后來(lái)推出的專(zhuān)門(mén)做有狀態(tài)的、多步驟的 Agent 編排。如果你要做復(fù)雜的、有分支和循環(huán)的 Agent 流程LangGraph 比原始的 LangChain Agent 更合適。缺點(diǎn)是抽象層多學(xué)習(xí)曲線陡。CrewAI主打多 Agent 協(xié)作。你可以定義多個(gè)角色比如“研究員”、“寫(xiě)手”、“審核員”讓它們互相配合完成任務(wù)。適合做內(nèi)容生產(chǎn)、數(shù)據(jù)分析這類(lèi)需要多角色協(xié)作的場(chǎng)景。API 設(shè)計(jì)比較直觀上手快。AutoGen微軟出的也是多 Agent 對(duì)話框架。特點(diǎn)是 Agent 之間可以自動(dòng)對(duì)話來(lái)解決問(wèn)題。適合做需要多輪討論和辯論的場(chǎng)景。Spring AIJava 生態(tài)的選擇。如果你本身是 Java 開(kāi)發(fā)者不想轉(zhuǎn) PythonSpring AI 提供了跟 LangChain 類(lèi)似的能力。但說(shuō)實(shí)話目前 Java 生態(tài)在 Agent 開(kāi)發(fā)這塊的成熟度還是不如 Python。Dify低代碼平臺(tái)可視化編排 Agent 流程。適合不寫(xiě)代碼或者代碼能力較弱的產(chǎn)品經(jīng)理、運(yùn)營(yíng)人員快速搭建原型。但靈活性受限復(fù)雜邏輯還是得寫(xiě)代碼。我的建議是先深入學(xué)一個(gè)別貪多。如果你主要做單 Agent 加工具調(diào)用的場(chǎng)景LangChain 就夠了。如果你要做多 Agent 協(xié)作看 CrewAI 或 AutoGen。如果你要精細(xì)控制 Agent 的狀態(tài)流轉(zhuǎn)看 LangGraph。2.5 關(guān)于 MCP它解決的是什么問(wèn)題MCP 最近熱度很高但很多人搞不清楚它到底是什么。我用一句話解釋MCP 是一個(gè)讓 Agent 跟外部工具對(duì)接的標(biāo)準(zhǔn)協(xié)議。在沒(méi)有 MCP 之前你每接一個(gè)工具都要自己寫(xiě)適配代碼。比如你要讓 Agent 能查數(shù)據(jù)庫(kù)你得寫(xiě)一個(gè)函數(shù)定義參數(shù)處理返回結(jié)果。你要讓它能操作文件系統(tǒng)又得寫(xiě)一套。每個(gè)工具的接入方式都不一樣復(fù)用性很差。MCP 的思路是定義一套標(biāo)準(zhǔn)接口工具提供方按照這個(gè)標(biāo)準(zhǔn)來(lái)實(shí)現(xiàn)Agent 這邊也按照這個(gè)標(biāo)準(zhǔn)來(lái)調(diào)用。這樣工具就能即插即用。你可以把它類(lèi)比成 USB 接口——以前每個(gè)設(shè)備都有自己的接口現(xiàn)在統(tǒng)一成 USB插上就能用。MCP 的核心概念包括MCP Server工具提供方暴露一組能力比如讀文件、查數(shù)據(jù)庫(kù)、調(diào) APIMCP ClientAgent 這邊負(fù)責(zé)連接 Server 并調(diào)用能力ResourcesServer 暴露的數(shù)據(jù)資源ToolsServer 暴露的可執(zhí)行操作Prompts預(yù)定義的提示詞模板現(xiàn)在很多工具已經(jīng)開(kāi)始支持 MCP 了比如 Playwright MCP 可以讓 Agent 操作瀏覽器百度地圖 MCP 可以讓 Agent 查地理位置。如果你要做的 Agent 需要跟大量外部工具對(duì)接花點(diǎn)時(shí)間了解 MCP 是值得的。但如果你只是做一個(gè)小 demo手寫(xiě)幾個(gè)工具函數(shù)就夠了不用急著上 MCP。3. 實(shí)操?gòu)牧闶謱?xiě)一個(gè)能查天氣和算數(shù)的 Agent3.1 環(huán)境準(zhǔn)備Python 安裝和虛擬環(huán)境先說(shuō) Python 安裝。Windows 用戶去 python.org 下載安裝包安裝的時(shí)候記得勾選“Add Python to PATH”。Mac 用戶可以用 Homebrew 裝brew install python。Linux 用戶一般系統(tǒng)自帶但版本可能比較老建議用 pyenv 裝一個(gè)新版本。裝完之后驗(yàn)證一下python --version pip --version然后建一個(gè)虛擬環(huán)境這是好習(xí)慣避免不同項(xiàng)目的依賴打架python -m venv agent-env # Windows agent-env\Scripts\activate # Mac/Linux source agent-env/bin/activate虛擬環(huán)境激活后命令行前面會(huì)出現(xiàn)(agent-env)的標(biāo)識(shí)。接下來(lái)裝依賴pip install openai requests如果你用的是其他廠商的模型把openai換成對(duì)應(yīng)的 SDK 就行。3.2 定義工具函數(shù)查天氣和做計(jì)算我們定義兩個(gè)工具一個(gè)查天氣一個(gè)做數(shù)學(xué)計(jì)算。查天氣我們用一個(gè)模擬函數(shù)實(shí)際項(xiàng)目中你可以接真實(shí) API。import json import math def get_weather(city: str) - str: 模擬查天氣實(shí)際項(xiàng)目中替換為真實(shí)API調(diào)用 weather_data { 北京: 晴氣溫25度濕度40%, 上海: 多云氣溫28度濕度65%, 廣州: 雷陣雨氣溫30度濕度80%, } return weather_data.get(city, f未找到{city}的天氣數(shù)據(jù)) def calculate(expression: str) - str: 計(jì)算數(shù)學(xué)表達(dá)式 try: # 只允許基本數(shù)學(xué)運(yùn)算避免安全問(wèn)題 allowed set(0123456789-*/.() ) if not all(c in allowed for c in expression): return 表達(dá)式包含不允許的字符 result eval(expression) return str(result) except Exception as e: return f計(jì)算錯(cuò)誤{str(e)}注意calculate函數(shù)里我做了字符白名單校驗(yàn)。直接用eval是有安全風(fēng)險(xiǎn)的雖然這只是個(gè) demo但養(yǎng)成好習(xí)慣很重要。3.3 構(gòu)造工具描述讓模型知道有什么工具可用工具描述是 Agent 能不能正確選用工具的關(guān)鍵。描述要清晰、準(zhǔn)確、包含參數(shù)說(shuō)明。tools [ { type: function, function: { name: get_weather, description: 查詢指定城市的當(dāng)前天氣情況, parameters: { type: object, properties: { city: { type: string, description: 城市名稱(chēng)例如北京、上海 } }, required: [city] } } }, { type: function, function: { name: calculate, description: 計(jì)算數(shù)學(xué)表達(dá)式支持加減乘除和括號(hào), parameters: { type: object, properties: { expression: { type: string, description: 數(shù)學(xué)表達(dá)式例如(35)*2 } }, required: [expression] } } } ]工具描述有幾個(gè)經(jīng)驗(yàn)第一description 要寫(xiě)清楚這個(gè)工具是干什么的什么時(shí)候該用。比如“查詢指定城市的當(dāng)前天氣情況”就比“查天氣”好。第二參數(shù)的 description 要給出示例。模型看到示例更容易傳對(duì)參數(shù)。第三required 要準(zhǔn)確。必填參數(shù)沒(méi)標(biāo) required模型可能不傳。3.4 主循環(huán)實(shí)現(xiàn)調(diào)模型、執(zhí)行工具、喂回結(jié)果from openai import OpenAI client OpenAI(api_key你的API_KEY) def run_agent(user_input: str): messages [ {role: system, content: 你是一個(gè)助手可以查天氣和做數(shù)學(xué)計(jì)算。需要時(shí)調(diào)用工具。}, {role: user, content: user_input} ] max_iterations 10 # 防止無(wú)限循環(huán) for i in range(max_iterations): response client.chat.completions.create( modelgpt-4o-mini, messagesmessages, toolstools, tool_choiceauto ) msg response.choices[0].message # 沒(méi)有工具調(diào)用直接返回文本 if not msg.tool_calls: return msg.content # 有工具調(diào)用把 assistant 消息加入歷史 messages.append(msg) # 逐個(gè)執(zhí)行工具 for tool_call in msg.tool_calls: func_name tool_call.function.name func_args json.loads(tool_call.function.arguments) if func_name get_weather: result get_weather(func_args[city]) elif func_name calculate: result calculate(func_args[expression]) else: result f未知工具{func_name} # 把工具結(jié)果加入歷史 messages.append({ role: tool, tool_call_id: tool_call.id, content: result }) return 達(dá)到最大迭代次數(shù)任務(wù)未完成這段代碼就是 Agent 的核心。max_iterations是必須的防止模型陷入死循環(huán)一直調(diào)工具。tool_call_id也很關(guān)鍵模型靠這個(gè) ID 來(lái)匹配哪個(gè)結(jié)果對(duì)應(yīng)哪個(gè)工具調(diào)用。3.5 跑起來(lái)看看效果# 測(cè)試 print(run_agent(北京今天天氣怎么樣)) print(run_agent(幫我算一下 (15 27) * 3 等于多少)) print(run_agent(上海和廣州的天氣分別怎么樣然后算一下兩個(gè)城市溫度的平均值))第三個(gè)測(cè)試用例比較有意思它需要 Agent 先調(diào)兩次天氣工具拿到結(jié)果后再調(diào)計(jì)算工具。這就是多步推理和工具編排。如果你的 Agent 能正確處理這個(gè) case說(shuō)明基本邏輯沒(méi)問(wèn)題了。實(shí)操心得調(diào)試 Agent 的時(shí)候把每一步的messages打印出來(lái)看。你會(huì)清楚地看到模型什么時(shí)候決定調(diào)工具、傳了什么參數(shù)、拿到結(jié)果后怎么繼續(xù)推理。這個(gè)習(xí)慣能幫你快速定位問(wèn)題。4. 常見(jiàn)問(wèn)題與排查技巧實(shí)錄4.1 模型不調(diào)工具怎么辦這是最常見(jiàn)的問(wèn)題。你明明定義了工具用戶的問(wèn)題也明顯需要工具但模型就是直接返回文本不調(diào)工具。原因通常有三個(gè)第一工具描述不夠清晰。模型不知道這個(gè)工具是干什么的自然就不會(huì)用。解決辦法是把 description 寫(xiě)得更具體明確說(shuō)明“什么時(shí)候應(yīng)該使用這個(gè)工具”。第二系統(tǒng)提示詞沒(méi)有引導(dǎo)。在 system message 里加一句“當(dāng)需要查詢實(shí)時(shí)信息或進(jìn)行計(jì)算時(shí)請(qǐng)調(diào)用相應(yīng)的工具”能顯著提高工具調(diào)用率。第三模型能力不夠。一些小模型或者老模型對(duì) Function Calling 的支持不好。換個(gè)更強(qiáng)的模型試試。還有一個(gè)技巧是設(shè)置tool_choicerequired強(qiáng)制模型必須調(diào)用工具。但這只適合你確定每次都需要調(diào)工具的場(chǎng)景一般還是用auto。4.2 工具參數(shù)傳錯(cuò)怎么排查模型傳錯(cuò)參數(shù)也很常見(jiàn)。比如該傳城市名它傳了個(gè)省份名該傳數(shù)字它傳了個(gè)字符串。排查方法在json.loads(tool_call.function.arguments)之后打印一下參數(shù)看看模型到底傳了什么。如果參數(shù)格式不對(duì)在工具定義的 parameters 里把類(lèi)型和描述寫(xiě)得更嚴(yán)格。比如type: string加上enum: [北京, 上海, 廣州]限定取值范圍。另外在工具函數(shù)內(nèi)部做參數(shù)校驗(yàn)也很重要。不要假設(shè)模型傳的參數(shù)一定是對(duì)的該做的校驗(yàn)都要做。4.3 Agent 陷入死循環(huán)怎么處理死循環(huán)的表現(xiàn)是Agent 反復(fù)調(diào)同一個(gè)工具或者在不同工具之間來(lái)回跳就是不輸出最終結(jié)果。原因通常是工具返回的結(jié)果模型不滿意或者模型不知道下一步該干什么。解決辦法第一設(shè)置最大迭代次數(shù)。我上面代碼里的max_iterations就是干這個(gè)的。第二在工具返回結(jié)果里加入引導(dǎo)信息。比如查不到天氣的時(shí)候返回“未找到該城市數(shù)據(jù)請(qǐng)嘗試其他城市或告知用戶無(wú)法查詢”而不是簡(jiǎn)單返回一個(gè)空字符串。第三在系統(tǒng)提示詞里明確“如果工具無(wú)法提供有效信息請(qǐng)直接告知用戶”。4.4 常見(jiàn)問(wèn)題速查表問(wèn)題現(xiàn)象可能原因排查方法解決方案模型不調(diào)工具描述不清/提示詞沒(méi)引導(dǎo)/模型能力不足檢查工具 description 和 system prompt完善描述、加引導(dǎo)語(yǔ)、換模型參數(shù)傳錯(cuò)參數(shù)定義不明確/模型理解偏差打印實(shí)際傳入?yún)?shù)加 enum 限定、加參數(shù)校驗(yàn)死循環(huán)工具結(jié)果不滿足/無(wú)終止條件打印每輪 messages設(shè)最大迭代、優(yōu)化工具返回值返回結(jié)果不符合預(yù)期提示詞不夠具體檢查 system prompt細(xì)化角色設(shè)定和輸出格式要求API 調(diào)用報(bào)錯(cuò)Key 無(wú)效/額度用完/網(wǎng)絡(luò)問(wèn)題看錯(cuò)誤碼和錯(cuò)誤信息檢查 Key、充值、重試響應(yīng)太慢模型本身慢/工具執(zhí)行慢分別計(jì)時(shí)換更快的模型、優(yōu)化工具邏輯4.5 幾個(gè)我踩過(guò)的坑坑一工具函數(shù)拋異常導(dǎo)致整個(gè) Agent 崩潰。工具函數(shù)一定要用 try-except 包起來(lái)返回錯(cuò)誤信息而不是拋異常。模型拿到錯(cuò)誤信息后通常會(huì)自己調(diào)整策略。坑二對(duì)話歷史太長(zhǎng)導(dǎo)致 token 超限。多輪對(duì)話后messages 列表會(huì)越來(lái)越長(zhǎng)。解決辦法是定期截?cái)鄽v史只保留最近 N 輪或者用摘要的方式壓縮歷史。坑三工具描述里寫(xiě)了太多技術(shù)細(xì)節(jié)。工具描述是給模型看的不是給開(kāi)發(fā)者看的。用自然語(yǔ)言寫(xiě)清楚“這個(gè)工具做什么、什么時(shí)候用、參數(shù)是什么”就夠了不要寫(xiě)實(shí)現(xiàn)細(xì)節(jié)。坑四忽略了 tool_call_id 的匹配。多個(gè)工具調(diào)用時(shí)每個(gè) tool_call 有自己的 id返回結(jié)果時(shí)必須帶上對(duì)應(yīng)的 id。不匹配的話模型會(huì)混亂。5. 學(xué)完基礎(chǔ)之后往哪走5.1 下一步給 Agent 加上記憶你現(xiàn)在寫(xiě)的 Agent 每次對(duì)話都是獨(dú)立的沒(méi)有記憶。用戶說(shuō)“北京天氣怎么樣”Agent 查完告訴你。然后用戶說(shuō)“那上海呢”Agent 不知道“那”指的是天氣因?yàn)樗挥浀蒙弦惠唽?duì)話。加記憶最簡(jiǎn)單的方式就是把歷史消息都保留在 messages 列表里。但這樣 token 消耗會(huì)越來(lái)越大。更好的做法是用向量數(shù)據(jù)庫(kù)做長(zhǎng)期記憶把歷史對(duì)話存進(jìn)向量庫(kù)每次新對(duì)話時(shí)檢索最相關(guān)的幾條歷史記錄塞進(jìn)上下文。LangChain 提供了ConversationBufferMemory、ConversationSummaryMemory等現(xiàn)成的記憶組件但建議你先手寫(xiě)一個(gè)最簡(jiǎn)單的版本理解原理后再用框架的。5.2 再下一步多 Agent 協(xié)作單個(gè) Agent 能做的事情有限。當(dāng)你需要完成一個(gè)復(fù)雜任務(wù)時(shí)可以拆成多個(gè) Agent 各司其職。比如做一個(gè)“市場(chǎng)調(diào)研報(bào)告生成”系統(tǒng)研究員 Agent負(fù)責(zé)搜索和收集信息分析師 Agent負(fù)責(zé)分析數(shù)據(jù)、提煉觀點(diǎn)寫(xiě)手 Agent負(fù)責(zé)撰寫(xiě)報(bào)告審核員 Agent負(fù)責(zé)檢查事實(shí)和邏輯每個(gè) Agent 有自己的系統(tǒng)提示詞和工具集它們之間通過(guò)消息傳遞來(lái)協(xié)作。CrewAI 和 AutoGen 就是專(zhuān)門(mén)做這個(gè)的框架。但我要提醒一句多 Agent 系統(tǒng)的復(fù)雜度是指數(shù)級(jí)上升的。兩個(gè) Agent 協(xié)作還好五個(gè) Agent 協(xié)作的時(shí)候調(diào)試會(huì)變得非常困難。建議先把單 Agent 玩透再考慮多 Agent。5.3 關(guān)于框架學(xué)習(xí)的最終建議回到標(biāo)題那句話別一上來(lái)就啃框架。我見(jiàn)過(guò)太多人LangChain 的文檔翻了一遍各種概念背得滾瓜爛熟但讓他從零寫(xiě)一個(gè) Agent 循環(huán)寫(xiě)不出來(lái)。這就是本末倒置了。正確的學(xué)習(xí)路徑是Python 基礎(chǔ)兩周大模型 API 基本用法三天手寫(xiě)最簡(jiǎn) Agent 循環(huán)一天手寫(xiě)帶記憶和多工具的 Agent三天選一個(gè)框架深入學(xué)習(xí)一周用框架重構(gòu)你之前手寫(xiě)的 Agent兩天這個(gè)路徑走下來(lái)大概一個(gè)月左右你就能獨(dú)立開(kāi)發(fā)一個(gè)可用的 AI Agent 了。比上來(lái)就啃框架快得多也扎實(shí)得多。框架是工具不是知識(shí)。工具會(huì)過(guò)時(shí)LangChain 可能明年就被別的框架取代了但 Agent 的核心原理——LLM 決策、工具調(diào)用、循環(huán)執(zhí)行——這些是不會(huì)變的。把原理吃透換什么框架你都能快速上手。我在實(shí)際帶新人的過(guò)程中發(fā)現(xiàn)那些先手寫(xiě)再學(xué)框架的人遇到問(wèn)題時(shí)的排查能力強(qiáng)很多。因?yàn)樗麄冎赖讓影l(fā)生了什么框架報(bào)錯(cuò)的時(shí)候能判斷是框架的問(wèn)題還是自己代碼的問(wèn)題。而直接學(xué)框架的人遇到報(bào)錯(cuò)往往一臉懵只能去社區(qū)提問(wèn)等回答。最后分享一個(gè)小技巧每次學(xué)一個(gè)新框架的時(shí)候先別急著看它的文檔先自己想“如果讓我設(shè)計(jì)這個(gè)框架我會(huì)怎么設(shè)計(jì)”然后再去看它的 API。這樣你學(xué)起來(lái)會(huì)快很多因?yàn)槟闶窃隍?yàn)證自己的想法而不是被動(dòng)接受信息。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
99啪啪视频| 91色久| 丁香五月色激情| 久久a热| 色婷婷香蕉| 白人荫道BBWBBB大荫道| 成人午夜无码视频| 香蕉视频91| 激情五月天综合图片小说网站| 99操网站| http:色情日本com| www色色com| 五月丁香黄色| 丁香五月婷婷成人色区| 日本妈妈乱| 99久久高清视频| 色色吧综合| 国产乱妇乱子在线播视频播放网站| 淫荡综合网| 色色五月天网站| 色狠狠色综合久久久绯色aⅴ影视| 视频一二区| 五月丁香六月婷婷不卡免费无码| 五月丁色AV| 影音先锋91资源站| 人人操 色| 亚洲精品又粗又大又爽A片 | 五月丁香六月婷| 精品久久这里热66| 亚洲天堂aaaa| 狠狠色丁香| 五月丁香六月婷婷免费视频| 99久久思思| 99久热在线精品| sewuyuetingtingiii| 野战J办公桌椅H| 丁香五月自拍| 色婷婷五月天中文字幕| 99re熱| 亚洲综合视频在线| 亚洲中文字幕AV| 九色七七| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | www.91在线看| 激情五月天99色| 激情文学综合婷婷五月天丁香花| 91狠狠色丁香婷婷综合久久狠丁香综合久久精品 | 99这里有精品视频| 色色色五月天婷婷| 男人的天堂99| 超碰在线9| 色五月婷婷影院| 欲求不满的人妻| 丁香五月综合在线观看| 五月天综合在线观看| 激情小说之五月| 国产伊人五月天| 色婷婷电影网| 热久久66| 六月丁AV| 综合网色| 香蕉AV777XXX色综合一区| 五月婷色| 婷婷五月综合丁香久久| 操逼视频一区| 欧美天天干五月丁香| www.夜夜操.con| 26uuu.| 天天干天天日天天插| 久久在这里有精品| 色婷婷视频在线| 丁香婷婷色五月| 五月丁香成人视频| 亚洲中文乱字字幕在线永久| 激情亚洲五月| www.久久爱.com| 丁香五月香蕉| 激情五月天色爱| 色性五月天| 丁香婷婷色五月激情综合| 99爱爱网| 国产XXXX搡XXXXX搡麻豆| 中文字幕日产A片在线看| 午夜69成人做爰视频| 91操人人操| 爱狠射| 91se在线观看| 色综合性视频| 99在线资源| 久热这里只有精品99re| 亚洲殴洲精品Av在线| 9久久久| 婷婷久久五月天| 亭亭色天香| 中文乱子伦视频| 五月色婷婷影院| 五月天婷婷色| 亚洲午夜电影| 五月天停停成人网| 91热爆在线| 亚洲第一成人AV| 久操综合| 色婷五月天| 丁香五月婷婷影院| 色吊丝永久访问网址| 日本本土色网第一区| 五月色丁香视频精品| www色五月| 精国产品一区二区三区A片| 色九月丁香婷婷蜜桃在线观看| 日日干天天射| 九九热精品在线| 九九在线视频| 婷婷的激情五月| 五月婷婷丁香狠狠撸久久| 伊人婷婷综合| 91九色无码日韩 | 色播激情五月天| 超碰久热| 亚洲精品国产setv| 玖玖五月丁香| 69精品人人人人人人| VA日本视频| 天天综合精品| 97婷婷久久丁香| 激情网站五月| 亚洲激情av| 五月丁香婷婷欧美色图视频五月丁香777电影 | 久久视频婷婷视频| 久久狠狠干| 五月天久久www| 亚洲区视频| 亚洲天堂AV综合网| 五月丁香六月婷婷亚洲综合| 色婷婷AV在线观看| 5月丁香六月婷婷| 99久久综合| 日韩AV中文字幕在线| 婷婷久久国产视频| 风流少妇A片一区二区蜜桃| 欧美久久网| 色综合色综合色综合| 天天日天天插| 婷婷五月天99| 思思热99er| 丁香婷婷偷拍| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 2025最新亚洲激情在线| 亚洲九N| 五月天婷婷自拍图片在线观看| 亚洲无码播放| 97亚洲色 torrent magnet| 欧美综合五月丁香六月婷| 激情丁香五月综合| 激情综合网五月丁香| 99re青青草| 怡红院一二三| 91狠狠综合网| av国产精品| 开心激情色婷婷五月天| 99在线看视频| 六月份天丁香婷婷| 激情色播| 婷婷不干网| 色色色色色色色色色999| 免费无码毛片一区二区A片 | 人人摸人人| 丁香婷婷五月六月久久| 情欲禁地| 另类图片婷婷五月天| WWW.久久.COM| 色婷婷在线视频| 先锋资源婷婷| 五月花激情| 五月婷婷干干干| www.天天干| 99热在这里只有免费精品| 天天爽夜夜操| 五月天婷婷无码| 色综合视频| 99热在线观看精品| 春色激情| 99热碰碰| 午夜九九电影| 天天综合五月| 性欧美大战久久久久久久83| 色丁香五月婷婷| 五月婷婷丁香综合| 青吴乐视频| 日本五月天网站| 九九re精品视频在线观看| 色色五月婷婷| 激情综合网五月天| 色青青五月| 丁香婷婷久久五月天| 五月丁香综合影院| 这里只有精彩亚洲视频推荐| 激情婷婷五月天。| 开心久久网婷婷| 99热在线观看精品| 六月婷婷久久| 99热99思午夜精品| 中文字幕婷婷| 东京热人妻一区二区三区在线| 99福利导航| 亚洲99激情| 色99无码| 91婷婷视频| 五月丁香色婷婷久久| 五月丁香久久综合| 99热免费精品| 人人97操| 一本色道久久综合狠狠躁一二三| h在线看免费版在线看| A久网| 丁香五月婷婷激情网| 91精品激情9| 色婷婷综合影院| 包操45分钟网站| 亚洲色图在线视频| 草草色情综合网| 一区视频网站| 亚洲激情综合| av操一操| 深爱激情五月天婷婷网| 美女亚洲五月丁香| 97色碰| 国产色视频网站2| 色99视频| 欧美日韩999| 九色啦蜜臀| 中文不卡一二三区| 久久99热这里只有精品23| 99视频在线啪| 日本色色影院| 亚洲人人艹| 大伊香蕉精品视频在线| 开心婷婷五月| 99无码视频| 丁香婷婷五月天激情四射| 国产精品婷婷午夜在线观看| www.五月天。com| 九月婷婷| 成人五月天在线观看| 一起草无码| 五月花激情网| 69精品人妻不卡视频| 丁香五月天大香蕉啪啪| AV操一操| 99偷拍视频在线日本| 天天操夜夜玩!| 亚洲99综合| 超碰97久久| 97婷婷五月丁香| 中文毛片无遮挡高潮免费| 国产激情视频在线观看| 玖玖热视频| 9久久久久久久久久久| 婷婷激情综合| 天天弄天天爽| 婷婷丁香五月天在线视频| 免费AV播放| 97在线精品视频| 国产激情av| 婷婷刺激综合| 亚洲精品国产成人AV在线| 婷婷欧美激情综合| WWW·天天操·视频?| 色色网站免费在线视频| 开心五月婷婷在线视频免费观看| 五月草影视| 婷婷色5月激情网| 99青青草| 国产精品社区| 国产真实乱了老女人视频| 五月天综合| 农村熟妇高潮精品A片| 五月丁香成人网| 国产69久久久欧美黑人A片| 国产人妻人伦精品一区二区| 五月丁香婷婷色播无码| 色色色999| 亚洲Va成人| 婷婷丁香77777| 婷婷五月天在线观看av| 五月婷婷九| 情色五月天网站| 99色热| 这里只有精品99视频| 久久综合热17c| 狠狠干狠狠干狠狠干狠狠干| 久久精品人妻| 久草热久草在线视频| 亚洲AV无码成人电影| 婷婷色五月天色| 97自拍视频在线| 精品一区久热| 丁香五月婷婷啪啪啪| 99热精品10| 九九色视频| 丁香五月手机在线| 午夜天堂一区人妻| 大香蕉99热| 99热久只有精品首页| 精品无码视频| 五月天久久婷婷| 日本激情综合| 天天操天天爱天天日| 99热九九在线| 第二色AⅤ| 五月开心深爱激情网| 91狠狠综合久久久| AV大片在线观看| 99精品在线播放| 99只有这里是精品| 91Chinese在线| 91色综合久久| 色另类五月天| 女人露出p毛视频www网站| 五月综合婷婷久久在线| 激情深爱五月天| 一本狠婷婷综合| 亚洲亚洲人成综合网络| 996精品热视频| 久久er九九| 综合图片色色| 无码人妻一区二区一牛影视| 天天 日综合| 五月天色色婷婷| 日韩av一区二区在线/日产精品久久久 | 五月丁香五月婷婷在线观看| 色五月丁香五| 婷婷色五月久久| 综合大香蕉| 超碰免费人人肏| 亚洲综合色网站| 婷婷人人操| 日本色啪| 能直接看的AV网站| 岛国在线观看91| 亚洲欧洲99| 99九无网码| 日韩成人综合| 婷婷五月天电影网| 婷婷丁香www视频日本韩国| 九九热这里只有精品9| 亚洲综合字幕色色| 丁香五月香蕉| 99自拍视频| 六月婷婷色色色| 亚洲欧美日韩另类| 99热国产这里只有精品| 五月天色站| www.lingjunshare.com| 五月天婷婷青青草| 亚州操人在线视频| 狠狠色丁香久久婷婷综合五月| 五月花丁香婷婷| 激情98色婷婷五| 婷婷丁香久久五月综合| 夜夜嗨一区二区三区直播内容| 欧美成人热| 1024人妻| 婷婷激情网五月天| 婷婷97C| 日本久久爱| 色情网综合| 婷婷五月丁香综合人妻| 六月丁香色色| 六月婷婷激情| 婷婷性爱| 丁香五月在线看| 日本韩国视频在线观看社区免费的9| 婷婷五月丁香综合激情小说| 亚洲精品无码A片一区二区| 久热a| 以及AA大片看看| 亚洲五月色| 丁香五月婷婷色偷偷| 殴美综合激情五月天免费视频| 91九色超碰正在播放| 天天噜日日噜综合无码| 欧美色五月| 色青青视频| 九九成人电影婷婷| 99热这里只有精品8| 欧美性猛交99久久久99| 婷婷色导航| 婷婷精品在线| 五月婷婷丁香啪啪| 五月天激情小说网| 高清无码视频网址| 91丨九色丨东北熟女| 色色五月天激情| 狠狠色婷婷六月激情网| 久久精品63| 色色色色五月| 五月婷婷人妻| 五月色色网| 五月丁香六月婷综合成人综合| 777精品成人a v久久| 人人超碰99| 九九热av| 丁香涩涩爱| 91热久久| 1024在线观看免费视频| 99热在线观看免费精品| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 五月婷成人| 天天拍天天操| 五月丁香久人妻中文| 99在线视频免费| 日本情色一区二区| 99网| 丁香激情久久| 激情小说婷婷五月| 色五月婷婷天天干| 丁香五月AV| 疯狂做受XXXX高潮A片动画| 少妇达人正片在线播放_ikun_福利吧| 思思热闹这里只有精品 | 97人妻碰碰碰久久香蕉| 久久免费高| 97操操操| 九九热最新| 79成人网| 婷婷五月蜜桃成人桃色丁香| 色色丁香五月天| 人人摸人人干| 艹B高清无码| 色婷五月| 九九热10| 色婷婷先锋| 丁香色五月婷婷91桃色| 五月天激情偷拍| 综合久久五月天| co超碰在线观看| 天天色综网| 五月天婷久精视频| www.开心激情| 午夜激情五月| www.minyis.com【JT】币址百万U预算可预付QQ2101460746 | 五月天停停基地| 久久五月六月| 99re6热在线精品视频播放速度| 色婷婷玖玖影院| 三级片AAA久久久AAA久久久AAA| 色五月婷婷中文字幕| 99热精品在线在线| 26uuu成人网| 丁香五月停停av| 天天色伊人| 九九热这里只有精品23| 一本久道综合99| 丁香五月婷婷久久久| 亚洲亚洲人成综合网络| 99在线精品免费视频| 99视频内射三四| h亚洲| 天堂资源欧日浪女在线播放| 超级黄色片| 亚洲成人AV在线| 色开心五月丁香| 丁香六月激情国产| 色色五月激情| 色情婷婷。| 五月婷婷六月丁香首页| 天天干天天曰天天射| 九九热99精品| 欧美色色色色色色| AV网站免费在线| 欧美婷婷日本| 丁香五月自拍| 欧美色小说婷婷| 久久有码| 日本社区五月天激情| 欧美色五月天| 色色色色色色网站| 91在线日| 五月天婷婷色色| 国产午夜精品AV一区二区麻豆 | 丁香婷在线| 五月天久久综合婷婷丁香| 激情五月天激情综合网| 久超超碰| 色五月综合网| 五月天丁香婷婷视频网址 | 一操久久| 欧美极品999| 婷婷六月综合在线| 91在线观看www| 99亚洲视频| 六月婷婷激情| 九色视频这里只有精品| 欧美色色网| 伊人玖玖精品| 欧美成人AAA片一区国产精品| 97啪在线观看视频| 人妻激情视频| 婷婷五月天 偷拍| 色久激情在线| 亚洲超碰在线| 日本在线观看99| 色情开心五月| 婷婷激情五月天在线视频| 99re视频精品| 开心五月网| 在线观看免费观看在线9久| 第1影院之五月婷婷| 久久婷婷精品| 婷婷基地爱| 婷婷六月综合激情| 国产AV网页| 自拍偷窥99热| 直接看的AV网站| 五月丁香啪啪啪啪| www.久久久久久久久久.com| 婷婷久久五月天| ss视频xx91| 婷婷99狠狠躁天天躁| 色欧美色色色| 精品久热| 天天综合五月天| 亚洲精品白浆高清久久久久久| 丁香婷婷久久综合在线| 深爱五月综合网| 婷婷五月六| 国产99热| 天天肏夜夜肏| 激情五月天影院| 狠狠操狠狠| 久9视频免费播放| 久热这里精品免费| 噜噜在线| 99操中文视频| 亚洲五月天另类小说图片| 日本欧美成人片AAAA| 九九热精品99| 九九色综合视频| 香蕉婷婷| 9久久精品| 五月丁香啪啪| 91女人18毛片水多国产| 激情合网婷婷| 亚州美女| 热久久思思热思思| 久久丁香五月天| 亚洲视频国产一区| 色情婷婷五月天| 黄色录像网点| 激情纯色婷婷五月天在线不卡视频| 伊人五月婷婷| 丁香九月综合激情| 狠狠色大香蕉| 五月间天堂综合| 韩国三级五月天婷婷。| 大香蕉福利导航| 丁香五月激情欧欧美| 天天激情站| 婷婷丁香97| 超碰爱爱爱| www91在线| 色婷婷亚洲五月天| 五月天丁香婷婷社区| 婷婷五月天免费视频在线观看| 亚洲日韩乱码一区二区三区四区| 夜夜涩涩涩| 中文字幕在线日亚洲9| 亚洲中文字幕AV| 五月综合影院| 九九综合九色欧美狠狠| 亚州精品久久久久AV无码| 国产精品美女久久久久AV超清| 激情综合网五月天天| 色五月综合网| 99热这里只有精品96| 午夜69成人做爰视频| 亚洲俩性性爱图片久久第六页| 99热在线看| 五月丁香六月婷婷亚洲天堂网站| 啪啪啪大香蕉| 久久这里99| 91碰碰视频在线观看| 成年人看Va免费视频| se婷97| 99精品免费| 香蕉婷婷色五月| 色婷婷狠狠爱| 免费99情趣网视频| 五月刺激丁香月综合| 美女丁香五婷婷| www.久久久久久| 丁香花色色网| 婷婷五月天伦理| 久久婷婷免费| 99操免费视频| 亚洲成色综合网站免费观看| 欧美97超碰| 色婷五月天激情| 啪啪黄页网| 青草激情综合| 国精产品久久| 91操片| 最近中文字幕2019视频1| 色婷婷激情五月天在线观看| 综合性爱网| 狠狠干,狠狠操| 五月天四色房丁香| 3p久久| 五月婷婷六月色| 思思热99在线视频| 一起草Av| 久久综合26p| 亚洲成人av在线播放| 中文精品久久久久人妻不| 色www久视频| 五月天停婷基地| 色七色九九| 九九综合五月欧美| 五月天婷婷色| 天天做天天爱| 婷婷涩涩网| 国产亚洲99久久| 欧美日韩999| 亚洲激情婷婷| 五月天小说激情| 99热这里有精品首页10| 色青青电影色五月| 丁香六月欧美| www.五月天婷婷| 五月六月丁香婷婷在线观看| 丁香五月色五月| 中国无码av| 99ri国产| 亚洲激情综合| 五月香六月婷| 在线五月色播| 日韩亚洲视频| 久久精品系列| 久久婷婷桃花五月天| 成人日韩欧美| 丁香久久| 91精品国产99久久久久久天美| 亭亭五月激情亚洲在线| 色七色九九| 婷婷九九| 欧美日韩国产伦精品日韩人妻一| 亚洲黄网在线| 五月天开心色色网| 色99色| 亚洲人妻av| 亚洲综合99| 欧美日韩AAA| 午夜 外网 精品 在线| 99色视频| 日韩成人综合网| 日本人人干| 综合一啪| 激情啪啪五月天| 97人碰人操| 成人国产欧美大片一区| 日韩成人网址| 一级黄色影片| 一起草av| 无码AV免费精品一区二区三区| 人人摸人人| 久久久婷| 色五月婷婷网| 色999五月色| 天天色天天日| 操操碰| 久久婷综合| 久久久性爱视频| 午夜免费试看| 婷婷久久五月天| 99re在线观看| 人妻久久久久久| 网站免费一站二站| 久久久婷婷| 极品人妻VIDEOSSS人妻| 国产成人AV| 九九操屄| 婷婷激情五月天激情小说| 人人操婷婷| 大香蕉娱乐| 精品网站:999WWW| 欧美视频五区| 五月天日日操夜夜操| 激情五月天在线观看色婷婷| 狠狠肏综合网| 欧美成人精品老美女噜噜噜| 五月丁香婷婷综合网| 日本WWW九九九| VA色婷婷| 国产精产国品一二三在观看| 天天色中文字幕女优AV| 9热在线视频精品| 婷婷五月天AV在线| 五月色婷婷在线观看| 呦呦v线| 日本五月天婷婷丁香| 另类激情五月在线视频欧美| 大香蕉婷婷| 江苏少妇性BBB搡BBB爽爽爽| 中文字幕五月久久婷婷| 欧美一级色| 国产热精品| 五月亭亭开心网| 99在线精品视频在线观看| 嫩草AV久久伊人妇女超级A| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 日韩五月天婷婷| 婷婷五月在线播放| 色色五月婷婷| 成人AV播放| 9久热免费视频99| 怕怕av| 激情五月天小说| 五月丁香影院| 狠狠爱丁香婷| 人妻操逼视频。| 五月婷婷亞洲中文| 日韩AV大全| 99九九精品视频推荐| 激情六月婷婷| 天天天天做夜夜夜夜做| 天天干天天干天天干天天干天| 六月丁花香啪啪激情欧美| 婷婷五月色影视先锋| 五月六月丁香婷婷在线观看| 狠狠爱婷婷丁香| 97在线观视频免费观看| 天堂资源欧日浪女在线播放| 天天操夜夜肏| 精品久久99码| 综合激情专区| 蜜乳国产网站| 激情五月天色色网| 激情九九六月激情免费视频| 色五月天网| 欧美精品999| 婷婷五月天丁香久久| 亚洲天堂AV免费片| 91九色视频| 9 大屁股在线视频精品| 丁香六月高清视频| 丁香五月六月综合激情| 97人人爱人人操| 六月色国内综合| 色播播五月天| 伦乱天堂| 99久在线精品99re5热视频| 九月丁香久久网| 五月丁香爱婷婷深深| 手机旧版看人妻1025| 青青草99re| 色五月婷婷激情五月| 99这里| 五月天丁香综合| 日本成人噜噜噜| 欧美天堂婷婷日韩| 欧美综合丁香网| 天天干天天拍| 婷婷六月色| 激情久久五月天| 97热久久| 欧美综合激情丁香五月六月婷| 色综合77777| 我要色综合五月婷婷| 久久XX| 激情深爱综合| 六月色婷婷| 91婷婷丁香五月天免费视频网站| 欧美久久婷婷| 99久热在线精品| www.五月婷婷.com| www.97碰碰com| 国产激情在线| 91丨九色丨熟女丰满| 色婷婷丁香五月| 国产99久9在线| 激情综合五月婷婷| www.99热在线| 五月婷婷人人人操| 日韩人妻在线观看| 久久伊人大香蕉| AV九九| 91九色在线| 九九视频精品这里只有| 国产精品99久久久久久久女警| 丁香五月婷婷六月婷| 国产精品天天狠天天看| 西瓜美女a片| 久久久久9久无码视频| 99热这里只有精品国产精品| 亚州激情九月| AV五月丁香| 激情五月综合色| 无码少妇高潮喷水A片免费| 亚洲激情丁香五月基地| 日本大人久久| 丁香五月六月综合激情| 综合激情在线| 婷婷久热| 日日操,夜夜撸| 丁香六月婷婷色XXXXX| 丁香婷五月天开心六月| 六月丁香啪啪| 国产精品色情AAAAA片软件| www久热com| 久久激情五月网| 日日.c| 九热视频这里只有精品| 天堂网色色| 婷婷六月丁| 操逼在线视频| 第五婷婷伊人丁香| 青青草成人网| 麻豆五月丁香婷婷| 久久久久婷 | 久久婷婷婷| 噼里啪啦完整版中文在线观看| 丁香五月,激情五月,深爱五月| 婷婷综合偷拍| 深爱婷婷色| 激情文学 综合 九月| www狠狠| 婷婷激情欧美| 中文精品在| 国产SUV精品一区二区883| 亚洲成人五月| 色网站99| 丁香五月777| 五月婷婷色| 五月天综合在线| 九九视频精品这里只有| 欧美日韩五月婷婷| 无码少妇高潮喷水A片免费| 日欧大屏操| 怕怕av| 婷婷娌伦网| 日本人妻伦在线中文字幕| 五月婷婷色播| 久热最新视频| 91久久久久久久久久久| 92久久久| 99精品无码| 97久久人人操| www.99操.com| 五月丁香综合激情| 操操自拍| 九九性视频| 丁香五月婷婷成人综合| aa久久| 亚洲啪啪精品| 天天日天天久久青青| 五月丁香婷婷色色| 99re8在这里只有精品| 婷婷五月俺要去| 久久永久视频| 五月婷婷色色网址| 色99综合色88| 日日夜夜干| 色9999日韩国产| 五月天综合视频| 九九热短视频在线观看| 婷婷欧美激情综合| 成人五月天丁香| 六月婷婷AV| 久久5 9视频免费观看| 久久XX| 色色色色色色色色网站| 久久五月天色婷婷| 五月天婷婷丁香| 丁香五月综合网亚洲综合欧美狠狠| 五月丁色AV| 99ri精品| 色色色国产| 77777亚洲午夜久久| 超碰一区二区| 最新无码专区| 天堂伊人干| 亚洲精品久久久无码| 99热国产免费| 狠狠色丁香| 九九热精品| 丁香六月啪| 色五月婷婷av| 色色色99| 久久久激情| 99视频在线| 日本精品99网站| 原琪琪色影院| 日本久久高清| 色狠狠色| 操骚货在线| 人妻五月天激情开心网| 热的国产,热的综合,热的有码| 婷婷五月激情四月综合| 久久之人妻| 五月天婷婷黄色视频| 亚洲小视频免费观看| 婷婷激情五月天综合| 丁香丁香激情网| 五月婷婷综合激情| 成人网丁香五月| 天天精品视频在线观看视频| 综合激情五月天六月婷免费视频| 五月丁花六月丁香综合| 丁香五月婷婷网| 九九99精品视频| 久99久视频| 免费视频无码| 被强行糟蹋的女人A片| 玩熟女五十AV一二三区| 亚洲岛国电影| 99在线视频女女视频| 综合久久久| 婷婷五月激情网站| 五月丁香av在线| 思思久久99热只有频精品66| 26uuu日韩| 99碰碰| 亚洲经典三级| 一区二区传媒视频| 综合色播| 亚洲XX日本| 婷婷五月天天天| 香蕉综合在线| 少妇人妻人伦A片| 男人的天堂99| 色播六月| 婷婷激情欧美| 婷婷五月综合啪| 激情五月影院| 婷婷丁香五月天之开心少妇| 激情久久久久久久久| 伊人丁香六月婷婷| 婷婷丁香人妻天天久久| 超碰操网| 丁香五月亚洲综合丝袜| 色激情五月| 婷婷五月天激情综合| 婷婷深爱五月| 狠狠爱综合网| 成人人操| 怡红院99| 久色激情| 男男野外做爰全过程69| 久久宗合影| 5月色亭亭视频| 婷婷五月天堂| 五月综合久久| 五月天社区婷婷丁香社区| 久久成人性爱| 久久婷婷五月综合啪| 极品少妇XXXX精品少妇偷拍| 超碰97久久| 日操五月婷| www.99热在线观看| 亚洲五月六月婷婷| 二色av| 欧美婷婷五月天| 99久久99久久综合| 婷婷激情四射网| www.minyis.com【JT】币址百万U预算可预付QQ2101460746 | 欧美成人AAA片一区国产精品| 伊人色综合久久久| 99热精品9| 五月丁香六月激情在线| 毛v一区二区视频| 欧美黑人巨大猛烈cuckold| www久久99| 激情五月天影院| 综合aV在线| 99这里是99在线视频| 人人摸人人澡人人| 99久久国产综合精品五月天喷水\| 激情网站五月| 99啪啪网| 婷婷五月天丁香综合网| 桃色激情婷婷伊人网| 97福利视频| 超碰色女人| 夜夜爽天操| 亚洲亚洲人成综合网络| 狠狠色丁香五月婷巨| 九九在线视频| 91色欲综合| 五月天堂在线| 丰满人妻妇伦又伦精品国产| 狠狠色噜噜狠狠色噜噜噜999| 97久久精品| www.久久婷婷| 五月天婷婷视频| 在线不卡AC| 天天综合天天玩夜夜玩天天玩夜夜玩| 99热这里只有精品在线观看| 超碰激情网| 98色花堂98t.R| 日本三级中文字幕| 天天se在线视频| 99热这里只有精品青草| 婷婷五月天大香蕉在线视频观看| 99免费视频精品| 搡BBBB搡BBB搡18 | 丁香五月色综合色播五月| 热久精品| 永久的网站AAAA| 九九视频这里只有精品| 99ri在线| 亚洲色婷婷| 99爱视频精品| 激情小说婷婷| 天天爱天天日| 综合激情五月天| 亚洲综合新99视频| 人妻少妇色综合| 少妇激情五月婷婷| 欧美顶级少妇做爰HD| 欧美性爱特黄一级aaaassss| 欧美久久一级内射wwwwww.| 国产日日夜夜操| 色色色五月天婷婷| 99er久久| 国产小网站| www.97碰碰com| 日韩一级片| 超碰在线国产| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 人人操91色| 黄色一级影片| 五月大香蕉| 开心五月激情网| 色婷婷色五月综合| 熟美女麻豆| 色999五月色| 婷婷五月天成人动漫 | 干一干xxxx| 丁香五月,开心五月,成人婷婷| 激情婷婷丁香| 亚洲激情免费视频| 久久一品区| 玖玖精品视频| 久久久久久9热不雅视频| 综合成人小说婷婷| 五月丁香色色网| 成人做爰A片免费看网站找不到了| 亚洲精品色色色| 玖玖五月丁香| 97久久久| 色色色色色色色色色色色色色色,网站| 四月婷婷五月丁香| 五月色网| 五月激情久久| 99天堂网| 90色免费视频| 五月综合丁香婷婷| 美女婷婷六月色| 五月天丁香欧美激情| 色五月丁香婷婷| 99免费视频在线观看爱| 99热在线精品观看| www.9操| 影音先锋91| 爱草视频在线| 啪啪六月婷婷| 国产成人精品一区二三区熟女在线| 色色色成人网| 婷婷五月天成人娱乐| www.9色色色| 丁香六月婷婷综合| 99色色色色| www.婷婷网| 一区三区视频有限公司| 桃色五月天| 成人视频在线免费播放| 思思色综合网站| 黄色三级日本| 九九综合九色欧美狠狠| 狠狠色噜噜狠狠狠狠综合| 99久久6| 深爱网深爱综合网| 91青娱乐青青草| 久久婷婷超碰| 天天综合网站| 超碰人人干| 天天舔天天摸天天透| 看婷婷五月天网| 97婷婷在线视频| 国产AV影片| 天天干,天天日| 国产.亚洲.欧洲视频在线| 淫水导航| 色婷婷激情小说网| 99精品热视频| 日韩五月婷婷| 97久久综合网| 国产亚洲精品久久久久久郑州| 黄网免费观看| 99热这里是精品| 丁香社区婷婷五月| 免费精品66| 九九热这里只有精品5| 天堂久久性| 久热在线观看视频9| www五月婷婷88导航| 狠狠色婷婷| 可以看的AV| 午夜激情综合| 狠狠色噜噜狠狠| 丁香婷婷视频在线| va亚洲中文在线| 久久婷婷五月综合色欧美| 激情影院免费视频婷婷五月天| 色情婷婷| 日本99久久| 成人婷婷| 超级黄色片| 啪啪色区| 欧美日韩国产一区二区| 久久五月天丁香| 五月天婷婷Av| 91丁香色| 五月停性愛| 激情综合丁香六| 亚洲日本韩国| 国产成人精品一区二三区熟女在线| 人人操99| 日本欧美国产| 五月天激情网页| 激情九九综合网| 天天色综合综合| 狠狠人妻久久久久久综合丁香| 激情5月婷婷狠狠干| 国产视频久色| 天天操九九插| 天天草天天爱| 婷婷成人综合五月| 五月综合婷婷久久在线 | 色综合久久五月| 色999亚洲人成色| 9er热在线精品视频| 六月激情婷婷色| 都市激情五月婷婷综合| 夜夜骑操AV| 最新五月天婷婷影| 夜夜骑福利资源| 婷婷五月激情天| 丁香五月婷婷色偷偷| 五月六月婷| 97久久草草超级碰碰碰| 亚洲色在线观看| 色婷婷六月| 色情五月丁香| 九九热最新| 亚洲亚洲人成综合网络| 开心色色五月天综合| 伊人大蕉香| 丁香婷婷九月| 开心五月婷婷激情| 婷婷六月丁香色| 久久色这里只有精品| 日日干日日| 中文字幕在线免费| 99热只有| 99视频热99| 香蕉婷婷色五月| 99热18| 五月丁香六月合| 亚洲热视频在线| 这里只有精品2| 狠狠色婷婷777| 在线不卡AC| 五月丁香久人妻中文| 电影《战争与艾拉》免费观看| 色小说婷婷五月天天天| 成人开心五月天| 日韩视频99| 色图亚洲91| 激情久久综合网| 亚洲超碰在线| 欧美婷婷五月| 激情综合婷婷| 国产真人做爰视频免费| 丁香六月青青草| 天天日天天插天天操| 五月婷婷啪啪啪啪| 99在线观看视频| 欧美情色一区| 超碰日日操| 麻豆123区| 深爱五月激情| 99热思思| 综合99视频| 五月天婷婷伊人| 久热这里| 中文中文在线| 久久婷婷色综合| 日日操,夜夜爽| 精品人妻在线| 五月丁香婷婷五月色| 天天射综合网站| 色色色色色网站| 激情床戏| 北条麻妃伊人| 婷婷五月天激情四射五月天激情| 久久一热| 99re6在线视频精品免费| 亚洲韩国日产综合AV| 亚洲久久视频| 免费婷婷| 牛牛色av| 婷婷丁香午夜综合影视| 97碰碰视频在线观看| 久久婷婷五月综合网| 婷婷基地成人五月天| 亚洲热综合| 欧美性爱丁香五月| 色丁香五月婷婷婷| 日本三级中国三级99| 久久9热好| 伊人色综合影院视频| 九九热视频精品| 人人爽网| 夜夜操夜夜爽| 日韩三级高清无码| 91呦呦呦| 日在线V视频在线播放| 精品久久人妻| 99狠狠| 丁香五月天色婷婷| 亚洲中文字幕翔田千里| 婷婷 亚洲图片 丁香| www.超碰| av色婷婷| 99乱视频| 日本97在线| 五月丁香啪啪| 极品人妻VIDEOSSS人妻| 色婷五月婷婷| 99精品在这里| 九九aV| 殴美日比视频| 久久免费试看120秒| 久久视频这里99| 狠狠色色色| 日日操,天天操| 激情九月婷婷九月| 少妇丁香婷婷 | 思思热思在线精品视频| 五月丁香啪啪综合| 婷婷久久性爱| 性色婷婷| 色综合久久44| 久九色| 无码橾| 色噜噜狠狠色综合成人网| 91婷婷色| 91一起艹| 色五月婷婷婷婷婷婷婷婷婷婷| 操日视频| 亚洲综合99| 色丁香五月婷婷| 色噜噜伊人| www久久久久久久久久久|