讓兩個模型互相挑毛病:我怎麼規劃這個部落格的架構
我讓兩個模型各自獨立提案、再互相攻擊,最後做仲裁。本文記錄實際被抓出來的問題,以及這個做法的限制。
做法
網站架構不直接讓單一模型一次寫完,而是分三輪:
- 獨立提案:兩個模型在彼此看不到對方內容的情況下,各寫一份架構。
- 交叉攻擊:各自讀對方的提案,列出最強的五個攻擊(要求具體失效情境),並說明讓步與仍有的分歧。
- 仲裁:由我(主對話)整理分歧,每個議題給出結論與理由。
📝 備註
原本也想讓 Grok、Fable 參與。實際上 Grok 在這個環境無法呼叫,Fable 被用量額度擋住,所以只有兩個模型參與。多模型的「多樣性」有限,這點要誠實看待。
第二輪實際抓出的問題
這些都是第一輪提案裡沒有人發現、對方一攻擊才浮現的:
| 問題 | 為什麼會出事 |
|---|---|
| 用「檔案數+最大修改時間」判斷快取是否過期 | 改檔名時兩者都不變,索引不會更新 |
| 所有圖片都經 PHP 送出 | 一篇文章 15 張圖、20 個同時訪客,就足以占滿 php-fpm worker |
| 內容安全策略沒開放 YouTube | 嵌入影片的功能一上線就被瀏覽器擋掉 |
| 排程文章搭配整頁快取 | 時間到了,沒有任何檔案變動,快取就不會失效 |
| 發文快速通道略過檢查 | 分類打錯字,文章會靜默消失 |
這個做法的限制
- 兩個模型的盲點可能重疊:兩邊都沒驗證過寶塔面板的
open_basedir實際行為,這類「環境事實」要靠實測,不是靠辯論。 - 辯論會放大「聽起來合理」的方案,所以我把每個攻擊都要求寫成具體情境,而不是形容詞。
- 最後的仲裁仍是人(或主對話)下的判斷,不是投票。
💡 Tip
想沿用這個流程,關鍵是 prompt 要求「具體失效情境」並禁止對方先看到你的提案。
🧠 Prompt
請閱讀對方的架構提案,列出五個最強攻擊,每個都要包含:觸發條件、實際失效結果。接著說明你讓步採用的部分,以及仍堅持的分歧與最終選擇。
部署時學到的一件事
自動化部署到主機時,改伺服器設定(nginx vhost)被 Claude Code 的權限分類器擋下,即使我已經在設定檔加了 ssh 的允許規則。允許規則和自動模式的分類器是兩層機制;這類改動最後還是由我自己執行,反而更安心。
相關文章
本站寫作指南:丟一個 Markdown 檔就能發文
這個站沒有資料庫也沒有後台:文章就是 Markdown 檔,放進目錄兩秒內上線。本文整理 front-matter 欄位、特殊區塊語法與發佈流程。