戰(zhàn):四大階段讓LLM發(fā)揮真正潛能)
很多人把大模型用不好第一反應(yīng)就是這模型太笨但實(shí)際排查下來十有八九是上下文工程沒做到位。所謂上下文工程就是指我們圍繞LLM輸入側(cè)做的一系列設(shè)計、組織與管理工作決定給模型看什么、不看什么、以什么順序看、以及看完一輪之后如何延續(xù)。它直接決定了模型能不能發(fā)揮出真正的潛能也是搭建一套理想AI工作環(huán)境的核心技能。這四大關(guān)鍵階段——任務(wù)目標(biāo)界定、上下文材料準(zhǔn)備、提示詞策略編排、多輪交互管理每一個都值得單獨(dú)打磨。這篇文章我就用自己實(shí)際操作中的經(jīng)驗和踩坑記錄把這四個階段掰開揉碎講清楚適合所有正在用LLM做應(yīng)用、寫自動化腳本、搭知識庫助手的開發(fā)者參考。1. 上下文工程到底是什么從調(diào)包到調(diào)上下文很多朋友剛接觸大模型時習(xí)慣把注意力放在選模型、調(diào)參數(shù)上認(rèn)為換個更聰明的模型就萬事大吉。可真到了實(shí)際項目里同一個模型別人能穩(wěn)定輸出高質(zhì)量結(jié)果自己卻經(jīng)常得到答非所問、胡編亂造的內(nèi)容。問題往往就出在上下文的構(gòu)建上。1.1 為什么說上下文是LLM的真正工作臺我們可以把LLM想象成一個能力很強(qiáng)但記憶極短、且特別容易受周圍環(huán)境影響的臨時工。它本身的知識儲備很廣但每次開工時眼前只有你遞給它的那張工作臺——也就是當(dāng)前對話窗口里的全部內(nèi)容。工作臺上放了什么、怎么擺放、有沒有干擾物直接決定了它能干出什么活兒。如果你把一堆雜亂無章的資料、一個含糊不清的目標(biāo)、再加上幾條互相矛盾的指令全丟上去那它當(dāng)然只能給你一份亂七八糟的結(jié)果。上下文工程要做的就是把這個工作臺收拾得井井有條讓模型一上來就知道我是誰、要做什么、有哪些可用素材、答案應(yīng)該長什么樣。在很多真實(shí)項目中上下文工程帶來的收益甚至比換模型還明顯。我有一個做客服問答系統(tǒng)的項目最初用某款通用模型直接丟給用戶問題讓它回答效果一般經(jīng)常答非所問或者漏掉關(guān)鍵信息。后來花了兩周時間做上下文工程把企業(yè)知識庫做了清洗和結(jié)構(gòu)化、設(shè)計了帶角色和示例的提示模板、給多輪對話加了記憶摘要。同樣還是那個模型準(zhǔn)確率直接提升了一大截用戶反饋完全像換了個產(chǎn)品。這件事給我的觸動很大模型能力是靜態(tài)的上下文工程是動態(tài)的后者才是我們真正能發(fā)揮主動權(quán)的地方。1.2 四個階段的整體視圖我習(xí)慣把上下文工程拆成四個階段分別對應(yīng)一次完整交互從0到1、從1到N的完整鏈路。第一階段是任務(wù)目標(biāo)與邊界界定。動手之前先想清楚這次調(diào)用想讓模型完成什么輸入是什么、輸出是什么有哪些限制條件這個階段的產(chǎn)出是一份任務(wù)說明書而不是直接寫提示詞。第二階段是上下文材料的選擇、清洗與結(jié)構(gòu)化。模型不是數(shù)據(jù)庫你不能把所有資料一股腦塞進(jìn)去需要篩選出真正相關(guān)的信息并按照模型容易理解的格式組織好。第三階段是提示詞策略設(shè)計與角色編排。把目標(biāo)和材料翻譯成一段結(jié)構(gòu)清晰、指令明確、帶示例的提示詞讓模型知道每一步該怎么走。第四階段是多輪交互中的上下文管理與迭代優(yōu)化?,F(xiàn)實(shí)中的AI工作環(huán)境很少只調(diào)一次接口往往是多輪對話、持續(xù)使用怎么維護(hù)對話歷史、怎么避免上下文污染、怎么從錯誤中反推改進(jìn)都屬于這一階段。這四個階段不是一次性走完就結(jié)束的而是一個循環(huán)。每次看到Bad Case都需要回到前面某個階段重新調(diào)整。下面我按順序詳細(xì)說。2. 第一階段任務(wù)目標(biāo)與上下文邊界界定很多人的提示詞寫得差根源不是文筆不好而是在寫之前根本沒想清楚任務(wù)目標(biāo)。你在上下文里塞進(jìn)的第一句話往往就決定了模型的整個行為方向。如果連你自己都不知道要什么模型就更不可能知道。2.1 動手前先回答四個問題我在設(shè)計任何一次LLM調(diào)用前都會強(qiáng)制自己回答四個問題答不清楚就絕不動筆寫提示詞。第一個問題這個任務(wù)的核心輸出是什么要求是一段文本、一個JSON、一份表格還是僅僅做一個判斷輸出形式需要一開始就鎖定否則模型很容易自由發(fā)揮。第二個問題輸入側(cè)有哪些必要信息和可選信息比如做摘要任務(wù)必要信息是原文可選信息是目標(biāo)長度、風(fēng)格偏好、關(guān)注角度。第三個問題成功標(biāo)準(zhǔn)是什么怎么判斷這一次輸出是好的是包含所有關(guān)鍵點(diǎn)還是格式完全合法還是語氣足夠?qū)I(yè)沒有成功標(biāo)準(zhǔn)后面就沒法迭代。第四個問題有哪些絕對不能觸碰的邊界比如不能編造數(shù)據(jù)、不能輸出敏感內(nèi)容、不能偏離某個固定口徑、不能使用某種語言。這些邊界要在進(jìn)入正文前就寫清楚。這一步看似簡單卻能把很多后續(xù)問題消滅在萌芽狀態(tài)。我見過太多人上來就甩給模型一個幫我寫個方案然后模型寫出來一堆泛泛而談的東西又反過來罵模型不行。其實(shí)只要在提問前補(bǔ)上一句我是某個行業(yè)的中型團(tuán)隊負(fù)責(zé)人需要一份針對新員工培訓(xùn)的3周方案包含目標(biāo)、日程、考核方式控制在800字以內(nèi)輸出質(zhì)量立刻就不一樣了。2.2 上下文窗口預(yù)算Token從哪來、到哪去很多人忽略了一個關(guān)鍵資源上下文窗口是有限的。目前主流模型的上下文窗口從幾萬到幾十萬Token不等看著很大但實(shí)際可用空間會被很多隱性內(nèi)容吃掉。指令、角色設(shè)定、示例、對話歷史、檢索到的參考文檔、模型輸出本身全都要占空間。我習(xí)慣在項目初期就做一次Token預(yù)算。假設(shè)模型窗口是32K我會把規(guī)劃寫成這樣系統(tǒng)角色與全局指令1K用戶任務(wù)描述0.5K少樣本示例3個3K參考文檔檢索后20K歷史對話摘要2K預(yù)留輸出空間5K合計31.5K剛好卡在窗口之內(nèi)。你會發(fā)現(xiàn)參考文檔通常是最大的消耗者所以在第二階段必須做信息篩選和壓縮。如果預(yù)算超了優(yōu)先砍參考文檔其次砍示例最后砍角色指令。因為對大多數(shù)任務(wù)來說指令可以短但材料不能亂。這個預(yù)算表我會寫進(jìn)項目文檔里每次改提示詞都對照檢查一遍避免不知不覺超限。模型一旦觸發(fā)截斷往往不是丟開頭就是丟中間輸出質(zhì)量會斷崖式下降這種問題極難排查。2.3 實(shí)操模板任務(wù)定義塊基于第一階段的思考我會在每次編寫提示詞時先寫一個任務(wù)定義塊放在上下文的最前面。它相當(dāng)于給整個工作臺定下基調(diào)。一個典型的模板長這樣【任務(wù)目標(biāo)】 針對用戶提供的產(chǎn)品差評內(nèi)容生成一段安撫回復(fù)。 【輸入信息】 用戶差評原文。 【輸出要求】 1. 先表達(dá)歉意再給出具體解決方案 2. 不承認(rèn)是產(chǎn)品質(zhì)量問題但要體現(xiàn)負(fù)責(zé)任態(tài)度 3. 不超過120字。 【限制邊界】 不得編造訂單信息、不得承諾未經(jīng)驗證的賠償、不得使用機(jī)械化的客服套話。這樣一個任務(wù)定義塊看起來很樸素但能讓模型在閱讀后續(xù)所有內(nèi)容時都帶著這個目標(biāo)框架。我測試下來加了這一塊的回復(fù)準(zhǔn)確率、合規(guī)性都明顯高于直接發(fā)揮式提問。這也說明第一階段的工作不是可有可無的它是整個上下文工程的地基。3. 第二階段上下文材料的選擇、清洗與結(jié)構(gòu)化目標(biāo)定好之后就要往上下文里填充材料了。這一步最考驗功力因為材料的好壞直接決定模型輸出的事實(shí)基礎(chǔ)。很多AI應(yīng)用翻車不是因為提示詞寫得差而是因為喂進(jìn)去的參考資料本身就是臟的、亂的、過時的。3.1 材料選擇的相關(guān)性漏斗不要什么都往上下文里塞必須建立一個篩選漏斗。我自己的操作方法是四步過濾。第一步按任務(wù)目標(biāo)圈定候選范圍。比如做法律問答就只找相關(guān)的法規(guī)條文和司法解釋而不是把整個法律庫都搬進(jìn)去。第二步按時間過濾。信息類任務(wù)必須優(yōu)先選擇最新材料過期的說明文檔、舊版本政策條例很容易誤導(dǎo)模型。第三步按權(quán)威性過濾。同一個知識點(diǎn)優(yōu)先選官方文檔、一手?jǐn)?shù)據(jù)其次是質(zhì)量較高的二手整理論壇灌水內(nèi)容直接丟掉。第四步按信息密度過濾。同樣講一個概念一篇文章可能有一半是鋪墊和廢話只提取其中真正包含事實(shí)、數(shù)據(jù)、步驟的段落就行。這個漏斗看起來簡單但大多數(shù)人會偷懶直接把幾篇長文拼接進(jìn)上下文結(jié)果模型被大量無關(guān)內(nèi)容干擾反而忽略了關(guān)鍵信息。我做檢索增強(qiáng)生成時對召回回來的文檔還會做一次重排序只取與問題得分最高的前3到5段而不是把整篇文檔都喂進(jìn)去。這一步讓我項目的幻覺率下降得非常明顯。3.2 結(jié)構(gòu)化組織從純文本到語義塊材料選好之后不能直接一大段懟進(jìn)去要讓模型好讀。LLM對結(jié)構(gòu)非常敏感語義塊清晰的上下文比一大坨連續(xù)文本更容易被精確引用。我自己常用的做法是給材料加標(biāo)簽和分層。比如給模型提供產(chǎn)品資料時我不會寫我們的產(chǎn)品叫智辦系統(tǒng)是一款協(xié)同辦公軟件擁有任務(wù)管理、文檔協(xié)作、審批流程等功能而是組織成【產(chǎn)品基本信息】 名稱智辦系統(tǒng) 類型協(xié)同辦公軟件 目標(biāo)用戶中小團(tuán)隊 【核心功能】 - 任務(wù)管理支持看板、列表、日歷三種視圖 - 文檔協(xié)作多人實(shí)時編輯支持版本歷史 - 審批流程可自定義審批節(jié)點(diǎn)和條件 【常見用戶問題】 - 如何邀請成員進(jìn)入團(tuán)隊設(shè)置... - 如何導(dǎo)出任務(wù)點(diǎn)擊任務(wù)列表右上角...這樣的結(jié)構(gòu)模型在回答用戶問題時能快速定位對應(yīng)模塊生成的答案也更接近從文檔中找答案而不是自己憑空編。如果你在做一個知識庫問答系統(tǒng)強(qiáng)烈建議把所有知識文檔都統(tǒng)一成這種帶標(biāo)題的語義塊格式前期多花點(diǎn)功夫清洗后期效果會好很多。3.3 長文本壓縮摘要、檢索和分塊的經(jīng)驗現(xiàn)實(shí)中的資料往往很長一篇論文幾萬字、一本說明書幾百頁不可能全部塞進(jìn)上下文。我總結(jié)出三種常用的壓縮策略。第一種是抽象摘要。把整篇長文檔先讓模型或人工生成一段摘要再放進(jìn)上下文。這個方案適合背景信息類材料但摘要會丟失細(xì)節(jié)不適合需要精確引用數(shù)據(jù)的場景。第二種是檢索切片。把文檔切成小塊用向量檢索或關(guān)鍵詞檢索找出最相關(guān)的幾塊只把這幾塊喂給模型。這是RAG最常見的形式適合開放域知識問答。第三種是分層結(jié)構(gòu)。先放一個全局摘要作為目錄級信息再把詳細(xì)內(nèi)容放在后面讓模型按需查閱。這個方法在超長對話歷史管理里非常有用后面我會細(xì)說。切片時要注意塊的大小。我一般控制在每塊300到500字太小會中斷語義完整性太大會混入不相關(guān)內(nèi)容。塊之間用空行和標(biāo)題隔開最后在提示詞里明確告訴模型優(yōu)先使用【參考文檔】中的內(nèi)容沒有資料時如實(shí)說明不知道。這樣模型就不會硬編了。4. 第三階段提示詞策略設(shè)計與角色/示例編排材料備好了接下來就是把目標(biāo)和材料糅合成一段真正有效的提示詞。這是很多人最感興趣的部分但也是最容易被花哨技巧帶偏的部分。我始終認(rèn)為提示詞的核心不是詞藻而是結(jié)構(gòu)、順序和約束。4.1 指令、角色、示例的排布優(yōu)先級一份完整的提示詞通常包含角色設(shè)定、任務(wù)指令、上下文材料、示例、輸出格式這幾類組件。它們的排列順序會影響模型的理解效果。我習(xí)慣遵循一個目標(biāo)先行、角色輔助、材料跟上、示例兜底的順序。先寫任務(wù)目標(biāo)讓模型一進(jìn)來就鎖定方向。再寫角色設(shè)定讓它調(diào)用相應(yīng)的知識背景和語氣。接著給參考材料這是模型的事實(shí)依據(jù)。然后給少樣本示例讓模型模仿格式和推理風(fēng)格。最后寫輸出約束和格式要求。比如錯誤示范是先給一大堆角色故事再給示例最后才輕描淡寫一句幫我總結(jié)一下。這會讓模型把更多注意力放在角色模仿而不是核心任務(wù)上。正確示范應(yīng)該是你是一個數(shù)據(jù)分析助手。請根據(jù)下面的銷售數(shù)據(jù)總結(jié)本季度各區(qū)域表現(xiàn)。 【銷售數(shù)據(jù)】 ... 【輸出要求】 以要點(diǎn)的形式輸出每個區(qū)域包含完成率、同比增長、關(guān)鍵問題。這樣模型掃一眼就知道該干什么不需要反復(fù)猜測。很多人為了調(diào)教模型喜歡寫幾百字的角色小傳其實(shí)對大多數(shù)任務(wù)都是浪費(fèi)。角色設(shè)定的作用只是錨定語氣和知識范圍三句話以內(nèi)足夠了。4.2 少樣本示例的選取與數(shù)量控制少樣本示例是提示詞中威力最大的組件之一。一個精心設(shè)計的輸入輸出對往往比一百句抽象指令更能讓模型理解你想要的答案。選示例時要注意三個原則相似性原則示例要盡量貼近真實(shí)場景差異性覆蓋原則多個示例要覆蓋不同邊界情況而不是同一類重復(fù)反例原則有時需要放一個錯誤示范并標(biāo)注為什么錯這能有效抑制模型的某些不良傾向。數(shù)量上我一般控制在2到5個。少于2個模型往往學(xué)不會模式多于5個Token消耗大而且示例之間可能互相干擾。有一次我做郵件分類任務(wù)最初給了8個示例模型表現(xiàn)反而不穩(wěn)定因為有些示例的分類邊界重疊了。精簡到3個典型示例后準(zhǔn)確率還上升了一些。這件事讓我不再迷信示例越多越好。示例本身也要保持一致性。如果示例的輸出格式一會兒用列表、一會兒用段落模型就會困惑。最好把示例中的輸入部分也按真實(shí)情況脫敏處理并讓示例里的邏輯可解釋而不是讓模型單純復(fù)制表面措辭。4.3 輸出約束與格式錨點(diǎn)最后一個設(shè)計要點(diǎn)是輸出約束。你希望模型輸出什么格式就要在提示詞里用格式錨點(diǎn)明確卡死。比如你希望它輸出JSON就不要說請以JSON格式返回而是給出一個完整的JSON模板告訴它把字段填進(jìn)去。模型對模板的遵循能力遠(yuǎn)高于對抽象指令的遵循能力。一個實(shí)用的做法是使用XML或Markdown標(biāo)簽把輸出區(qū)域框出來。比如請將結(jié)果填入下面的JSON { summary: 這里寫摘要, keywords: [關(guān)鍵詞1, 關(guān)鍵詞2], risk_level: high/mid/low }如果模型仍然不按格式輸出可以用請只輸出上述JSON結(jié)構(gòu)不要包含任何解釋來收緊。還有一個技巧是讓模型先輸出一個思考草稿再給出最終結(jié)果。這種兩步法雖然增加了一些Token卻能顯著提升復(fù)雜任務(wù)的邏輯性。我在寫推理類提示詞時會在最后加上先梳理已知條件再逐步推導(dǎo)效果很不錯。5. 第四階段多輪交互中的上下文管理與迭代優(yōu)化前面三個階段解決的是單次調(diào)用怎么設(shè)計好。但真正搭建理想AI工作環(huán)境一定繞不開多輪交互——要么是用戶和模型連續(xù)對話要么是Agent多次調(diào)用工具。這時候上下文管理就變成動態(tài)問題了。5.1 對話歷史的取舍滑動窗口、記憶摘要多輪對話最基礎(chǔ)的管理手段是滑動窗口只保留最近N輪對話作為上下文。這個方案簡單粗暴但缺點(diǎn)是一旦關(guān)鍵信息被滑出去模型就失憶了。所以我會在此基礎(chǔ)上疊加一個記憶摘要層。具體做法是每一輪或每幾輪結(jié)束后讓模型把當(dāng)前對話產(chǎn)生的關(guān)鍵信息濃縮成摘要比如用戶偏好、已經(jīng)確認(rèn)的事實(shí)、待辦事項等。下次對話時把摘要信息和最近幾輪窗口一起作為上下文喂進(jìn)去。這樣一來模型既保留了對長期信息的記憶又不需要把全部歷史都塞進(jìn)去。我做項目時通常會設(shè)定每5輪生成一次摘要并檢查摘要是否遺漏核心決策否則后續(xù)會話會出現(xiàn)前后矛盾。摘要和原始對話在上下文里的排布也有講究。摘要放在最前面因為它是對歷史的高度概括原始最近對話放在后面因為模型對緊鄰內(nèi)容的注意力更強(qiáng)。這樣安排下來即使窗口不大也能維持較長時間的連貫性。5.2 上下文污染與遺忘機(jī)制上下文污染是我在多輪交互中踩過最多坑的地方。所謂污染就是之前某條消息里包含的無關(guān)、錯誤或沖突信息影響到了后續(xù)所有輪次的輸出。大模型不具備主動刪除記憶的能力它只會把新信息和舊信息混合當(dāng)新舊信息矛盾時輸出就會崩壞。最常見的污染來源有三個一是用戶中途改了需求但舊需求相關(guān)的示例和材料還在上下文里二是前一輪模型的錯誤輸出被當(dāng)作已知背景繼續(xù)參與后續(xù)生成三是無關(guān)的閑聊話題夾在關(guān)鍵指令中間分散了模型注意力。我的解決辦法是引入顯式的遺忘機(jī)制。當(dāng)檢測到用戶意圖切換時主動重建上下文——清除掉舊的示例和對話記錄只保留任務(wù)目標(biāo)摘要和新任務(wù)的材料。另外可以在提示詞中加一句請忽略前面對話中與本次指令沖突的內(nèi)容以本次指令為準(zhǔn)。這不能百分之百解決問題但對大多數(shù)場景很有效。還有一個土辦法如果某一輪出現(xiàn)了明顯污染不要繼續(xù)對話直接開一個新會話把必要的摘要手動粘過去往往比試圖糾正更省力。5.3 反饋閉環(huán)從Bad Case反推上下文缺陷上下文工程不可能一次到位必須建立反饋閉環(huán)。每次任務(wù)輸出質(zhì)量不達(dá)標(biāo)時我都會把這個Bad Case單獨(dú)拿出來反推是哪個階段出了問題而不是簡單換一個提示詞再試。我有一套固定的排查路徑先看任務(wù)目標(biāo)是否明確再看參考材料是否相關(guān)、是否足夠然后檢查示例是否帶來誤導(dǎo)最后檢查上下文是否被歷史污染。如果模型輸出太泛泛往往是一階段目標(biāo)界定不清晰如果模型編造了材料里沒有的內(nèi)容往往是二階段材料篩選有遺漏如果模型格式不對往往是三階段輸出錨點(diǎn)不夠硬如果模型前后矛盾多是四階段對話管理出了問題。在項目里我會定期收集所有Bad Case給它們打上階段標(biāo)簽統(tǒng)計哪一類問題占比最高。通常你會發(fā)現(xiàn)問題集中在一兩個階段那就集中精力優(yōu)化那一塊效率會高很多。我有一個同事一開始覺得模型不好用狂換模型后來我們幫他做了Bad Case分類發(fā)現(xiàn)八成問題出在第二階段——喂進(jìn)去的參考文檔又舊又亂。把材料清洗和檢索優(yōu)化之后同一個模型的表現(xiàn)讓人刮目相看。6. 常見問題與排查技巧實(shí)錄最后整理一份我在實(shí)操中經(jīng)常遇到的高頻問題速查表以及兩個典型的Debug案例希望能幫大家少走彎路。6.1 高頻問題速查表問題現(xiàn)象可能原因排查方向輸出內(nèi)容太寬泛、不落地任務(wù)目標(biāo)模糊缺少邊界回到第一階段補(bǔ)充具體輸出要求和限制引用不存在的數(shù)據(jù)或事實(shí)參考材料缺失或不完整檢查第二階段材料覆蓋率必要時加檢索回答格式總是不對輸出錨點(diǎn)不夠明確在提示詞中給出完整輸出模板禁止多余解釋多輪對話后開始胡言亂語上下文被污染或者歷史過長使用記憶摘要滑動窗口及時重建會話加了示例反而更差示例數(shù)量過多或互相矛盾精簡到2-3個高質(zhì)量示例注意覆蓋差異同樣的提示詞時好時壞參考文檔順序不穩(wěn)定或引入無關(guān)內(nèi)容固定文檔排序規(guī)則重排檢索結(jié)果清理干擾這張表我打印出來貼在工位上每次翻車就對照著查。多數(shù)情況下問題都能快速定位。6.2 兩個典型Debug案例第一個案例是一個報表生成助手。用戶要求模型根據(jù)銷售數(shù)據(jù)生成周報但輸出總是缺少環(huán)比和同比字段。我一開始以為是提示詞指令不夠清楚加了好幾遍強(qiáng)調(diào)還是偶爾丟字段。后來反查Bad Case發(fā)現(xiàn)參考數(shù)據(jù)里根本沒有上周和去年同期的數(shù)據(jù)模型自然沒法算。問題出在第二階段的信息準(zhǔn)備而不是提示詞。修正方案是把歷史對照數(shù)據(jù)一起喂進(jìn)去并在數(shù)據(jù)說明中標(biāo)注字段含義和計算口徑。改完之后丟字段的問題徹底消失。第二個案例是一個教育問答機(jī)器人。單輪問答效果不錯但聊到第三四輪就開始亂。我檢查發(fā)現(xiàn)用戶在前幾輪問的是A知識點(diǎn)之后切換到B知識點(diǎn)時對話歷史里A的相關(guān)示例仍然占據(jù)上下文模型被舊內(nèi)容干擾。解決方法是加了一個意圖檢測模塊當(dāng)識別到切換話題時清空前面的參考文檔只保留一句簡單歷史摘要。同時在新指令開頭加上忽略之前話題專注于當(dāng)前問題。經(jīng)過這樣處理后續(xù)輪次的準(zhǔn)確率明顯穩(wěn)定下來。這兩個案例的共同點(diǎn)在于都不是靠換模型或堆提示詞解決的而是回到上下文工程的具體階段找到根因。這也再次說明精通上下文工程才是解鎖LLM潛能的正確路徑。最后分享一點(diǎn)個人體會做上下文工程心態(tài)上要像整理房間而不是表演魔術(shù)。每一次穩(wěn)定的輸出背后都是清晰的邊界、干凈的素材、合理的結(jié)構(gòu)和及時的復(fù)盤。我自己剛開始時也追求各種復(fù)雜技巧后來發(fā)現(xiàn)把基礎(chǔ)階段做扎實(shí)效果反而最可靠。希望大家也能從這四個階段入手一點(diǎn)點(diǎn)完善自己的AI工作環(huán)境讓模型真正成為靠得住的搭檔。