AI Engineer Europe 2026 · 演講 · 2026-05-17 · 20 分
不改 prompt,用 harness 讓爛模型做事
Harnesses in AI: A Deep Dive · Tejas Kumar,IBM
Tejas 現場用 GPT-3.5 Turbo 做瀏覽器 agent,完全不動 prompt,只靠 guardrails、驗證步驟與自動登入,讓它從謊報成功變成真的完成。
概要
- harness 買的是可靠度Tejas 說我們租來的模型是黑盒,能控制的變數太少,harness 的目的是讓 agent 不管底下是哪個模型,都照做該做的事。
- harness 是迴圈外面那一圈Tejas 把 agent harness 定義成模型周圍、讓它踩在現實上的一切,包含工具註冊、context 管理、guardrails、agent loop 與驗證步驟。準備這場時有人問過 harness 是不是就是 agent loop,答案是不,是 loop 外面的東西。
- demo 刻意不碰 prompt任務是上 Hacker News 幫第一篇文章按讚,模型用 GPT-3.5 Turbo。一開始遇到登入畫面就慌了,還回報成功。
- 一步步長出 harness先加 guardrails(最多 6 步、訊息太多就壓縮 context),再把邏輯收進 run harness,接著加驗證與最多 3 次重試,最後加自動登入。
- 驗證與登入都是寫死的程式驗證看工具歷史有沒有真的點到讚,登入由 harness 帶著憑證直接送出,不經過 agent。最後跑了六輪就成功。
- Tejas 的預測2025 是 agent 之年,2026 是 harness 之年,希望 2027 是 agent 在動手前自己現場生出 harness 的一年。
原話
▶ 02:25“Because the name of the game with harness is reliability.”
harness 的重點就是可靠度
▶ 04:05“everything around the model that gives it grounding in reality.”
模型周圍所有讓它踩在現實上的東西,這是 Tejas 對 agent harness 的定義
▶ 13:11“This is not different prompt, this is my logic.”
這不是換 prompt,是我寫的邏輯
▶ 17:37“Models are non-deterministic, and you want to do more with less.”
模型不是確定性的,而你想用更少的資源做更多事
▶ 19:03“2025 was the year of agents. Yes 2026 is the year of harnesses.”
2025 是 agent 之年,2026 是 harness 之年
延伸
- Tejas 用一個例子說明租來的模型是黑盒:如果 Opus 暫時不能用,供應商就算改給你 Sonnet,你也不會知道。
- Tejas 把先加驗證、讓 agent「正確地失敗」,再補上登入讓它成功的過程,比作測試驅動開發。
章節
點時碼直接跳到原片的那一段。
- 開場與自我介紹Tejas 自介是 IBM 的 AI developer advocate,說 IBM 訓練 frontier 模型也做 harness,並先問現場有多少人有把握講清楚 harness。
- 這個詞有兩種意思這個詞今天被講了很多次;在機器學習那邊是模型的測試套件,在 AI engineering 這邊是另一回事。
- 為什麼需要 harness我們付月費租算力,拿到有限的 context window,模型又是黑盒,所以要靠 harness 換來可靠度。
- 從登山與遛狗講起用登山安全帶和遛狗背帶比喻:把東西綁在穩定的東西上,不讓它跑太遠。
- agent harness 的定義Tejas 說今天講的不是 ML 的那種,而是模型周圍讓它踩在穩定環境上的一切,Claude Code 就可以看成一個 harness 過的 coding agent。
- 常見的零件工具註冊、模型、context 管理、guardrails、agent loop,以及 coding agent 裡跑 lint 和測試的驗證步驟。
- demo 設定要做一個瀏覽器 agent 去 Hacker News 按第一篇的讚,刻意用 2023 年的 GPT-3.5 Turbo,而且整場不改 prompt。
- 基本版的程式瀏覽器 session 是用 Playwright 包的 class,工具格式來自 OpenAI 的 SDK,context 只有最基本的 system prompt 加任務,再加一個 while true 的 loop。
- 第一次執行:撞到登入還說謊agent 碰到登入畫面就慌了,點了讚按鈕卻直接當成功,沒有驗證。
- 第一步:guardrails加兩條規則,超過 6 步就中止,訊息太多就壓縮 context;壓縮的做法很粗糙,只保留 system prompt、使用者任務和最後兩則訊息。
- 第二步:抽成 harness把 index 裡的邏輯幾乎全搬進 run harness,入口剩約 19 行,行為不變。
- 第三步:驗證與重試外層最多跑 3 次,驗證函式檢查工具歷史,有真的點到讚才算成功;登入失敗或停在登入頁就直接判失敗,結果仍失敗但不再說謊。
- 第四步:自動登入login handler 在每輪寫入紀錄前檢查,在登入頁就由 harness 填憑證送出,不經過 agent;再跑一次,六輪後成功,Tejas 到 Hacker News 確認真的按到讚。
- 實務上為什麼重要模型不是確定性的,想用便宜或小的模型(例如 GPT OSS)就要靠好 harness;Tejas 提到 IBM 的開源專案 OpenRAG,為受限資料環境提供企業級安全。
- 下一步:現場生成的 harnessTejas 期待 agent 動手前先替自己生一個 harness,像 plan mode 的加強版,最後提醒投影片放在 GitHub。
名詞
- agent harness
- Tejas 的定義:模型周圍、讓它踩在穩定環境上的一切,是 agent loop 外面的東西
- guardrails
- harness 裡的規則,demo 裡是最多 6 步與訊息數上限,超過就中止或壓縮 context
- verify step
- 用寫死的程式檢查工具歷史,確認任務真的完成,demo 裡是有沒有真的點到讚
- login handler
- demo 裡由 harness 在登入頁自動填憑證送出的函式,不經過 agent
- GPT-3.5 Turbo
- demo 刻意選用的舊模型,用來證明 harness 可以補足模型的弱點
- Playwright
- demo 的瀏覽器 session 底層,Tejas 強調這是傳統工程,不是 Playwright MCP
- OpenRAG
- Tejas 提到 IBM 的開源專案,讓大公司在私密資料環境做 RAG,harness 負責企業級安全








