AI 圈又成功制造了個焦慮:Agent Harness Engineering。
一堆開源項目已經(jīng)開始改名、改項目描述了,也有自媒體開始寫稿告訴大家 Harness 是你必須學(xué)會的概念了。
但你肯定沒看懂,因為寫這篇稿子前,我看了不下 50 篇,一篇寫明白的都沒有。
全是“框架”、“設(shè)施”、“規(guī)范”之類的高大上用詞,越看越??焦慮。
另一個原因是,此刻所有 Harness 相關(guān)內(nèi)容都是拿 coding 場景來論述的。
別慌,我來了。
這篇文章,拿一個人人都知道(雖然不一定能做好)的場景,一點點把韁繩給 Agent 套上。
讓 Agent 圍繞指定主題撰寫公眾號文章。怎么 Harness
懶得看論述過程,看完下面這幾句話可以走了:
- Harness 核心是一個更細化約束 Agent 的策略,通過提示詞和一系列工具
- 底層支持是“把作業(yè)步驟原子化拆解,直到每一步都可以管理、可檢查、可回滾、有復(fù)盤”
- 所謂“框架”和“設(shè)施”,就是一系列工具,讓 AI 按說明調(diào)用
- 馬跑太快了,需要一個韁繩約束:別瘋跑,走一步、驗證一步、記錄一步
- 不是一匹馬跑全程,而是一堆沒有上下文干擾的子 Agent 分工完成
以寫一篇文章這個任務(wù)為例,Harness 的做法應(yīng)該是:
- 有一個細化 brief 與你討論并存儲為
.md的原子任務(wù) - 有一個學(xué)習(xí)參考文章風(fēng)格并存儲為按板塊結(jié)構(gòu)化分段
.md的原子任務(wù) - 有一個根據(jù) brief 檢索資料、自驗證資料相關(guān)性、抽取有效信息,并分別存儲為一堆參考資料
.md的原子任務(wù) - 有一個根據(jù) brief 和支持資料撰寫文章大綱,并存儲為
.md的原子任務(wù) - 有一堆根據(jù)大綱找匹配支持資料各寫一段并分別存儲為一堆文章片段
.md的原子任務(wù) - 有一個一段一段看文章判斷要不要搞個配圖、按需生成配圖的原子任務(wù)
- 有一個拿片段測試排版風(fēng)格、選擇最終風(fēng)格、輸出公眾號排版的原子任務(wù)
關(guān)鍵一:不是并行或者串行一個一個搞完,而是做一個、存一個、驗證一個,遇到問題解決問題、記錄解決過程、更新ToDo.md。
關(guān)鍵二:所有規(guī)范和產(chǎn)出物都是.md,所有參與作業(yè)的 Agent 都能讀、能編輯更新這些文檔
要支持這個 Harness 作業(yè)規(guī)范,需要這些工具:
- 一個一堆文檔的工作空間,每個子任務(wù)完成以后,用 git 管理版本
- 一個讓每個零上下文的 Agent 上手就能看懂怎么干活的
Agent.md文檔 - 支持按關(guān)鍵詞搜索空間內(nèi)文檔/文檔片段的
sed或其他 CLI 搜索權(quán)限閱讀
三句話總結(jié),每次 Agent 作業(yè)都是:
- 把狀態(tài)從上下文
.md里拿出來 - 把過程留痕到指定
.md - 一步一個版本,每次都是新起點,每次獨立的上下文
工作空間大概如下:
![]()
具體怎么實現(xiàn)
- 理論上,這需要一套代碼構(gòu)成的工程手段來約束,為了便于各位 PM 理解,我用
提示詞Skills的方式構(gòu)造了這個 Harness 流程。 - 代碼工程約束的是一輪一輪在循環(huán)中作業(yè)的 Agent,因為懶得專門寫項目,我這里用了
子 Agent來代指每一輪作業(yè)的 Agent。
項目結(jié)構(gòu)如下:
![]()
首先是約束整體的Agent.md,它統(tǒng)領(lǐng)了全局,每一個(實際上是每一輪)參與作業(yè)的 Agent 都要了解“大家”在做什么、怎么做。
看起來簡單,但也寫了 400+行,以下僅放大綱:(完整Demo獲取方式在文末)
![]()
相比于常規(guī)的約束提示詞,這里面大量的篇幅在描述:
- 如何更新 todo.md,包括格式規(guī)范、狀態(tài)流轉(zhuǎn)、編號、上下文依賴、認(rèn)領(lǐng)與鎖定
- 每一個大任務(wù)階段的總體驗證標(biāo)準(zhǔn),以及下一級到原子任務(wù)如何細化
- 失敗任務(wù)處理和記錄的規(guī)范
- 版本管理:多輪無完整上下文的 Agent 之間協(xié)作是否友好非常依賴這個
然后就是確保全局作業(yè)足夠原子化的初始化,使用一個init-skill技能來實現(xiàn),其中包含兩個活:
- 使用程序直接初始化一個工作空間,里面預(yù)設(shè)好文件夾和文檔模板
- 讓初始化 Agent 編寫初步的
brief.mdtodo.md
需要特別注意的是,ToDo 應(yīng)該有嚴(yán)格的原子化約束和流程約束,以確保每個“入局”的 Agent,既執(zhí)行最小可控步驟、又能流暢與其他 Agent 完成協(xié)作。
其他風(fēng)格提取、搜索、寫作、配圖、排版等大步驟,每一個都是要拆的最小單元和最小上下文引用,也都有明確的指示。
以寫某一個段落為例,Agent 領(lǐng)到的任務(wù)是這樣的:
- 你要寫第 X 段
- 段落主題為:……
- 執(zhí)行
grep -A 20 "### 第二節(jié)" outline.md獲取章節(jié)大綱 - 執(zhí)行
python3 skills/get-style-skill/scripts/query_style.py --soul style/soul.md --section "tone/explaining"獲取段落參考風(fēng)格碎片 - 執(zhí)行
grep -l "topics:.*agent harness" workspace/{topic}/sources/verified/*.md按關(guān)鍵詞檢索可用資料,或grep -A 5 "## 可引用觀點" workspace/{topic}/sources/verified/SRC-001.md檢索可引用的觀點 - 輸出產(chǎn)出到
draft/intro.md文檔 - 如果遇到錯誤,記下報錯和修復(fù)過程,更新到
memory/下的decisions.mdrun_log.md - 更新
todo.md,然后 git 保存版本 - 退出任務(wù)。
然后下一個 Agent 進來以后,領(lǐng)到的任務(wù)是:
- 拉取 xx 段內(nèi)容,看看有沒有必要配個圖
- 有必要的話,使用
gen-image-skill做配圖 - 然后驗證生成的圖片,是否匹配,不行重新搞一張
- 記錄錯誤、更新 todo、git 保存版本、退出
每一個任務(wù)都是認(rèn)領(lǐng)任務(wù)、拉取最小單元上下文、干活、驗證、保存、走人。
Harness 的命門
某種意義上,Harness 其實是 Skills 的升級版:從單一節(jié)點任務(wù)的最佳實踐約束上升到 Agent 整體任務(wù)的約束。
它需要“騎手”至少具備以下兩個能力:
- 任務(wù)原子化拆解的能力(產(chǎn)品經(jīng)理基本功)
- 對整個任務(wù)自上而下、自下而上所有產(chǎn)出的細節(jié)的銜接
這兩個能力,其實只要你過去從 0-1 寫過 PRD,基本都能勝任。
缺的只是對大模型的理解:哪些環(huán)節(jié)人來做、哪些環(huán)節(jié) AI 來做、哪些環(huán)節(jié)程序?qū)崿F(xiàn)。
我的《AI 產(chǎn)品經(jīng)理轉(zhuǎn)崗特訓(xùn)營》線上課程有你缺失的一切。
這套課程經(jīng)過了 2 年 + 7 輪迭代,包含了過去 2 年 AI 產(chǎn)品一路進化過來的所有必備技能。
不管你是要做公司的 AI 賦能規(guī)劃還是要轉(zhuǎn)崗成為一名大模型行業(yè)從業(yè)者,它都能以更快的速度幫你補齊:
![]()
詳細的課程大綱和學(xué)習(xí)計劃,可以聯(lián)系班主任獲得。
如果你想要抓住這波金三銀四轉(zhuǎn)崗的機會,我還提供了實訓(xùn)項目帶教,幫你補齊沒有項目經(jīng)驗的短板。
?1. 5個應(yīng)對招聘 AI 能力要求的實訓(xùn)項目![]()
?2. 5個企業(yè)級項目&產(chǎn)品經(jīng)理能力養(yǎng)成實訓(xùn)
?3. 持續(xù)更新的實訓(xùn)項目帶教直播![]()
這些項目是已經(jīng)被大量同學(xué)驗證有效的,可以被寫進簡歷,大大增加你的面試機會和通過率!
![]()
更多實戰(zhàn)安排和成功學(xué)員案例,聯(lián)系班主任了解~
技術(shù)和玩法高速迭代,所以機會窗口不會太久。
唯一的解法就是,小不快跑加入進來。
進來就不怕技術(shù)迭代,不進來門檻只會越來越高。
本文提到的 Agent 寫作 Harness-Demo,已經(jīng)同步在課程的支持文檔中,已經(jīng)報名的同學(xué)可以直接移步查看。
我也會在接下來的答疑直播中問大家展開講解。
![]()
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.