慣性聚合 高效追蹤和閱讀你感興趣的部落格、新聞、科技資訊
閱讀原文 在慣性聚合中打開

推薦訂閱源

Google DeepMind News
Google DeepMind News
人人都是产品经理
人人都是产品经理
M
MIT News - Artificial intelligence
博客园 - 叶小钗
MyScale Blog
MyScale Blog
V
Visual Studio Blog
月光博客
月光博客
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
量子位
I
InfoQ
有赞技术团队
有赞技术团队
阮一峰的网络日志
阮一峰的网络日志
Jina AI
Jina AI
V
V2EX
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Blog — PlanetScale
Blog — PlanetScale
Last Week in AI
Last Week in AI
雷峰网
雷峰网
Stack Overflow Blog
Stack Overflow Blog
博客园 - Franky

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant Common SOC 2 Failures (Real World) Stop Vibe-Checking Your AI App: A Practical Guide to Evals How to Use SonarQube and SonarScanner Locally to Level Up Your Code Quality Your Next To-Do App Is Dead — I Replaced Mine with an OpenClaw AI Sign a Nostr event in 60 lines of Python using coincurve — no nostr-sdk, no nbxplorer, no rust toolchain ITGC Audit Explained Like You’re in Big 4 Patch Tuesday abril 2026: Microsoft parcha 163 vulnerabilidades y un zero-day en SharePoint Stop scraping everything: a better way to track competitor price changes Listing on MCPize + the Official MCP Registry while routing payments OUTSIDE the marketplace — how I kept 100% of my x402 revenue Building an AI-Powered Risk Intelligence System Using Serverless Architecture Why We Ripped Function Overloading Out of Our AI Toolchain Testing AI-Generated Code: How to Actually Know If It Works SaaS Churn Is Killing Your Business. Here Is What to Do About It (Without a Support Team) The Speed of AI Is No Longer Linear - And Self-Improving Models Are Why How to Implement RBAC for MCP Tools: A Practical Guide for Engineering Teams From Standard Quote to Persuasive Proposal: AI Automation for Arborists I built a CLI that scaffolds complete multi-tenant SaaS apps Axios CVE-2025–62718: The Silent SSRF Bug That Could Be Hiding in Your Node.js App Right Now The dashboard that ended our friendship Data Pipelines Explained Simply (and How to Build Them with Python)
AI 代理失敗迴圈:當持續性變成一個品質錯誤
Gregory Shev · 2026-05-25 · via DEV Community

在2026年,我希望我的AI程式代理能多一條規則:知道何時該停止。

AI代理並非總是因停止而失敗。

有時候它們是因繼續而失敗。

我在為一個實際品牌系統建立自訂西里爾字體擴充時遇到了這個問題。這個任務看起來很具體:讓西里爾字母、拉丁字母、數字和特殊符號感覺像是一個編輯字型家族。

Claude Code 和 Codex 持續運作。他們產生檔案、匯出證明、報告進度,並修復了最後一個可見的投訴.

但同樣的缺陷類型持續出現.

這就是 AI-agent 失敗迴圈的危險版本:工作流程看起來有效率,而實際的品質問題仍然存在.

失敗迴圈是什麼?

失敗迴圈是一種重複的模式,其中代理持續產生新的候選修復方案,而同樣的基本缺陷仍然無法解決.

它通常有五個步驟.

  1. 使用者再次拒絕同類型的缺陷.
  2. 代理修補最新的症狀.
  3. 證明閘門太弱無法捕捉問題.
  4. 代理要求另一個人工審查。
  5. 每個人又花了一個循環在相同的问题上.

一個錯誤是正常的.

當代理在驗證系統已經失敗後仍然繼續時,真正的過程錯誤才出現.

為何正常的證明循環會失敗

證明循環是有用的。測試、截圖、構建檢查、linting、差異比較以及生成的報告都重要。

但證明迴圈也可能變成戲劇,如果它們測量的不是正確的東西的話。

在我的字型專案中,代理程式可以證明字型編譯成功,PDF渲染完成,螢幕截圖存在,邊界框變更,以及數字分數提升。

這並沒有證明字母看起來正確。

使用者拒絕的是另一回事:視覺一致性。

有些西里爾文字符看起來太短、太粗、間隔太鬆散,或結構上與拉丁字母不相配。

如果閘門無法看到人類持續看到的缺陷,閘門就不允許宣告任務完成。

我現在使用的規則

當同樣的可見缺陷類型出現兩次後,停止正常執行。

不要再進行另一個猜測性的補丁。

不要放鬆門檻.

不要要求使用者檢查另一個候選文物.

切換到失敗迴圈中斷模式.

失敗迴圈中斷器的作用

失敗迴圈中斷器是AI-agent工作的硬模式開關.

更好的下一步輸出是一個診斷套件,而不是另一個候選修復方案.

它應該包含:

  1. 重複失敗類別;
  2. 一組被拒絕的已知錯誤範例;
  3. 一個紅色優先的閘門,在這些範例上失敗;
  4. 一個將閘門變為綠色的修復措施;
  5. 當作者已看到答案時進行盲測或獨立驗證;
  6. 一個清晰的繼續、停止或人類決策建議。

這不僅僅是一個重試限制。

重試次數限制可阻止成本增長。失敗迴圈斷路器會改變工作本身.

紅色優先門很重要

一個有用的門必須在修復之前失敗,否則就沒有證明它能看見舊的失敗.

如果代理無法讓新的檢查器對先前壞的工件失敗,它就沒有為真問題建立檢查器.

許多代理工作流程跳過了這一部分。

他們增加了一個新的指標,看到新的候選人得分更高,就稱之為進步。這個指標從未被強制要求拒絕舊的失敗。

對於主觀或視覺任務來說,這個問題更加重要,因為被拒絕的語料庫成為了人類品味和確定性驗證之間的橋樑。

當代理被污染時

另一個陷阱是受污染的驗證:同一個代理程式編寫修補程式、知道目標,並評分結果。

這在迭代過程中可能有用,但它不是獨立的驗證。

若代理已見過預期答案,最終檢查需要一個具有隱藏範例的確定性閘、一個盲目的審查者、一個不接收作者推理的獨立模型,或當要求是品味而非計算時的人類決策.

同作者驗證通常是自洽性,而非證明.

我將這些包裝成一個小型公共技能

我把這條規則轉換為一個小型公開倉儲:

https://github.com/g-shevchenko/agent-failure-loop-breaker

它安裝了一個緊湊的技能和倉儲本地的規則,用於Claude Code、Codex、Cursor和Windsurf。

它的安裝規則是故意簡單的:

如果相同的缺陷類別出現兩次,代理必須停止正常打補丁並建立一個被拒絕的語料庫,加上一個紅色優先門檻,然後才能繼續。

這個套件並非為了讓模型變得更聰明.

它讓工作流程更不願將運動與進度混淆.

公司常犯的錯誤

團隊通常會將代理的持續性視為一種資產.

對於範圍明確且測試嚴格的实施任务来说,這是合理的。對於接受標準是視覺、編輯、架構或運營的工作來說,這是有風險的。

如果Claude Code、Codex、Cursor或Windsurf不斷在相同類型的審查中失敗,下一步的投資應該投入到驗證合約中。

即使世界上最好的提示,當閘門獎勵錯誤的工藝時,它仍然會循環。

這裡有幫助

這種模式對UI潤飾迴圈、視覺回退工作、PDF和簡報產生、字體系統、內容QA,以及同一個錯誤重現的智能編碼任務有用。

這就是信號:

如果使用者說「這還是一樣的問題」兩次,過程應該改變。

實用收穫

不要要求 AI 代理「無限重試」.

要求它證明它的檢查器能抓到最後失敗的嘗試.

如果它做不到,下一個任務就不是實現.

在那個時候,下一個任務是建立一個更好的閘.

完整寫入:

https://gregshevchenko.com/notes/ai-agent-failure-loop-breakers/