概要
这篇文章讨论一个工程问题:把一次性的 AI 对话升级成可长期运行的定时任务时,会遇到哪些结构性问题,怎么解。 读完你能拿到一套三模块拆解思路、一份失败兜底的设计清单,以及三段可直接复用的提示词。 偏设计思路,代码量不大,但每一条都是能落地的判断。
一、问题的起点
大部分人用 AI 停在对话上:遇到事,打开对话框,描述问题,拿到结果,关掉。这个模式能解决单次任务,但解决不了重复任务。
重复任务的特征是:每天都发生、每次流程一样、做完不留痕迹。这类活交给对话模式,你付出的不是执行时间,是每次都要重新组织语言和贴材料的成本。一天一次看不出来,一年三百次就很可观。
把它变成定时任务,要解决的不是「怎么让 AI 听懂」,而是三个工程问题:输入从哪来、中间怎么流转、失败了怎么办。
二、三模块拆解
任何自动化任务都可以拆成三块,这三块必须分开设计。
| 模块 | 职责 | 失败表现 |
|---|---|---|
| 数据源 | 提供原始输入 | 拿不到内容,或拿到格式变了的内容 |
| 处理链 | 逐级加工 | 中间步骤输出跑偏,后续全歪 |
| 触发与投递 | 定时执行并送达 | 该跑没跑,或跑了没送到 |
分开设计的好处是可定位。揉成一团的时候,跑失败了只能整条重试、整条猜。分开之后,每块单独可测,出问题直接锁到模块。
先说数据源的选型。判断标准不是重要性,是稳定性:这个来源是否每天更新、格式是否稳定、接口是否可靠。选一个三天两头改版面的源,处理链会持续失效,维护成本会把省下的时间全部吃掉。
三、处理链的分段原则
处理链要分段,分段原则是一段一个动作,且动作互斥。
以日报为例,三段的分工是:
第一段只做整理。把原始内容变成条目,一条一行,不做任何概括和评价。核心要求写在提示词里:
把下面内容整理成条目,一条一行。只做整理,不总结、不评价、不合并、不遗漏,原文怎么写的就怎么留,每条带来源。 内容如下:{{抓到的原始内容}}
第二段只做筛选和排序:
把下面条目按重要性排序,只保留带日期或带数字的。开头写一段不超过五十字的概览,说明今天最需要注意的是哪一条。 条目如下:{{一段的输出}}
第三段只做格式化输出:
按下面的模板输出,顺序和标题不要改。 今日概览:一句话 重点关注:三条以内 其余动态:剩余条目,一行一条 数据来源:来源列表 {{二段的输出}}
这里的工程考量有三点。
第一,第一段必须保持信息无损。 很多人习惯在第一段就让 AI 顺手总结,结果是后面所有环节拿到的都是已经失真的二手信息,原始细节再也找不回来。整理阶段越笨越好。
第二,筛选标准必须可判定。 「重要的」是一个无法执行的判断,「带日期或带数字的」是可判定的规则。提示词里的每一条约束,都应该能被机械地验证。
第三,输出模板必须固定。 模板固定之后,人这一端的阅读成本会持续下降,因为每一项永远出现在同一个位置。这是给人读的接口设计。
四、触发与投递
任务注册的配置长这样:
触发:每天早上 09:03 步骤:依次跑一段、二段、三段,前一步输出作为后一步输入 投递:发送到我的邮箱 异常:失败自动重试两次,仍失败则立刻通知我 要求:无论成败,都要有一条执行记录
三个细节值得展开。
触发时间避开整点。 整点是绝大多数人的默认选择,定时任务在整点集中触发会带来不必要的资源竞争。错开几分钟,稳定性反而更好。
重试要区分层次。 网络抖动、数据源临时不可达,属于瞬时故障,重试能解决;提示词写错、字段名变更,属于确定性故障,重试一万次也没用。所以重试次数设成两次就够,超过两次说明不是瞬时问题。
必须留执行记录。 这一条比成功通知更重要。成功的时候你自然能收到结果,失败的时候只有记录会告诉你。没有记录,任务静默挂掉后你会以为一切正常,等发现时可能已经断了几天。
五、失败排查
按现象定位:
| 现象 | 定位到哪块 | 检查什么 |
|---|---|---|
| 任务未触发 | 触发模块 | 时间配置、任务状态 |
| 触发了但无结果 | 数据源 | 单独跑第一段,看原始内容是否为空 |
| 结果缺字段 | 数据源 | 对比原始内容与整理输出,格式是否变更 |
| 输出格式不一致 | 处理链第三段 | 模板约束是否写明顺序与标题不可改 |
| 内容冗长 | 处理链第二段 | 筛选条件是否过宽 |
| 静默中断 | 触发与投递 | 查执行记录,确认是否配了失败通知 |
这张表的价值在于把排查从「逐条重试」变成「按模块定位」。
六、验收
上线后按三条验收:
- 连续跑三天,结果准时到达,检验常规路径
- 手动断开一次数据源,确认失败通知能收到,检验异常路径
- 改一条原始内容,确认它出现在当天结果里,检验链路完整性
第二条最容易被跳过,也最重要。一个没验证过异常路径的自动化任务,你不知道它在挂掉的时候会不会告诉你。
七、一个判断
自动化省下来的时间往往被高估。真正被省下来的是「还得去查一下」这个持续占用注意力的念头,而这个念头的成本比执行时间高。
所以做这类任务的收益判断标准,不看它一天省几分钟,看它能不能把一件事从你脑子里清出去。能清出去的就值得做,清不出去的,做得再快也只是把焦虑搬了个地方。
我建了个 AI 技术交流群,平时在里面聊提示词怎么写、工作流怎么搭这类话题,感兴趣的可以联系我哦!