页面加载中...
从重试策略、降级方案到熔断机制,构建生产级 Agent 的错误处理体系。
Agent 依赖外部 API、文件系统、网络——每一环都可能出错。不像传统软件有明确的异常类型,Agent 的错误更隐蔽:
async function callWithRetry(fn, maxRetries = 3) { for (let i = 0; i < maxRetries; i++) { try { return await fn(); } catch (err) { if (err.status === 429) { const waitMs = Math.pow(2, i) * 1000; await sleep(waitMs); continue; } throw err; } } throw new Error('重试耗尽'); }
在 System Prompt 中加入降级指令:
const circuitBreaker = { failures: 0, lastFail: 0, threshold: 5, cooldown: 60000, canTry() { if (this.failures < this.threshold) return true; return Date.now() - this.lastFail > this.cooldown; }, recordFailure() { this.failures++; this.lastFail = Date.now(); }, recordSuccess() { this.failures = 0; } };
LLM 输出不可信,必须验证:
function validateToolCall(output) { try { const parsed = JSON.parse(output); if (!parsed.tool || !parsed.args) throw new Error('缺少必要字段'); return parsed; } catch { return { tool: 'fallback', args: { rawOutput: output } }; } }
Agent 站点首选部署平台,零配置部署 Next.js,全球 CDN
立即体验 →