AI图鉴

AI图鉴首页 › AI 资讯 › Agent 开发与后台开发有什么不同:从一次请求到长期个人助手

Agent 开发与后台开发有什么不同:从一次请求到长期个人助手

来源:掘金 · 发布时间:11-04 · 由 AI图鉴每小时自动聚合

从后台请求到长期个人助手,比较成熟 Agent 框架,并用异步交付、人工回复、记忆消费与每日研究案例,说明工程责任怎样跨越时间。

如果已经做过后台应用,第一次接触 Agent 往往会觉得熟悉:接收请求、查资料、调用接口、保存结果,再返回给用户。把模型放在中间,似乎就是一个带自然语言入口的业务系统。

真正的变化出现在运行过程中:下一步做什么,不再全部由开发者提前写好,而可能由模型根据刚刚看到的材料临时决定。 这个决定还会受到上下文、工具描述、历史摘要和用户偏好的影响。

因此,Agent 工程是在成熟的后台工程基础上,接纳一个具有语义不确定性的决策环节。开发者既要让它能探索,也要让每次行动有范围、每次中断能解释、每份成果能取得。到了个人助手阶段,还要让这些约束跨越时间与用户的变化。

前半篇沿一个教学任务比较控制方式:读取两份基金披露并生成报告,再看工具、状态与成熟框架怎样组织工作。后半篇转向我们私有研究应用中已经做过的异步交付、人工回复、记忆消费和每日复读,用实际成功与反例解释视野为什么扩大。教学案例、脚本模型验收和小规模真实模型观察分别标明,不代表真实投资研究或自动交易能力。

前半篇的公开教学实现以 2026 年 11 月 3 日核对的 Open ETF Agent v0.19.0 为基线,主流体系采用同日查阅的官方资料。Open ETF Agent 是适合拆解机制的本地教学项目;Claude Agent SDK、Codex、OpenAI Agents SDK 和 LangGraph 则提供不同层次的运行能力。它们在本文中承担比较坐标,不构成产品排名。版本与源码入口

一、从同一个任务,看见控制方式的变化

假设用户说:“比较这两份基金材料,告诉我发生了什么变化,附上来源,保存一份报告。”

规则明确时,后台程序完全可以完成它:读取指定文件,校验日期和字段,执行固定计算,再套用报告模板。遇到缺字段就返回错误,遇到需要人工确认的情况就进入审批流程。这种方案容易测试,也便于复算。

但开放任务可能在读完材料后才暴露真正的问题:两份文件的统计时点不同,某个表格只披露部分项目,所谓“增长”使用了不同的分母。系统需要决定:补读原文、寻找可比口径、换一种分析方法,还是只给出有条件的结论。

这里才出现模型的价值:它可以根据观察提出新的研究动作。与此同时,模型也可能误判缺口、选择错误工具,或者在没有足够依据时写出流畅结论。

这些不是两个互斥世界。工作流引擎早已支持动态分支、异步和长期任务,Agent 也完全可以嵌在一条固定流程中。变化在于:部分控制决策由模型产生,而模型的判断条件本身也在不断变化。

规则驱动路径与 Agent 观察循环的对照:模型提出动作,宿主校验后执行,结果返回模型,拒绝与交付各有出口

图 1 · 决策可以交给模型探索,执行条件仍由系统掌握。图中的分组是职责说明,不要求拆成独立服务。查看完整图

二、最小 Agent 是一个观察循环,工程难点在循环之外和交接之中

一次模型请求可能返回答案,也可能返回工具调用提案。运行时接住提案,校验后调用工具,把真实结果放进下一次模型输入。新观察再次改变后续选择,直到交付、等待或停止。

Claude Agent SDK 已把 Claude Code 使用的循环、工具和上下文管理提供给应用;OpenAI Agents SDK 的 runner 也会围绕工具调用、交接和最终输出继续运行。这说明今天未必需要自己从零写一套循环,但仍须理解它把哪些责任交给了应用。Claude SDK · OpenAI runner

以 Open ETF Agent 为例,模型可以提议读取某页、执行计算或保存报告。工具宿主会检查工具范围、文档范围和参数,运行时记录实际派发及结果。模型说“已经保存”,和宿主留下可回读的文件回执,是两种不同的证据。公开运行时与工具实现

工具接口不仅供程序调用,也在教模型如何行动

普通接口的调用方通常按照既定契约编程。模型调用工具时,还会根据工具名称、参数说明和返回格式推断用途。一个叫 query 的万能工具,可能把资源范围、分页、时间口径和失败语义都留给模型猜。

更好的工具表面会让关键区别直接可见。例如“读取已授权文档的某一页”,就比“读取任意路径”更容易限定范围;返回文档版本、页码和完整性信息,也比只返回一段字符串更容易支持后续核查。

Open ETF Agent 的 read_result 回读已经取得的原始结果,而不是悄悄获取同一位置的最新内容;绑定来源的计算保留输入引用,CSV 可以继续消费同一个计算结果。这样,报告中的数字、附件中的数字和当时读到的依据才有机会对上。工具合同

Skill、MCP 与权限回答的是不同问题

Skill 适合封装一种可复用的方法:先查什么、如何比较、遇到缺口怎样处理,以及必要的模板和资源。MCP 提供外部工具与数据接入的协议。它们能改善 Agent 的工作方式,却不自动证明某个动作已经获得当前用户的授权。

这里也不能把某一项目的规则说成所有平台的共同规定。Open ETF Agent 中,Skill 不自行扩大原授权;Claude SDK 则允许宿主根据受信项目或个人 Skill 的 allowed-tools 配置预批准工具,并受组织设置约束。决定权限的是宿主接受的可信配置和策略,外部资料正文不能凭一句指令取得相同地位。Claude Skill 机制

Codex 对另一组区别的表达很直观:沙箱限定执行时可接触的文件、网络等资源,审批策略决定什么时候需要进一步批准。审批通过与执行隔离各有作用,不能用更聪明的模型替代其中任何一项。Codex 执行边界

三、开发者要管理两类状态:系统发生了什么,模型现在看到了什么

后台工程师习惯把数据库当作事实来源。Agent 还多出一份有限的“工作视图”:这次模型请求真正收到的上下文。

某份资料已经存入数据库,不代表模型已经读到它;模型读过某个片段,也不代表之后每一轮都还能看到;摘要中写着“已经验证”,更不能代替原始验证结果。

一次运行结束后,下一次究竟有什么不同?

传统后台也会更新数据库、保存报告和积累反馈,不能把它说成“每次从零开始”,再把 Agent 的所有变化都归入记忆。第一节比较的是一次任务怎样运行;这里比较的是运行留下什么,以及下一次怎样采用它。持久化不等于学习,存放在同一个数据库里,也不代表属于同一种状态。

仍用前面的两份材料作教学例子:第一次比较遗漏了费用口径,一周后用户带着新版材料再来。两类系统都能因读到新的数据库记录而得到不同结果;Agent 除此之外是否有所改善,要继续追问:

- 只保存旧报告:并不保证新 Run 知道上次的遗漏。

- 把旧报告和用户纠正明确带入本次输入:改变的是当前上下文,模型有机会据此检查费用口径,不是权重已经学会了新知识。

- 将“比较时单列费用口径”保存为获准偏好,并正确召回:形成跨任务连续性;还应检查实际模型输入,而不只查数据库记录。

- 明确修改比较 Skill,要求每次都检查口径:改变的是可复用方法。后台也可以把相同检查加入规则或工作流。

这个例子说明可能的机制,不是一次真实质量测评。第九节的实际 Memory 案例只确认有限的保存与后续输入消费,没有把它推成长期质量收益。

因此,后台会变,Agent 也会变;区别之一是,Agent 会把被选中的历史和派生材料交给模型重新解释,作为下一步判断的条件。 这种适应空间不取代后台基础,反而要求更明确地区分业务事实、执行事实与判断材料。需要核验的不只是“保存了什么”,还有“下一次实际读了什么、为什么可以使用、怎样影响行动”。

上下文工程由此变得具体:不是把能找到的材料都塞进去,而是选择对当前判断有用、仍然有效、来源清楚的内容。需要时能回读原文,不需要时可以省略。

这也解释了为什么“把上下文窗口做大”不是唯一答案。更大的窗口可以保留更多材料,却不会自动解决内容之间的冲突、旧偏好失效、工具结果诱导或重复研究。选择什么进入下一次请求,本身就是应用行为的一部分。

LangGraph 将线程内的 checkpoint 与跨线程 store 分开;Claude SDK 也明确区分会话历史和文件系统状态,会话恢复或分叉不会自动复制、回滚文件。不同体系的实现不同,但共同提醒我们:恢复对话、恢复计算位置和恢复外部工作成果,不能混用同一个“恢复成功”。 LangGraph 持久化 · Claude 会话

上下文管理还会改变资源分配。摘要、专家核查和补充检索都是实际工作,应计入同一项任务的预算,而不只是限制主对话轮数。Open ETF Agent 曾出现报告已保存、主任务未结束却重复摘要同一批材料的情况;它的修复转向校验并复用仍有效的摘要范围,而不是单纯放大调用额度。这个例子提示:维护上下文的机制也要有停止条件。教学实现主要约束调用额度,不等于完整的 token 或费用账本。设计来路

四、任务越长,越要承认“我还不知道发生了什么”

用一个普通后台开发也熟悉的例子:某个获准操作已经发往外部系统,对方可能已经完成,本地却因为断网没有收到回执。

如果它只是查询,重新读取也许可以接受,但新结果仍可能对应另一时点。如果它是发邮件、建订单或修改日历,重新执行就可能制造第二份效果。模型重新“想一遍”解决不了这一信息缺口。

关键分界在派发之前与之后。派发前明确被拒绝,可以在条件允许时修正参数或重试;派发后有可靠结果,就按原结果继续;派发后没有可靠结果,应保留未知,而不是把本地超时翻译成远端失败。

以派发为界区分未执行、已有回执和结果未知:未知操作先查原结果,不自动重发,也不因本地超时释放远端容量

图 2 · unknown 是需要处理的真实状态。进程已经停止,不代表外部动作已经停止。查看完整图

Open ETF Agent 从持久恢复设计开始,就把原 Run 的提案、工具派发、结果提交和结果消费分别记录。完整提案已经保存时,可以继续消费原提案;工具已经派发而结果未知时,不能重新执行来假装恢复。只有明确支持核对的适配器,才可以查询原操作是否完成。原授权、预算和截止时间也不会随着重启刷新。恢复设计 · 运行时恢复分支

这不是通用的外部“恰好执行一次”保证。数据库状态与外部动作通常不在同一个事务里,还需要业务幂等键、结果查询或明确的人工核对路径。LangGraph 官方也提醒:恢复 interrupt() 所在节点时可能重新运行代码,即使副作用放在审批之后,写入已成功、节点尚未完成时的故障仍可能导致重复写入。LangGraph 中断与副作用

持久恢复还会把视野推向人机协作。假如两份材料的统计口径无法直接比较,Agent 可以说明差异,请用户选择比较范围;这不是执行失败,也不必让模型反复猜测。系统应保存具体问题和当时的候选,等待回复,再核对回复是否仍对应当前任务与有效条件。保存 checkpoint 解决了“别丢进度”,却没有替用户作决定;能继续运行,也不代表现在应该继续。

对 Agent 来说,这类问题格外容易被“自主重试”的直觉遮住。一个好的运行时有时应该阻止模型继续行动:它需要先把原操作核对清楚,而不是给模型另一次机会猜测。

五、完成有三个层面,Agent 测试也需要三种观察

对开头的报告任务,至少有三个不同问题:流程是否正确结束,结论是否站得住,用户是否拿到了可读的成果。

工具成功读取文件,只说明文件读到了;保存报告成功,只说明某些字节保存了;报告引用了真实页面,也不能自动证明每句话都由该页面支持。Open ETF Agent 的运行结果保留 semanticStatus: unreviewed,就是把执行完成与语义评审分开。结果与回读说明

因此,传统测试仍然有明确位置:权限、参数、计算、事务、恢复和产物完整性,需要确定性的断言。模型引入的新问题,则要用任务样本检查它有没有找对依据、识别不可比条件、解释不确定性,并在证据不足时适当停止。

最后还要回到用户侧:报告能不能打开,附件与正文是否一致,中途失败后已经保存的阶段成果能否继续阅读。一个界面显示“已完成”,却下载不到文件,依然没有完成交付。

对研究任务,评测不宜机械要求唯一工具顺序。只要许可和业务约束相同,模型可能用不同路径找到相同依据。反过来,轨迹非常漂亮、工具调用很多,也可能没有解决原问题。应把目标完成、依据质量、执行可靠性和成本放在一起观察,避免只优化其中最容易计数的一项。

六、主流 Agent 给出的共同启发:复用运行能力,保留业务责任

成熟框架已经不只提供“模型调用加一个循环”。会话、工具执行、人工审批、上下文管理、持久恢复和轨迹观测,都有现成的实现。它们真正的区别,是把什么作为执行单元、由谁决定下一步,以及应用怎样接入自己的业务约束。下面仍用“两份材料比较并保存报告”作教学对照,不把官方能力列表当作本文跑过的测评。

Claude Agent SDK:把工作环境交给一个可执行的助手

Claude Agent SDK 复用 Claude Code 的工具、循环和上下文管理。相比自己拼接每轮消息、解析工具调用再继续,它更接近把一个具备读写文件、运行命令和调用扩展工具能力的执行器嵌入应用。上下文接近上限时,框架会压缩历史;这减少了应用维护循环的工作,但早期细节可能丢失,关键业务约束不宜只放在很早的一轮对话里。运行循环

在比较材料的场景里,应用可以准备独立工作目录,让 Agent 阅读两份文件、按需运行受控计算并生成报告。若有一项核对需要独立上下文,可以交给专门子 Agent,主任务再整合结果。这里的收益不是“角色越多越聪明”,而是把长材料和专门方法从主上下文中分离;简单并行读文件仍可用普通并发完成。子 Agent

真正需要认真设计的是执行环境。allowedTools 表示自动批准规则,不是“除此之外绝对没有工具”;部分调用在前置规则批准后不会进入 canUseTool。若租户范围检查必须逐次执行,应选择覆盖该调用路径的检查点,例如 PreToolUse hook,并由工具后端再次校验业务身份。权限规则也不等于文件系统和网络隔离。权限 · Hooks · 安全部署

它适合需要 Agent 在工作环境中持续操作的任务,但 resume 或 fork 不能替代工作区管理:分叉会话历史不会复制或回滚文件系统。要让两个候选报告互不覆盖,应用仍要准备各自的工作区或版本化产物。会话

OpenAI Agents SDK:把模型协作接入应用自己的调用链

OpenAI Agents SDK 提供运行循环、函数工具、交接、会话、审批和 tracing。已有后台服务可以把“读取授权资料”“计算可比指标”“保存报告”包装为工具;函数签名与说明形成模型可见的参数契约,业务服务继续掌握数据访问和写入规则。框架负责接住模型提案并推进循环,不要求业务数据库让位给聊天记录。工具

协作有两种不同结构。把专家作为工具调用,主 Agent 保持控制,接收专家结果后继续比较与成稿;handoff 则把对话控制交给接收方。前者适合“请专家核查统计口径,再由我完成报告”,后者适合“这个请求现在由另一类服务负责”。交接还涉及历史范围:默认传递的会话未必适合所有专家,应明确筛选输入,不能把压缩历史误当作脱敏。交接

状态支持也比“自己保存所有消息”更完整。Session 可自动加载和保存会话历史;需要人工批准的运行可以暂停为可序列化的 RunState,由应用存储后再恢复。两者分别解决会话历史与可恢复执行状态,不能混为一种业务事务。比如报告允许自动保存,但发送给外部收件人要审批:审批应绑定具体收件人、报告版本和动作,服务端核验批准者并防止旧批准重放。反序列化一个状态对象本身不会完成这些认证。Sessions · 人工审批

若等待需要跨越进程重启或很长时间,SDK 也提供与 Temporal 等持久工作流系统集成的路径。应区分三层:Session 保存会话,RunState 保存可继续的运行状态,持久编排基础设施负责长期执行与唤醒。不能因此把 OpenAI SDK 归为“只有内存循环”,也不能把序列化状态误认为已经部署了可靠的后台执行服务。长任务与持久执行

Guardrails 与 tracing 让检查和排障更容易,但覆盖范围必须读清。默认并行的输入检查可能与 Agent 执行重叠;若要求检查通过之前绝不能调用工具,就应采用阻塞检查。输入 guardrail 也不是每次工具调用的检查;逐次动作仍需对应工具管线或后端校验。轨迹能显示模型、工具和交接,却不能代替租户权限,也不自动证明结论正确;其中的输入输出还可能包含敏感材料,需要决定保留什么。Guardrails · Tracing

LangGraph:把不确定的判断放进可恢复的流程

LangGraph 以图状态、节点和持久化组织工作,既能表达预定工作流,也能容纳模型动态选择工具。材料比较可以拆成读取、口径检查、必要时询问用户、计算、成稿几个阶段;只有真正需要语义判断的部分交给模型,确定性计算仍是普通代码节点。图的价值不是强迫所有任务走同一条线,而是让应用明确哪些转移可以自主决定、哪些必须停下来。工作流与 Agent

Checkpointer 保存线程内执行状态,store 承载跨线程数据。持久化也有取舍:同步写入与异步写入的故障窗口不同,不能看到“有 checkpoint”就推断每一步都已安全落盘。对重要审批和外部写入,应按实际恢复要求选择持久化方式。持久化模式

interrupt() 可以暂停并等待输入,再以原线程身份恢复,但恢复会重新执行所在节点开头的代码,不是从暂停的那一行继续。假设报告发送成功后、节点提交前进程崩溃,恢复仍可能再次走到发送步骤。把发送放在审批之后并不足够,目标接口还需要稳定幂等键或原结果查询。查询暂时没有结果也不代表未执行;仍无法确认时应保留未知,不能自动重做。框架解决“从哪一段工作继续”,业务接口解决“这个效果是否已经发生”。中断与副作用

同样叫 Agent,交给框架的责任并不相同

Codex 同样说明执行边界与审批策略需要分别理解:允许运行一条命令,不意味着它可以访问所有文件和网络;命令运行成功,也不等于改动符合产品需求。工作区、验证与发布仍有独立的条件。Codex 安全边界

这些能力有重叠,上表是比较视角,不是排他分类。Open ETF Agent 则继续充当可拆解的教学样本:原始证据、共享预算、未知结果与有限组合可以沿固定源码检查,但不能凭教学样本的约束推断成熟框架也缺少对应能力。真正值得比较的是:同一份资料、同一次审批、同一个外部效果,在选定框架里分别由谁保存和验证。

七、用户离开以后:我们先把“继续做”和“回来读”分开

前面比较的是框架能提供什么。下面换成我们在私有研究应用中实际遇到的问题:不是描绘一个完整个人助手,而是看一次研究怎样逐渐承担跨时间的责任。这些案例已有独立专题;这里保留改变设计判断的经历,不把工程链路验收当作研究质量或真实用户收益。

断开连接,不应改变任务是否完成

最初很容易把浏览器连接当成任务的生命线:页面在,流式输出就在;页面走了,任务似乎也结束了。我们实际断开连接后,研究仍在推进。这迫使完成判断从“连接是否结束”移到原任务的持久状态和最终正文。

一次验证又暴露了更细的误判:执行占用已经释放,读取到的状态却仍是 streaming。稍后原记录完成,正文也已保存。若只盯着释放信号,就会把“资源可以让出”误判成“成果已经可读”,甚至错误启动第二次研究。我们把验收改为观察原任务终态与发表正文,并在关闭原运行环境后,由独立读取进程取得同一份成果,没有新增模型请求。

这个成果的价值很具体:用户回来要的是已经做完的工作,不是再花一次时间重新生成。 它证明已完成结果可以冷读,不等于任意中途崩溃都能无损恢复。传统后台同样会做异步任务;Agent 额外需要保留探索已经取得的证据与结果,不能用一次重新生成来假装读到了原成果。

“报告完成了”和“现在该通知了”是两件事

接着,定时交付让“完成”再次分叉。约定“某时交付”时,提前完成的正文可以先保存,但不能因此提前发送最终通知;约定“某时以前交付”则允许提前完成。如果到点只有部分结果,之后补齐正文也不能抹掉曾经错过期限的事实。

我们在真实应用页面、认证链路和隔离数据库中,用合成账户与脚本模型验证了这些区别:离开再回来沿原任务读,部分交付与后来完成分别记录,其他账户不能读取成果。这里验的是应用行为,不是生产服务时延或真实模型研究能力。

长任务的代价因此不只是一个队列。系统要分别保存执行进展、可读成果和交付承诺;一个总的“成功”字段已不够表达用户经历。异步研究与定时交付展开了这次拆分。

这次拆分也给出了一个有用的展望:长期目标可以跨越许多轮研究,每轮执行仍有自己的范围与终点。已经验证的是任务与连接分离、成果独立回读;把它进一步组织成可修改、可退出的长期委托,还需要管理每次触发的条件和当前授权。下图把这两个时间尺度与单次模型请求放在一起,帮助看清下一步要承担什么。

长期目标、单次 Run 与模型请求的三个时间尺度:有界执行按获准事件唤醒,等待可释放计算,成果独立保留

图 3 · 从已验证的任务与成果分离,推演长期目标、单次执行和模型请求的分工。完整长期委托仍是设计方向。 查看完整图

八、用户回答以后:消息收到,不等于工作已经改变

任务能在用户离开后继续,随后就会遇到另一种等待:模型需要用户补充资料、确定范围或批准动作。弹出问题框并不难,难的是回答能否进入真正等待它的工作。

我们把“收到回复”和“采纳回复”分成两个状态。收到表示系统已经保存;采纳表示原执行在安全的继续位置读到了它。等待一个决定时,其他独立工作仍可完成;回复到达也不能把无关任务一起放行。

这个区别在子任务协作中尤其明显。主任务替用户概括一句“可以继续”,与原专家实际读到用户的完整回答,不是一回事。我们的受控验证沿原应用、认证 HTTP、数据库和独立进程走通了这条链:恢复后的主任务先取得原回答,再明确继续原来的子任务;子任务获得的是独立的用户消息,不是主任务的随意转述。同一身份、相同原文的回复在回执丢失后重试,返回原接纳结果,不再新增一条回复或重派原研究;已经结束的任务则需要显式继续,不能被迟到消息悄悄重新启动。

这样做的价值,是让人的决定对执行真正生效,也让“还没有生效”可见。 后台表单通常把提交成功作为这一步的终点;Agent 的人机交接还要检查后续消费者,否则界面显示“已答复”,执行却可能继续使用旧条件。

这组成功来自合成数据和脚本模型驱动的真实应用链路,验证的是回复归属、交接与重放。它没有证明真实模型已经善于提问,也不代表生产中的自动挂起与恢复已全面启用。我们宁可保留这个边界,也不把一个机制成功包装成完整协作体验。持久人机交互记录了收到、采纳与显式继续的差别。

九、下一次对话:我们怎样判断记忆真的被使用了

前两步维护的是同一个任务。个人助手还需要跨任务的连续性:用户是否每次都要重说同一件事?但“数据库里有一条记忆”并不能回答这个问题。

启用可选的自动语义学习时,我们把它安排在当次回答形成持久终态之后,避免学习失败拖住已经可以交付的回答;同时把个人记忆与测试记忆分开,并把归属固定在对话创建时。切换界面选项不应把旧任务改归另一存储,重置测试数据也不能让迟到任务把旧结果写进新的一代。

在一组小规模真实模型验证中,我们使用合成用户陈述和明确授予的合成 Host 权限,观察到候选记忆成为有效记录,并进入另一次新对话的实际模型输入。这比“保存接口返回成功”多证明了一步:后续消费者确实取得了这条信息。 同组其他提议保留为候选;另一次普通自用链路中,自动学习任务确实运行,但提议被丢弃。后者证明处理链和归属正确,不能算作又一次成功记住偏好。

这些观察也改变了验收方式。回答符合某个偏好,可能只是模型本来就会这么写;只有检查实际输入,才能确认记忆参与了生成。而参与生成仍不等于改善质量:这组样本没有受控证明长期回答更好,也没有证明模型能普遍判断哪些信息值得记住。

因此,个性化的价值不能只用“存了多少条”衡量。值得保留的是跨对话少重复交代的可能性,必须支付的工程成本则包括来源、适用范围、更正和失效。我们已经在真实模型链路中确认有限的保存与消费,也明确保留“没有采用”的结果;持续收益仍需另外验证。关于旧记忆如何继续影响输入,以及为什么删除记录不等于完成遗忘,可继续读上下文治理行动篇与遗忘的持久效果。它们不是这组新增验证的原始记录。

沿着这条消费链继续看,个人助手有望减少用户重复交代,也必须让用户能够更正旧信息。图中的来源、范围、版本与授权不是“多存一点历史”的同义词:我们已核对有限的记忆保存与后续消费,完整的跨任务个性化治理和持续收益仍需继续验证。

个性化的设计关系:按来源、范围和版本使用信息,更正应撤销旧版本的后续使用资格并检查已识别的依赖摘要,操作授权独立控制执行

图 4 · 记忆怎样参与下一次工作,以及更正与授权应怎样约束它。图展示工程关系,不把有限样本扩展成完整个性化产品。 查看完整图

十、用户每天回来:个人助手也要把普通阅读做好

跨对话记忆之外,我们还做了一件看起来更普通的事:每日研究生成以后,让用户能稳定地回来读。它没有自动推送那么醒目,却直接影响“这还是不是我刚才看到的那份研究”。

应用把“生成今日研究”和“读取今日研究”分开。用户明确生成成功后,同一账户在同一服务端 UTC 日期再次打开或重复点击沿原成功结果读取;失败与没有合适条目分别处理,不能把空白当作正常完成,也不能把重开页面当作再次生成的授权。

实际问题出在两个地方。首先,长时间持有生成锁的研究占用了普通查询池连接,随后研究自身需要的嵌套查询得不到连接。我们改用独立且有上限的锁连接池,把持锁与查询资源分开,并在取得锁后再查一次已有成功结果。其次,缓存卡片展示的来源曾与原正文引用不一致:原引用是对的,读取投影错了。修正投影后,原卡片重新显示对应来源,正文没有重写,也没有新增模型调用。对于缺少准确引用身份的旧记录,仍保留已有许可视图,不能假称所有历史资料都能自动精确重绑。

这个案例提醒我们,Agent 产品的可靠性也藏在“不调用模型”的部分。 阅读应该是阅读,修正来源展示不应该生成另一篇报告;锁、连接池和来源身份这些后台问题,不会因为前面接了模型就消失。

有限的原结果复评也没有给出“每日选题都好”的结论:关联有支持的条目与关联有限的条目同时存在,实际追问成功率和真实用户采纳尚未验证。因此我们把成果表述为生成、保存、来源展示与复读链路得到改善,而不是已经做成了懂用户的主动投研服务。每日研究缓存与来源保留了这一案例的具体机制。

稳定复读是向主动助手继续推进的起点,而不是终点。下一步值得追求的是:按获准条件检查变化,真正影响目标时再研究,并把“值得现在通知用户吗”作为独立判断。这样的主动性应允许安静等待,也允许用户暂停委托;下面的循环是由现有案例引出的设计展望,尚不是已经验收的自动服务。

个人 Agent 设计展望:获准事件唤醒,重建当前目标和权限,有界执行并校验成果,按价值通知或安静记录,再持久等待

图 5 · 适度主动性的设计展望:事件触发有界工作,价值判断决定是否通知,等待不需要模型持续运行。 查看完整图

回顾:视野扩大,是因为前一步真的遇到了下一步的问题

最初,一次请求结束时,我们只要交出结果。研究任务变长,用户会离开,于是连接的终点不再是工作的终点;成果必须能独立保存和回读。任务需要人作决定时,保存一条回复又不够,必须知道它是否改变了实际执行。到了下一次对话,保存一条记忆同样不够,还要确认它进入了正确的输入。用户第二天回来,最后还要能分清这是原成果、新研究,还是一次单纯的来源展示修正。

这就是我们从后台请求走向长期个人助手时,视野实际展开的路径。不是因为先画出了一张能力全景图,再逐格填充,而是因为返回成功、保存成功、模型调用成功,都不足以单独说明用户的事情已经办好。 每一步都把责任延伸到下一个消费者和更晚的时间。

这些经验还没有组成一个全面成熟的长期个人助手。真实模型质量、选题价值和长期使用收益,需要与机制正确性分开继续检验。但方向已经更具体:成熟框架帮助我们组织探索与恢复,后台工程保存事实、身份和效果;个人助手的新增责任,是让用户的决定和既有成果在下一次工作中仍然可信。长期性不是让模型一直运行,而是让用户回来以后,不必重新建立对系统的信任。

从一次请求到持续任务、人机协作和长期个人助手:由当前结果扩展到跨中断的事实、人的决定和跨多次执行的委托

图 6 · 视野从一次请求扩展到持续任务、人机协作和长期个人助手。前三者有本文具体案例支撑,完整长期助手仍是这些经验指向的目标。 查看完整图

延伸阅读与交流

继续沿具体机制阅读,可以选择六层调用全景、超长研究全景、上下文治理行动篇与客户端交互全景。它们分别展开请求交接、持续研究、记忆消费和用户控制;本文的比较与实践复盘可独立阅读。

English edition · 全景系列。如果这些文章与可运行示例对你有帮助,欢迎给 Open ETF Agent 或工程文集一个 Star,也欢迎用具体场景讨论不同的工程选择。

原文与交流

阅读原文

本文由 AI图鉴自动抓取并翻译,版权归原作者所有;如需查看原文请点下方链接。

相关 AI 工具

相关免费羊毛

同源资讯

阅读原文(juejin.cn)

标题、摘要与正文均来自该信源的公开页面,版权归原作者所有;本站自动聚合与翻译,仅作出处跳转。

← 返回 AI 资讯列表AI工具图鉴首页

返回 AI图鉴首页 · 提交工具 · 商务合作 · 关于本站 · 609 款 AI 工具分类导航 · 每日 AI 热门项目与动态