戰(zhàn):將通用大模型調(diào)教成專(zhuān)業(yè)分析師)
前陣子我把一個(gè)叫小龍蝦的內(nèi)部AI助手調(diào)教了一通結(jié)果它從什么都聊得來(lái)但什么都落不了地的通用聊天對(duì)象變成了一個(gè)能拆指標(biāo)、查數(shù)據(jù)、出結(jié)論的分析師。整個(gè)過(guò)程沒(méi)有改模型、沒(méi)有換底座只是給它加了幾個(gè) Skill——也就是技能包。這件事讓我對(duì)AI能不能干活這件事有了新的判斷很多時(shí)候瓶頸不在模型聰明不聰明而在你有沒(méi)有把專(zhuān)業(yè)方法教給它。這篇文章想把我加 Skill 的整套思路、文件寫(xiě)法、踩坑記錄都攤開(kāi)來(lái)講。適合正在做 AI 助手、智能體或者想讓自己手頭 AI 工具更專(zhuān)業(yè)的朋友參考尤其是那些覺(jué)得AI 回答得很對(duì)但沒(méi)用的人。1. 先把事情說(shuō)清楚Skill 到底是什么先厘清概念。Skill 在這里不是指某個(gè)算法也不是某個(gè)固定模型而是一份預(yù)設(shè)的專(zhuān)業(yè)操作流程 工具調(diào)用方式相當(dāng)于你給 AI 配了一本崗位手冊(cè)。沒(méi)加 Skill 之前AI 面對(duì)幫我看下這個(gè)月銷(xiāo)售為什么跌了這種問(wèn)題它只能憑訓(xùn)練時(shí)的常識(shí)回答講一些可能是市場(chǎng)原因、競(jìng)品原因、價(jià)格原因這類(lèi)永遠(yuǎn)正確的廢話。加了 Skill 之后它會(huì)先走一套分析師的操作路徑先確認(rèn)口徑、拉數(shù)、看趨勢(shì)、找異常、再下結(jié)論。我理解 Skill 的一層本質(zhì)是把人會(huì)但 AI 不會(huì)的工作經(jīng)驗(yàn)外置出來(lái)。比如一個(gè)分析師看到數(shù)據(jù)表第一反應(yīng)一定是檢查有沒(méi)有空值、字段是不是文本格式、要不要去重。這些東西不會(huì)寫(xiě)在任何教科書(shū)里但會(huì)寫(xiě)在這個(gè)人的腦子里。Skill 就是把這類(lèi)腦子里的流程固化成文字再讓 AI 按規(guī)定流程執(zhí)行。這跟你帶新人一模一樣你不可能天天陪著新人重復(fù)講一遍流程但你可以給它一份流程手冊(cè)讓它按手冊(cè)辦事。還有一個(gè)容易被忽略的點(diǎn)Skill 不是提示詞。提示詞是你每次提問(wèn)都要重復(fù)的一段話費(fèi) token 且不穩(wěn)定。Skill 是掛在 AI 身上的一個(gè)模塊它會(huì)在需要的時(shí)候被自動(dòng)喚起相當(dāng)于一個(gè)常駐的專(zhuān)業(yè)技能。比如你給 AI 配了SQL 查詢這個(gè) Skill它遇到查一下上季度復(fù)購(gòu)率這類(lèi)問(wèn)題就會(huì)自動(dòng)帶上寫(xiě) SQL、查數(shù)據(jù)庫(kù)的動(dòng)作鏈而不是從記憶里猜一個(gè)復(fù)購(gòu)率給你。這種機(jī)制的好處在于你的分析經(jīng)驗(yàn)、行業(yè)知識(shí)、判斷準(zhǔn)則全部沉淀在了一個(gè)個(gè) Skill 包里。換一個(gè)新模型也能直接把 Skill 導(dǎo)過(guò)去繼續(xù)用并不依賴(lài)某一個(gè)特定模型。我實(shí)際測(cè)下來(lái)同一個(gè) Skill 在不同版本模型上都能跑區(qū)別只是執(zhí)行質(zhì)量有高有低起碼流程不會(huì)丟。2. 我給小龍蝦配了五個(gè) Skill它們各管一攤我一開(kāi)始也沒(méi)想好要配幾個(gè)先列了日常分析工作里最高頻的五個(gè)環(huán)節(jié)拿臟數(shù)據(jù)、拆業(yè)務(wù)問(wèn)題、查數(shù)、看圖、寫(xiě)報(bào)告。后來(lái)又砍掉兩個(gè)合并了一個(gè)最后留下五個(gè)各管一攤互不重疊。這五個(gè) Skill 才真正讓小龍蝦有了分析師骨架。2.1 數(shù)據(jù)清洗 Skill先保證數(shù)據(jù)能看數(shù)據(jù)清洗 Skill 是我第一個(gè)做的因?yàn)樗蟹治龅钠瘘c(diǎn)都是數(shù)據(jù)。小龍蝦之前會(huì)對(duì)用戶給的表格數(shù)據(jù)照單全收哪怕里面一堆空值、重復(fù)行、亂碼它照樣做分析最后結(jié)論自然是錯(cuò)的。加了這個(gè) Skill 之后它的第一步動(dòng)作變成了先體檢再手術(shù)。具體來(lái)說(shuō)這個(gè) Skill 的指令里明確寫(xiě)了五步識(shí)別字段類(lèi)型、檢查缺失值比例、處理重復(fù)記錄、排查明顯異常值、輸出數(shù)據(jù)質(zhì)量說(shuō)明。每一步都有閾值和動(dòng)作比如關(guān)鍵字段缺失超過(guò) 30% 時(shí)不要直接刪除或填充先向用戶說(shuō)明并建議補(bǔ)充數(shù)據(jù)。這就規(guī)避了 AI 在要不要填空值上自作主張的問(wèn)題。我還在這個(gè) Skill 里加了一條重要規(guī)定清洗前后必須有對(duì)比。一旦對(duì)數(shù)據(jù)做過(guò)任何修改比如刪行、類(lèi)型轉(zhuǎn)換、歸一化必須在回答里說(shuō)明原始數(shù)據(jù)多少行、清洗后多少行、改了什么、為什么改。否則分析做完別人根本不知道你的結(jié)論是基于什么數(shù)據(jù)得出來(lái)的。2.2 指標(biāo)拆解 Skill看到問(wèn)題先離手先拆結(jié)構(gòu)第二個(gè) Skill 解決的是答非所問(wèn)的問(wèn)題。以前小龍蝦拿到轉(zhuǎn)化率低了這種問(wèn)題會(huì)直接開(kāi)始提建議比如優(yōu)化著陸頁(yè)、加強(qiáng)AB測(cè)試。建議本身沒(méi)錯(cuò)但完全跳過(guò)了為什么低的歸因環(huán)節(jié)等于沒(méi)分析就開(kāi)藥方。指標(biāo)拆解 Skill 的邏輯是給小龍蝦裝了一套路演式拆解框架。指令里規(guī)定遇到業(yè)務(wù)指標(biāo)波動(dòng)類(lèi)問(wèn)題第一不準(zhǔn)下結(jié)論第二不準(zhǔn)提方案先拆出指標(biāo)體系包含一級(jí)指標(biāo)、二級(jí)指標(biāo)、三級(jí)指標(biāo)。一級(jí)指標(biāo)是這個(gè)問(wèn)題的核心二級(jí)是它的構(gòu)成因子三級(jí)是最細(xì)的可落地粒度。拆完之后才允許逐步排查。拿銷(xiāo)售額下跌來(lái)舉例拆解路徑大概是銷(xiāo)售額等于流量乘以轉(zhuǎn)化率再乘以客單價(jià)。流量里又分新客老客、渠道來(lái)源轉(zhuǎn)化率分首購(gòu)轉(zhuǎn)化和復(fù)購(gòu)轉(zhuǎn)化客單價(jià)分品類(lèi)結(jié)構(gòu)、優(yōu)惠力度。拆到這一步AI就不再說(shuō)廢話了它會(huì)按這個(gè)路徑去查每一個(gè)環(huán)節(jié)的數(shù)據(jù)最后定位是哪一層出了事。這一招我強(qiáng)烈建議所有做業(yè)務(wù)分析的人都給 AI 配上效果立竿見(jiàn)影。2.3 SQL 查詢 Skill把可能變成確定第三個(gè) Skill 是 SQL 查詢。這是讓小龍蝦從一個(gè)嘴上分析師變成手里有數(shù)分析師的關(guān)鍵一步。以前它最大的問(wèn)題不是不會(huì)寫(xiě) SQL而是從來(lái)不主動(dòng)查數(shù)全靠模型記憶里的常識(shí)回答用戶。可是業(yè)務(wù)數(shù)據(jù)每分每秒都在變記憶里的數(shù)據(jù)怎么可能反映真實(shí)情況我給這個(gè) Skill 設(shè)定的職責(zé)有兩條第一凡是涉及具體數(shù)字、比例、趨勢(shì)的問(wèn)題必須先查詢數(shù)據(jù)源禁止用預(yù)估數(shù)據(jù)回答第二查詢過(guò)程中必須輸出完整的 SQL讓用戶能看到查詢邏輯而不是丟一個(gè)結(jié)果就完事。這兩條直接堵死了 AI一本正經(jīng)胡說(shuō)八道的路。這個(gè) Skill 的 instructions 里還內(nèi)置了一些常見(jiàn)查詢模板按日周月聚合、同環(huán)比計(jì)算、漏斗各環(huán)節(jié)人數(shù)、留存率的計(jì)算邏輯。這些模板都是我從日常分析里整理出來(lái)的高頻片段有這些模板兜底小龍蝦寫(xiě)出來(lái)的 SQL 很少跑錯(cuò)查詢路徑也清晰可追蹤。它不需要成為數(shù)據(jù)庫(kù)專(zhuān)家但至少得是個(gè)合格的取數(shù)工具人。2.4 圖表解讀 Skill從看圖說(shuō)話到看懂圖背后的含義第四個(gè) Skill 是圖表解讀。起因是有人拿著后臺(tái)截圖讓小龍蝦分析結(jié)果它僅僅把圖上的數(shù)字復(fù)述了一遍——一月 100 萬(wàn)二月 80 萬(wàn)三月 90 萬(wàn)——這叫念圖不叫分析。我加這個(gè) Skill是讓它學(xué)會(huì)識(shí)別圖表類(lèi)型、結(jié)構(gòu)、坐標(biāo)軸含義然后按格式去讀。這個(gè) Skill 教會(huì)了小龍蝦幾個(gè)關(guān)鍵姿勢(shì)先看橫縱軸和單位確認(rèn)口徑再看整體趨勢(shì)判斷是持續(xù)上升、波動(dòng)還是周期性然后看異常點(diǎn)比如突然的尖峰、斷崖最后才是歸因分析結(jié)合業(yè)務(wù)背景給出可能解釋。它還要注意一個(gè)常見(jiàn)陷阱圖表相關(guān)性不等于因果性看到兩條線一起漲不能直接說(shuō)因?yàn)?A 所以 B。我還在指令里加了一條強(qiáng)制要求在解讀任何圖表前必須明確聲明數(shù)據(jù)范圍和截止日期。這一條看起來(lái)很簡(jiǎn)單但能擋住大量拿舊圖說(shuō)新事的錯(cuò)誤。分析里面最怕的就是時(shí)間口徑混亂圖表 Skill 把這一點(diǎn)寫(xiě)死之后小龍蝦每次都會(huì)先問(wèn)這個(gè)數(shù)據(jù)是截至什么時(shí)候的。2.5 分析報(bào)告 Skill把零散結(jié)論拼成能交付的東西最后一個(gè)加的是分析報(bào)告 Skill。前面四個(gè) Skill 讓小龍蝦有了單點(diǎn)能力但用戶要的從來(lái)不是一個(gè)結(jié)論而是一份完整交付物。分析報(bào)告 Skill 負(fù)責(zé)把這些能力串在一起按統(tǒng)一格式輸出。我參考自己寫(xiě)報(bào)告的習(xí)慣把報(bào)告結(jié)構(gòu)固化成了六段背景與目的、數(shù)據(jù)說(shuō)明、核心結(jié)論、分析過(guò)程、風(fēng)險(xiǎn)提示、行動(dòng)建議。前兩段交代背景和口徑中間三段講清楚發(fā)現(xiàn)了什么、為什么、意味著什么最后一段給出能落地的動(dòng)作并明確每一條建議需要誰(shuí)去跟進(jìn)、大概做什么拒絕模糊的加強(qiáng)運(yùn)營(yíng)這種話。關(guān)鍵的一點(diǎn)是這份 Skill 里我寫(xiě)死了兩個(gè)原則全文結(jié)論必須有數(shù)據(jù)支撐不能出現(xiàn)大概可能也許所有建議必須與前面的分析有因果關(guān)系。這兩條原則讓小龍蝦產(chǎn)出的報(bào)告風(fēng)格從AI 味十足變得像一個(gè)分析師的手筆。3. 手把手講清楚一個(gè) Skill 文件到底怎么寫(xiě)很多人以為 Skill 很難其實(shí)文件結(jié)構(gòu)非常簡(jiǎn)單它就是一個(gè) Markdown 文件加可選工具腳本。真正難的是文件里指令的寫(xiě)法。以我實(shí)際經(jīng)驗(yàn)來(lái)看一個(gè) Skill 文件最核心的部分就兩塊一塊是開(kāi)頭的 description決定 AI 什么時(shí)候主動(dòng)調(diào)用它另一塊是正文的 instructions決定 AI 調(diào)起來(lái)之后干得專(zhuān)不專(zhuān)業(yè)。這兩塊寫(xiě)明白了Skill 就成了一大半。3.1 description決定觸發(fā)時(shí)機(jī)千萬(wàn)別寫(xiě)成小作文很多人會(huì)把 description 寫(xiě)得特別詳細(xì)試圖在觸發(fā)階段就把所有情況都描述一遍。實(shí)測(cè)下來(lái)這是誤區(qū)。description 一旦變長(zhǎng)AI 對(duì)它的語(yǔ)義識(shí)別反而會(huì)飄該觸發(fā)的時(shí)候不觸發(fā)不該觸發(fā)的時(shí)候亂觸發(fā)。我總結(jié)出一條經(jīng)驗(yàn)description 只用三句話說(shuō)明什么場(chǎng)景、什么任務(wù)、什么輸入。舉例我寫(xiě)的數(shù)據(jù)清洗Skill 的 description 是這樣的當(dāng)用戶提供原始數(shù)據(jù)文件、表格數(shù)據(jù)、導(dǎo)出的業(yè)務(wù)報(bào)表或包含大量字段的數(shù)據(jù)樣本需要校驗(yàn)數(shù)據(jù)質(zhì)量、處理缺失值或重復(fù)數(shù)據(jù)時(shí)使用本技能完成數(shù)據(jù)清洗與質(zhì)量說(shuō)明。這一句話里明確寫(xiě)了四件事觸發(fā)條件是用戶提供了原始數(shù)據(jù)任務(wù)是校驗(yàn)數(shù)據(jù)質(zhì)量動(dòng)作是處理缺失值和重復(fù)數(shù)據(jù)產(chǎn)出是輸出質(zhì)量說(shuō)明。不解釋原理不寫(xiě)流程不寫(xiě)邊界一句話六個(gè)要素AI 就能在遇到類(lèi)似場(chǎng)景時(shí)把它拉起來(lái)。這里有個(gè)細(xì)節(jié)值得強(qiáng)調(diào)description 里一定要包含用戶可能使用的口語(yǔ)化詞而不僅僅是專(zhuān)業(yè)術(shù)語(yǔ)。用戶不會(huì)說(shuō)請(qǐng)做數(shù)據(jù)質(zhì)量校驗(yàn)他們會(huì)說(shuō)這個(gè)表有點(diǎn)臟幫我弄一下數(shù)據(jù)有問(wèn)題你看看。我在很多 Skill 的 description 里都會(huì)補(bǔ)上這類(lèi)口語(yǔ)觸發(fā)詞實(shí)測(cè)可以顯著提高調(diào)用率。3.2 instructions把操作步驟寫(xiě)細(xì)把判斷規(guī)則寫(xiě)死如果說(shuō) description 負(fù)責(zé)讓 AI 進(jìn)門(mén)instructions 就是進(jìn)門(mén)之后按什么規(guī)矩干活。這一部分不需要你寫(xiě)太多高深的東西但一定要具體、可執(zhí)行、有順序。我在 instructions 上踩過(guò)一次很深的坑一開(kāi)始寫(xiě)得太像人話比如請(qǐng)仔細(xì)檢查數(shù)據(jù)質(zhì)量發(fā)現(xiàn)問(wèn)題及時(shí)處理。這種話 AI 讀了跟沒(méi)讀一樣該含糊還是含糊。后來(lái)我改成先按字段識(shí)別數(shù)據(jù)類(lèi)型再逐字段統(tǒng)計(jì)缺失率缺失率超過(guò) 30% 的字段標(biāo)記為高風(fēng)險(xiǎn)并提示用戶它才開(kāi)始真正按這個(gè)順序執(zhí)行。寫(xiě) instructions 的另一個(gè)要點(diǎn)是把判斷規(guī)則寫(xiě)死留決策空間給是否繼續(xù)而不是怎么操作。舉一個(gè)例子在指標(biāo)拆解Skill 里我不能讓它自由決定怎么拆而是直接寫(xiě)出拆解模板先拆構(gòu)成公式再拆漏斗路徑再拆影響因素。但遇到數(shù)據(jù)不足時(shí)是否繼續(xù)強(qiáng)拆這種問(wèn)題Skill 里明確寫(xiě)了一句話數(shù)據(jù)不足以支撐某級(jí)指標(biāo)時(shí)禁止憑經(jīng)驗(yàn)補(bǔ)數(shù)應(yīng)列出缺失清單并詢問(wèn)用戶。這樣既保住了確定性又留下了人類(lèi)介入的口子。3.3 一個(gè)可以直接套用的 Skill 文件模板寫(xiě)一個(gè)通用模板你可以直接復(fù)制改內(nèi)容。它基于我實(shí)際在用的最簡(jiǎn)結(jié)構(gòu)適合純指令型 Skill。--- name: 技能包名稱(chēng) description: 當(dāng)用戶出現(xiàn)什么行為、遇到什么任務(wù)、提供什么輸入時(shí)使用該技能。觸發(fā)詞包括xxx、xxx。 --- # 職責(zé)邊界 本技能負(fù)責(zé)什么不負(fù)責(zé)什么。邊界寫(xiě)清楚是為了避免和其他技能沖突。 # 執(zhí)行步驟 1. 第一步接收輸入并確認(rèn)完整性缺什么先列出清單再動(dòng)手。 2. 第二步執(zhí)行核心處理包括動(dòng)作 A、動(dòng)作 B、動(dòng)作 C。 3. 第三步對(duì)結(jié)果進(jìn)行自檢檢查項(xiàng)目包括 X、Y、Z。 4. 第四步按指定格式輸出包含字段一、字段二、字段三。 # 判斷規(guī)則 - 遇到情況 A 時(shí)執(zhí)行操作 B。 - 遇到情況 C 時(shí)停止操作并向用戶說(shuō)明原因。 - 遇到底層數(shù)據(jù)與預(yù)期不一致時(shí)以實(shí)際數(shù)據(jù)為準(zhǔn)并說(shuō)明差異。 # 輸出格式 固定結(jié)構(gòu)結(jié)果摘要、關(guān)鍵過(guò)程說(shuō)明、完整數(shù)據(jù)列表、下一步建議。這個(gè)模板你可能覺(jué)得簡(jiǎn)單但它已經(jīng)能覆蓋八成分析類(lèi) Skill 的場(chǎng)景。我在實(shí)際使用中每個(gè) Skill 文件也就是二三十行寫(xiě)多了既難維護(hù)又容易讓模型在執(zhí)行時(shí)顧此失彼。4. 加了 Skill 之后小龍蝦到底變了什么東西做出來(lái)得看療效。我特意留了一份加 Skill 前的對(duì)話記錄跟加完之后的表現(xiàn)做了對(duì)比差距非常明顯。先說(shuō)最直觀的感受加 Skill 前它像一個(gè)熱心的外行加 Skill 后像一個(gè)冷靜的同行。外行和同行的區(qū)別不在答案對(duì)不對(duì)而在流程穩(wěn)不穩(wěn)。以前它可能十次里有三次答得不錯(cuò)但剩下七次在胡說(shuō)。加了 Skill 之后它可能不會(huì)給你驚艷的答案但每次流程都對(duì)輸出穩(wěn)定在六十分以上這在實(shí)際使用里遠(yuǎn)比偶發(fā)的九十分重要。4.1 從直接給答案到先拆問(wèn)題加 Skill 前小龍蝦拿到為什么最近的用戶留存下降了的問(wèn)題會(huì)直接羅列一堆可能原因。加 Skill 之后它的回答變成了先確認(rèn)口徑、再拆結(jié)構(gòu)、再逐步排查最后才給結(jié)論。我舉個(gè)例子同樣是問(wèn)留存下降加 Skill 前它是這樣答的留存下降可能是產(chǎn)品更新影響用戶體驗(yàn)也可能是競(jìng)品分流建議加強(qiáng)用戶關(guān)懷。這句式是不是很熟悉每個(gè)詞單獨(dú)拎出來(lái)都沒(méi)錯(cuò)連起來(lái)就是一句正確的廢話。加 Skill 之后它第一句話是需要先確認(rèn)兩個(gè)問(wèn)題你說(shuō)的留存是次日留存、7 日留存還是 30 日留存統(tǒng)計(jì)口徑是按設(shè)備去重還是按賬號(hào)去重然后才開(kāi)始下一步。這就是分析師和聊天機(jī)器人的分水嶺分析師先鎖口徑再談結(jié)論。4.2 從空泛建議到結(jié)構(gòu)化交付第二個(gè)顯著變化是輸出形式。以前小龍蝦的回答是作文式的一大段讀起來(lái)順暢但整理信息很累?,F(xiàn)在它會(huì)按結(jié)論—證據(jù)—建議三個(gè)層次組織輸出開(kāi)頭先亮結(jié)論然后列支撐數(shù)據(jù)最后才給建議。這里我強(qiáng)烈安利一個(gè)寫(xiě)法在分析報(bào)告 Skill 里規(guī)定結(jié)論必須寫(xiě)在開(kāi)頭證據(jù)必須緊跟在結(jié)論后面。這樣做有兩個(gè)好處一是讀者前五秒就能拿到核心信息二是AI為了不寫(xiě)出孤立結(jié)論會(huì)被倒逼著去找數(shù)據(jù)支撐。很多 AI 輸出空洞根源是它沒(méi)有這個(gè)結(jié)構(gòu)約束。Skill 能把結(jié)構(gòu)約束固定下來(lái)。4.3 從憑記憶回答到先查數(shù)再說(shuō)話這個(gè)變化最重要。給小龍蝦配了 SQL 查詢 Skill 之后它不再憑記憶里的數(shù)據(jù)回答了。每拿到一個(gè)與數(shù)字相關(guān)的問(wèn)題它會(huì)先寫(xiě) SQL 查數(shù)據(jù)查詢結(jié)果出來(lái)之后再基于真實(shí)數(shù)據(jù)進(jìn)行判斷。有件事我記得很清楚有一次問(wèn)它上個(gè)月某渠道的轉(zhuǎn)化率是多少它的操作路徑是先檢查數(shù)據(jù)庫(kù)里有沒(méi)有該渠道的字段定義再寫(xiě) SQL 按渠道分組算轉(zhuǎn)化率最后把 SQL 和執(zhí)行結(jié)果一起貼出來(lái)。你能清楚看到它是怎么得出結(jié)論的而不是扔給你一個(gè)數(shù)字。這種可追溯性會(huì)讓你愿意信它的分析這也是我理解的專(zhuān)業(yè)感的真正來(lái)源。4.4 一個(gè)完整的加 Skill 前后對(duì)比表我把幾個(gè)維度的變化整理成了一張表可以作為你評(píng)估要不要加 Skill的一個(gè)參考標(biāo)準(zhǔn)對(duì)比維度加 Skill 前加 Skill 后面對(duì)開(kāi)放問(wèn)題直接羅列可能原因先確認(rèn)口徑和定義面對(duì)數(shù)據(jù)表直接描述、不看質(zhì)量先清洗、先看缺失與異常面對(duì)具體數(shù)字憑記憶或猜測(cè)寫(xiě) SQL 查詢給出執(zhí)行過(guò)程輸出形式一大段文字結(jié)論置頂、證據(jù)分列、建議在后面對(duì)圖表復(fù)述數(shù)字讀趨勢(shì)、找異常、給歸因錯(cuò)誤率不穩(wěn)定隨時(shí)跑偏流程穩(wěn)定很少犯低級(jí)錯(cuò)誤交付感聊天記錄像一份簡(jiǎn)版報(bào)告這張表不是夸張而是我調(diào)整前后來(lái)回切換的真實(shí)體感。甚至現(xiàn)在我給別的內(nèi)部 AI 配技能時(shí)也會(huì)拿這張表當(dāng)驗(yàn)收標(biāo)準(zhǔn)加了 Skill 之后必須能看到這些維度里的至少三個(gè)發(fā)生變化否則說(shuō)明 Skill 沒(méi)寫(xiě)到位。5. 實(shí)操中踩過(guò)的坑希望你不用再踩一遍任何事情只有自己上手做才會(huì)碰到文檔里不寫(xiě)的坑。Skill 配置看起來(lái)是寫(xiě)一個(gè) Markdown 文件那么簡(jiǎn)單實(shí)際用起來(lái)問(wèn)題不少。我把真正影響效果的幾個(gè)坑列出來(lái)應(yīng)該能幫你省掉不少試錯(cuò)時(shí)間。5.1 description 寫(xiě)太長(zhǎng)觸發(fā)反而變差第一次配 Skill 時(shí)我給數(shù)據(jù)清洗寫(xiě)了一段三百字的 description里面詳細(xì)解釋了什么情況該調(diào)用、哪些情況不該調(diào)用、具體執(zhí)行時(shí)要注意什么細(xì)節(jié)。結(jié)果很打臉用戶問(wèn)幫我看下這個(gè)表的時(shí)候它沒(méi)有觸發(fā)用戶說(shuō)今天的天氣適合爬山嗎它反而觸發(fā)了。原因就是 description 里的邊界描述太多AI 在識(shí)別語(yǔ)義時(shí)被干擾了。后來(lái)我把 description 砍到六十字以內(nèi)只留觸發(fā)條件和核心任務(wù)。效果立竿見(jiàn)影觸發(fā)率一下子正常了。所以我的建議是description 里只寫(xiě)遇到什么說(shuō)什么執(zhí)行細(xì)節(jié)全部放 instructions 里。觸發(fā)和執(zhí)法的職責(zé)要分開(kāi)混在一起兩邊都做不好。5.2 多個(gè) Skill 之間的指令互相打架我第二個(gè)踩的坑是不同 Skill 里的規(guī)則互相沖突。比如指標(biāo)拆解Skill 要求遇到問(wèn)題先拆結(jié)構(gòu)、不要著急給方案但分析報(bào)告Skill 又要求在報(bào)告開(kāi)頭直接寫(xiě)核心結(jié)論。這兩個(gè)要求同時(shí)觸發(fā)時(shí)就發(fā)生了沖突小龍蝦一會(huì)兒先給結(jié)論一會(huì)兒說(shuō)先要拆解再下結(jié)論輸出混亂。解決的辦法是在每個(gè) Skill 里加一個(gè)職責(zé)邊界小節(jié)明確寫(xiě)清楚什么情況下本技能讓位給其他技能。比如我在分析報(bào)告Skill 里加了一行如果當(dāng)前任務(wù)處于初步分析階段尚未完成數(shù)據(jù)確認(rèn)與指標(biāo)拆解本技能的核心結(jié)論輸出操作暫緩優(yōu)先執(zhí)行指標(biāo)拆解流程。有了這條優(yōu)先級(jí)規(guī)則沖突就消失了。這個(gè)細(xì)節(jié)推薦每個(gè)人都學(xué)一下比單純刪掉某些規(guī)則要更有用。5.3 不是所有問(wèn)題都需要掛 Skill這是一個(gè)使用策略問(wèn)題。我一開(kāi)始把指標(biāo)拆解數(shù)據(jù)清洗SQL 查詢?nèi)吭O(shè)為常駐結(jié)果對(duì)用戶一個(gè)簡(jiǎn)單的閑聊式提問(wèn)AI 也先來(lái)一套拆解流程用戶覺(jué)得它變啰嗦了。后來(lái)我調(diào)整了策略把 Skill 改為按需觸發(fā)而非全部常駐通過(guò) description 的設(shè)置讓它只在真正相關(guān)的場(chǎng)景里啟動(dòng)。這里有個(gè)經(jīng)驗(yàn)判斷對(duì)話型場(chǎng)景保持輕量任務(wù)型場(chǎng)景才掛重流程。要是用戶只是隨口問(wèn)一句幫我解釋一下什么是留存率你讓 SQL Skill 和指標(biāo)拆解 Skill 全跑一遍反而是負(fù)擔(dān)。Skill 不是越多越好而是在對(duì)的問(wèn)題里出現(xiàn)在不對(duì)的問(wèn)題里隱身。這個(gè)權(quán)重需要你根據(jù)自己的實(shí)際使用場(chǎng)景去調(diào)。5.4 參數(shù)和細(xì)節(jié)寫(xiě)太死場(chǎng)景一變就失效Skill 的內(nèi)容是固定文字但業(yè)務(wù)問(wèn)題千變?nèi)f化。我在早期版本里把指標(biāo)拆解模板寫(xiě)死為流量等于新客加老客結(jié)果遇到一個(gè)純 B 端銷(xiāo)售場(chǎng)景這個(gè)拆解就完全不適用了。后來(lái)改為先給出通用的拆解原則構(gòu)成公式、漏斗路徑、同環(huán)比分類(lèi)再?gòu)?qiáng)調(diào)用戶當(dāng)前問(wèn)題的業(yè)務(wù)類(lèi)型根據(jù)業(yè)務(wù)類(lèi)型選擇匹配模板。這個(gè)經(jīng)驗(yàn)教訓(xùn)是Skill 里要寫(xiě)方法而不是結(jié)論。方法能遷移結(jié)論不能。比如先確認(rèn)口徑再分析在所有行業(yè)通用但零售行業(yè)要先看 SKU 結(jié)構(gòu)就只對(duì)特定行業(yè)有效。在 Skill 里適當(dāng)保留通用性配合少量行業(yè)示例是最穩(wěn)的寫(xiě)法。5.5 一個(gè)常見(jiàn)的排查思路當(dāng)發(fā)現(xiàn)加了 Skill 后 AI 表現(xiàn)變化不大別急著換模型先按這個(gè)順序排查description 觸發(fā)條件是否明確instructions 是否足夠具體是否存在與其他 Skill 沖突的規(guī)則你在測(cè)試時(shí)是否正在使用一個(gè)與 Skill 完全不相關(guān)的場(chǎng)景。大多數(shù)問(wèn)題都出在這四個(gè)環(huán)節(jié)而不是出在模型能力上。我把容易遇到的問(wèn)題整理成了一個(gè)速查表方便你在實(shí)際操作時(shí)對(duì)照排查現(xiàn)象可能原因處理辦法Skill 從不觸發(fā)description 太長(zhǎng)或關(guān)鍵詞不匹配縮短 description加入用戶口語(yǔ)化觸發(fā)詞Skill 亂觸發(fā)description 邊界不清明確寫(xiě)不適合什么場(chǎng)景縮小觸發(fā)面執(zhí)行流程混亂instructions 不夠具體AI 自由發(fā)揮逐步列出動(dòng)作每步只給一個(gè)任務(wù)兩個(gè) Skill 同時(shí)響應(yīng)職責(zé)邊界重疊在各自文件里寫(xiě)清優(yōu)先級(jí)和讓位規(guī)則輸出仍然是正確的廢話缺少輸出格式約束強(qiáng)制規(guī)定輸出結(jié)構(gòu)結(jié)論必須前置換了場(chǎng)景就失效Skill 寫(xiě)得太針對(duì)具體業(yè)務(wù)多用通用方法少寫(xiě)特定結(jié)論這篇東西寫(xiě)到這里我已經(jīng)把自己從零配到能用的整條路線攤開(kāi)了。如果讓我重新做一次我會(huì)把第一步放在梳理分析師的工作流上而不是急著寫(xiě)文件。流程想清楚了Skill 只是把流程翻譯成 AI 能讀的文字而已。最后一句送給正在折騰 AI 助手的朋友別總想著換更聰明的模型先把你想讓它做的事認(rèn)認(rèn)真真寫(xiě)成一個(gè)它能看懂的標(biāo)準(zhǔn)動(dòng)作效果通常比換模型來(lái)得更快。