
面试官问的是假设你让一个Agent跑一个批处理任务要处理200份文档跑到第137份的时候挂了你怎么办他想了几秒钟说那就重启一下从头跑呗。面试官有点惊讶追问了一句那你昨天跑那137份的时间和token呢他一下子没接上话。面试官等了几秒换了个角度说你有没有想过怎么让任务’记住’自己跑到哪了挂了之后能接着往下跑他想了一会儿摇摇头说这个没认真想过。面试官点点头没再追问但他知道这一轮悬了。回来之后他找我聊说这个问题他确实没想过——平时跑任务挂了就重跑没觉得有什么问题。我说其实这个问题值得认真想一下因为Agent长任务挂掉几乎是必然的真正决定你损失多大的不是会不会挂而是挂了之后有没有留一条能接上的路。今天就把这个说清楚。✦ ✦ ✦为什么Agent任务这么脆先搞清楚问题出在哪。一个典型的长任务Agent本质上是这样工作的先读取所有历史对话然后决定下一步做什么接着调用工具再把结果追加进历史然后再读一遍全部历史最后再决定下一步就这么循环。这个模式在五分钟的问答里没什么问题。但放到一个持续几小时甚至几天的任务里会在三个地方崩掉。第一个是上下文被污染了。跑了几百轮之后历史记录里塞满了过期的工具输出、重复的指令、无关的闲聊。模型开始搞不清自己到底进行到哪一步了。第二个是token成本爆炸了。每次推理都要把几天的完整对话重新塞给模型一遍费用直线上升。第三个是没有恢复点。一旦进程被杀、网络断开、模型报错唯一的记录就是那个越来越臃肿、越来越不可靠的对话历史。而这个历史本身很可能就是崩溃的原因。所以真正要解决的不是重试一次API调用这么简单的事。而是如何让Agent在任意时刻挂掉都能有一个干净、可信、可以直接接续的状态。思路把任务拆成可检查点的单元业界的做法其实高度一致。可以归纳成一句话就是不要保存整段对话要保存任务的进度快照。具体拆开来看一个健壮的检查点机制通常包含三样东西。第一个是任务目标也就是这一步要完成的最终结果是什么一句话说清楚就行这个目标不随着任务进行而漂移。第二个是检查点清单已经完成的最小单元有哪些正在处理第几个剩下的还有哪些。这份清单是任务能否续跑的核心。第三个是当前工作区状态文件改了没改、数据库写到哪一行、生成了哪些中间产物。这部分要能被独立检查而不是只存在于模型的记忆里。一个被反复提到的判断标准是如果从这一点续跑能省下5分钟以上的算力或者能省下几块钱的token花费这个检查点就值得存。换句话说检查点不是越多越好是划算才做。还有一个容易被忽略但很关键的细节检查点要在一个工作单元真正成功之后再写而不是提前写。如果提前写你可能会把一个看起来做完了、其实执行到一半失败了的步骤记成已完成。续跑的时候反而会跳过一个坏掉的结果。例子一处理200份文档的批任务回到开头那个合同抽取的场景。如果我们按上面的思路重新设计流程会变成这样。任务启动时先检查是否存在上次的检查点记录。如果有就读出last_completed_index从last_completed_index 1开始而不是从0。每处理完一份文档也就是抽取成功、写入数据库成功之后立刻把第N份已完成写进一个持久化的地方。可以是数据库的一个字段也可以是一个JSON文件不需要多复杂。中间产物本身也就是已经抽取出的结构化数据它就是状态的一部分不依赖模型记住它。这样即便半夜在第137份的时候挂了第二天重启任务读到的检查点是136直接从137开始。前面的工作一秒都不用重做。面试官问的那个场景就是这个意思。例子二跨越数小时甚至数天的Agent工作流再看一个更复杂的场景。一个Agent需要安装依赖、改代码、提交PR、发消息通知、等人工审核。审核可能几小时后才有人回应然后Agent要根据反馈继续改。这种任务的难点在于等待本身可能长达数小时进程不可能一直挂着等。业界的做法是把整个流程当成一个可以随时暂停、随时在全新环境里复活的工作流。状态被完整地外部化保存下来不管是重启进程还是换一台机器都能重新加载状态接着跑。这背后本质上是一种每一步都落盘、每一步都可重放的设计哲学。工具调用有没有执行过要能查到执行到哪一步要能查到人工反馈进来之后要能准确地对接到流程的正确位置。例子三本地开发时你自己就能做的土办法不是所有场景都需要上重型框架。如果你只是在用Claude Code这类工具跑一个长任务或者自己写脚本调用模型API其实可以用一个很朴素的原则自救中断之后先别急着继续对话先去看现场。具体来说续跑前做三件事。第一件事是看工作区git status、改动过的文件、日志、已经生成的产物这些是最真实的事实比模型嘴里说的我做到哪了可靠得多。第二件事是重建一份精简的上下文不是把几万字的历史对话原样喂回去而是根据检查点和工作区状态重新写一段简短、准确的任务说明。第三件事是从下一个最小单元开始做完先验证验证通过再扩大范围。不要因为看起来只剩一点了就一口气把剩下的全跑完出了错又得从头排查。养成这个习惯之后你会发现模型可能会忘事终端可能会关掉对话可能会重启但任务本身留下的痕迹一直都在顺着痕迹总能接得上。写在最后Agent长任务会挂这几乎是必然的。网络会抖、API会超时、模型偶尔会犯错。真正决定你损失多少时间和成本的不是会不会挂而是挂了之后你有没有留一条能接上的路。三句话总结一下哈。第一句保存的是进度快照不是整段对话历史。第二句检查点在工作单元成功之后写划算才写。第三句续跑前先看工作区的真实状态再决定从哪接着做。下次你的Agent又跑到一半挂掉的时候希望你打开的不是一个空空如也的终端而是一份清清楚楚写着做到第几步的记录。学AI大模型的正确顺序千万不要搞错了2026年AI风口已来各行各业的AI渗透肉眼可见超多公司要么转型做AI相关产品要么高薪挖AI技术人才机遇直接摆在眼前有往AI方向发展或者本身有后端编程基础的朋友直接冲AI大模型应用开发转岗超合适就算暂时不打算转岗了解大模型、RAG、Prompt、Agent这些热门概念能上手做简单项目也绝对是求职加分王给大家整理了超全最新的AI大模型应用开发学习清单和资料手把手帮你快速入门学习路线:✅大模型基础认知—大模型核心原理、发展历程、主流模型GPT、文心一言等特点解析✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑✅开发基础能力—Python进阶、API接口调用、大模型开发框架LangChain等实操✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经以上6大模块看似清晰好上手实则每个部分都有扎实的核心内容需要吃透我把大模型的学习全流程已经整理好了抓住AI时代风口轻松解锁职业新可能希望大家都能把握机遇实现薪资/职业跃迁这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】