99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

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

端側(cè)智能體實(shí)戰(zhàn):從對(duì)話到行動(dòng)的FunctionGemma方案

端側(cè)智能體實(shí)戰(zhàn):從對(duì)話到行動(dòng)的FunctionGemma方案 把大模型真正用起來(lái)之后我發(fā)現(xiàn)一個(gè)很明顯的分水嶺會(huì)聊天的模型很多會(huì)干活的模型很少。大部分時(shí)候我們打開(kāi)一個(gè)助手問(wèn)它“明天天氣怎么樣”它只會(huì)生成一段“天氣可能不太好建議帶傘”的漂亮話而不是真的去查接口、拉數(shù)據(jù)、設(shè)置提醒。這個(gè)差距就是從“對(duì)話”到“行動(dòng)”的距離。FunctionGemma 就是我在做端側(cè)智能體時(shí)重點(diǎn)嘗試的一套方案它把函數(shù)調(diào)用能力直接內(nèi)建到輕量級(jí)模型里讓模型不僅能理解意圖還能輸出結(jié)構(gòu)化的函數(shù)調(diào)用指令然后由本機(jī)執(zhí)行器完成實(shí)際操作。這篇文章我會(huì)從模型原理、端側(cè)部署、代碼實(shí)現(xiàn)和調(diào)優(yōu)經(jīng)驗(yàn)四個(gè)方面把完整鏈路拆開(kāi)聊清楚。文章面向的讀者是正在做端側(cè) AI 應(yīng)用、智能體框架或者本地助手的開(kāi)發(fā)者。哪怕你還沒(méi)系統(tǒng)接觸過(guò)函數(shù)調(diào)用只要有一點(diǎn)大模型推理的基礎(chǔ)跟著后面的代碼走一遍也能在本地搭出一個(gè)能查時(shí)間、記備忘錄、發(fā)通知的小智能體。我會(huì)盡量說(shuō)人話把那些文檔里不會(huì)寫(xiě)的坑也一并擺出來(lái)。1. 端側(cè)智能體到底難在哪為什么“會(huì)聊天”不等于“會(huì)行動(dòng)”1.1 對(duì)話模型的天然邊界先看一個(gè)最典型的場(chǎng)景。你問(wèn)一個(gè)純對(duì)話模型“幫我把明天上午十點(diǎn)的會(huì)議改成十一點(diǎn)?!彼鼤?huì)怎么回大概率是“好的建議您前往日歷應(yīng)用手動(dòng)修改。”這句回答看似禮貌實(shí)際上什么都沒(méi)做。原因很簡(jiǎn)單普通語(yǔ)言模型的能力邊界在“生成文本”它沒(méi)有一個(gè)可以去操作日歷的“手”。LLM 本質(zhì)上是在給定上文的前提下預(yù)測(cè)下一個(gè) token。它知道日歷是什么甚至知道很多改日程的步驟但它沒(méi)有權(quán)限、沒(méi)有接口、也沒(méi)有執(zhí)行環(huán)境。想讓它真正干活就必須在模型外面接一層“工具層”。這一步在云端相對(duì)容易畢竟服務(wù)器可以隨便調(diào)接口、跑代碼。但到了手機(jī)、路由器、車(chē)載終端、嵌入式設(shè)備上問(wèn)題立刻變復(fù)雜算力有限、內(nèi)存吃緊、網(wǎng)絡(luò)不穩(wěn)定、隱私要求高。你不能指望設(shè)備端拖一個(gè)幾百億參數(shù)的模型再依賴云端反饋。端側(cè)智能體真正需要的是一個(gè)小、快、準(zhǔn)的本地“行動(dòng)派”模型而不是一個(gè)只會(huì)嘴上說(shuō)說(shuō)的“評(píng)論員”。1.2 函數(shù)調(diào)用把“意圖”變成“指令”函數(shù)調(diào)用function calling是當(dāng)前把大模型變成行動(dòng)體的最主流方案。核心思路很簡(jiǎn)單模型不直接執(zhí)行動(dòng)作而是輸出一個(gè)結(jié)構(gòu)化指令比如create_event(title項(xiàng)目評(píng)審, time2025-06-10 10:00)真正的執(zhí)行交給本地代碼。這樣做有四個(gè)好處可解釋模型只負(fù)責(zé)“決定做什么”每一步動(dòng)作都是明確的函數(shù)名和參數(shù)。可控制執(zhí)行前可以做權(quán)限校驗(yàn)、參數(shù)校驗(yàn)不讓模型亂來(lái)??苫貪L如果某次調(diào)用產(chǎn)生了壞結(jié)果很容易定位到是哪個(gè)函數(shù)、什么參數(shù)出問(wèn)題。可擴(kuò)展新增能力只需要注冊(cè)一個(gè)新函數(shù)不需要重新訓(xùn)練模型。還是用改日程舉例用戶說(shuō)“把明天的會(huì)改到十一點(diǎn)”模型并不直接操作日歷數(shù)據(jù)庫(kù)它輸出reschedule_event(event_idevent_123, new_time11:00)。本機(jī)代碼拿到這個(gè)指令后再調(diào)用系統(tǒng)日歷 API 完成修改。這樣一來(lái)模型依然是模型動(dòng)作卻真正發(fā)生了。1.3 FunctionGemma 解決的三個(gè)核心問(wèn)題FunctionGemma 是一類(lèi)面向端側(cè)場(chǎng)景的輕量級(jí)工具調(diào)用模型方案。我不把它理解成某個(gè)單獨(dú)模型而是一條“訓(xùn)練策略 推理協(xié)議 端側(cè)執(zhí)行框架”的組合。它重點(diǎn)解決三個(gè)問(wèn)題。第一是輕量化。參數(shù)規(guī)模壓縮到端側(cè)能扛住的范圍同時(shí)通過(guò)定向訓(xùn)練把“工具調(diào)用”這個(gè)能力突出強(qiáng)化而不是像通用模型那樣什么都會(huì)一點(diǎn)、什么都不精。第二是結(jié)構(gòu)化輸出穩(wěn)定。純對(duì)話模型輸出 JSON 經(jīng)常缺括號(hào)、多字、字段名漂移。FunctionGemma 在訓(xùn)練階段使用了大量工具調(diào)用樣本并配合特殊 token 標(biāo)記函數(shù)調(diào)用段讓輸出格式的穩(wěn)定性比通用模型高一個(gè)量級(jí)。第三是多輪工具狀態(tài)感知。真實(shí)智能體不可能只調(diào)用一次函數(shù)。用戶查完天氣可能接著問(wèn)“那明天呢”這時(shí)候模型必須能結(jié)合上一次工具返回結(jié)果繼續(xù)推理。FunctionGemma 的訓(xùn)練數(shù)據(jù)里包含了多輪工具結(jié)果回填樣本所以它知道什么時(shí)候該繼續(xù)調(diào)、什么時(shí)候該給最終答復(fù)。2. FunctionGemma 是怎么設(shè)計(jì)出來(lái)的原理與運(yùn)行機(jī)制2.1 模型架構(gòu)與訓(xùn)練對(duì)象不去糾結(jié)底層實(shí)現(xiàn)細(xì)節(jié)從功能視角看FunctionGemma 的底座是一個(gè)標(biāo)準(zhǔn)的 Decoder-Only 輕量語(yǔ)言模型參數(shù)檔位從 1B 到 4B 不等。它要做的事情是在常規(guī)對(duì)話能力之上額外學(xué)會(huì)一種“工具調(diào)用方言”。訓(xùn)練數(shù)據(jù)混合了三類(lèi)多輪對(duì)話數(shù)據(jù)保證模型仍然能正常聊天、總結(jié)、問(wèn)答。函數(shù)調(diào)用數(shù)據(jù)用戶在某一輪提出請(qǐng)求模型在回復(fù)中插入一個(gè)特殊標(biāo)記比如function_call后面跟著 JSON 形式的函數(shù)名和參數(shù)。工具結(jié)果回填數(shù)據(jù)上一輪調(diào)用了函數(shù)這一輪的輸入是function_result模型需要基于這個(gè)結(jié)果生成最終回復(fù)或者繼續(xù)發(fā)起下一個(gè)函數(shù)調(diào)用。為什么要把函數(shù)調(diào)用訓(xùn)練成一種“方言”而不是靠提示詞現(xiàn)場(chǎng)學(xué)會(huì)因?yàn)槎藗?cè)模型參數(shù)少泛化能力有限。如果你只是臨時(shí)在系統(tǒng)提示詞里貼幾個(gè)函數(shù)定義小模型很容易學(xué)會(huì)“讀題”卻很難學(xué)會(huì)“寫(xiě)標(biāo)準(zhǔn)格式”。只有把大量同類(lèi)樣本灌進(jìn)訓(xùn)練過(guò)程模型才會(huì)把“看到用戶請(qǐng)求→判斷可調(diào)函數(shù)→輸出 JSON 指令”這一鏈路變成一種條件反射。2.2 函數(shù)描述注入與結(jié)構(gòu)化輸出你可能會(huì)好奇模型怎么知道有哪些函數(shù)可以調(diào)答案跟提示工程有關(guān)。推理時(shí)我們會(huì)把當(dāng)前可用的函數(shù)列表轉(zhuǎn)成 JSON Schema 格式拼到系統(tǒng)提示詞里。一個(gè)典型的函數(shù)聲明長(zhǎng)這樣{ name: create_memo, description: 創(chuàng)建一條本地備忘錄適合記錄臨時(shí)想法和待辦事項(xiàng), parameters: { type: object, properties: { title: { type: string, description: 備忘錄標(biāo)題盡量簡(jiǎn)潔 }, content: { type: string, description: 備忘錄正文內(nèi)容 } }, required: [title, content] } }這段描述不是給機(jī)器看的機(jī)器其實(shí)不“理解”自然語(yǔ)言的全部含義它是給模型的注意力機(jī)制做引導(dǎo)的。描述寫(xiě)得越具體模型越容易在需要的時(shí)候選擇這個(gè)函數(shù)而不是搞混參數(shù)。結(jié)構(gòu)化輸出則通過(guò)兩重機(jī)制保證。第一重是訓(xùn)練記憶模型見(jiàn)多了function_call的格式自然會(huì)模仿。第二重是推理后處理如果模型輸出的 JSON 不夠規(guī)整代碼層可以做一次容錯(cuò)解析比如提取方括號(hào)里的文本、修復(fù)缺失的尾括號(hào)、把單引號(hào)轉(zhuǎn)成雙引號(hào)。這兩重機(jī)制缺一不可。2.3 一次完整調(diào)用鏈路的六個(gè)階段端側(cè)智能體不是把函數(shù)定義拼進(jìn)去就算完真正跑起來(lái)之后每一步都是一段可復(fù)用的邏輯。我把完整鏈路拆成六個(gè)階段構(gòu)造請(qǐng)求把系統(tǒng)提示詞、函數(shù)聲明、對(duì)話歷史、當(dāng)前問(wèn)題拼成一個(gè) prompt。模型推理由 FunctionGemma 生成結(jié)果結(jié)果可能是一次文本回復(fù)也可能是一次函數(shù)調(diào)用。解析輸出識(shí)別function_call標(biāo)記嘗試提取 JSON判斷格式是否合法。校驗(yàn)指令檢查函數(shù)名是否白名單、參數(shù)是否匹配 schema、必填字段是否齊全。執(zhí)行函數(shù)調(diào)用本地函數(shù)拿到返回值轉(zhuǎn)成字符串或 JSON。回填結(jié)果把工具返回值以tool角色追加到對(duì)話里再送進(jìn)模型做下一輪推理直到模型給出最終回復(fù)。這個(gè)循環(huán)不是無(wú)限的。我會(huì)在工程實(shí)現(xiàn)里設(shè)置一個(gè)最大輪次比如 4 到 6 次。一旦超過(guò)就返回“我還沒(méi)能完成這個(gè)任務(wù)請(qǐng)換個(gè)說(shuō)法再試一次”。這樣做是為了防止模型因?yàn)槟硞€(gè)函數(shù)始終報(bào)錯(cuò)而無(wú)限重試?yán)速M(fèi)端側(cè)電力。3. 實(shí)操用 FunctionGemma 在本地搭一個(gè)可行動(dòng)的智能體3.1 準(zhǔn)備運(yùn)行環(huán)境與模型文件動(dòng)手之前先把環(huán)境準(zhǔn)備好。我默認(rèn)你手頭有一臺(tái)普通開(kāi)發(fā)機(jī)CPU 能跑、內(nèi)存 8G 以上就可以。如果你是做部署到手機(jī)或嵌入式設(shè)備步驟類(lèi)似只是需要先把模型量化成更小的文件。建議的準(zhǔn)備項(xiàng)Python 3.10裝好 json、re、datetime 等標(biāo)準(zhǔn)庫(kù)以及一個(gè)支持端側(cè)模型推理的引擎接口。從模型倉(cāng)庫(kù)拿一個(gè)量化好的 FunctionGemma 權(quán)重文件優(yōu)先選 int4 或 int8 的 GGUF 格式體積小、CPU 也能跑。把權(quán)重文件放到固定目錄比如models/functiongemma-2b-int4.gguf。初始化推理引擎時(shí)重點(diǎn)設(shè)置兩個(gè)參數(shù)上下文長(zhǎng)度和線程數(shù)。上下文長(zhǎng)度建議先給 2048太小容易截?cái)喽噍喒ぞ呓Y(jié)果太大內(nèi)存占用會(huì)直線上升。線程數(shù)設(shè)成 CPU 核心數(shù)的一半左右避免推理時(shí)整個(gè)設(shè)備卡死。3.2 定義本地工具集第一步先把“智能體能做什么”定下來(lái)。做端側(cè)智能體最忌諱一上來(lái)就想做全知全能先選三五個(gè)高頻、確定、可驗(yàn)證的工具。我在這里定義一組很實(shí)用的工具獲取當(dāng)前時(shí)間、創(chuàng)建本地備忘錄、發(fā)送系統(tǒng)通知。代碼很簡(jiǎn)單import json from datetime import datetime def get_local_time() - str: 獲取當(dāng)前本地時(shí)間 return datetime.now().isoformat() def create_memo(title: str, content: str) - bool: 把備忘錄寫(xiě)入本地文件 memo {title: title, content: content, created_at: datetime.now().isoformat()} with open(memos.json, a, encodingutf-8) as f: f.write(json.dumps(memo, ensure_asciiFalse) \n) return True def send_notification(title: str, message: str) - bool: 發(fā)送一條本地系統(tǒng)通知 # 這里對(duì)接平臺(tái)通知接口演示時(shí)先返回 True print(f[通知] {title}: {message}) return True TOOL_REGISTRY { get_local_time: get_local_time, create_memo: create_memo, send_notification: send_notification, }注意一個(gè)工程細(xì)節(jié)TOOL_REGISTRY的 key 必須和函數(shù)聲明里的name完全一致執(zhí)行層只認(rèn)這個(gè)注冊(cè)表不認(rèn)模型輸出里的名字。這樣做的好處是即使模型偶爾輸出一個(gè)不存在的函數(shù)名執(zhí)行層也能立刻攔截而不是傻乎乎地報(bào)錯(cuò)。3.3 構(gòu)造函數(shù)聲明與系統(tǒng)提示詞函數(shù)聲明列表作為模型可參考的“工具手冊(cè)”。前面已經(jīng)展示了單個(gè)函數(shù)的 JSON Schema實(shí)際使用時(shí)會(huì)拼成一個(gè)數(shù)組。系統(tǒng)提示詞我通常這樣寫(xiě)SYSTEM_PROMPT 你是一個(gè)運(yùn)行在本地設(shè)備上的智能助手。 你可以使用以下工具完成用戶請(qǐng)求但不要虛構(gòu)不存在的函數(shù)。 當(dāng)用戶請(qǐng)求需要調(diào)用工具時(shí)請(qǐng)嚴(yán)格按照下面的格式輸出 function_call{name: 函數(shù)名, arguments: {參數(shù)名: 參數(shù)值}}/function_call 如果用戶請(qǐng)求不需要工具直接使用自然語(yǔ)言回復(fù)。 FUNCTION_DEFS [ { name: get_local_time, description: 獲取當(dāng)前本地日期和時(shí)間。當(dāng)用戶問(wèn)現(xiàn)在幾點(diǎn)、今天日期時(shí)使用。, parameters: { type: object, properties: {}, required: [] } }, { name: create_memo, description: 把一段文字記錄成本地備忘錄。適用于用戶說(shuō)記一下添加到待辦寫(xiě)個(gè)備忘。, parameters: { type: object, properties: { title: {type: string, description: 簡(jiǎn)短標(biāo)題}, content: {type: string, description: 完整內(nèi)容} }, required: [title, content] } }, { name: send_notification, description: 發(fā)送本地系統(tǒng)通知。適用于用戶要求提醒、通知。, parameters: { type: object, properties: { title: {type: string, description: 通知標(biāo)題}, message: {type: string, description: 通知內(nèi)容} }, required: [title, message] } } ]為什么要單獨(dú)加一句“不要虛構(gòu)不存在的函數(shù)”因?yàn)樾∧P驮陂_(kāi)放環(huán)境下容易把用戶提到的任何動(dòng)詞都當(dāng)成函數(shù)名。比如用戶說(shuō)“幫我發(fā)個(gè)郵件”模型如果看到?jīng)]有郵件函數(shù)可能會(huì)編一個(gè)send_email出來(lái)。把約束寫(xiě)進(jìn)系統(tǒng)提示詞能顯著減少這類(lèi)幻覺(jué)。3.4 核心推理與執(zhí)行循環(huán)代碼下面這段循環(huán)是整個(gè)智能體的心臟。它負(fù)責(zé)把對(duì)話狀態(tài)、函數(shù)聲明、模型輸出和本地工具串起來(lái)。def build_prompt(messages, function_defs): 把消息列表和函數(shù)聲明拼成模型輸入 system_text SYSTEM_PROMPT \n可用工具:\n json.dumps(function_defs, ensure_asciiFalse) prompt system_text \n for msg in messages: role msg[role] content msg[content] if role user: prompt f\n用戶: {content}\n elif role tool: prompt f\nfunction_result{content}/function_result\n else: prompt f\n系統(tǒng): {content}\n return prompt def parse_function_call(raw_text): 從模型輸出中提取函數(shù)調(diào)用 JSON match re.search(rfunction_call(.*?)/function_call, raw_text, re.DOTALL) if not match: return None try: return json.loads(match.group(1)) except json.JSONDecodeError: return None def execute_function(func_name, func_args): 執(zhí)行本地工具返回 JSON 字符串 if func_name not in TOOL_REGISTRY: return json.dumps({error: f未知函數(shù): {func_name}}) try: result TOOL_REGISTRY[func_name](**func_args) return json.dumps({result: result}, ensure_asciiFalse) except Exception as e: return json.dumps({error: str(e)}) def run_agent(user_question, max_steps4): messages [{role: user, content: user_question}] for _ in range(max_steps): prompt build_prompt(messages, FUNCTION_DEFS) raw_output engine.generate(prompt) action parse_function_call(raw_output) if action is None: # 沒(méi)有函數(shù)調(diào)用視為最終回復(fù) return raw_output func_name action.get(name) func_args action.get(arguments, {}) tool_result execute_function(func_name, func_args) messages.append({role: tool, content: tool_result}) # 繼續(xù)循環(huán)讓模型基于工具結(jié)果生成下一個(gè)動(dòng)作或最終回復(fù) return 已超過(guò)最大工具調(diào)用次數(shù)任務(wù)中斷注意上面代碼里的engine.generate是一個(gè)抽象接口。不同推理引擎的調(diào)用方式不一樣但是整體邏輯完全一致。我建議你先把這段循環(huán)寫(xiě)穩(wěn)再替換成具體的引擎。我見(jiàn)過(guò)太多人一上來(lái)就去調(diào)某個(gè)推理框架的 API反而忽略了智能體本身的調(diào)度邏輯。3.5 部署到低算力設(shè)備的注意點(diǎn)如果目標(biāo)設(shè)備不是 PC而是手機(jī)、開(kāi)發(fā)板這類(lèi)低算力環(huán)境有幾個(gè)點(diǎn)要提前處理。第一量化精度要夠。4bit 量化通常是性價(jià)比最高的選擇模型大小能壓到原來(lái)的三分之一甚至四分之一。但量化后可能會(huì)損失少量工具調(diào)用準(zhǔn)確率所以我建議準(zhǔn)備兩套模型開(kāi)發(fā)調(diào)試用高精度版正式部署用 int4 版。如果在正式版上發(fā)現(xiàn)某個(gè)函數(shù)頻繁選錯(cuò)優(yōu)先回查 schema 描述是否清晰而不是急著換回高精度模型。第二控制上下文長(zhǎng)度。端側(cè)設(shè)備的內(nèi)存是硬約束一次推理能塞進(jìn)去的 token 有限。多輪對(duì)話時(shí)不要無(wú)限追加歷史只保留最近兩到三輪。工具結(jié)果如果很長(zhǎng)先讓模型自己寫(xiě)一個(gè)摘要再拼回上下文而不是把全套 JSON 塞進(jìn)去。第三做好功耗控制。函數(shù)調(diào)用循環(huán)如果設(shè)計(jì)成無(wú)限重試設(shè)備會(huì)長(zhǎng)時(shí)間保持高負(fù)載。我剛才在代碼里加了max_steps限制實(shí)際項(xiàng)目里我還會(huì)再加一條單次任務(wù)總耗時(shí)超過(guò) 10 秒就主動(dòng)結(jié)束并返回到主界面。端側(cè)智能體不能像云端服務(wù)那樣無(wú)限“思考”。4. 調(diào)優(yōu)與避坑把準(zhǔn)確率從“碰運(yùn)氣”抬到“能交付”4.1 函數(shù) Schema 設(shè)計(jì)原則函數(shù)聲明看起來(lái)簡(jiǎn)單真正決定模型能不能調(diào)對(duì)。我總結(jié)了幾條實(shí)用原則。函數(shù)名要?jiǎng)釉~開(kāi)頭像是get_local_time、create_memo不要用time、memo、notification這類(lèi)名詞否則模型區(qū)分不了“查時(shí)間”和“設(shè)置時(shí)間”。描述里要寫(xiě)清楚觸發(fā)條件。不要只寫(xiě)“獲取時(shí)間”要寫(xiě)“用戶問(wèn)現(xiàn)在幾點(diǎn)、當(dāng)前日期時(shí)使用”。端側(cè)模型參數(shù)小對(duì)隱式語(yǔ)義的把握弱描述越直白選擇準(zhǔn)確率越高。參數(shù)必填項(xiàng)越少越好。能用默認(rèn)值就用默認(rèn)值。比如create_memo如果允許省略標(biāo)題就可以把title設(shè)為非必填模型出錯(cuò)的可能性會(huì)降低一個(gè)檔次。一次暴露的函數(shù)數(shù)量要控制。測(cè)試時(shí)我遇到過(guò)模型在 30 個(gè)函數(shù)里反復(fù)猶豫的情況最后把函數(shù)按場(chǎng)景拆成多組根據(jù)用戶第一輪問(wèn)題動(dòng)態(tài)選擇暴露哪一組準(zhǔn)確率立刻上來(lái)。如果設(shè)備只做備忘助手那就別把“控制燈泡”的函數(shù)也塞進(jìn)去。4.2 采樣參數(shù)怎么調(diào)函數(shù)調(diào)用不是創(chuàng)作不需要模型“自由發(fā)揮”。采樣參數(shù)應(yīng)該往確定性方向調(diào)。溫度調(diào)低是首選。0.2 以下通常比較穩(wěn)0.0 則完全貪心。我建議從 0.1 起步如果發(fā)現(xiàn)模型經(jīng)常輸出重復(fù)內(nèi)容再嘗試小幅提高。top_p保持 0.9 到 0.95主要用來(lái)過(guò)濾尾部低概率 token。top_k設(shè)成 20 到 50 之間防止模型在函數(shù)名這種關(guān)鍵位置突然發(fā)散。如果你的推理引擎支持約束解碼一定要用起來(lái)。約束解碼可以限制模型只能按照預(yù)定義的 JSON Schema 生成 token把格式錯(cuò)誤直接扼殺在生成階段。這是當(dāng)前提升函數(shù)調(diào)用成功率最有效的工程手段比任何提示詞技巧都管用。不支持也沒(méi)關(guān)系代碼層做一套健壯的 JSON 解析兜底。4.3 多輪狀態(tài)與上下文裁剪真正跑起來(lái)之后最容易被忽略的是多輪上下文。用戶說(shuō)“現(xiàn)在幾點(diǎn)了”模型調(diào)了get_local_time返回2025-06-10T09:30:00。用戶接著問(wèn)“那一個(gè)小時(shí)后呢”這時(shí)候模型必須能看到剛才的函數(shù)結(jié)果才能計(jì)算10:30。實(shí)現(xiàn)上要記住兩點(diǎn)。第一工具結(jié)果一旦被模型消費(fèi)就不再需要保留原始 JSON??梢栽诘诙喭评砬鞍呀Y(jié)果壓縮成一句話比如“當(dāng)前時(shí)間是 2025-06-10 09:30:00”然后繼續(xù)拼進(jìn)上下文。這樣既保留了信息又不占 token。第二不要讓工具結(jié)果“污染”新一輪對(duì)話的角色。工具結(jié)果必須以獨(dú)立的tool角色放入消息列表不能拼在 user 消息里。否則模型容易把工具結(jié)果誤當(dāng)成用戶新指令導(dǎo)致角色混亂。我遇到過(guò)好幾次模型在工具返回后突然說(shuō)“好的我會(huì)記住”就是角色沒(méi)分清楚。4.4 安全邊界設(shè)計(jì)讓模型調(diào)用本地函數(shù)等于給外部文本輸入開(kāi)了個(gè)執(zhí)行口子安全必須前置。最基礎(chǔ)的做法是白名單機(jī)制。TOOL_REGISTRY就是白名單所有執(zhí)行入口只能從這里查函數(shù)。永遠(yuǎn)不要讓模型直接執(zhí)行任意 Python 代碼哪怕它“發(fā)誓”只是做個(gè)加法。其次要做參數(shù)校驗(yàn)。函數(shù)名合法不代表參數(shù)合法。create_memo的content如果允許任意字符串那模型可能把用戶輸入的惡意內(nèi)容寫(xiě)進(jìn)文件。文件路徑類(lèi)參數(shù)更要小心絕對(duì)不能讓模型傳一個(gè)../../etc/passwd進(jìn)來(lái)。我會(huì)在每個(gè)函數(shù)內(nèi)部再做一輪自己的校驗(yàn)不依賴模型輸出的正確性。最后是敏感操作二次確認(rèn)。刪除文件、發(fā)送不可撤回的通知、修改系統(tǒng)配置這類(lèi)操作不能模型一說(shuō)就執(zhí)行。要先把待執(zhí)行動(dòng)作展示給用戶確認(rèn)用戶點(diǎn)擊確認(rèn)后再真正調(diào)用。端側(cè)智能體追求效率但安全底線一點(diǎn)不能松。5. 常見(jiàn)問(wèn)題排查實(shí)錄5.1 高頻報(bào)錯(cuò)與對(duì)應(yīng)解法我在做 FunctionGemma 落地時(shí)遇到過(guò)不少問(wèn)題這里整理成一張速查表?,F(xiàn)象可能原因解決思路模型輸出普通文本而不是函數(shù)調(diào)用系統(tǒng)提示詞沒(méi)有說(shuō)清輸出格式或函數(shù)聲明沒(méi)拼進(jìn)去檢查 build_prompt確認(rèn) FUNCTION_DEFS 已拼到系統(tǒng)提示詞中把觸發(fā)條件寫(xiě)得更直白函數(shù)名拼錯(cuò)、多字少字模型對(duì)函數(shù)名的記憶不穩(wěn)定尤其函數(shù)名過(guò)長(zhǎng)函數(shù)名控制在 2-4 個(gè)詞動(dòng)詞開(kāi)頭在提示詞里重復(fù)一遍可用函數(shù)名參數(shù)類(lèi)型錯(cuò)誤比如把數(shù)字寫(xiě)成字符串函數(shù) schema 里沒(méi)有寫(xiě)清楚類(lèi)型檢查函數(shù)定義中的parameters必要時(shí)在描述里補(bǔ)類(lèi)型示例同一函數(shù)被無(wú)限重復(fù)調(diào)用工具結(jié)果沒(méi)有正確回填模型看不到結(jié)果就只能重試檢查messages.append是否正確工具角色是否被截?cái)喙ぞ呓Y(jié)果存在但最終回復(fù)卻沒(méi)有參考它上下文被裁剪或者工具結(jié)果寫(xiě)在了不顯眼的位置增加上下文長(zhǎng)度把最近的工具結(jié)果放在 prompt 最后面推理速度很慢上下文太長(zhǎng)、線程數(shù)太少、模型未量化裁剪歷史調(diào)整線程數(shù)換 int4 量化版本JSON 解析經(jīng)常失敗模型生成時(shí)沒(méi)有約束解碼輸出多余字符優(yōu)化提示詞或者在解析層使用更寬容的 JSON 提取正則表格里面的問(wèn)題我全都真實(shí)踩過(guò)尤其是“工具結(jié)果沒(méi)回填導(dǎo)致重試”那個(gè)月幾乎天天碰到。后來(lái)我加了一行日志專(zhuān)門(mén)打印每次循環(huán)后的完整 prompt問(wèn)題立刻暴露出來(lái)上下文被裁剪時(shí)把工具結(jié)果裁掉了。從那以后我再也沒(méi)讓上下文長(zhǎng)度超過(guò)設(shè)定值。5.2 我的排查順序遇到問(wèn)題不要急著調(diào)模型先按這個(gè)順序排查能省很多時(shí)間。第一步看輸入是不是 prompt 拼接錯(cuò)了。先把每次發(fā)給引擎的完整文本打出來(lái)確認(rèn)函數(shù)聲明、歷史消息、工具結(jié)果都在并且順序合理。這一步能解決一半問(wèn)題。第二步看輸出模型到底生成了什么。把原始 token 序列或原始文本保存下來(lái)不要只看解析后的結(jié)果。很多時(shí)候模型生成的是正確的function_call但你的正則沒(méi)匹配到。第三步看執(zhí)行工具本身有沒(méi)有報(bào)錯(cuò)。給每個(gè)工具寫(xiě)一個(gè)獨(dú)立的單元測(cè)試確認(rèn)get_local_time()確實(shí)返回時(shí)間、create_memo()確實(shí)寫(xiě)入了文件。工具有問(wèn)題再智能的模型也白搭。第四步才回頭調(diào)模型。這時(shí)候再考慮改溫度、改 schema、加少樣本示例。順序反了會(huì)很痛苦我見(jiàn)過(guò)有人花一周時(shí)間調(diào)提示詞最后發(fā)現(xiàn)是個(gè)底層 JSON 解析 bug 導(dǎo)致的。6. 我的幾點(diǎn)實(shí)操體會(huì)做端側(cè)智能體越久越覺(jué)得“從對(duì)話邁向行動(dòng)”這個(gè)說(shuō)法不是一句口號(hào)而是整個(gè)范式轉(zhuǎn)換的本質(zhì)。純對(duì)話模型是知識(shí)引擎重心在“答得好不好”函數(shù)調(diào)用模型是行動(dòng)引擎重心在“做得對(duì)不對(duì)”。FunctionGemma 這類(lèi)方案的真正價(jià)值是把模型體積、工具調(diào)用能力、端側(cè)資源約束放到同一個(gè)天平上做出一個(gè)工程上可用的折中。我自己的體會(huì)有三點(diǎn)值得分享。第一永遠(yuǎn)不要追求全知全能。端側(cè)智能體最適合的場(chǎng)景一定是邊界清晰的垂直場(chǎng)景。我就讓它管備忘錄、查時(shí)間、發(fā)通知三個(gè)函數(shù)用得非常穩(wěn)定。一旦加了太多工具準(zhǔn)確率下降的速度會(huì)超出你的預(yù)期。第二把模型看作“意圖理解器”把本機(jī)代碼看作“安全執(zhí)行器”。模型負(fù)責(zé)判斷用戶想干什么剩下的事情全部由你寫(xiě)的代碼負(fù)責(zé)。這條路比讓模型直接生成代碼安全得多也更容易排查問(wèn)題。第三每一輪工具調(diào)用都要有日志和可復(fù)現(xiàn)性。我在完成函數(shù)調(diào)用后都會(huì)把當(dāng)時(shí)的 prompt、模型輸出、工具結(jié)果完整存一份標(biāo)記為 trace。后續(xù)優(yōu)化模型或調(diào) schema 時(shí)直接回放這些 trace能快速驗(yàn)證改動(dòng)是否有效。這個(gè)習(xí)慣幫我省下了大量回歸測(cè)試的時(shí)間。最后再分享一個(gè)小技巧。剛開(kāi)始調(diào)通智能體時(shí)可以故意在用戶請(qǐng)求里塞一些模棱兩可的話比如“隨便記一下”“提醒我明天”觀察模型是調(diào)用工具還是亂猜。只要把這類(lèi)邊界情況覆蓋到端側(cè)智能體才算真正從“能跑”進(jìn)化到“能用”。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日日干天天| 91色逼| 五月丁香久久综合91| 五月天激情AV| 天天婷婷操| 色婷婷AⅤ| 性综合网| 99热精品在线| 色99在线视频| 久久婷婷国产| 久青操| 色五月综合婷婷| 大香蕉五月丁香| 97自拍视频网| www.色欲丁香婷婷| 99网址在线观看| 激情五月天色色| 九九热视| www.99热这里精品| 五月婷婷在线播放| 色播五月婷婷五月| 久色资源| 日韩在线99| 思思w99| 五月丁香六月婷婷综合在线| 国产1区2区3区在线观| 97人妻碰碰碰久久久久-最近国语高清| 婷婷五月色| 激情五月婷| 中文字幕色色色| 六月婷婷狠狠| 天天干肏夜夜| 久久成人人妻| 日韩综合久| 婷婷五月天六月| 免费99情趣网视频| 色丁香五月| 狠狠色情婷婷| 人人视频色| 色五月婷婷五月久久| 欧美噜噜噜草| 五月天婷婷青青| 丁香五月花婷婷开心| 五月婷婷丁香大陆免费| www.激情五月天。com| 91日韩美女被插视频| 五月九九综合| 色哟哟www| 99热99| 4399精品一区二区| 吊色AV男人的天堂| 天天插天天插天天日| 久99久视频| BT综合在线视频观看| 久久99精品久久久久久三级| 婷婷五月天黄色| 三级三久久线久久99久目本WW| 超碰色综合| 久久新| 国产免费AV在线| 97人人操在线| 精品综合五月| 婷婷色五月开心五月| 久色激情| 欧美日韩99| 丁香久久| 69人妻人人澡人人爽久久| 久久精品天| 9婷婷内射| 欧美99视频| 99热日韩| 五月婷婷综合在线观看| 伊人干综合| 成功精品影院| 久久日九九| XX久久| 超碰成人免费| 精品久久久人妻| 性欧美日本| 婷婷狠狠操| 九九九九操逼| 丁香五月性| 欧美综合激情五月| 久久久激情| 五月天婷婷基地| 97超碰免费超级在线观看| 婷婷色色亚洲| 26uuu国自产精品| 天天在线久久综合| 五月天色综合| 91精品啪| 色婷婷伦理| 97色色综合| 99无码视频| 国产XXXX搡XXXXX搡麻豆| 9热超碰| 中美月韩免费A片| www久久五月com| 狠狠撸激情综合丁香五月天俺来啦| 可以看的av网站| 99热免费| 婷婷久久五月天丁香| www.91.com处女在线直播| 婷婷视频在线| 色欧美一级| 91在线视频综合| 婷婷开心青青草| 亚洲色图五月丁香| 成人短视频免费| 开心五月六月婷婷| 99色婷婷| 久久综合激情| 97视频久久| 丁香五月天天久久综合小说| 性爱在线播放av| 丁香五月色| 欧美日韩成人在线| VA五月激情在线| 五月丁香成年黄色| 99色| 亚洲99在线| www久久久久久久| 九九国产精视频| www色五月| 欧美S码亚洲码精品M码| 综合狠狠干| av在线中文| 色五月美女| 婷婷欧美激情综合| 日产精品久久久久久久蜜臀| 狠狠88综合久久久久噜噜噜| 天天干天天插| 免费试看小视频 99| 狠狠操狠狠爱| 性色播| 人妻九九九九| 色婷婷视频| 伊人婷婷大香蕉| 婷五月天| 99色| 国产精品大香蕉| 99re这里有精品手机在线| 99re视频在线播放| 成人看片网站| 中文不卡一二三区| 婷婷激情五月呦呦| 婷婷五月天干干| 日本人人超碰| 五月天 另类图片| 九月激情婷婷丁香| 婷婷干五月综合在线播放| 日日躁夜夜躁狠狠久久AV| 人妻久久久久| 国产乱子轮XXX农村| 深爱五月激情网| 另类小说色婷婷| 国产亚洲色婷婷久久99精品91| 婷婷五月天丁香社区| 激情丁香久久| 欧美激情综合色综合啪啪五月| 五月婷婷导航| 色播综合| 丁香五月天天高清在线| 一区二区免费看| 9久久精品| 91男同| 婷婷91| 五月丁香va| 亚洲精品V天堂中文字幕| 五月婷婷免费在线| 无码碰碰| 亚洲成人网在线观看| 亚洲av成人在线| www.狠狠| 五月婷婷伊人在线| 曰曰久久| 色综啪啪网| 日韩色五月| 五月婷激情影院| 婷婷99狠狠| 丁香狠狠| 色婷婷啪啪啪啪啪啪| 婷婷精品视频| 久久五月婷天天干| 五月总合激情网| 欧美日韩精品人妻狠狠躁免费视频| 五月天中文网| 婷婷亚洲综合| 奇米影视在线视频| 五月天激情国产综合婷婷婷| 婷婷婷婷婷婷婷婷| 色的色综合| 色色97丁香婷婷五月天| 狠狠干狠狠色| 久久性操| 色五月综合激情| 九九九热精品| 色婷婷文字幕| 4399啪啪视频| 亚洲激情另类| 色综合网址| www.色婷婷。com| 日本人妻久久| BBWCUCKOLD精品熟妇 | 国产亚洲99| 亚洲亚洲人成综合网络| 五月丁香免费视频| 婷婷激情图片| 亚洲综合色棒| 日本成人噜噜噜噜噜| 婷婷色片| 玖玖综合玖玖| www日本熟妇99在线视频| 影音先锋偷偷色男人站| 99色色色色| 色波激情五月天| 欧美色色色色色色| 日韩免费99| 图片区 小说区 区 亚洲五月| 久久婷婷五月综合| 日日夜夜爽| ss五月天激情| 激情 五月 婷婷 丁香| 另类丁香综合| 亚洲国产成人AV在线| 乱岳熟女50岁| 搡BBBB搡BBB搡18| 日本色99| 五月婷婷色色色| 婷婷五月天色| 深爱五月日韩| 婷婷五月天激情综合深爱激情| 亚洲视频在线观看99| 国产免费一区二区三区三州老师F1F1.CC| 影音先锋自拍网| 色色色色色色网| 五月婷婷丁香六月| 六月婷婷啪啪| 色色五月天丁香| 婷婷六月情| 久热最新视频| 亚洲色综合性| 日韩无码色色| 黄网在线观看免费| 色婷婷操逼| 激情丁香九九五月综合网| 色综合色色| 婷婷无码视频| 五月丁香综合在线| 欧美精品99| 成人精品人妻| 99无码视频| 大香蕉婷婷| 97色色色色色| 午夜少妇在线观看视频| www.99精品日操伊人乱碰在线| 国产又黄又爽又色的免费| 五月丁香综合在线| 99在线精品视频| av九九| 久久xxxx| 激情婷婷五月丁香啪啪啪| 久久综合久色欧美综合狠狠| 亚洲国产黄色电影| 五月丁香久人妻中文| 91视频五月丁香| 懂色av蜜臀av粉嫩av永陈冠希| 俺去婷婷 丁香| 人人操碰| 色色五月婷| 开心五月六月婷婷| 激情5月天天天| 色丁香影院| 九九成人视频| 五月综合激情婷婷六月色窝| 久久久久97| 9热久久| AV成人在线播放| 色色色婷婷五月天| 色婷婷五月天激情综合| 五月丁香六月婷婷激情网| www.色9| 99∨VTV| 男同91| 色五月自偷自拍婷婷婷婷| 伊人九九综合| 亚洲婷婷开心五月| 久久丁香综合| 少妇性BBB搡BBB爽爽爽电影| 9久操| 亚洲不卡| 99热这里只有免费| 色99网站| 婷婷五月激情综合啪啪| 精品久久人妻热| 五月天激情av| 成人午夜无码视频| 婷婷九月综合| 午夜婷婷六月天| 超碰网站在线观看| 亚洲色图欧美色图日本视频| 伊人网碰碰| 99热国内| 九九综合九九| 久久婷婷六月综合综合| 五月色亭丁香| 久久婷婷网| 青青草伊人婷婷| 五月丁香婷婷色色色| 久久99热这里| 婷婷五月av| www,99视频| 婷婷少妇激情| 五月婷婷在线免费| 久99婷婷色综合| 成年人夜夜喷水| 操日本人妻视频| 高清不卡一区| 亚洲AV永久无码影院黑人 | av在线超清中文| 国产无套精品一区二区| 激情都市另类| 婷婷免费无视频| 激情五月丁香五月| AV五月丁香| 俺也去在线视频| 人人爱操| 五月天无码| 九九综合| 热久久色| 日本va欧美va国产激情| 性色综合网| 婷婷五月天首页| 丁香五月伊人| 中文字幕成人| 久久激情网| 97欧美在线| 五月激情网站| 色情激情五月婷婷| 久久婷婷六月综合| 综合 蜜月 婷婷| 人人做天天爱| 真实熟女-91九色| 五月丁香婷婷激情在线| 逼特逼在线免费播放| 色色综合色视频| 91狠狠综合网| 日韩成人精品中文字幕| 国产成人网址| 婷婷丁香五月激情综合站_久久五月丁香激情综合_开心五月综合激情综合五月_婷 | 狠狠人人| 538在线精品| 99热久久这里只有精品| 麻豆AV一区二区三区| 色5在线| 久久三级视频| 激情综合网络插| 五月婷婷丁香五月| 色综合五月婷婷狠狠干| 999热在线观看视频| 综合激情综合啪啪| 91在线人| 激情五月婷| 狼人婷婷综合| 人人爱国产| 人人爽天天莫| 亚洲V国产V欧美V久久久久久| 五月激情婷婷图片基地| 91精品国产综合久久久不卡电影| 丁香五月在线观看综合| 久久丁香九| 狠狠干在线| 五月婷婷综合影院| 深爱综合网| 激情5月舔| 狼人久草| 激情五月,激情综合网| 九97免费视频| 天天色播| 五月丁香久久激情网| 久久久天堂国产精品女人| 五月婷婷精品无在线| 丁香五月WWW| 热99在线| 狠狠做六月爱婷婷综合aⅴ| www色婷婷| 99精品无码网站| www.爱婷婷.com| 91偷拍视频| 新99色色色色色色| 国产亚洲色婷婷久久99精品9j| 九九热这里只有精品6| 色欲天天综合| 久久无码成人| 在线成人网址| 国产精品久久久久久五月天加勒比 | 色五月丁香激情视频| 伊人大综合| 丁香五月开心亚洲| 色青五月天| 五月色亚洲| 婷婷五月天亚洲| 久久久精久人妻| 玖玖婷婷婷丁香五月| 色久综合| 色婷婷丁香五月天在线观看| 色五月婷婷天天干| 狠狠色大香蕉| 色婷婷中文| 99热精品在线观看| 久久66精品| 久99久精品| 三级片AAA久久久AAA久久久AAA| 丁香五月激情五月| 六月五月婷婷| 五月丁香拍拍激情综合| 日本在线视频播放91| 国产无套精品一区二区| 婷婷精品| 99精品网| 丁香六月婷婷综合啪啪| 这里只有精品热| 在线不卡中文字幕| 激情综合网婷婷五夜| 91婷婷在线| 婷婷激情五月色综合| 丁香五月婷婷六月婷婷| 丁香六月| 四川操逼站| 久久视频在线视频| 五月天伊人| 久青草影院| 亚洲热综合网在线观看| 丁香五月 综合| 午夜亚洲国产精品av一区二区| 丁香五月狠狠在线观看| 亚洲无AV在线中文字幕| 色色丁香| 丁香色色网| 亚洲免费看片| 亚洲AV人人操| 五月婷网| 久热超碰| 狠狠色综合网站久久久久| 俺去也五月| 婷婷五月天在婷| 五月激情开心婷婷| 日本成人噜噜噜噜噜| www.粉嫩av.com| 色婷精品91| 91丨九色熟女丨首页| 亚洲岛国电影| 人操人| 香蕉久久五月| 超碰激情五月| 精品久久婷婷| w婷婷五月婷婷w| 四月婷婷五月丁香| 超碰免费大香蕉| 成人av在线网址| 影音先锋天天日| 免费观看2018www黄色操逼网站| 九九精品9| 久久男人网婷婷| 日韩AC在线免费观看| 无码成人AAAAA毛片AI换脸| 99精品热| 中国无码av| 北条麻妃九九九国产精品视频| 婷婷色情 | 五月婷婷六月激情| 99色在线视频观看| 丁香五月综合激情啪啪| 婷婷综合| 伊人狠狠综合| 五月天成人小说| 免费观看的av| 99热综合网| 国产成人精品亚洲线观看| 性色做爰片在线观看WW| YW无码| 高清国产AV| 伊人色综合影院视频| 久久98| 色色色视频| 天天干、天天日日| 久久婷婷婷| 久久婷婷五月| 激情 久久 婷婷| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 精品A√| 婷婷丁香六月| 亚洲1区| 九久九精品| 99伊人性爱在线影院| 婷婷激情小说网| 色婷婷五月天天天天天天天天天| www.婷婷.com| 婷婷精品| 欧美碰碰碰| 激情五月丁香五月| 99热这里只有精品国产精品| 五月天激情图片| 国产FREESEXVIDEOS性中国| 五月婷婷黄网站大全| 大香蕉婷婷久久| 天天舔夜夜操www com| 99热这里只有精品无码| 激情综合网五月激情| 亚洲春色奇米影视| 亚洲激情婷婷| 天天干天天爽天天操| 99热免费精品| 色五月美女| 99热99色| 天天狠狠夜夜狠狠2023| 天天操天天插| 黄网免费看| 五月天婷婷高清无码| a在线观看| 色综合77777| 亚洲啪啪啪啪| 99热久| 久久精品99国产精品日本| 久久人操-久草婷婷-成人AV| 春色激情第四色| 日本一级一片免费视频| 综合久久五月| 777精品成人a v久久| 国产免费一区二区三区三州老师F1F1.CC | 婷婷色五月丁香六月欧美啪| 超pen个人视频97| 亚洲成人高清在线| 欧美日韩国产一二区| 碰超亚洲| 激情亚洲婷婷| 色色色色色色色色综合网| 人妻久久久久久| 久久久九九九 99| 婷婷丁香一月| 俺也去色| 五月婷婷色播视频| 欧美日韩成人在线| 色天堂在线| 色婷婷裸体色性在线| 久热伊人| 欧美99| 欧美五月婷婷| www.com亚洲网站在线免费| 五月丁香婷在线| 中文字幕人妻熟女在线| 天天综合久久| 久久婷综合| 玖玖综合色| 天天综合网91| 亚洲国产成人综合| 丁香五月婷婷色| AV在线大香蕉| 五月丁香六月欧美综合网站| 丁香五月天婷婷在线视频| 丁香五月激情网| 激情国产五月| 开心婷婷五月中文字幕组| 久久人人做人人妻人人玩精品va| 都市激情五月婷婷综合| 无码激情AAAAA片-区区| 久久这里只有国产精品视频| 五月天色软件| www.henhengan| 日本高清不卡免费一区二区三区| 热热久久99| 激情电影五月婷婷| 五月婷婷之综合激情| 91九色 熟| 丁香婷婷成人网| 69人人操人人爽| 婷婷五月天激情开心网| 色激情五月| www.久久99| 99久热这里只有精品视频删减版| 久久久五月天| 五月婷AV| 9伊人网| 一起草Av| 中文久久久人妻| 欧美性生交XXXXX无码小说| 怡红院院久久| 色婷婷五月影视| 99玖玖免费视频| 婷婷五月天最新综合你懂的| 农村熟妇高潮精品A片| 五月丁香婷庭在线| 大香蕉狼人久久| 久久婷婷五月天| 狠狠va| 天天综合网~91| 五月精品| 婷婷五月亚洲激情| 婷婷五月综合社区在线| www.99久| 婷婷婷五月天最新综合你懂的| 色五月噜噜| 婷婷狠狠操| 99在线观看亚洲| 色综合久久久综合久久网| 久久99热这里只有精品| av九九| 日本WwW色偷偷丁香花久久久京东热| se99视频| 丁香五月婷婷婷婷欧美综合| 十二区无码| 五月婷婷综合激情网| 五月的丁香六月的婷婷| 国产9色在线/日韩| 黄色片avv| 色五月琪琪| 九九热在线观看视频网站| 精品久热69| 亚洲成av人影院| 久久丁香综合| 五月婷婷伊人久久| 日本va欧美va欧美va精品| WWW色色色COM| AV九九| 天天爱综合网| 国产高清RV综合aVa| 成人一级片| 成人久碰| 国产日韩欧美| 色婷婷免费观看| 激情五月婷在线精品| 国产日产成人亚洲欧美国产VA| 狠狠 久久| 中文字幕无码人妻少妇免费视频| 超碰在线观看99| 婷婷丁香五月亚洲综合网在线视频观看| 五月伊人网| 午夜微拍福利| 国产黄大片在线观看画质优化| 國語久久婷| 综合久久五月天| 99热在线中文字幕| 久久久久久xxxxx| 精品99在线看| 成人网页在线观看| 热久久婷婷| 激情网 久久| 能看的av| 久久ab| 噜噜操操| 五月天狠狠色| 五月综合色| 丁香六月无码播放| 九九综合久久| 丁香五月,激情五月,深爱五月| 热久久思思热思思| 无码一区二区日韩| 中文字幕婷婷五月天| 99操碰| 大香蕉五月婷婷| 影音先锋91| 超碰爱爱爱| 日本精品干| 国产小网站| 五月丁香六月婷婷综合| 香蕉五月婷婷| 成人免费视频一区| 丁香九月激情久久| 91|九色|动漫| 影音先锋噜一噜| 996er热| 99久久久免费| 婷婷激情五月天激情在线| 思思99热热热99| 丁香六月婷婷激情综合| 天天日日人| 丁香五月婷婷姐| 啪啪干伊人婷婷| 这里只有国产精品在线| 色五月婷婷久久大| 五月天精品视频| 激情图片五月天| 婷婷六月天| 99精品久久久久久久婷婷| 91色婷婷综合久久中文字幕二区| 五月天啪啪啪| 亚洲中文字幕在线观看| 狠狠爱婷婷五月天| 99WWW免费视频| 91丨九色丨高潮丰满日本| 男女99免费视频| 五月六月丁香激情视频| 开心五月婷婷在线| 色噜噜狠噜噜视频| 九九色综合| 欧美顶级少妇做爰HD| 97人碰人操| 国产一区18| 久久激情网| 激情五月网站| 五月人妻婷婷视频| 99精品热| 九月丁香八月婷婷加勒比| 婷婷久久婷婷色五月| 综合激情在线| 婷婷深爱色五月| 亚洲婷婷免费| 五月天成人综合| 欧美黄色一级录像| 91色综合网| 亚洲五月天综合| 婷婷五月天国产在线播放| 日本一级一级一级一级| 成人婷婷色综合| 欧美久久网| 5月丁香综合网| 激情都市丁香婷婷| 97人人干| 五月丁香激情啪啪网| 五月丁香久久网| 天天爱夜夜爽| 激情小说五月天| 在线亚洲综合网| a色色色色色| 激情小说婷婷五月| 超碰碰碰碰| 九九中文字幕九| 一區四區歐美日韓| 9久视频| www.久久色.com| 婷丁五月| 欧美 日韩 成人 在线| 性爱激情综合网| 激情色播| 91九色中文| www.婷婷com| 婷婷六月激情小说网| 九九婷婷网五月天| 综合色、色综合| 99视频内射三四| 久狠狠狠| 五六月婷婷久久| 欧美综合婷婷欧美综| 六月婷久久| 五月色亭丁香| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 丁香六月婷婷一区| 色噜噜狠狠色综合成人网| 婷婷五月天渟渟| 激情五月婷婷在线区| 99综合视频一体| 9热在线观看| 五月天激情亚洲| 九九9久九9国产视频| 婷婷八月激情| www.婷婷| 99爱爱| 五月丁香色| 色九九七七| 色五月综合在线| 亚洲色区17| 人人做天天爱| 色播jjjj| 综合久久五月| 色婷婷综合久久| 99色热视频| 国产肥白大熟妇BBBB视频| 色色精品色| 狠狠五月天| 五月丁香六月久久| 五月激情六月宗合| 大香蕉五月天| 色婷婷狠狠| 久99热| 色色色色五月| 激情综合五月激情XXXX| 夜夜操狠狠操| 干亚洲天堂| 狠狠操狠狠插| 婷婷五月丁香五月天| 91|疯狂丨高潮丨对白| 五月婷婷五月天天| 亚洲网在线观看| 毛片新网地| 蜜臀av 粉嫩av 懂色av| 婷婷激情五月色综合| 9999综合99综合人| 婷婷久月| 91久久综合亚洲噜噜成人在线| 日日干日日| 久99综合婷婷| 一级性爱视频| 日本无va视频| Aaa久久| 五月婷婷开心五月| 一级精品999WWW| 91精品久久久久久综合五月天| 六月色婷婷色| 精品久久久久成人码免费动漫| 台湾佬天天日丁香婷婷五月天| 美女视频图片久久91| 色色热| 伊人网欧美在线男人天堂五月丁香 | 日本三级第一页| 人人摸人人搞| 久草视频一,二三四| 开心激情网五月天| 欧美综合丁香网| 日日噜噜久久婷婷五月天| 99福利导航| 天天爽天天爽天天爽天天爽天天爽| 成人午夜天| 色色网站在线| 五月天色色色| 丁香六月天婷婷色| 欧美综合五月丁香六月婷| 丁香五月六月久久综合| 亚洲综合色成丁香五月色| 五月激情综合网| av 一区三区四区| 婷婷丁香五月天之开心少妇| 国产精品国产| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 这里只有精品视频在线观看免费| 超极99精品| 色色五月天网站| 丁香伊人综合| 玖玖爱综合网| 亚洲AV成人精品网站在线播放| 大香蕉伊人爱在线| 亚洲丁香五月美女| 操97免费超级视频| 熟女人妻视频| 六月丁香综合| 欧美激情-区二区三区| 五月婷啪| 丁香婷婷六月| 色婷婷丁香五月| 婷婷五月天开心激情网| 色播五月婷婷综合| 嫩草视频观看| 婷婷五月在线影院| 婷婷导航| rr天天操| 天天射天天射一道本日本社区| 色情久久久| 91人人看| 无码激情AAAAA片-区区| 欧美精品99| 色婷婷基地| 婷婷丁香久久五月综合| 九九热re99re6在线精品| 久久人妻超碰一区| 丁香六月激情| 婷婷情色五月天| 天天日,天天射,天天舔| 米奇激情婷婷| 色欲人妻综合aaaaaaaa网| www.97干视频| 亚洲激情六月丁香| 五月丁香亭亭电影久久| 激情六月婷婷| 五月丁香香蕉| 操97免费超级视频| www.99热视频| 亚洲一区二区无码蜜乳av| 亚洲热手机在线观看| 色情五月天丁香社区| 久久一操| 万月丁香狠狠爱| 亚洲色无码A片一区二区麻豆| 五月婷婷啪啪| 亚洲国产成人综合| 丁香婷婷色情| 五月婷婷深深爱| 色五月婷婷在线观看| 人人做天天爱| 五月丁香六月婷婷久久久综合| www.五月天性.com| 婷丁五月| 婷婷爱综合| 五月天婷婷午夜丁香| 九九Av| 超碰在线看| 超碰99在线观看| www.久久久.com| 九九热欧美| 五月婷婷大香蕉| 日本三级黄色大片| 色五月婷婷婷婷婷婷婷婷婷婷| 91人人操人人| 色色综合网站| 欧美va精品va老师va| 九九综合视频在线观看| 久久只有这里精品免费| 这里只精品| 丁香婷婷人妻综合网| 五月天五月色| 五月丁香青草综合啪啪| 99色最新在线视频网站| WWW五月| 婷婷五月天在线观看| 啪啪色区| 99久久久| 欧美在线| 123日本不卡在线| 97性高潮久久久| 《久久综合九色综合97婷婷| 五月婷六月| 激情婷婷| 色婷五月丁香久亚洲| av五月天婷婷丁香| 久色五月丁香视频| 久久网日本| 天天做天天爱天天爽| 成人 在线观看国产| 天天操天天国产三级片处女学生妹| 黄色aa观看aaguochan| 婷婷七月丁香色色| 婷婷丁香五月av| 久久婷婷五月草视频| 婷婷亚洲欧美丁香五月| 天天操无码| 熟妇内谢69XXXXXA片| 91狼友视频在线观看| www.久久爱.c n| 久久er视频6| 天天综合天天玩夜夜玩天天玩夜夜玩 | 九九热在线视频,| 丁香五月婷婷影院| 91超级碰| 久99在线| 五月丁香激情四射| 就爱干 在线| 五月天色区| 五月丁香啪啪| 亚洲丁香婷婷| 婷婷99狠狠躁天天躁| 99综合99| 8区视频在线| 人妻丰满精品一区二区A片| 91丨九色熟女丨首页| 另类五月婷婷| 亚洲激情网| 亚洲乱码精品久久久久..| 久久精品日| 天天噜天天插| 色婷婷五月天视频网站| 国产精品色色| 97超级碰碰碰| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 少妇性按摩无码中文A片| yiqicaoav| 日日操夜夜爽白洁| 五月天另类激情在线| 丰满少妇猛烈A片免费看观看| 9 1在线视频| 五月丁香狠狠爱婷婷综合| 中文字幕AV网址| 激情操逼婷婷| 五月天激情四射| 91人人爽久久涩噜噜噜| 狠狠操狠狠插| 超碰在线免费| 日日日天天干| 亚洲精品久久久久AV无码| 久操干| 亚洲第一视频 久久| 99这里只有精品视频| 欧美亚洲成人在线| 亚洲性图一区二区| 能看的AV| 92久久| 亚洲男女激情| 久久精品熟女亚洲AV麻豆| 成人五月天色天堂| 亚洲中文字幕AV| av成人在线播放| 久久久久久丁香五月| 丁香婷婷色五月| 97操在线视频| 欧美色五月| 国产一级黄色影片,| 丁香婷婷免费| 成人丁香五月| 六月丁香花婷婷| 亚州操操| 99re热在线观看| 亚洲无码色色| 在线亚洲综合网| 六月丁香激情婷婷| 成人无码精品1区2区3区免费看| 欧美操人| 91人人操人人| 丁香婷婷色| www.五月丁香| 色色色色区| 亚洲va在线∨a天堂va欧美va| 人妻激情久久| 天天插天天| 欧美性爱丁香五月| 丁香五月婷婷天激情| 日本欧美成人片AAAA| 婷婷成人在线| 六月丁香五月婷婷| 亚洲色爽| 亚洲精品V天堂中文字幕| 丁香六月 婷婷六月| www.99视频| 婷婷六月爽| 国产美女无遮挡裸体毛片A片| 丁香五月天天| 天天爽天天操| 森林影视大全,最好看的2019年视频 | 97色碰| 97色色色| 这里只有精品视频国产| 嫩BBB槡BBBB搡BBBB| 五月激情精品视频| 一区二区三区四日本| 五月天激情美女久久| 香蕉久久五月| 来吧亚洲综合网| 手机在线日韩视频中文字幕| 久热九九| 丁香六月天AV| 久久婷婷九月国产精品| 久久精品亚洲热| 99热欧美精品| 高清视频一区| 激情综合女人网五月播播| 国产一区二区三区影院| 俺去也在线官网| 婷婷丁香婷婷97| 日韩高清成人| 国产噜一噜天天噜| 丁香五月婷婷色综合| 婷婷五月草| Av九九| 99热成人| 亚美欧色影院| 99热偷拍| 国产99久久久国产精品免费看| 婷婷六月五月| 五月天激情图片| 中字幕视频在线永久在线观看免费| 深爱激情五月天婷婷网| 9伊人网| 天天插综合网| 天天舔日日肏夜夜爽| 91porn一起草| 性色做爰片在线观看WW| 婷婷五月激情五月激情| 先锋五月婷婷丁香草草| 久久精品一区二区三区四区| 久久99网| caopeng超碰| 五月丁香婷色| 欧美日综合| 五月天成人小说网| 婷婷天堂综合| 色婷网站| 91色色色| 99爱视频免费看| 久久99婷婷| 国内熟女黄色系列| 九九色影视| 丁香婷婷色五月天| 五月婷婷丁香综合| 亚洲九九99精品视频在线播放| 国产色网站| 99精品视频在线| 丁香五月综合激情啪啪| 涩丁香| 五月亭亭直播| 五月亭亭狠狠| 色 丁香婷婷| 91久久综合| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 亚洲婷婷五月天激情| 一區四區歐美日韓| 五月 成人 婷婷| 碰碰碰97国产| 五月丁香综合在线| 久久 天天| 婷婷五月天日日日干干干| 色五月婷婷色| 日韩无码91| 97超碰,人人舔,人人操,人人摸| 婷婷综合五月天| 天天爽夜夜爽夜夜爽精品视频| 婷婷五月天成人动漫| 久久婷婷色综合| 狠狠色丁香久久综合婷婷亚洲成人福利 | 伊综合蕉| 久九男女天堂| 久久免费精彩视频| 久久九九@| 五月激情婷婷在线| 激情五月色综合国产精品| 五月丁香日本在线视频观看| 日本久久性| 色婷婷综合丁香五月天| 91狠狠色丁香婷婷综合久久狠丁香综合久久精品| 久久婷五月婷| 综合激情在线| 激情五月综合| 热99AV网站| 青青草原精品久久| 亚洲 在线 性爱 | 92久久| 色婷婷超碰| 天天肏天天肏| 肏日网在线看| 任你干aa| 综合久久十三| 超碰免费人| 中国女人做爰A片| 九九RE视频在线精品| 丁香婷婷久久| 日韩999| 影音先锋一区二区三区| 五月丁香六月婷| 激情五月色婷婷| 99热这里都是精品| 99综合| 天天干,天天日| 99热官网| 久久综合影院| 香蕉视频91| 色色五月天网站| 97干欧美| 激情综合网五月婷婷| 伊人久久婷婷| 色五月av| 五月婷婷丁香六月| 亚洲V国产V欧美V久久久久久| 丰满少妇猛烈A片免费看观看| 屁股翘好撅高迎合跪趴| 久久精品A片777777| 五月激香蕉网| 92久操视频| 日韩在线观看亚洲| 五月婷婷丁香综合| 丁香五月天在线视频| 婷婷在线五月天观看| 深爱五月天 开心网| www色中色综合| 五月天六月婷| 99爱视频| 九九久久综合| 狠狠操天天干| 97久久婷婷色| 丁香九月激情久久| 五月天激情影院| www.婷婷网| 精品久久久久久久人妻| 五月丁香六月综合基地| 婷婷五月综合色拍| 色综合伊人网| 操操操97| 欧美精品A片一区在线观看| 欧美婷婷日本| A√天堂网在线| 婷婷激情网五月天| 激情五月天网| 五月婷婷六月天| 99热热热天天人人人超超碰| 奇米网大香蕉| 少妇丁香婷婷 | 亚洲啪啪精品| 日本三级中国三级99| 五月天亚洲最大成人| 激情五月天久久丁香| 久久婷五月天| 色色五月婷婷网| 色9月| 色色综合无码| www.激情五月天| 久久久大香蕉| 丰满少妇猛烈A片免费看观看| 久久久色情| 激情网站五月| 婷婷干五月综合在线播放| 欧美影院婷婷| 香蕉久操| 天天久综合网永久入口17v| 九九热这里都是精品6| 能直接看的av网站| 99激情视频| 婷婷久久色| 久久这里只有精彩| 情趣视频66| 婷婷丁香成人| 日韩有码久久| 337p午夜影院| 在线观看欧美| 超碰在线caop| 久草五月婷婷| 思思热再线视频| 国产成人+综合亚洲+天堂| 丁香花社区av| 五月天激情综合网俺也去| 色色色色色网站| 99热资源在线| 在线成人国产| 午夜成人AV在线| 久久这里只有精品1| 亚洲激情五月| 九热电影av| 五月丁香久久呀| 丁香五月天激情视频| 成人 AV播放| 久久视频这里都是精品| 婷婷久久精品| 大香蕉久久久久久久久| 激情综合五月.....| 久久精品婷婷| 丁香五月九九| 久久婷婷一级片| 国产成人网站在线观看| 婷婷 伊人 久久| 亚洲色亚洲精品| 拍真实国产伦偷精品| 久久综合干| 成人无码免费一区二区中文| 视频综合网| 五月天大香蕉| 综合久久五月天| 深爱激清网| 碰碰碰97国产| a v色婷婷| 开心五月婷婷激情| 东京热免费视频| 狼人狠狠操| 色情开心五月| jizzdr| 丁香色色五月| 丁香六月激情蜜桃| 国产FREESEXVIDEOS性中国 | 国产成人精品一区二区三区视频 | 久久99激情| 色色影院黄大片| 天天操夜夜橾| 人人肏逼视频在线一区二区| 天天综合五月| 国产婷婷色综合AV蜜臀AV| 婷五月天天| 夜夜爱网站| site:hcxsz888.com| 丁香六月色婷婷| 婷婷九九| 婷婷午夜| 中文字幕永久在线| 久久这里都是精品| 97人人草| 婷婷激情六月| 婷婷五月色花丁香社区| 色情婷婷| 丁香五月婷婷丫| 激情五月婷婷| 五月丁香婷婷中文网| 超碰2021| 综合图片色色| 97碰| 天天插天天射|