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

ARTICLE DETAIL

資訊詳情

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

智能體技能庫(kù)架構(gòu)實(shí)戰(zhàn):從工具調(diào)用到能力沉淀

智能體技能庫(kù)架構(gòu)實(shí)戰(zhàn):從工具調(diào)用到能力沉淀 做AI Agent開發(fā)的朋友應(yīng)該都有這種體會(huì)剛把工具函數(shù)接入大模型時(shí)效果挺驚艷可一旦場(chǎng)景復(fù)雜起來(lái)代碼就變成一團(tuán)亂麻——幾十個(gè)函數(shù)堆在一起模型經(jīng)常選錯(cuò)目標(biāo)參數(shù)格式寫錯(cuò)一次就要返工一小時(shí)。我接觸agent-skills這個(gè)概念大概半年多前前后后在幾個(gè)不同的模擬項(xiàng)目X里試過(guò)好幾套方案今天把其中一套比較成熟的架構(gòu)思路整理出來(lái)希望能給正在做Agent落地的朋友一些參考。agent-skills說(shuō)白了就是給智能體準(zhǔn)備的一套“技能庫(kù)”。它跟單純的函數(shù)列表不太一樣重點(diǎn)是把一個(gè)能力按標(biāo)準(zhǔn)格式封裝起來(lái)包含技能的名稱、描述、輸入輸出Schema、執(zhí)行邏輯、依賴資源甚至可以包含一組完整的工具調(diào)用序列。Agent在運(yùn)行時(shí)會(huì)根據(jù)當(dāng)前任務(wù)主動(dòng)去技能庫(kù)中檢索和匹配選中最合適的技能來(lái)執(zhí)行。這樣一來(lái)Agent不再只是一個(gè)會(huì)說(shuō)話的回答機(jī)器而是變成了一個(gè)有工具箱、有操作規(guī)范、能持續(xù)沉淀能力的執(zhí)行者。這篇內(nèi)容適合誰(shuí)看正在做AI助手、自動(dòng)化助手、智能客服、工作流引擎的開發(fā)者都能用得上。哪怕你的Agent還沒上生產(chǎn)只是在學(xué)校內(nèi)部項(xiàng)目或企業(yè)內(nèi)部驗(yàn)證階段這套思路也能幫你把系統(tǒng)搭得更穩(wěn)。我會(huì)盡量把設(shè)計(jì)思路、踩坑過(guò)程和完整代碼骨架都寫出來(lái)希望能真正幫到你。1. 為什么Agent需要技能庫(kù)而不是純靠Prompt1.1 從“會(huì)調(diào)用工具”到“具備技能”的轉(zhuǎn)變很多人最開始做Agent的時(shí)候習(xí)慣把所有能力都塞進(jìn)System Prompt里比如“你可以使用以下工具get_weather、book_hotel……”然后讓模型自己去拼。這種做法在小規(guī)模、工具數(shù)量少于五個(gè)的時(shí)候是可以接受的我也這么做過(guò)圖省事。但一旦超過(guò)十個(gè)工具問(wèn)題就開始暴露Prompt太長(zhǎng)導(dǎo)致模型注意力分散描述寫得不仔細(xì)就會(huì)選錯(cuò)增加新工具還得頻繁改提示詞而且不同工具的輸入輸出風(fēng)格五花八門Agent內(nèi)部要針對(duì)每個(gè)工具寫適配代碼。這就是單純“工具接入”階段最大的痛點(diǎn)。技能庫(kù)的思路是把“工具”再往上升一層。工具是最小執(zhí)行單元比如一個(gè)查詢接口、一個(gè)計(jì)算函數(shù)技能則是一個(gè)“完整動(dòng)作”它可能只依賴一個(gè)工具也可能串聯(lián)好幾個(gè)工具并且自帶規(guī)則和邊界條件。比如“查詢天氣并給出穿衣建議”單看工具層需要至少兩個(gè)能力天氣查詢和知識(shí)推理。但作為技能它應(yīng)該是一個(gè)整體先查天氣再根據(jù)溫度范圍、降水概率組織建議文案。模型只需要做一次選擇執(zhí)行細(xì)節(jié)全部封裝在技能內(nèi)部。這個(gè)抽象層面的提升非常關(guān)鍵。它讓Agent的決策面變小了——不是讓模型去編排每一步工具調(diào)用而是讓模型在有限的技能菜單里做選擇。菜單里的每項(xiàng)技能都經(jīng)過(guò)測(cè)試和驗(yàn)證執(zhí)行結(jié)果可控。我在實(shí)際項(xiàng)目中體會(huì)最深的一點(diǎn)是Agent系統(tǒng)的可靠性往往不是靠模型聰明而是靠決策范圍收窄。模型需要做的判斷越少出錯(cuò)率就越低。1.2 技能庫(kù)到底解決了什么核心問(wèn)題技能庫(kù)不是花架子它解決的是三個(gè)核心問(wèn)題。第一是復(fù)用。同樣一個(gè)“內(nèi)容安全審核”技能可以在內(nèi)容生成Agent里面用也可以在用戶反饋處理Agent里面用只要接口定義一致?lián)Q一個(gè)Agent實(shí)例就能直接掛載。做過(guò)多個(gè)Agent的人應(yīng)該都有經(jīng)驗(yàn)如果沒有統(tǒng)一的技能層同一套邏輯就得在每個(gè)Agent里重新實(shí)現(xiàn)一遍維護(hù)成本直接翻倍。這里說(shuō)的復(fù)用還不只是代碼復(fù)用更重要的是能力沉淀。一個(gè)技能被驗(yàn)證有效它就能成為團(tuán)隊(duì)的基礎(chǔ)資產(chǎn)后面開發(fā)新Agent時(shí)可以直接調(diào)用不用每次從頭設(shè)計(jì)。第二是管理。技能庫(kù)把每個(gè)能力的版本、依賴、測(cè)試用例都固化下來(lái)能單獨(dú)升級(jí)、單獨(dú)回滾。我在某跨平臺(tái)系統(tǒng)里遇到過(guò)一種情況某個(gè)匯報(bào)生成技能改了一版Prompt之后其他Agent的對(duì)話質(zhì)量集體下降排查了半天才發(fā)現(xiàn)是因?yàn)榧寄軒?kù)是共享的有人直接改了原文件。后來(lái)改成版本隔離每個(gè)Agent鎖定技能的某個(gè)版本問(wèn)題才徹底解決。這個(gè)坑讓我意識(shí)到技能庫(kù)必須做版本管理不能只有一坨最新文件否則牽一發(fā)而動(dòng)全身。第三是可驗(yàn)證。技能庫(kù)里的技能是可以單獨(dú)測(cè)試的不需要跑到完整Agent鏈路里才能驗(yàn)證。這一點(diǎn)在工程實(shí)踐里非常有價(jià)值。我經(jīng)常用一套固定的測(cè)試用例去回歸技能庫(kù)改一行代碼就能知道會(huì)不會(huì)影響到其他調(diào)用方。這種確定性讓人很安心也是技能庫(kù)跟散亂工具函數(shù)最本質(zhì)的區(qū)別之一。1.3 技能、工具、插件、工作流的邊界很多人對(duì)這幾個(gè)概念是混著用的我在團(tuán)隊(duì)評(píng)審時(shí)也經(jīng)常被問(wèn)“這跟插件有什么區(qū)別”。我的理解是工具是最底層它不關(guān)心業(yè)務(wù)就是一個(gè)能完成某個(gè)原子操作的函數(shù)或接口比如“發(fā)送郵件”“解析PDF”。技能是工具的封裝它有明確的業(yè)務(wù)目標(biāo)和輸入輸出契約比如“生成會(huì)議紀(jì)要并發(fā)送給指定參會(huì)人”內(nèi)部可能用到了語(yǔ)音轉(zhuǎn)文字、摘要、格式化、發(fā)送郵件四個(gè)工具。插件是技能的集合和分發(fā)單元通常包含一組相關(guān)技能再加上自己的界面或配置入口可以整體安裝卸載有點(diǎn)像一個(gè)技能包。工作流則是技能之上的編排層它表達(dá)的是“先做A再做B如果條件C成立就做D”的流程邏輯偏業(yè)務(wù)層面。把這一層理清楚之后你會(huì)發(fā)現(xiàn)設(shè)計(jì)技能庫(kù)時(shí)不會(huì)糾結(jié)“這個(gè)能力該放在哪兒”。比如一個(gè)純粹的PDF解析功能它應(yīng)該是一個(gè)工具不占技能庫(kù)名額而“從PDF中提取表格并整理成結(jié)構(gòu)化數(shù)據(jù)”就是一個(gè)技能因?yàn)樗忻鞔_的目標(biāo)描述和輸出規(guī)范甚至可以內(nèi)部選擇用哪個(gè)解析工具。這種邊界感讓我在設(shè)計(jì)新Agent時(shí)省了很多不必要的爭(zhēng)論。2. 技能庫(kù)設(shè)計(jì)的三個(gè)核心原則2.1 原則一統(tǒng)一接口讓輸入輸出都有Schema約束技能庫(kù)如果想讓不同Agent都能調(diào)用第一件要做的事就是統(tǒng)一接口格式。最通用的做法是給每個(gè)技能定義輸入?yún)?shù)和輸出結(jié)果的JSON Schema用類型、必填、描述、默認(rèn)值來(lái)約束輸入用固定結(jié)構(gòu)描述輸出。這里有一個(gè)容易被忽視的點(diǎn)不僅輸入要校驗(yàn)輸出也要有結(jié)構(gòu)化的Schema。如果技能返回的是自由文本模型的后續(xù)決策就缺少確定性的抓手很難穩(wěn)定地做下一步操作。舉個(gè)例子一個(gè)“分析用戶評(píng)論情感”的技能輸出如果只是一個(gè)字符串“比較滿意”下游技能根本沒法做數(shù)值判斷。更好的輸出是{sentiment: positive, confidence: 0.93, summary: 用戶對(duì)物流速度滿意}這樣即使不依賴大模型普通代碼也能處理還能把置信度數(shù)值直接用在下游統(tǒng)計(jì)里。我覺得這一步是整個(gè)技能庫(kù)的地基。Schema定義得越清晰后面做參數(shù)校驗(yàn)、自動(dòng)補(bǔ)全、接口測(cè)試都會(huì)越順。我見過(guò)不少團(tuán)隊(duì)先寫執(zhí)行邏輯回頭補(bǔ)Schema結(jié)果發(fā)現(xiàn)邏輯里的輸入輸出跟契約對(duì)不上返工量大得嚇人。所以我的建議是任何技能的Schema設(shè)計(jì)都要跟執(zhí)行邏輯開發(fā)同步推進(jìn)哪怕先草草寫一版也要讓契約先立起來(lái)再圍繞它實(shí)現(xiàn)。2.2 原則二描述語(yǔ)料要寫給模型看不只給人看技能的描述字段往往決定了模型能不能在正確的時(shí)候選中這個(gè)技能。這里說(shuō)的描述不是功能文檔而是給大模型看的“使用說(shuō)明書”。它需要包含幾個(gè)關(guān)鍵信息這個(gè)技能是干什么的、適合在什么場(chǎng)景下用、什么情況下不要用、輸入輸出分別是什么。描述寫得太簡(jiǎn)單比如只寫“獲取天氣”模型很容易在需要穿衣建議的時(shí)候去調(diào)用天氣技能而不是去調(diào)用更高層的穿衣建議技能描述寫得太啰嗦又會(huì)稀釋模型注意力導(dǎo)致技能檢索效率下降。我常用的寫法是幾個(gè)固定的段落一句話總結(jié)然后寫適用場(chǎng)景再寫不適用場(chǎng)景最后給一個(gè)典型調(diào)用例子。句子盡量短動(dòng)詞明確避免模糊詞匯。比如一個(gè)“訂單取消”技能描述可以是“當(dāng)用戶要求取消尚未發(fā)貨的訂單時(shí)使用。不適用于已發(fā)貨訂單已發(fā)貨訂單請(qǐng)使用‘售后申請(qǐng)’技能。典型輸入訂單ID、取消原因?!睂?shí)測(cè)下來(lái)這種結(jié)構(gòu)化描述能讓技能選錯(cuò)率明顯下降。我還在元數(shù)據(jù)文件里加了一個(gè)examples字段里面放兩三條真實(shí)的輸入輸出對(duì)效果比單純寫描述更穩(wěn)定。之前看過(guò)一份評(píng)測(cè)報(bào)告說(shuō)模型對(duì)示例的敏感度其實(shí)高于對(duì)描述文字的敏感度這點(diǎn)我在實(shí)際項(xiàng)目中也深有體會(huì)。與其花大量時(shí)間打磨描述措辭不如先把高質(zhì)量示例補(bǔ)上。2.3 原則三技能粒度要收放有度技能粒度這個(gè)東西我一開始也控制不好走了不少?gòu)澛贰A6忍?xì)比如寫了一個(gè)“發(fā)送HTTP請(qǐng)求”技能結(jié)果Agent每個(gè)動(dòng)作都要繞一圈又慢又瑣碎等于是把工具列表?yè)Q了個(gè)名字并沒有解決決策負(fù)擔(dān)的問(wèn)題。粒度太粗比如寫了一個(gè)“完成整個(gè)營(yíng)銷方案”技能模型幾乎沒法復(fù)用稍微換一個(gè)需求場(chǎng)景就失效了等于寫死了一個(gè)一次性業(yè)務(wù)腳本。我的經(jīng)驗(yàn)是利用“可復(fù)用邊界”來(lái)判斷如果一個(gè)技能能被兩個(gè)以上不同的任務(wù)用到粒度就是合適的如果只能被一個(gè)特定任務(wù)用到要么繼續(xù)拆分出通用子技能要么接受它就是一個(gè)獨(dú)立業(yè)務(wù)腳本不進(jìn)技能庫(kù)。寫技能的時(shí)候多問(wèn)自己一句除了當(dāng)前需求還有誰(shuí)會(huì)用到這個(gè)技能如果答案是沒人那就把它設(shè)計(jì)成通用技能的組合調(diào)用而不是單獨(dú)建一個(gè)獨(dú)占技能。還有一個(gè)實(shí)操技巧同一業(yè)務(wù)域里盡量保證技能水平一致。如果“生成文案”和“生成文案并配圖并定時(shí)發(fā)布”同時(shí)存在模型很容易混淆不知道該選哪個(gè)。我的建議是只保留粗粒度技能把細(xì)粒度能力作為內(nèi)部工具隱藏起來(lái)讓技能庫(kù)的條目總數(shù)保持在幾十個(gè)以內(nèi)。這樣模型選擇壓力小維護(hù)成本也低很多。3. 從零搭建一個(gè)最小可用的技能庫(kù)3.1 目錄結(jié)構(gòu)與技能元數(shù)據(jù)設(shè)計(jì)先看目錄結(jié)構(gòu)。我比較喜歡用扁平化加標(biāo)簽的方式而不是深層嵌套。每個(gè)技能占一個(gè)目錄目錄名就是技能ID里面至少包含元數(shù)據(jù)文件skill.yaml、執(zhí)行腳本exec.py和可選的依賴聲明文件。目錄結(jié)構(gòu)如下skills/ email_reply/ skill.yaml exec.py tests/ cases.json meeting_summary/ skill.yaml exec.py requirements.txt review_sentiment/ skill.yaml exec.py目錄名用snake_case或kebab-case都可以但全庫(kù)必須統(tǒng)一。我建議用snake_case方便Python類庫(kù)直接映射。這里順便說(shuō)一下技能ID一定不要隨便改因?yàn)镮D會(huì)被寫進(jìn)各種編排配置和接口日志里改名會(huì)導(dǎo)致歷史數(shù)據(jù)對(duì)不上。skill.yaml的核心字段可以這樣設(shè)計(jì)id: meeting_summary name: 會(huì)議紀(jì)要生成與要點(diǎn)整理 version: 1.2.0 description: | 當(dāng)用戶提供會(huì)議錄音或文字稿時(shí)使用能夠生成結(jié)構(gòu)化會(huì)議紀(jì)要包含議題、結(jié)論、待辦事項(xiàng)。 不適用于純閑聊或需要翻譯的內(nèi)容。 典型輸入會(huì)議文字稿或錄音文件路徑。 examples: - input: 會(huì)議記錄關(guān)于Q3目標(biāo)、預(yù)算…… output: 議題Q3目標(biāo)確認(rèn)結(jié)論預(yù)算需壓縮10% input_schema: type: object required: - transcript properties: transcript: type: string description: 會(huì)議文字稿內(nèi)容長(zhǎng)度不超過(guò)20000字 include_action_items: type: boolean description: 是否輸出待辦事項(xiàng)清單默認(rèn)為true output_schema: type: object required: - summary - action_items properties: summary: type: string action_items: type: array items: type: string dependencies: - llm_sdk - pydantic注意一點(diǎn)不要在skill.yaml里寫具體的執(zhí)行邏輯細(xì)節(jié)也不要放過(guò)于冗長(zhǎng)的Prompt模板那些東西歸類到exec.py或獨(dú)立的prompt文件里。元數(shù)據(jù)本身要保持輕量這樣模型和代碼讀取時(shí)才會(huì)快維護(hù)的人一眼也能看明白這個(gè)技能到底是干什么的。3.2 技能注冊(cè)與動(dòng)態(tài)加載技能庫(kù)在代碼層面要做的一個(gè)重要事情是動(dòng)態(tài)注冊(cè)。你不能在系統(tǒng)里寫死一個(gè)技能字典否則每次新增技能都要改主程序。更合理的做法是在進(jìn)程啟動(dòng)時(shí)掃描技能目錄讀取每個(gè)目錄的skill.yaml構(gòu)建索引然后按需加載執(zhí)行模塊。下面是一個(gè)用Python實(shí)現(xiàn)的簡(jiǎn)化加載器import yaml from pathlib import Path from importlib import import_util class SkillRegistry: def __init__(self, base_dir: str skills): self.base_dir Path(base_dir) self.skills {} self.modules {} def scan(self): for skill_dir in self.base_dir.iterdir(): meta_path skill_dir / skill.yaml if not meta_path.is_file(): continue with open(meta_path, r, encodingutf-8) as f: meta yaml.safe_load(f) skill_id meta.get(id, skill_dir.name) self.skills[skill_id] { meta: meta, dir: str(skill_dir), } def load(self, skill_id: str): if skill_id in self.modules: return self.modules[skill_id] spec import_util.spec_from_file_location( fskill_{skill_id}, Path(self.skills[skill_id][dir]) / exec.py, ) module import_util.module_from_spec(spec) spec.loader.exec_module(module) self.modules[skill_id] module return module def execute(self, skill_id: str, **kwargs): module self.load(skill_id) validate_input(self.skills[skill_id][meta], kwargs) result module.run(**kwargs) validate_output(self.skills[skill_id][meta], result) return result def list_skills(self): return [ {id: sid, name: meta[meta][name], description: meta[meta][description]} for sid, meta in self.skills.items() ]這個(gè)設(shè)計(jì)的關(guān)鍵點(diǎn)是元數(shù)據(jù)在啟動(dòng)時(shí)就全部加載執(zhí)行模塊在真正被選中后才動(dòng)態(tài)加載。這樣啟動(dòng)速度快內(nèi)存占用也低。另外validate_input和validate_output兩個(gè)函數(shù)一定不要跳過(guò)它們實(shí)際上是在執(zhí)行邊界上做契約校驗(yàn)?zāi)軘r截大量臟數(shù)據(jù)。我在一個(gè)項(xiàng)目里就靠這兩行校驗(yàn)函數(shù)擋住了模型傳錯(cuò)字段的情況不然錯(cuò)誤會(huì)一路傳導(dǎo)到下游排查起來(lái)痛苦得多。3.3 一個(gè)完整技能的編寫示例我們來(lái)實(shí)現(xiàn)一個(gè)比較有代表性的技能把一段產(chǎn)品反饋整理成結(jié)構(gòu)化問(wèn)題清單。這個(gè)技能在很多Agent場(chǎng)景里都通用比如客服系統(tǒng)、需求收集助手。先看技能元數(shù)據(jù)的輸入輸出契約再看exec.py的實(shí)現(xiàn)骨架。import re from typing import List, Optional from pydantic import BaseModel class FeedbackItem(BaseModel): category: str content: str priority: str medium class RunResult(BaseModel): items: List[FeedbackItem] raw_count: int def run(feedback_text: str, categories: Optional[List[str]] None) - dict: segments split_feedback(feedback_text) items [] for seg in segments: if len(seg.strip()) 5: continue category classify(seg, categories) priority estimate_priority(seg) items.append( FeedbackItem( categorycategory, contentseg.strip(), prioritypriority, ) ) return RunResult(itemsitems, raw_countlen(segments)).model_dump() def split_feedback(text: str) - List[str]: parts re.split(r[。!?.\n], text) return [p for p in parts if p.strip()] def classify(seg: str, categories: Optional[List[str]]) - str: if categories: for cat in categories: if cat in seg: return cat return 其他 def estimate_priority(seg: str) - str: if re.search(r崩潰|閃退|無(wú)法|嚴(yán)重|緊急|賠償, seg): return high if re.search(r建議|希望|可以優(yōu)化, seg): return low return medium這個(gè)技能實(shí)際運(yùn)行時(shí)Agent只需要傳feedback_text剩下的拆分、分類、優(yōu)先級(jí)估計(jì)全部在內(nèi)部完成輸出結(jié)果是結(jié)構(gòu)化JSON。這就是技能封裝的意義對(duì)外暴露的是簡(jiǎn)單契約對(duì)內(nèi)可以自由混合規(guī)則和模型調(diào)用。上面示例用的是純規(guī)則實(shí)現(xiàn)實(shí)際項(xiàng)目中如果分類準(zhǔn)確率不夠可以在classify函數(shù)里換成調(diào)用大模型接口但要注意把超時(shí)、重試、模型名等配置放在技能目錄下的config.json里由加載器統(tǒng)一注入不要散落在代碼里。3.4 執(zhí)行包裝與統(tǒng)一異常處理技能執(zhí)行時(shí)會(huì)遇到各種問(wèn)題網(wǎng)絡(luò)超時(shí)、模型接口報(bào)錯(cuò)、輸入字段缺失、輸出格式非法。如果不做統(tǒng)一包裝Agent主循環(huán)的異常處理會(huì)被各種技能錯(cuò)誤淹沒。我建議每個(gè)技能模塊統(tǒng)一暴露run作為入口而注冊(cè)中心在執(zhí)行時(shí)包一層異常處理和重試策略。重試策略要區(qū)分錯(cuò)誤類型網(wǎng)絡(luò)類錯(cuò)誤可以重試兩到三次業(yè)務(wù)校驗(yàn)類錯(cuò)誤不要重試直接返回參數(shù)錯(cuò)誤原因。可以在注冊(cè)中心里加一個(gè)簡(jiǎn)單的重試邏輯import time def execute_with_retry(self, skill_id: str, max_retries: int 2, **kwargs): last_error None for attempt in range(max_retries 1): try: return self.execute(skill_id, **kwargs) except NetworkError as exc: last_error exc time.sleep(1.5 * (attempt 1)) except (SchemaError, ValueError) as exc: raise RuntimeError(f技能參數(shù)錯(cuò)誤: {exc}) from exc raise RuntimeError(f技能執(zhí)行多次重試仍失敗: {last_error})這個(gè)方法看起來(lái)簡(jiǎn)單但在實(shí)際項(xiàng)目里非常管用。我在某實(shí)時(shí)數(shù)據(jù)處理Agent里用上這套后因?yàn)榈谌浇涌诓环€(wěn)定導(dǎo)致的會(huì)話中斷少了大概一半。記住一個(gè)原則技能內(nèi)部不要自己加無(wú)限重試重試邏輯放在統(tǒng)一層避免一個(gè)卡住的技能占住線程資源不放。另外錯(cuò)誤信息一定要寫得足夠詳細(xì)尤其是參數(shù)校驗(yàn)失敗時(shí)最好把期望格式和實(shí)際收到的值都列出來(lái)這樣模型自己才有可能在下一次調(diào)用前修正。4. 技能編排讓多個(gè)技能協(xié)作干活4.1 順序流水線怎么設(shè)計(jì)單個(gè)技能解決的是單點(diǎn)問(wèn)題但真實(shí)業(yè)務(wù)里往往需要把多個(gè)技能串起來(lái)。最基礎(chǔ)的是順序流水線。比如一個(gè)“輿情分析日?qǐng)?bào)”場(chǎng)景需要依次做數(shù)據(jù)抓取、文本清洗、情感分析、聚合統(tǒng)計(jì)、生成報(bào)告。如果拆成五個(gè)技能來(lái)做每次Agent都在大模型側(cè)決策下一步效率低且不穩(wěn)定。更好的做法是把這些技能放到一條編排配置里由編排層按固定順序執(zhí)行模型只需要在入口觸發(fā)一個(gè)“生成輿情日?qǐng)?bào)”的總控技能。編排配置可以是一份JSON{ id: report_workflow, trigger_skill: parse_user_request, steps: [ { skill: fetch_data, inputs: {source: {{request.source}}} }, { skill: text_clean, inputs: {documents: {{steps.fetch_data.output}}} }, { skill: sentiment_analysis, inputs: {texts: {{steps.text_clean.output}}} }, { skill: aggregate_stats, inputs: {items: {{steps.sentiment_analysis.output}}} }, { skill: generate_report, inputs: {stats: {{steps.aggregate_stats.output}}} } ] }這里的變量引用語(yǔ)法是{{steps.xxx.output}}本質(zhì)上就是讓編排引擎把上一步的輸出結(jié)構(gòu)體傳給下一步。實(shí)現(xiàn)這個(gè)機(jī)制并不復(fù)雜關(guān)鍵是要在每一步執(zhí)行后緩存output對(duì)象并提供一套模板替換能力。我自己用Python實(shí)現(xiàn)時(shí)只寫了一個(gè)簡(jiǎn)單的遞歸替換函數(shù)大概一百多行完全夠用。順序流水線的價(jià)值在于穩(wěn)定性固定流程不會(huì)受到模型發(fā)揮波動(dòng)的影響該先做的不會(huì)跳過(guò)去。它適合那些步驟明確、順序強(qiáng)依賴的業(yè)務(wù)比如數(shù)據(jù)處理類任務(wù)。4.2 條件路由與技能回退很多場(chǎng)景不是簡(jiǎn)單的順序線而是有分支的。比如“根據(jù)訂單狀態(tài)決定后續(xù)動(dòng)作”已發(fā)貨走物流查詢未發(fā)貨走改地址退款中走售后催辦。這套邏輯如果全部靠Agent自由發(fā)揮狀態(tài)判斷容易出錯(cuò)。我一般推薦把條件路由寫在編排層用顯式的if條件控制分支。條件路由的一個(gè)常見誤區(qū)是把JSON條件表達(dá)式寫得過(guò)于復(fù)雜實(shí)際上你只需要支持等于、不等于、包含、正則匹配這幾種基礎(chǔ)算子就夠用了。我統(tǒng)計(jì)過(guò)自己搭建的十幾個(gè)編排流程百分之九十的分支邏輯都能用這些基礎(chǔ)算子覆蓋。把條件寫清楚以后代碼調(diào)試起來(lái)非常直觀任何一個(gè)分支的走向都能提前預(yù)判到。另外技能回退也很重要。比如查詢訂單狀態(tài)失敗了是直接告訴用戶失敗還是嘗試調(diào)用備用接口如果在編排層給技能配置了fallback字段主技能拋異常時(shí)自動(dòng)切換到備選技能用戶側(cè)基本無(wú)感知。我在線上環(huán)境里遇到過(guò)主鏈路接口連續(xù)抖動(dòng)的情況如果沒有回退機(jī)制那段時(shí)間所有相關(guān)Agent都會(huì)跟著一起不可用加上回退之后影響范圍縮小了不少。4.3 技能間的數(shù)據(jù)契約與上下文傳遞多技能協(xié)作最大的坑就是數(shù)據(jù)格式不對(duì)齊。技能A輸出customer_id技能B期望的是user_id如果沒有統(tǒng)一的數(shù)據(jù)契約只能靠寫膠水代碼編排一復(fù)雜就維護(hù)不下去。我的做法是引入一個(gè)“技能上下文對(duì)象”在每個(gè)技能執(zhí)行前根據(jù)其input_schema自動(dòng)截取上下文里需要的字段。如果技能輸出字段名跟下一個(gè)技能不一致就在編排層配置一個(gè)顯式的字段映射{ skill: get_user_profile, inputs: {user_id: {{steps.query_order.output.customer_id}}} }把這種映射放到配置里而不是寫在代碼里好處是業(yè)務(wù)調(diào)整時(shí)不用改主程序。這個(gè)模式我用了一段時(shí)間后發(fā)現(xiàn)很多成熟的開源編排工具也是同樣的思路算是行業(yè)里的通用實(shí)踐。再提醒一點(diǎn)上下文傳遞時(shí)盡量傳遞值對(duì)象或ID而不是傳遞龐大的中間文本。我之前踩過(guò)幾次坑一個(gè)文本清洗技能把整篇大文檔往下傳結(jié)果后續(xù)技能越跑越慢一度以為是模型速度問(wèn)題最后發(fā)現(xiàn)是上下文里積累了太多冗余文本。后來(lái)我讓每個(gè)技能在輸出時(shí)主動(dòng)做一次字段精簡(jiǎn)只保留下游真正需要的數(shù)據(jù)整體token消耗和延遲都降下來(lái)了。5. 常見問(wèn)題與排查技巧實(shí)錄5.1 模型總選錯(cuò)技能怎么辦這是使用技能庫(kù)后最常遇到的問(wèn)題表現(xiàn)為該調(diào)用A技能的時(shí)候模型調(diào)用了B技能或者干脆回答“我沒有這個(gè)能力”。我排查時(shí)一般按三條線走。第一條看技能描述是否包含明確的“適用/不適用”邊界。如果只寫了一句話功能描述優(yōu)先補(bǔ)場(chǎng)景邊界和典型示例。第二條看技能ID和名稱是否太長(zhǎng)或者太抽象。比如某個(gè)技能叫“handle_order_exception”另一個(gè)叫“process_refund_request”模型很難區(qū)分改成“處理退款申請(qǐng)”“處理訂單異常”這種業(yè)務(wù)化名稱會(huì)更穩(wěn)妥。第三條檢查技能庫(kù)里是否存在語(yǔ)義高度重疊的條目比如同時(shí)有“生成摘要”和“總結(jié)要點(diǎn)”模型不知道選哪個(gè)那就合并或者刪掉一個(gè)。如果以上都做完了還是選錯(cuò)可以考慮在模型側(cè)的System Prompt里加一個(gè)簡(jiǎn)短的技能索引列出技能ID和一句話說(shuō)明讓模型在決策前先掃一眼菜單。我也見過(guò)一些項(xiàng)目用向量檢索先召回候選技能再把候選列表塞給模型做選擇效果不錯(cuò)但整體復(fù)雜度明顯更高適合技能條目超過(guò)五十個(gè)的情況。如果你的技能庫(kù)還比較小先把描述和示例質(zhì)量搞上去收益最大。5.2 技能Schema校驗(yàn)不過(guò)多半是類型和必填沒對(duì)齊跟大模型打交道輸入字段的格式問(wèn)題幾乎不可避免。模型自己生成的參數(shù)有時(shí)候會(huì)是字符串而不是數(shù)組有時(shí)候缺了必填字段。我的經(jīng)驗(yàn)是Schema校驗(yàn)失敗時(shí)一定要把原始錯(cuò)誤信息原樣返回給Agent讓它自己修正參數(shù)后重新調(diào)用。這里有個(gè)細(xì)節(jié)錯(cuò)誤信息里不要只寫“參數(shù)錯(cuò)誤”要寫明“缺少字段user_id字段tags期望類型是數(shù)組實(shí)際收到字符串”。大模型對(duì)清晰錯(cuò)誤信息的修正能力很強(qiáng)很多情況下一個(gè)來(lái)回就能自動(dòng)解決。如果反復(fù)修正還是不行多半是技能的描述里沒有寫清楚參數(shù)格式。此時(shí)要在description里加一句更具體的說(shuō)明比如“tags是一個(gè)字符串?dāng)?shù)組每一項(xiàng)是用戶的標(biāo)簽內(nèi)容”。這種提示比單純的Schema定義對(duì)模型更友好。我甚至?xí)ㄗh在元數(shù)據(jù)里放一個(gè)parameter_examples字段把每個(gè)參數(shù)的合法示例都寫出來(lái)這樣能在根本上降低模型生成錯(cuò)誤參數(shù)的概率。5.3 技能加載慢、內(nèi)存占用高技能庫(kù)條目多了以后進(jìn)程啟動(dòng)時(shí)掃描全部元數(shù)據(jù)一般也就幾十毫秒不至于有瓶頸。真正容易出問(wèn)題的是有些人在注冊(cè)中心里把每個(gè)技能的執(zhí)行模塊都在啟動(dòng)時(shí)就import這會(huì)拖慢啟動(dòng)速度還會(huì)占內(nèi)存。我的建議是采用懶加載也就是真正執(zhí)行一個(gè)技能時(shí)才import它。另外有些技能內(nèi)部依賴一些體積較大的庫(kù)比如PDF解析、圖像識(shí)別如果十個(gè)技能都依賴同一個(gè)庫(kù)加載器可以做一個(gè)模塊復(fù)用的緩存池不要讓每個(gè)技能重復(fù)掛一份同樣的依賴對(duì)象。還有一個(gè)隱藏問(wèn)題技能模塊里的全局狀態(tài)。如果某個(gè)技能在模塊內(nèi)定義了一個(gè)全局緩存字典多次執(zhí)行之后內(nèi)存會(huì)一直漲。排查時(shí)可以定期打印技能模塊對(duì)象的數(shù)量如果發(fā)現(xiàn)同一個(gè)技能被加載了兩份要檢查import路徑是否不一致。我之前就遇到過(guò)因?yàn)槟夸洿笮懖灰恢聦?dǎo)致模塊被重復(fù)加載的情況看起來(lái)是小問(wèn)題實(shí)際會(huì)讓內(nèi)存占用翻倍。5.4 技能更新后老Agent卻報(bào)錯(cuò)這個(gè)跟版本管理有關(guān)。技能庫(kù)是共享的你更新了技能文件所有引用它的Agent都會(huì)受影響。有些Agent依賴舊版本的輸出格式更新后自然就出問(wèn)題。我目前的做法是每個(gè)Agent實(shí)例在初始化時(shí)記錄自己依賴的技能版本集合注冊(cè)中心提供一個(gè)按版本隔離的獲取接口。元數(shù)據(jù)文件里加version字段同一份技能可以有多個(gè)版本目錄共存比如meeting_summary_v1、meeting_summary_v2。發(fā)布新版本時(shí)不要?jiǎng)h舊版本等所有Agent都遷移完成后再清理。這個(gè)流程看起來(lái)繁瑣但能避免不少線上事故。另外技能測(cè)試文件應(yīng)該跟技能同目錄存放每次改動(dòng)后跑一遍tests/cases.json里的用例確認(rèn)輸出Schema和示例數(shù)據(jù)都一致再考慮發(fā)布。我自己就因?yàn)橥祽刑^(guò)測(cè)試吃過(guò)虧那之后所有技能都強(qiáng)制要求附帶至少三個(gè)輸入輸出用例。特別是涉及大模型輸出的技能很容易出現(xiàn)結(jié)構(gòu)不穩(wěn)定只有靠固定用例回歸才能保證升級(jí)安全。5.5 調(diào)試技能庫(kù)的實(shí)用小工具最后分享一個(gè)調(diào)試技巧。我給技能庫(kù)加了一個(gè)“單技能命令行執(zhí)行器”可以直接在終端跑一個(gè)技能傳參并查看輸出不需要把整個(gè)Agent跑起來(lái)。python -m skill_runner run meeting_summary --transcript 會(huì)議內(nèi)容...這個(gè)工具本質(zhì)上就是注冊(cè)中心的一個(gè)薄封裝執(zhí)行時(shí)傳入技能ID和JSON參數(shù)最后格式化打印輸出。這樣調(diào)試效率會(huì)高很多尤其在排查某個(gè)技能單獨(dú)報(bào)錯(cuò)的時(shí)候不用再動(dòng)其他部分。我一度調(diào)試Agent鏈路要反復(fù)改Prompt和參數(shù)加上這個(gè)小工具后至少省了三分之一的時(shí)間。我建議每個(gè)團(tuán)隊(duì)做技能庫(kù)的時(shí)候都順手把這個(gè)工具加上成本很低日常收益卻很大。做技術(shù)選型的時(shí)候我一直喜歡那些能在真實(shí)場(chǎng)景里扛住壓力的方案而不是演示時(shí)看著炫酷的玩法。技能庫(kù)這套架構(gòu)在好幾個(gè)生產(chǎn)級(jí)Agent里幫我扛過(guò)了流量壓力也給后續(xù)擴(kuò)展留了空間。如果你剛開始接觸agent-skills不用急著把所有能力都封裝成技能先從兩三個(gè)高頻業(yè)務(wù)動(dòng)作入手把接口、描述、測(cè)試這三件事做扎實(shí)跑通之后再逐步擴(kuò)充會(huì)比一開始就鋪一個(gè)大而全的庫(kù)穩(wěn)妥得多。等你的技能庫(kù)真正被多個(gè)Agent復(fù)用時(shí)你會(huì)發(fā)現(xiàn)之前在設(shè)計(jì)和規(guī)范上花的時(shí)間都是值得的。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久草网站免费在线观看| 情色五月天就去干| 日韩成人在线性爱视频| 男人天堂新| 久久999久| 婷婷五月天激情四射| 黄色免费网| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 口爆综合网| 国产精品美女久久久久久网站| 超碰是碰在线观看| 欧美色日| 久9久9精品| 综合色色网| 久久久久人妻二区精品叶可怜| 91亚洲网站| 职场同事知名国产国产精品久久欧美日韩 | 95精品在线| 亚洲天堂7777| 园内精品自拍视频在线播放| 啪啪资源网| 久久久一区二区三区四区五区| 蜜桃视频啊啊啊啊| 中文字幕一二三av| 人妻天天爽| 99色骚| 91人妻视频在线| 亚州精品一区二区三区香中文字幕在线| 日韩高清黄片| 国产区91柔拿会所技师| 久久无码电影| 日韩成人电影AV| 精品亚洲国产成人av网站| 欧美中文字幕日韩在线| 在线啊v一区| 牛黄色久午久| 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 天天弄天天操| 91美女中出| 超碰97欧美在线| 夜夜操二区| renqi久久久久久久久久久久| 性爱乱伦网址| 91九色网| 熟啊v色欧美热| 亚州精品人妻一二三区| 欧美,日韩,中文,另类| 欧洲一区二区三区四区在线观看| 91高潮喷水美女| 高清肉丝中文无码| 加勒比av网| 中文字幕免费在线观看| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 国产高清MV操逼视频| 精品偷拍13p欧美dodk视频| 日本精品网站在线中文| 91丨熟女丨丰满熟女| 婷婷亚洲五月***久久| 97资源制服丝袜| 日本 成 人 小说 电影 一区二区| 欧亚乱色熟一区二区三四区| 国产情色第一第二页在线观看| 亚欧美综合网| 亚洲国产奇米影视久久| JULIA一区二区三区在线播放| 天天日天天舔天天喷天天射| 欧美精品久久96人妻无码| 曰韩香蕉97| 97久久超碰亚洲| 国产精品国产精品国产| 日韩成人性爱电影在线播放| 欧美老妇女内射网址| 久久草视频污视频| 久久久久久久97| 极品销魂美女一区二区| ?亚洲伊人伊成久久人综合网| 久久久爆乳翘臀一线天伦理视频| 久久久不卡区一区二区三区久久久| 成人夜夜| 欧美性爱1080p| 欧美一区二区亚洲天堂| 蜜臀AV成人精品蜜臀AV久久| 欧美丝袜中文字幕07在线| 丁香七月婷婷| 亚洲国产欧美中日韩成人综合视频| 欧美性天天影视| 欧美A√综合网| 天天干夜夜鈤| 亚洲中文日韩欧美大香蕉视频| 色婷婷激情| 99精品久久久久久| 精品国产无码中文| 91亚州欧美| 久久亚洲一区女同性恋中文字幕| 日本性爱少妇| 日本不卡一区二区三区| 久久69精品久久久久久久| 国产丝袜视频| 一起草视频在线| 亞洲久久直播| 久久精品99久久久久久| 日本一区视频在线观看| 国产老熟女| 亚州,欧美在线| 亚洲情色中文字幕一区| 欧美亚洲美少妇一区二区| 97资源久久| 国产精品无码AV网站| 免费网站观看www在线观| 粉嫩AV一区二区夜夜| 中国一区二区亚洲人妻| 精品人妻伦一区二区三区久久| 日韩精品一区二区高清| 免费人人搞97| 国产精品熟女九色九色蜜臀| 欧美页片| 伊人黄色视频免费观看| 香蕉免费一区二区三区不读| 国产精品久久天天干| 亚洲免费精品一区| 天天综合网91| 91偷拍欧美亚洲| 九九碰九九爱97超| 久久伊人在线五区| 蜜乳视频网站| 少妇丝袜在线观看AV| 国产精品一区二区校花| www.狠狠干.coom | 久草看看看| 中文字幕精品一区欧美| 97久久精品国产| 欧洲久久一二线| 冬京热男人的天堂| 高跟丝袜AV专区国产| 日韩美女,国产传媒,视频一区| 在线中文字幕| 亚洲色欧| 中文字幕一区二区三区蜜臀| 九九精品99| 加勒比海成人视频网| 色欲蜜臀AV| 亚洲中文sv| 91丝袜美女国产| 精品天堂| 亚洲脚交| 狠狠干精品一二三四五六2022| 久久久九九九| 日本熟妇色熟妇在线视频播放| 国产51色综合久久免费| 精品美女少妇一区二区| 色综合中文字幕不卡| 伊人操你| 影音先锋日本乱伦| 天天内射| 九九综合| 欧美经典一区二区三区 | 亚洲欧美日韩偷拍色图| 乱色老一区二区三区的观看方式| 超碰日本97美女人妻人人玩人人爱| 九七超碰| 中韩中文字幕在线观看| 99国内精品| 91搞逼视频| 亚洲日本天堂| 97这里都是精品| 温婉少妇玩3p| 搡老女人老91妇女老熟女| 欧美日韩亚洲五月天婷婷| 性做久久久久久免费观看软件| 夫妻天天操岛国视频| 欧洲亚洲天堂精品| 日本中文字幕高跟| 五月婷婷激情综合| 无码免费精品高清| 国产黄色小视频网站| 美女t无毒不卡不卡| 刺激精品视频| 久久久久9999妇女| 99抽插| 五月丁香激情综合网| 91亚州| 97丝袜亚洲在线播放| 91久热| 国产精品色片一区二区| 久久男女激情视频网站| 色女女女导航| 成 人 A V免费视频在线观看| 超碰久草| 亚洲 欧美 第一页 | 97精品国产手机| 五月激情影院| 婷婷AV一区二区三区| 一级成人性爱| 飘花国产午夜精品不卡| 久久久久久久久久va| 女同性恋久久| 免费国产| 玖玖久久久| 久久久久96| 天天天天做夜夜夜夜做| 国产传媒美日韩av| www老逼91| 国产性感骚丝袜在线| 91久久久久久| 乱人伦 国语对白:视频直接看| 国产精品suv一区| 丁香五月天婷婷姐| 75大香蕉| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 伊人骚琪琪亚洲天堂网站| 美女十八禁| 色97欧美| 欧美碰碰综合色| 嗯嗯不要 视频| 天天躁夜夜躁狠狠躁AV| 爱做久久久久久| 青草一区二区| 亚洲天堂2020| 26uuu成人影片| 久久精品国产亚洲AV清纯| 69精品| 亚洲欧美色图片| 中文字幕99999| 久久久91| 精品人妻视频入口| 久久久久亚洲AV无码专区少妇| 八戒午夜福利理论片| 日韩无码操逼片| 国产强上视频在线观看| 亚洲天堂99| 狠狠操狠狠| 大香蕉在线视频15| 欧美精品久久| 久久久久久加勒比| 一区操逼日比视频| 看日韩美女二区三区免费操逼视频| 无码99| 有码色中文字幕在线观看| 自拍视频大全亚洲专媒视频/一区二区三区 | 久久久久久久久久va| japan日本高清乱xxxx| 无码自拍SM| 伊人久久青青草| 久久草视频污视频| 日韩精品-原创伙伴| 一区二区三区亚洲| 婷婷五月色| 欧美视频激情久久久久久| 日韩精彩视频| 另类图片欧美激情综合| 久久久久9999| 久啪视频| 日韩人妻制服丝袜av| 色婷婷激情| 75大香蕉| 亚洲欧美碰碰| 粉嫩av在线一区二区| 久久大香蕉手机高清视频| 天天看片麻豆| 97在线观看| 天天干天天操天天干天天操| 一本大道综合伊人精品热热| 国产传媒av天美传媒在线| 免费中文在线| 亚洲91网站| 亚洲av噜噜噜噜噜噜| 日本三级R| 免费啊啊啊| 日婷婷| 日韩人体偷拍| 99精品九九九九九九| 午夜福利国产欧美日韩夜夜| 五月黑AⅤ| 亭亭在线资源| 久久精品中文字幕无码l| 久久一留热品黄| 久久99九九九九6666免费观看软件| 啪啪免费| 偷拍色图| 久操网无码在线| 久操高青| 亚洲欧美电影| 欧美在线官网| 亚洲色狠| 美女的肌被草喷水视频| 狠狠婷婷亚洲中文综合久久| 丁香六月激情综合| 深喉吞精| 五月丁香在线| 蜜臀网 一区| 熟女乱伦二区| 射久久| 噜噜噜亚洲精品| 亚洲男人的天堂AV| 欧美性爱第一页久久| 99操逼| 啊啊啊要高潮了| 亚洲国产精品成人综合| 91成人国产综合久久精品蜜月| 久艹日日日| 992这里有精品| 亚洲Av诱惑| 夜夜操狠狠操| 淫荡网址| 亚洲天堂美臀在线| 久久久免费一级黄片| 91色综合色| 中国东北熟女老太婆内谢| 欧美中字二区| 日韩AV一起草| 啊啊啊无码| 日韩女优在线| 亚洲电影中字一区二区| 蘋果手機免費看成人Av| 午夜福利免费精品视频| 日本在线999| 91N欧美| 久久亚洲中文字幕视频| 精品白丝一区| 殴美,日韩国产伦精品| 国产91福利小视频在线观看 | 国产九区| 静品嫩模一区二区| 欧美成人一级麻豆| 欧美色综合图片| 2020国产精品| 影音先锋少妇| 97久久超碰亚洲| 亚洲天堂另类小说男人| 久久精品国产72国产精品福利| 伊人性在线视频| 欧美一二三区四五区| 精品久久久久久中文| 麻豆一区二区三区在线看 | 亚洲精品欧洲精品| 色婷婷影院| 伊人精品久久网站| 99re这里只有精品9| 1区2区3区中文字幕日韩| 懂色AV蜜臀无码精品APP| 99re9| 欧美91网站| 嗯啊不要在线观看嗯啊| 97精品熟女少妇一区| 97视频一区| AV老汉| www九九热| 久久成人午夜精品影院| 精品无码秘 人妻一区二区| 中文子幕一二三| av婷婷色网| 欧美中出1| 国产9 9在线 | 亚洲| 99久草| 美女让帅哥通她小鸡鸡| 熟妇一区二区三区| 综合激情五月天| 欧美人与性动交a美精品| 快灬快灬 一下爽蜜桃在线观看| 91在线丝袜视频| 啊啊啊好爽快点啊啊啊嗯嗯| 在线观看综合精品亚洲| 激情网色| 免费啪啪av| 中日韩免费看男女操逼大全| 狠狠爱大香蕉| 日本久久久久久久久久| 91国产丝袜美女| 91日日| 无码欧美有限公司| 一二三啪啪专区| 色婷婷99| 天天舔天天| 午夜天堂啪啪| 99色色网| 五月天激情国产综合婷婷婷| 蜜桃无码AV一区二区| 国产精品无码av嫩草| 色哟哟AⅤ| 肏逼视频日本| AV乱伦专区| 9久在线视频只有精品| 蜜臀99久久精品久久久久| 天天综合~91| 超碰欧美97资源| 夜夜免费视频| 一本久久久精品| 老熟女综合网| 国产精品自拍视频| 日韩精品在线视频,日韩精品……| 国产99热| 看日韩黄片| 麻豆三极片| 一级片视频啪啪| 久久久精品91八戒| 婷婷中文网| 影音先锋国产精品| 韩国久久97| 抽查国产福利主播| 新视频sss国产| 青久久| 国产精选视频| 亚洲中文字幕在线视频一区二区| 中文字幕乱码人妻二区三区| 操逼操网| 久久精品一区二区三区不卡| 9久久9综合| 丝袜无码a片| 乱色老一区二区三区的观看方式| 97干在线| 综合网久久| 亚洲男人天堂2013| www.男人的天堂| jizz啪啪| 亚洲欧洲综合视频在线| 色噜噜人妻av 中文字幕| 欧美日韩国产电影| 亚州一区二区| 五十路三级片| 四虎AV无码| 麻豆精品三区视频| 欧美一二三| 中国少妇XXXX做受| 狼天天狼天天大香蕉| 麻豆激情综合| 中文一区二区三区影院| 久久久无码av精| 四虎永久在线精品免费网址| 天天干夜夜| 国产精品精品系列在线观看| 天天做日日爱夜夜爽| 人人妻人人操人人乐| 欧美综合 站| 亚洲国产精品久久AV| 日韩成人精品视频自拍| 色哟哟国产精品免费网址| 欧美最大综合网| 色在线视频导航| 91一起操| 中文字幕视频在线观看一区二区| a在线视频免费观看| 狠狠操夜夜操蜜桃视频三区| 色色五月天婷婷| 四季AV一区二区凹凸精品小说| 国内外激情在线| 国产亚洲精品美女久久久| 亚洲精品丝袜-不卡成人免费……| 91超碰碰在线| 秋霞免费无码视频日韩A片| 天天色播| 综合色区偷拍| 久久AV无码网址| 中文字幕97色| 又黄又爽在线观看视频| 综合激情一一91| 久久久久亚洲熟妇熟女| 久久久久9久久久久| juliaann欧美丝袜办公室| 国产亚洲日本精品在线| 啊灬啊灬啊灬啊灬高潮奶出了免费视| 久久亚洲中文字幕视频| 91丝袜美腿网站| 日本色日夜干| 欧美性猛交美女自慰91| 天天肏天天干| 色嘟嘟人妻天堂网| 最新国产精品| 香蕉色网| 国产欧美后入| 国产高清MV操逼视频| 日韩久久艹| 国产真乱mangent| 麻豆区99999| 肉动漫无遮挡h在线观看| 青草青青久久久久久国产| 久久久久久十| 日韩欧美女优电影| 色悠久| 久久久久久久久久久人妻| 91天美| 国产在线76页| 欧美第一页| 亚洲一二三精品久久网| 日韩欧美中文字| 91久久久久久久久18| 欧美日韩国产电影| 在线观看高清AV| 国产视频大全| 激情专区综合| 12一15性XXXX粉嫩国产| 亚洲 综合 第一页| 91粉嫩萝控精品福利网站_精品影音先锋国 | 色优久久| 欧州一区二区三区四区| 久久久久网站-538在线视频-欧美永久乱码| 国产美女在线精品免费看| 美女AV一区二区| 欧美大香蕉同搞| 四虎影视国产精品| 青娱乐av在线| 无码逼| 91少妇高潮| 手机不卡视频不卡在线一二三区| 日韩综合成人免费视频| 九九九偷拍| 欧美久久九九| 综合操逼| 国产精品一二三区18| 情侣操 逼视频99| 激情五月天社区| 91丝袜在线观看| 麻豆 亚洲 97| 亚洲欧美精品91| 久久精品欧美一区二区三区不卡| 亚洲资源一区| 色大香蕉97N| 人妻少妇久久久| 国产欧美岛国精品一区| 国产精品爆乳懂色蜜乳| 色网亚洲人| 国产午夜视频| 裸体美女国产免费久久久网站| 人人玩人人添人人澡免费| 日韩成人小视频| 欧洲精品网| 国产精品91一样| 国产成人无码网站在线视频| 国产高清精品一区二区三区毛片 | 91被操| 99视频自拍区| 久久久专区| 极品五月天噜噜| 日韩av影片在线观看| 日本精品中文字幕视频| 精品视频一二三中文| 五月天亚洲网| 国桃视频产巨乳精品一区二区在线| 九一亚洲国产免费| 亚洲18禁| 夜夜嗨AV一区天天| 99久在线精品99re8| 久久男人精品| 人妻一区二区三区视频| 亚洲成a人v欧美综合天堂下载| 涩亚洲欧洲| 91激情综合| 青娱乐淫乱1314| 日韩大香蕉AV影片| 九七超碰人人乐| 国产97综合| 超碰综合97在线| 男女性扦B| 2019午夜福利视频| av日韩中文字幕| 激情久久日韩精品中文字幕麻豆| 亚洲一区亚洲天堂| 久久久熟女一区| 97天天插| 成人情色综合网| 大香交| 99re在线视频这里只有精品| 啊啊啊啊好疼视频| av橘色网站| 亚洲做性| 青草成人免费视频一COm| 骚鸭AV| 国产蜜臀精品一区二区尤物| 大香蕉日韩| 91少妇人妻| 午夜小电影在线插入淫高潮| 国产福利一区二| 精品久久久久久AV无码| 在线播放一级无码视频| 婷婷中文网| 99激情视频| 欧美熟爽综合| 10000部十八禁看电影| 欧美性爱网97| 色欲久久99精品久久| 99re欧美| 国产91av在线播放| 熟女精品va中文字幕| 亚洲国产高清福利视频| 免费看毛片操穴| 骚乳在线| 超碰到97情色| 天天躁日日躁狠狠躁| 日韩综合无码色欲vv| 岛国黄色大片网站| 97久久资源| 天天操人人操骚逼网站| 4虎在线观看| 免费a级毛片av无码久久精品中文字幕| 欧美亚洲20p| 免费97视频| 男人午夜天堂| 成人性爱全视频观看| 九色 人妻 大香蕉| 久久久久久裸体| 国产真实子伦对白| 日亚韩精品视频二区三| 人妻插插人妻人| 亚洲欧美伦综合| 高树玛利亚无码流出| 亚洲图片 激情小说| 91精品人妻| 97精品熟女少妇一区| 视频二区美腿丝袜制服人妻欧美| 91中文精品日韩欧美在线| 欧美综合综合| 台湾成人无码AV| 色色色色色色色色色色色色色色综合 | 狠狠躁AV| 啊啊啊水好多| 国产欧美日韩一区二区三区| 亚洲精品丝袜-不卡成人免费……| 久久亚洲熟妇在线视频| 性猛交| 男人的天堂一区三区| 尤物av网站| 亚春色色| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 久久久久国色αv免费观看| 天天爽夜夜爽夜夜爽精| 亚洲精品一区中文字幕乱码| 另类成人首页一区| av无线看| 操b网站亚洲无码| 国产精品久久久久久久久久久久| 探花激情视频| 一二视频神马久久传媒| 亚洲国产av中文字幕久久| 91痴汉| 亚洲蜜乳av| 国产农村妇女精品1区二区| 精人妻一区二区三区| 天天视频综合在线观看视频| 伊人一区二区三区| 我要去看2个日本美女.com曹逼| 色色色热| 亚洲欧美伦综合| av资源在线观看少妇| 99999这里都精品| 亚洲一曲日韩精品| 天天日天天屌天天操| 色欲Av人妻精品一区二| 嗯……啊…嗯嗯…啊…好舒服| 97爱亚洲| 日韩在线AB| 呦呦一区| 丰满少妇人妻久久久久久| 97综合在线| 欧美日韩99精品麻豆传媒| 蜜桃久久一区二区| 老熟女91av| 91精品国产91久久福利| 亚欧中文字幕在线视频| se01国产在线视频| 色五月激情AV在线| 啊视频在线| 加勒比综合88| 日韩欧亚太美不卡| 日韩欧美成人午夜福利| 男人成人黄色视频在线观看免费下载| 91精品伊人久久久大香线蕉91| 91综合天天看| 97超碰国产精品| 99视频这有这里有精品| 四虎在线免费视频| 人人操av| 7777奇米影视久久| 亚拍在线| 97福利视频| 亚洲国产成人综合碰碰三级经典| 麻豆久久久久久久久丝袜 | 天天色图| 亚洲91网站| 日本在线播放不卡一区| 日本 情色 1区| 91人妻丝袜无码| 1人人看人人摸人人操| 人妻人久久精品中文字幕| 日本黄色XXX| 97色碰| 伊人网青青| 夜夜精品视频一区二区| 性色一线| 国产无马视频| 亚洲风情在线观看| 亚洲永久AV无码精品秋霞| 强奸乱伦av电影| 啊啊啊无码| 久久久久久少妇| 91美女在线精品视频| 国产福利小视频高清在线观看| 亚洲a色| 中文字幕-区二区三区四区视频中国 | 91五月天| 成人麻豆av电影网站| 99re99在线视频| 日本啊啊啊啊啊视频| 99色婷婷| 国产精品久久久久久久毛片1| 国产传媒一区二区三区| 97爱b| 91蜜臀在线久久久久| 思思热影视| 探花视频免费观看国产专区| 欧美第五页| 18禁久极品美女久久哦哟呀!| 亚洲.欧美.丝袜.中文.综合| 伊人女女资源在线观看| 波多野结衣AV无码一区| 9久久精品| 久久精品男人的天堂| 国产丰满少妇久久久精品影院| 青青草日韩无码| 国模精品娜娜一二三区| 99re公开精品免费视频| 一级做a爰片性色毛片久久| 99re视频这里只有精品| 一区二区三区四区五区久久久久久| 国产精品亚洲四五区在线观看| 亚洲欧美精品一区天堂久久| 极品尤物在线观看| 国产av美女被艹的乱叫| 口爆吞精在线观看| 欧美精品一区二区少妇免费A片| 婷婷丁香激情| 性猛交| 69一区二区三区 | 97操| 一级性爱网| 91久久婷婷| 久久精品成人| 天天综合站| 欧美极品少妇| 美女网站黄页| 天天综合站| 999久久久久久久久| 屁股久久久久久久久| 啊啊啊啊好疼视频| 日韩毛片9| 亚洲成人AB| 精品国产乱码久久久| www.91视频网| 中文字幕一区二区视频在线观看| 97操| 欧美性爱免费短视频| 国产AV色黄看到爽| 亚洲精品天堂久久A∨51成人漫| 日本欧美韩国国产在线| 十八禁av无码免费网站APP| 91东京热男人的天堂| 国产综合在线视频网站| 久操网址| www九九热| 农村妇女一级二级三级视频| 狠狠中文字幕| 中文字幕亚洲欧美在线不卡| 欧美成人综合| 后入式999| 久草新在线| 97色伦97色伦国产欧美| 在线欧美69V免费观看视频| 综合影视国产无码| 五月丁香在线| 又摸又舔在线观看网站| 人乳av| 好吊色综合| 国产成人 综合亚洲 天堂| 日韩免费在线视频观看| 久久精品国产免费观看99| 丁香六月婷婷久久综合| 色婷婷在线视频精品导航| 日韩美女高潮喷水视频| 无码二级三级| 日本高清免费一本视频在线观看| 午夜无码精品免费看性色| 亚洲综合网电影91| 青青草亚洲一区| 亚洲天堂中文字| 一区二区三区色综合| 爱丝福利| 91欧洲国产成人久久精品网站| 日韩av免费一级电影| 欧美性爱1080p| 日韩人妻精品久久久久| 神马久久久久久久久久久久| 大干人妻| 日韩黄色片子| 超碰99在线观看| 啊啊啊啊啊啊好湿好爽视频| 国产国产亚洲一二三久久| 亚洲欧美国产va在线播放频| 成人乱码一区二区三少妇| 91精品成人www| AV和黑人在线播放| 人妻嗯啊啊在线播放| 91欧美丨精品丨入口| 亚洲丝袜少妇在线| 岛国片国产成人亚洲播放| 啊啊啊啊啊啊啊国| 青青草依人大香蕉| 日韩欧美aⅴ综合网站发布| 欧美熟女少妇| 夜夜久久久| 黄片免费久久久久久久| 国产精品制服丝袜中文字幕日韩一区二区三区 | 婷婷五月天久久久| 久久久久久9999| 91综合中文字幕| 欧美一区二区三区日韩| 国产精品久久久九九九| 蜜乳成人AV| 97亚洲一区| 东京热天堂网| 一本道综合色图| 蜜臀AV一区二区三区| 日韩不卡a级视频专区| 成人一区二区三区四区| 视频一区二区三区精品| 天天操天天射青青草| 国产欧美另类久久久精品课程| 精品v日韩欧美国产| 久偷拍欧美日韩三区| 欧美探花网| 青青青青草av在线观看| 亚洲人妻中文在线视频| 精品福利视频| 日韩综合无码一区久久92| 在线观看AV不卡| 国产极品馒头逼| 亚洲日本韩国极品一区二区| 91亚洲欧洲| 伊人影院中文字幕| 中文久久久| 九九热免费国产视频婷婷伊人| 91成人无码| 精品妇女一区二区三区| 男人天堂网址| 亚洲AV免费在线观看| 人人么人人操| 东京成人一区| 岛国毛片手机在线观看| 亚洲啪啪啪啪视香蕉| 亚洲av无线观看| 蜜桃午夜视频一区二区| 久久久九九网站| 天天干人人乐| 人妻在线臀日韩| 色操逼网| 五月天亚洲网| 九九激情网| 欧美精品宗合| 好看的91视频| 国产AV毛片| 日本一二三免费久久| 成人贴图日韩欧美| 中文字幕日韩精品久久| 91国内外在线| 九九碰九九爱97超碰| 99色网| 清清草影| 亚洲精品日日夜夜52| 风韵犹存大大大大香蕉| 亚洲不卡AV在线| WWW啪啪的com| 精品人妻一区二区三区蜜桃视频| 午夜丁香婷婷| 在线毛片片免费观看| 麻豆天美在线喷水AV| 色色丁香| 久久受www免费人成| 九九九九九九免费视频| 人妻AV 中文字幕的| 92性色国产午夜福利在线661| 色阁阁AV综合网| 国产免费一区二区在线A片视频| 日本国产欧美一区三区二区| 欧洲亚洲人人爽爽视频| 99色悠悠| 久久‘黄片视频| 网友自拍第一页| 内射黑丝袜| 超碰亚洲欧美日韩无| 久久成人午夜精品影院| 久热这里只有精品9| 日本东京热大香蕉a片| 色婷婷电影网| 国产麻豆福利av在线播放| 青青色在线观看| 天天综合网合集91| 麻豆区99999| 色婷婷久久| 亚洲欧洲综合av在线| 色妇综合网| 亚洲色图第一页| 午夜欧美J进J出白浆流出久久久 | 麻豆av一区二区三区| 女人高潮抽搐喷水视频网站| 成人26uuu| 五月天亚洲色图| 欧美色图99| 青木玲在线不卡| 中文字幕视频一区视频二区| 色婷婷av在线观看| 日韩欧美午夜视频在线| 呦呦影院| 东京热男人的天堂| 啊啊啊慢点| 国产精品高朝久久久久久久| 躁躁日曰躁2020| 天美国产精品| 婷婷五月色| 午夜免费福利视频一区| 3d成人精品一区二区| 免费观看网黄| 2024黄色视频| 热99这里有精品综合久久| 欧美亚州综合网图片| 久久人妻一区二区三区高清| 久久久久网站-538在线视频-欧美永久乱码 | 污电影在线观看| 日本不卡二三区| 三上悠亚在线毛片91| 玖玖97综合| 久久人妇| 美女97超碰| 日本美女性生活久久久久久久| 色人久久| 欧美日韩成人在线| 亚洲av无码成人精品国产| 超碰成人公开| 一区二区三区黄色片a| 成人自拍三级在线观看| 亚洲在线网站| 亚洲欧洲av影音| 青娱乐福利99| 另类TS人妖一区二区三区| 欧美综合国产精品久久丁香| 国产精品久久久吖| 岛国福利在线精品播放| 激情 欧美 亚洲 小说| 乱伦熟女专区| 最新国内自拍av免费| 国产精品毛片?v一区二区三区 | 最新三级网址| 黄片色区软件| 激情综合二| 国产粉嫩出水在线播放| 五月丁香婷婷啪啪| 校园春色综合| 亚洲宗合电影| 欧美亚洲国产日本在线,久久精品国产| 欧美日韩青操| 欧美日日人人天天| 99999久久精| 日日夜夜精品视频| 国产传媒午夜理伦精品| 亚洲啪啪视频一区二区| 色色色色网站| 精品四五区| 偷拍超碰| 国产精品一二三| 亚洲久久久| 欧美gv在线观看| 思思热在线cao| 色5月婷婷| 国产精品久久久久久夜夜夜| 亚洲欧美在线综合| 东北老熟女| 亚洲欧美一区二区网址| 日韩 欧美 视频 在线 一区| 国产高潮AA片免费看| 老熟女91av| 久久久91福利姬| 白嫩少妇| 亚洲无线码一区国产欧美国| 亚洲精品一区中文字幕乱码| 闷骚老熟女15P| 啊啊啊轻点在线观看| 91狠狠综| 福利色色| 青青草视频爽一爽| 91精品少妇搡搡搡| 欧美色狠| 麻豆啪啪啪视频| 91亚洲不卡一区| 骚货 中文字幕 av| 男女啪啪啪18禁网站| 秋霞一级视频在线观看免费| 18精品一区| 久久99久久99精品天美传媒棢·纸:.| 国产精品爆乳懂色蜜乳| 亚洲日韩成人性爱视频| 激情文学 国产一二三aV| 久久蜜桃一区二区| 国产成年精品高清在线观看91| 成功精品影院| 精品人妻伦一区二区三区久久| dy888午夜老子影视达达兔| 日本操BAV| 91中文精品日韩欧美在线| 日夜精品| 丁香九月激情啪| 夜草欧美| 呦呦一区| 97人人射| 死我十八禁| 在线播放一级无码视频| 91青视频| 美女诱惑久久| 操屄不卡视频| 国产亚洲精品美女| 亚洲av综合伊人久久| 男人的天堂2010| 亚洲精品 欧美97色色| 欧美一级特黄淫片在线观看| 欧洲Au麻豆| 黄片www视频免费| 人妻丝袜无 码视频专区| 天操天操夜操夜月月年年操操| 久久精品欧美一区二区三区不卡| 97操97色| 天天澡天天爽日日AV| 天天插天天干| 哈哈操 大香蕉| 深田咏美亚洲精品福利社| 综合网97| 一类无码操逼视频| 伊人aaa| 亚洲 日本 国产 综合| 丝袜喷水在线| 狠狠操,使劲操| 亚码激情| 天天综合网网欲色| 偷窥自拍亚洲色图| 男女无套 免费网站| AV天堂丝袜| 人人么人人操| 射欧美综合| 人人操人人操人人人操| 亚洲欧洲第二视频在线观看色图| 午夜精品久久久久久久久久蜜桃 | 日本爽爽爽爽爽爽免费视频| 性感女人网页在线观看视频| 国产精品视频内谢女人| 超碰国产情侣自拍网| 激情天天视频| 裸体1区| 日韩av影片在线观看| 天天天堂影视日韩亚洲91| 极品尤物自安慰| 久久久久国产精品人妻aⅴ天堂| 国产乱码精品一区二区三区四川| 人妻素股| 久久精彩免费视频| 97免费在线观看| 成人网欧美风情| 免费自拍三级综合| 亚洲男人的天堂网| 久久久麻豆精品| 性欧美999| 蜜色网色哟哟| 亚一综合久久久久久久久久| 亚欧美综合| 插入综合网| 男人天堂黄片| 91中文字幕在线观看| 麻豆国产尤物AV| 综合国产影视三级| 欧美淫乱视频| 久久久影院| 午夜爽爽爽在线观看永久入口姬片| 五十路成人在线视频二区三区| 婷婷成人五月天| 国产高潮AA片免费看| 色狠狠综合噜一二三区| 亚洲电影中字一区二区| 91天天c| 亚洲经典啪啪| 亲子敌伦对白在线播放| 久久久久久中文版| 欧美成人黄网色网站| 欧美色图 色综合图| 麻豆性爱视频在线播放| 成人免费福利网站国产| 老妇女91| 日韩精品电影| 一道本久久棕合爱| 久久久久免费看少妇A片特黄| 97精品视频在线| 夜夜操老骚逼视频网站| av无码av无码专区| 午夜αv| q2午夜理论片夜色av| 狠狠躁AV| 成人免费不卡在线视频| A级在线视频| aV中文麻| 日韩精品电影| 91丝袜美女| 婷婷久久五月| 东北丰满熟女国产一区| 久久一区二区三区四区五区| 日韩三级性| 精品久久久久黄少妇| 一起草av| 黄色性爱网网| 国产精品日韩在线一区| 丰满人妻一区二区三区四区| 欧美亚洲激情一二三| 强奸少妇AV导航网| 午夜丁香| 国产精品久久久无码AV网站| 国产精品成久久久久午夜午夜| 精品一区二区三区蜜桃| 五月天亚洲网| 日韩久久艹| 熟女一区二区| http://qxhbdz.com| 久久激情网| 激情干在线| 大香蕉强奸乱伦| 嗯啊视频免费在线观看| 国产拍偷精品网站| 欧美色女人| 97操| 五十路熟女人妻一区二区三区四区五| 成人五月香网在线| 成人欧美日超碰| 久久九九一区二区三区成人| 狠狠干狠狠干| 免费一级视频特黄色大片| 色嗨嗨在线| 国产AV激情无码久久无码| www.yeyecao| 无遮挡一级毛片视频免费的| 91网九色蝌蚪操熟女| 免费精品无码一级毛片牛牛影视| 快灬快灬 一下爽蜜桃在线观看| 久久伊人东京热| 麻豆尤物视频网| 欧美性暴力猛交| 亚洲在线a| 97天天综合| 亚洲97| 欧美一区二区三区不卡高清视频| 偷拍 亚洲 欧美| 黄骗免费网站| 天天看天天日| 免费岛国一级片| 日本孕妇一区二区视频操逼免费看 | 欧美综合国产精品久久丁香| 久久黄片国产一区二区| 被男人添B超爽视频| 国产小黄片在线免费观看| 国产一级黄色片在线观看|