免费国产精品自在自线-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
返回資訊列表
激情丁香婷婷| 激情五月丁香五月| 亚洲五月天第一综合干| 丁香伊人网| 五月丁香激情四射| 丰满少妇猛烈A片免费看观看| 东北黄色一级| 久久思思热| 五月婷婷久久综合| WWW99视频| 亚洲五月婷婷| 五月婷婷五月天在线| 婷婷五月激情综合网| 五月色欧洲| 色色亚洲99com| 五月天伊人网| 五月丁香好婷婷A片网| 天天噜| 亚欧州精品视频| 激情小说五月天| 丁香五月激情鲁| 97碰碰在线观看视频| 日本五月婷婷| 日韩激情人伦人| 五月丁香六月婷婷无码| 伊人久久丁香狠狠婷婷综合香蕉| 亚洲成人在线五月天| 99操网站| 色哟呦av| 国产又粗又大又爽又黄| 久久人妻乱| 亚洲中文字幕av| 国产高潮白浆一区二区| 欧美影院婷婷| 久久九精品| 色五月丁香激情| 91碰九色| 国产无套精品一区二区| 人人干人人看| 5月丁香啪啪啪| 亚洲性爱干干| 99热国品免费| 激情开心五月婷婷| 五月色 亚洲| 色狠狠999综合| 丁香六月婷婷久久亚洲天堂| 丁香六月婷婷综合啪啪| 免费AV播放| 激情婷婷综合网| 色色A| 色婷婷六月| 丁香五月激情六月综合| 色综合播放| 国产午夜精品一区二区三区四区| 色五月大| 日韩操逼大片| 大香蕉99热| 小视频久久久aaa| 婷婷五月丁香基地在线视频官网| 97婷婷丁香五月综合| 丁香婷婷五月色成人网站| 久久综合婷婷| 色丁香五月| 人人操AV| 久久99久久久久久| 思思99热| 综合激情五月丁香| 成人精品视频99在线观看免费| 亚洲VA在线| 婷婷五月天伦理| 激情五月天视频| 婷婷五月网图片区| 五月丁香| 婷婷五月激情基地| 亚州激情九月| 黄色短视频在线观看| 综合激情视频| 婷婷五月天天天| 人妻VideOssS人妻高清| 一本久久亚洲五月婷婷| 91Chinese在线| 色色五月婷婷| 欧洲高清免费久久| 狠狠色狠狠操| 五月天婷婷无码| 九九激情综合| 综合色图婷婷| 99乱视频| 深爱激情网婷婷| 亚洲99手机免费看视频| 视频一二区| 亚洲在线操| 激情五月婷黄版| 色久女| 亚洲色情久久| 国产资源91在线| 色婷婷亚洲精品天天综| 色婷婷小说| 五月天婷婷乱论小说| 色婷婷五月天亚洲 | 久在线88综合| 台湾无码A片一区二区| 97综合视频在线| 99伊人婷婷在线| 人人97碰| www.99热. com这里只有精品| 六六久久黄色| 久草 天堂| 久久婷婷成人视频| 五月天天天天天天天天天天天天天天天婷婷婷| 久热无码| 超碰二区| 天天日日夜夜爽。| 99在线小视频| 91chinese 在线| 婷婷99狠狠| 六月色五月天天婷婷| 中文AV在线播放| 日韩一区二区在线播放| 性爱电影科技贸易有限公司| 思思热久久爱| 狠狠操狠狠操| 67194成I人在线观看线路1| 狠狠色大香蕉| 婷婷精品综合| 国产真实乱了老女人视频| 色久天| 色色五月婷| 日韩AC在线免费观看| 国产精品日本一区二区在线播放| 亚洲愉拍99热成人精品| 日本久久9| 色日本丁香婷婷| 另类图片 五月激情| 五月天天天综合| 免费不卡狠操美女视频网 | 婷婷色在线| 91干网| 99re这里只有精品免费| 婷婷中文字幕版| 亚洲精品视频电影| 男人天堂AV在线一区二区| 中文字幕精品推荐免费在线观| 国产AV一区二区三区日韩| 日本不卡一区二区三区| 极品少妇高潮啪啪AV无码| 婷婷丁香五月综合网| 婷婷成人av| 这里只有精品在线视频精品| 精品人妻久久久久久久| 色婷婷狠狠| 狠狠精品干练久久久无码中文字幕| 激情五月影院| 天天干夜夜操A片| 色色丁香婷婷| 4399在线日本A片| 热99这就是精品视频| 日本视频99| 人妻六月天| 狠狠操天天日| 久草婷妨| 久热精品视频| 五月婷婷国产| 婷婷久热| 五月丁香综合激情在线观看| 99国产性感视频| 疯狂做受XXXX高潮A片| 亚洲操女| 成年人丁香五月| 亚洲精品第一国产综合亚AV | 天天干天天日日| 五月叮香啪| 激情九月婷婷| 97久久久| 五月婷婷婷婷婷婷艺术| 99热在线播放| 婷婷五月天com| 五月天大香蕉| 五月丁香六月婷婷综合伊人| 久碰婷婷视频| 六月色伊人婷婷| 日本综合色图| 久久久久久丁香五月| 五月婷婷激情性爱| 香蕉婷婷色五月| 色五月情| 九九色色| 秋霞午夜理论| 碰人人97| 开心五月激情网| 久久婷婷五月天激情新地址| 国产精品久久久丁香五月八戒视频| 色噜噜,噜噜色| 免费视频WWW在线观看网站| 狠狠五月激情丁香六月| 婷婷国产成人| 五月婷婷五月丁香综合| 婷婷另类小说| 日韩精品二三区| 91婷婷五月丁香碰| 五月丁香六月激情综合| 97视频.干com| 91|疯狂丨高潮丨对白| 99久久99九九99九九九| 99ri国产在线| 91大屁股| 综合99久久| h在线看免费版在线看| 色综合网页| 少妇搡BBBB搡BBB搡毛茸茸 | 伊人碰碰婷婷| 亚洲12p| 婷婷五月天激情五月天深爱五月天| 大香蕉520| 热这里只有精| 91超级碰在线视频| 婷婷操无码| 六月丁香网| 综合激情婷婷| 五月婷婷亚洲色图| 强壮的公次次弄得我高潮A片日本 | 五月婷婷狠狠久久| 极品人妻VIDEOSSS人妻| 久久五月天黄色五月天色网址| 丁香婷停五月激情综合深爱| 欧美综合丁香网| 久久草大香蕉| 丁香婷婷成人网站| 色色色.com| 综合网狠狠| 夜夜撸天天操| 99操免费视频| 五月婷婷六月丁香综合| 亚洲9久久精品| 五月天激情久久| 色婷婷五月天不卡| 五月丁香婷婷福利| 日韩狠狠色| 日本ww亚洲| 爆乳熟女一区二区三区爆乳 | 天天综合久久| 激情综合色| 五月天婷婷狂暴白浆| 激情五月婷婷中文字幕| 99操免费视频| 99热全是精品| 色爱综合五月| 五月天婷婷丁香人人操91| 亚洲天堂AAA| 久久久久8888| 日韩精品超碰在线观看| 久久久噜噜噜久久人妻| 日本va视频| A√天堂网在线| 中文字幕av在线播放| 97碰碰视频在线观看免费| 99热线观看9| 思思热99er| 九九成人| 狠狠干婷婷| 91超级碰在线视频| 激情爱爱网站超大免费| 狠狠色性| 五月激情偷拍婷婷| 久久精品永久免费| 五月天久久综合婷婷丁香| 综合五月激情| 一区中文字幕电影| 丁香五婷| 99日本精品视频热| 丁香五月婷婷婷婷欧美综合| 欧美久人人| 老司机视频lsj爱就色| 婷婷激情人妻| 色色色色热| 色999五月色| 丁香婷婷久久| 97超碰99热99| 女人天堂久久| 99ri国产| 婷婷五月 丁香六月| AⅤ网站在线看| 国产乱人偷精品人妻A片| 激情五月狠狠| 婷婷五月天成人动漫| 极品五月天| 色五月婷婷在线观看第一页舔| 婷婷人人操| 在线观看av网站| www.黄色片-久久成人国产精品在线播放-999AV | 五月婷婷丁香日韩在线| 五月丁香六月婷婷激情网| www.激情五月天.com| 九九色黄色| 丁香五月很很肏| 国产黄色大片| 99ri精品| 精热在线综合网| 99热久久这里只有精品| 任你爽视频| 六月婷婷狠狠| 激情五月婷在线精品| 色亚洲无码| 亚洲色色图片| 玖玖午夜视频| 九月激情婷婷丁香| 大香蕉520| 操逼在线视频| 五月天婷婷社区| 丁香五月激情五月| 婷婷五月综合欧美在线播放| 亚洲精品国产成人AV在线| 五月丁香婷婷中文| www、色色色| 99视频精品| 狠狠噪| 99亚洲视频| 色婷婷丁香五月在线| 狠狠狠婷婷五月综合| 在线看av| 亚洲 六月 综合| 色综合久| 超碰在线免费9| 婷婷性爱无码视频| 婷婷综合视频| 丁香综合网| 久久91久久精品久久| 六月综合婷婷开心伊人| 中文字幕无线久必| 婷婷五月成年人| 开心激情网五月天| 丁香五月瑟瑟| 66精品成人免费网站在线观看| WWW.99热| 国精产品一区一区三区免费视频| 婷婷综合久久综合| 99久久精彩视频。| 久久资源网五月婷| 操逼六区| 九九精品免费| 色五月噜噜| 五月激情婷婷开心五月| 五月天精品综合在线| 久久99激情丁香婷婷小说网| 色天堂在线| 九九99精品免费播放| 内射 无码 伊人| 丁香五月日啪| 另类少妇人与禽zOZZ0性伦| 免看黄大片AA | jiujiu热在线视频| 亚洲天堂99| 97精品欧美91久久久久久久| 激情五月成年| 678五月丁香亚洲综合| 色婷婷视频综合| 99国产精品久久久久久久久久久 | 综合伊人狠狠| 免费日本aⅴ中文字幕| 国产超碰人人| 日本婷久久| 国产视频福利| 成人丁香五月| 玖玖伦理电影| 在线观看免费观看在线9久| www.色五月| 天天色爽| 久久精品熟女亚洲AV麻豆| 射久久丁香五月| 色婷婷狠狠| 视频1区2区| 久久综合五月天| 久久在线大香蕉| 五月婷婷六月丁香在线| 国产精品18久久久| 激情九九综合网| 日本三级第一页| 激情五月,激情综合网| 久色网址| 色婷婷五月在线| 久久五月丁香| 欧洲日韩一区二区三区| 91久久精品无码一区二区三区| 色色色色网站| 色久免费| 成人一级片| 激情综合五月天| 99开心五月五月丁香激情| www.成人婷婷综合| 91操片| 97色色视频| 五月婷婷熟女| 丁香五月婷婷天堂大香蕉| 热热久久久久久久久| 狠狠干婷婷| 琪琪秋霞| 免费在线a| 久久多色| 五月丁香另类网| 9999热在线免费观看| 99色精品视频| 伊人久久大香线蕉AV最新午夜| 色色综合成人网| 亚洲中文字幕在线观看| 婷婷性爱无码视频| www.色综合.com| 五月婷婷激情网| 久久久久久五月天| 五月丁香美女视频| 五月综合婷婷五月| 在线观看五月婷婷网| 少妇人妻人伦A片| 安息电影在线观看完整版| 在线观看亚洲AV| 欧美va亚洲va| 麻豆雪千夏| 成人综合网站| 丝袜激情网| 天天综合图片| 久久久久久久久久8888| 久久综合丁香激情五月| site:xiongshengzz.com| 五月婷婷综合潮喷| 亚洲精品操一操、噜一噜、摸一摸、爽 | 激情久久丁香| 日韩人妻AV在线| 99在线观看视频| 天天日夜夜操五月| 99色视频| 天堂色婷婷| 久久九精品| 五月激情综合网| www久久久久久久| 99热只有| 九九黄色网| 99综合色| 呦呦v线| 色综合色综合网| 色五月婷婷天堂| 午夜天堂一区人妻| 婷婷色色网| 日韩人妻在线观看| 天天在线XXX| 婷婷丁香五月天狠狠| 国产精品A成V人在线播放| 亚洲九九99精品视频在线播放| 日本丰满久久| Www.sesese丁香| www.99色| 风流少妇A片一区二区蜜桃| 色综合网综合| 婷久看人爽| 色九月综合网| 狠狠摸狠狠摸| 婷婷五月综合激情免费| 99视频久久| 九九综合网色全集| 欧美人人女女精品综合五月天| 人人爱国产| 99热碰碰热| 天天爽天天干| 日本色久| 综合色色网| 日韩在线视频网站| 五月丁香啪啪啪综合网| 丁香六月婷婷五月天| 久综合九综合99| aV直接看| 99久操视频| 爱穴久久| 99在线免费视频播放| 五月婷婷色五月| 日本社区五月天激情| wwwss在线观看| 第四色婷婷日本| 婷婷综合久久| 99久久a线观| 丁香五月色色色色| 国产精品噜噜在线视频| 月色色综合婷婷网| 久久久久99精品成人网站| 另类专区在线观看| 婷婷色五月91啪啪| 婷婷人妻激情| 97资源碰碰| 97干在线| 我要射综合| 久久这里只有欧美| 九九 激情 网| 五月天婷婷久久| 五月丁香激情综合网| 日本激情91| 久久精品99久久| 色婷婷电影网| AAA亚洲AV| 色色亚洲五月天| 婷婷色五月在线视频| 五月婷六月综合在线观看| 五月丁香久久婷| 激情五月天。| 国产av影片| 九九热视频首页/这里只有精品| AV色婷婷| 狠狠婷婷爱| 中文字幕乱轮| 婷婷狠狠操| 97精品人人A片免费看| 激情AV在线| 五月婷婷六月丁香| 人人干人人操外国| 蜘蛛女免费观看完整版高清电影| 国产精典视频在线观看| 精品婷婷| 七月婷婷色香综合网| 亚洲精品无码一区二区| 国产小精品| 天天透天天干| 亚洲丁香五月深爱五月| 亚洲avjiujiur91| 激情五月小说婷婷| 香蕉AV777XXX色综合一区| 日本色五月| 国产av网| 888精品福利地址| 色五月综合在线| 9l视频自拍9l九色成人| 五月婷综合| 97超碰在线观看免费| 人妻中文av| 色亚洲中文| 五月天婷婷伊人| 成人片黄网站色大片免费毛片| 天天操天天插| 久久婷婷网| WWW.开心五月天.COM| 79色色免费| 人人爱国产| 99丁香五月婷婷在线| 99视频91| 日日狠狠久久偷偷四色综合免费| 日狠狠| 亚洲中文字幕在线观看| 噜噜五月天综合| 色色99色色| 99这里都是精品| 欧美三级视频| 亚洲精品性色| 精品国产乱码久久久久久免费| 日日操天天操| 五月丁香婷婷色| 国产婷婷综合在线免费视频| 99视频只有精品| 九九热99熟女| 日日操夜夜爽| 一级七香蕉| 天天天日天天天干| 久久综合久色欧美综合狠狠| 久久大香免费| 丁香六月亭亭久久综合| 九九色逼| 99自拍视频| 综合激情在线| 五月丁香激情综合六月涩涩爱| 中文字幕成人| 婷婷天天色| 99精品97| 大香蕉婷婷色| 99热在线观看99| 夜夜撸天天操| 五月天激情啪啪| 五月丁香婷婷AV| 欲色人妻| 天天操天天插| 色婷婷888| 日韩一级网站| 五月丁香花激情综合网| 亚洲五月六丁香激情| 六月激情网| 欧美啪啪五月天| 另类五月激情| 五月婷激情影院| 国产97色在线| 草综合网| 精品香蕉99久久久久网站| 97色色综合| 大香蕉天堂| 午夜丁香| 国产毛片精品一区二区色欲黄A片| 色.五月综合网| 日韩在线五月天婷婷| 天天干天天操天天爽| 久草网大香视频| 99热官网| 777色婷婷爱五月| 色优久久| 99热在线这里| 天天肏视频| 67194国产| 甈你aaaaa| 日本英国美国欧美亚洲国产精亚洲日韩精品在线观看 | 麻豆五月丁香婷婷| 久久久久久久久久久44| 五月综合色播播丁香婷婷| 五月婷色色| www91在线| 婷婷六月激情| 天天日天天日天天搞| 精品久久99| 97涩涩丁香五月天| 成人网页在线观看| 天天干天天插| 人人操操97| 婷婷六月色开| 久久久18| 久99久视频精品| 久久98热re| 日本狠狠爽| 婷婷激情五月天激情小说| 久久只有精品| 五月亭大香蕉| 三年高清大片免费观看国语| 天天日人人| 成年视频免费观看| 五月婷丁香| 丁香五月色| www.夜夜夜| www.久久99热地址发布| 欧洲亚洲午夜| AAA亚洲AV| 无码啪啪| 91操女| 玖玖资源在线视频| 这里只有精品1| www.激情在线| www.精品99| 97人人干视频| 色五月婷婷色| 精品在线网站| 天天久| 就爱操www com| 中文字幕,综合,91| 噜噜噜噜综合在线| 丁香六月成人网| 99精品热| 991国产精选视频在线播放下载| 狠狠搞狠狠操| 99国产性感视频| 婷婷五月天AV| 九色PORNY自拍成人精彩视频| 婷婷五月激情片| 色娸娸综合网| 色婷婷欧美| 五月天综合色| 无码AV久久久久久久久| 51国精产品自偷自偷综合| 久月婷婷| 亚洲、欧美、国产另类笫二区| 色色激情五月天| 欧美综合五月丁香六月婷| 天堂成人A片永久免费网站| 婷婷娌伦网| 日日夜夜狠狠| 久久99精品久久久久久噜噜| 欧美激情综合色综合色| 天天操综合网| 99爱免费在线观看| 9久热精品在线视频| 婷婷性爱综合| 午夜丁香综合婷婷| 99大香蕉| 天天精品视频免费观看| 色婷婷啪啪| 精品99在线观看| 丁香五月六月综合激情| 这里只有精品免费观看网占| 日本狠狠干| 日日婷婷不卡| 8050一级网| 深爱激情五月婷婷| 爆乳熟女一区二区三区爆乳| 色婷婷色久综| 91丁香色五月| 色九月婷婷丁香| 99在线观看| 婷婷六月色| 狠婷婷五月| 另类丁香综合| 成人片在线播放| 欧美色色色色色色色色色色影视| 色婷婷69| 亚洲性爱99| 日韩综合成人| 夜夜撸日日操| 五月婷婷大香蕉| 最近中文字幕大全免费版在线 | 久久精品夜色噜噜亚洲a∨| 色五月视频,小说| 亚洲视频在线网| 综合性爱网| 天天做天天爱天天日| 久久久久久97| 六月久久婷婷| 国产亚洲精品久久久久久牛牛| 丁香色五月婷婷17C| 成人五月天丁香| 99re在线观看视频| 大香久久伊人网| 色狠狠激情五月| 久久ri精品| 超碰免费大香蕉| 五月婷无码| 啪色综合| 精品人妻午夜一区二区三区四区 | 色婷天天| 久色五月婷婷综合| 丁香九九九九| 操大屄五月天视频| 我爱大香蕉| www,五月天激情| 91干| 99婷婷综合| 国产午夜一区二区三区| 人妻性爱av网站| 色9999综合久久| 五月在线| 丁香五月影院| 丁香五月婷婷激情123| 最新无码专区| 91精品综合久久久久久五月丁香| 日韩另类| 一本大道嫩草AV无码专区| 色婷婷丁香特级性爱视频| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 99热在线中文字幕| 99精品久久久久久| 色啪网| 欧美色色色色色色| www.com任你艹| 色色五月婷| 五月天丁香婷| 婷婷丁香五月综合网上 | 激情综合激情综合| 激情五月六月丁香| 亚洲欧洲另类| 99ri在线播放| www狠狠爱com| 久久精品凹凸分类| 六月丁香五月婷婷| 日韩综合久久| 久久精热| 五月丁香婷婷三级| 婷婷激情鹿城五月天| 亚洲偷| 色婷网| 激情五月婷| 五月天婷婷激情在线色图| 五月丁香色婷婷久久| 狠狠操综合| 99久在线观看| 999热这里只有精品| 97婷婷狠狠| 永久免费一区二区三区| 人人操AV| 色五月综合| 大香蕉五月天婷婷| 欧美激情综合色综合啪啪五月| 99 热| 99色在线观看| 99在线观看精品| 波多野结衣AV无码Porn| 久操婷婷| 91久久久久久| 国产成人亚洲综合A∨婷婷| 99热这里只有在线| 久久人人人人妻| 婷婷深爱五月亚洲综合| 色你久久| 99热免费精品| 婷婷色情网| 另类激情五月| 久热 91| 黄色成人网站在线播放| 国产精品99久久久久久久女警 | 亚洲成人网站在线观看| 丁香婷婷老司机久操| 九九热视频在线观看| 亚洲激情综合| 噜噜在线| 色综合大香蕉| 色~性~乱~伦~噜| 五月丁香做爱视频| 丁香五月激情啪啪| 激情五月天影院| 色五月婷婷老师| 91丁香五月| 99热最新网址| 日韩成人精品中文字幕| 亚洲午夜av| 99热这里全都是精品| 99热这里有精品| 人人干女人| 亚洲AV成人精品日韩在线播放| 天天插AV丝袜中| 丁香婷婷深情五月亚洲| 西瓜美女a片| 久色国产| 五月丁香影院| 99热这里只有精品3| 丁香九月久久| 26uuu欧美日韩| 狠狠狠狠狠狠狠狠狠狠狠色宗合图片| 丁香五月婷婷天激情| 天天操夜夜爽天天操| 亚洲色图在线视频| 爆乳熟妇一区二区三区爆乳照片| 激情久久伊人| 97在线/日本| 激情另类综合| 日韩综合网络男女香蕉a片| www.夜夜爱.com| 青青日韩| 热的国产99热| 久久A区B区| 九九re精品视频在线观看| 丁香六月婷婷综合缴| 天天日夜夜草进麻麻的子宫| 亚州男人天堂婷婷五月| 青柠影视免费高清电视剧| 99久久久| 久久香视频| 婷婷天堂综合| 99热精品在线播放观看| 91啪啪视频| 99热日本| WWW五月| 99热伊人| 五月丁香亭亭电影久久| 成熟妇人A片免费看网站| 九九99精品| 婷婷综合天堂| 欧美精品99久久久| 伊人久久五月天| 欧美三级欧美一级| 99人妻碰碰久久久禁片| 夜夜操加勒比| 成人网在线视频| 国产SUV精品一区二区6| 五月丁香香蕉| 色停停影院五月天| 可以免费观看的av网址| 五月丁香爱婷婷深深| 99惹在线精品免费观看| 久久免费精品小视频| 久久全色| 日本色噜| 色你久久| WWW.HENHENL.| 天天搽天天射| 991精品在线视频| 91 九色大美女| 一级性感黄色内射视频| 五月婷婷色播| 色五月天在线| 九九亚洲| 丁香五婷婷| 五月情涩综合婷婷| www狠狠| 婷婷综合网性| 这里只有精品视频在线看| 丁香五月婷婷色播艳门照| 成人色五婷婷| 99精品国产乱码久久久人妻| 最近中文字幕大全免费版在线| 99精品国产在热久久| 香蕉久久av一区二区三区| 深情五月天| 五月激情小说| 久久激情五月天| 亚洲婷婷激情五月天| 亚洲日日日| 久热一区| 欧美激情五月天婷婷| 丁香婷婷少妇| 久久五月天综合| 一区二区免费看| 色视频五月天| 97超级碰| 五月婷综合性中心| 婷婷五月天影院| PORNY九色9l自拍视频成人| 色五月婷婷久久| 久热99热| 激情 婷婷| 婷婷久久综合久色| 丁香五月天AV在线 | 久久精品A片777777| 91操在线| 婷婷五月天亚洲丁香| 久久久久久久97| 激情五月婷婷视频一区二区三区| 激情综合网五月在线播放| 久久久精久人妻| 99热成人| 色色永久| 丁香六月激情| 激情综合综合综合| 久久99视频| 久久五月六月| 久久伊人大香蕉| 色婷婷六月性| 久久性爱视频| 开心 五月 综合| 狠狠干狠狠干| 99在线免费视| 亚洲乱码日产精品BD| 综合激情在线观看| 五月天六月色| 在线看av| 九九热大香蕉| 国产在这里只有精品| 综合色、色综合| 思思re视频在线| 老妇六区| 狠狠干青青草| 影音先锋AV资源男人站| 超碰免费电影| 色婷婷丁香AV综合| 婷婷香蕉精品| 色五开心五月五月深深爱| 天天日,天天干,天天操| 强奸幻女毛片| 99久视频| 98色花堂98t.R| 97色婷| 五月伊人综合| 97在线观视频免费观看| 99热综合网| 天天日夜夜拍| 狠狠人人| 久久婷五月影院| 精品人妻一区二区| 9热精品| 色爱亚洲| 天天操夜夜夜拍拍拍| www.射伊蕉婷婷| 99久在线精品99re8热| 色 色 色综合com| 五月天婷婷伊人| 性色五月天| 亚洲mm色| 天啪色| 99在线播放视频| 婷婷色影音天| 天天骑天天操| 伊人久久大香网| 国产精品第一国产精品| 丁香六月婷婷久久高清| 99无吗| 99热在线精品播放| 五月开心网| 色情综合网| 色综合大香蕉| 久久综合99| 99热这里只有精品最新网址| 八戒青柠影视剧在线观看| 婷婷五月天美女| www.金莲av| 五月丁香六月成人| 无码G高清天| 久久99久久99www| 99热老司机| 五月天成人手机在线视频| 婷婷五月天伊人网| 六月五月婷婷| 97操视频| 97色 五月天丁香| 天天操中文字幕| 日日干综合| 丁香五月婷婷亚洲另类| 99热国产在线| Av大香蕉| 九色视频九色九色91jiuseshipin| 丁香丁香激情网| 久热天堂| 五月丁香亭亭| 激情六月色| 天天上天天爽| 色五月婷婷影院| 国产精品美女久久久久AV超清| 99热精这里只有精品| 久久久久久久91| 99热综合| 舔色婷婷| 婷婷丁香五月激情中文字幕版| 大伊香蕉精品视频在线| 色婷婷五月天综合网| 色婷婷丁香五月| 色婷婷精品视频| 99久久er| 开心六月丁香五月婷婷| 日本狠狠干| 亚洲五月婷婷| 狠狠干青青草| 黑人糟蹋人妻HD中文字幕| 色婷婷丁香网| 色玖玖网| 亚洲精品久久久无码| 婷婷色色综合激情| w婷婷五月婷婷w| 日韩99无码| 激情五月天视频| 91丨九色丨白浆| 思思国产99| 密臀久久| av九九| 99热销国产这里有精品| 原琪琪色影院| 天天干狠狠| 色综合网综合| 99区视频| 掩去也综合五月视频| 国产偷人爽久久久久久老妇APP| 丁香五月第四色88| 99rewww| 丁香激情久久| 伊人九九综合| 激情国产五月| 婷婷色情 | 深爱五月婷婷| 色婷婷综合网| 9999久久久久| 97久久草草超级碰碰碰| 99免费综合网| 婷婷午夜精品久久久| 亚洲中文字幕在线观看| 色色色.COM| 九热视频这里只有精品| 51成人| 在线观看av网站| 丁香久月| 97碰碰碰| 婷婷色片| 日韩肏屄网| 99久久婷婷五月| 五月天久久小说| 色婷婷很很丝袜| 91色呦哟| 五月天天丁香婷婷| 2025神马午夜福利| 久久综合九色综合97婷婷| 开心网五月色婷婷| 五月丁花六月丁香综合| 97av在线视频| 涩婷婷视频快播人妻| 天天色天天日| 欧美婷婷五月丁香| 久久大香蕉| 99热1| 亚洲成人无码网站| 色五月激情综合| 96精品久久久久久久久| 天天综合天综合久久网| 激情伊人五月天| 97色干| 狠狠色噜噜狠狠狠狠综合| 久久人人人人妻| 五月丁香六月花| 丁香欧美| 99热只有这里才是精品| 亚洲综合在线视频| 婷婷五月天AV网| 欧洲婷婷五月天| 激情婷婷丁香色情五月天| 综合狠狠干| 狠狠色婷婷777| 国产中文亚洲欧美日韩性交| 婷婷五月丁香超碰| 色色丁香五月天| 天天搞夜夜爽夜夜爽| 日本久久人| 91精品国产91久久久久青草| 无码九九九九| 五月婷婷偷拍| 精热在线综合网| 五月丁香在线国产 | 人人草碰| 91丨九色丨丰满人妖| 国产成人亚洲综合亚洲| 610018岁成人视频| 激情五月天.色网| 超碰99热精品| 亚洲成人网无码| 九九热区一区二区三区| 五月婷精品| 色狠狠999综合网| 五月婷久久在线| 热久精品| 99热只有这里有精品| 色播五月婷婷| 综合色色婷婷| 免费观看18视频网站| 国产激情综合| 婷婷丁香六月天激情四射网| 68热超碰在线| AV色婷婷| 婷婷五月天.com| www.狠狠艹| 亚洲亚洲激情| 丁香五月天天高清在线| 丁香五月无码| 九九色99| 桃色成人网| 婷婷激情人妻| 日 日干 日日做| 色五月婷婷五月天| 国产精品成人在线| 天天综合网色欲香| 俺来也综合网精品一区| 五月天伊人av| 九九热这里| 丁香五月天堂网| 久久婷婷五| 五月伊人综合| 五月性色| 成人午夜天| 一区二区乱码视频| 激情五月婷婷综合网| 丁香六月无码| 天天日,天天干,天天操| 麻豆AV一区二区三区| 色婷婷综合久久| 97人人操人人爽| 97丁香五月| 激情五月天视频| 久热久操久热久草国产91| 伊人激情啪啪| 色五XX| 91综合在线| 久久精品婷婷五月丁香| 五月天婷婷色在线视频免费观看| 久久视频这里都是精品| 色五月综合网| 日日操天天操| 超碰高清在线| 我要射综合| 婷婷五月在线视频| 伊人色五月| 综合网五月天123| 99免费在线视频| 婷婷色五月开心五月| 久久er这里只有精品| 怡红院精品视频久久久久久久久| 久久丁香五月| 操操操B| 五月天国产成人| 狼人婷婷久久| 五月丁香色色色| 色婷婷精品小视频| 成人电影一区| 婷婷综合影院| 九九99一区| 一本大道伊人AV久久综合| 欧美成人日韩| 天天天天天久久久久久| 99九无网码| 4399无码视频| 夜夜骑日日操| 深爱开心激情| 97人人操人人| 色色综合激情| 国产永久一黄| 密桃激情五月天综合网| 乱码操操| 《久久综合九色综合97婷婷| 激情五月天综合网站网站网站| 色在线视频网2025| 91色综合网站在线| 精品婷婷丁香五| 婷婷久久免费看| 中文字幕在线免费观看视频| 丁香婷婷久久综合在线| 婷婷五月成年人| 97色天堂| 99色精品| 99精品在线| 激情五月婷婷啪啪| 天天干天天干天天干天天干天| 色色色热| 五月丁香日本一抹本| 婷婷五月天播播| 亚洲第二AV| 日本操B视频| 日韩三级视频一区二区| 台湾综合丁香五月蜜桃| 色综合五月| 日本三级网址| 色天五月天在线观看视频| 亚洲精品V天堂中文字幕| www.91九色| www久久久久久久97| 亚洲超碰中文字幕| 精品51XX| 黄色成人AV在线| 成人免费va| 色情五月| 五月婷婷激情中文字幕| 人操综合| 日日噜狠狠色| 性爱七区| 97婷婷丁香| 九九色影视| 天天爱天天操| 性小说五月天| 不卡在线视频| 成人色色视频| 久久婷婷五| 天天综合 99久久婷婷| 99免费在线视频| 欧美激情综合五月色丁香| 五月丁香六月婷婷啪啪| 丁香激情婷婷网| 色五月综合网站| 久久久久久性爱视频| 五月色婷婷中文字幕| 丁香色影院| www.久久久久久久| www.粉嫩av.com| 欧美三级巜人妻互换| 激情av| 影音先锋激情网| 亚洲成人av中文| 天天日天天操心| 9月色婷婷| 国产这里只有精品| 天天插轮理| 超碰激情五月| 婷婷色丁香五月| 日本综合久| 久久人人做人人妻人人玩精品va| 五月婷婷内射网| 婷婷丁香五月社区亚洲| 91超级碰碰碰| 图片区 小说区 区 亚洲五月 | 婷婷五月色| 好吊丝aV| 丁香五月婷婷婷桃花影院| 五月伊人婷婷| 伊人网大香| 色墦五月丁香| 激情五月色综合| 色色狼人综合| 国产精品人人做人人爽人人添| 激情五月天综合网站网站网站| 综合五月婷婷| 6080av| 超碰无码318604| 天天爽天天| 九热视频| 92久久| 五月丁香亭亭激情操逼网| 夜夜爽天天日| 成人av中文字幕| 天天色综网| 五月婷婷开心丁香| 色色婷婷丁香| 97操碰日本女人|