Prompt Harness
System Prompt 不是一坨文字
生產級的 System Prompt 不是想到什麼寫什麼。它是分層管理的:身分層、環境層、工具層、行為層,各管各的,改一層不影響其他層。
「一坨文字」長什麼樣
常見的混亂寫法
你是一個 AI 助手,名字叫 Alice。你可以搜尋網頁、讀寫檔案、
現在是 2026 年,使用者在中國。當使用者讓你搜尋時用 web_search 工具,
回答時先思考再回答,不要編造資訊。你的性格溫暖友善,
檔案操作用 file_read 和 file_write,使用者的語言偏好是中文,
如果不確定就告訴使用者你不知道...
身分、環境、工具、行為全混在一起。改一處可能影響全部,誰也說不清哪段影響了哪個行為。
分層管理:四層各司其職
點選每層查看它負責什麼
身分層
我是誰?性格、角色、基本人設
定義 AI 的身分認同:
- 名字、角色定位
- 性格特徵(友善 / 嚴謹 / 幽默…)
- 基本能力邊界(能做什麼、不能做什麼)
環境層
現在什麼情況?系統狀態、使用者上下文
提供當前執行時資訊:
- 使用者基本資訊(語言偏好、時區…)
- 當前作業系統、應用狀態
- 會話上下文(在哪個頁面、之前做了什麼)
工具層
能用什麼?可呼叫的工具和 API
註冊 AI 可以使用的工具:
- 工具名稱和功能說明
- 參數格式
- 使用限制和注意事項
行為層
怎麼行動?輸出格式、決策規則
規定 AI 的行動策略:
- 回答風格和格式要求
- 決策優先順序(先做什麼、後做什麼)
- 安全護欄(什麼不能做、什麼要確認)
分層的好處
改一層不影響其他層
加個新工具?只改工具層。調整回答風格?只動行為層。不會牽一髮而動全身。
多人協作不衝突
產品改行為、工程師加工具、營運調人設,各改各的檔案,Git 合併不衝突。
A/B 測試更精準
想測試不同的回答策略?只替換行為層,其他三層保持不變,變數單一。
排查問題更容易
AI 行為異常?按層檢查:是身分搞錯了、環境資訊過時、工具描述有誤、還是規則衝突?
一坨文字改一處可能影響全部。分層管理,改一層不影響其他層。生產級的 System Prompt 是四個獨立管理的模組。