Agent 面试指南

Hermes Agent 如何从运行轨迹中沉淀 memory / skill / eval?

我会把“自我进化”拆开讲:不是让 Agent 随便改自己代码,而是把运行经验安全地沉淀成 memory、skill、评测数据和可审核的更新。

SCOPE本章边界

本章把“自我迭代”收束为工程化沉淀:trajectory 生成 memory / skill / eval / policy 候选,再经过评测、审批、发布和回滚。它不主张 Agent 自动修改生产源码或无门槛吸收经验。

30 SEC面试开口版

我不会把自我迭代理解成“Agent 自己改源码然后上线”。更稳的路径是四层闭环:第一,真实任务轨迹全部落账;第二,从轨迹里提炼稳定事实写 memory;第三,把可复用流程写成 skill,并有后台 curator 维护;第四,用轨迹生成 eval 或训练数据,通过测试和人工审核后,才把变化提升到工具、prompt、policy 甚至模型。这样它能变强,但每一步都有边界和回滚。

理解与记忆 · 术语、解析、关联知识点
专业术语Self-evolution:把运行经验转成可治理资产的持续改进,不是随意自改代码。
Trajectory:真实任务里的消息、工具、错误、权限和结果轨迹。
Memory Candidate:待审核的记忆候选。
Skill Candidate:待审核的流程能力候选。
Eval Gate:更新发布前的评测门禁。
Rollback:发现退化后回到旧版本。
为什么这样回答30 秒先抢定义权:自我迭代不是“自动改自己”,而是 trace -> asset -> eval -> release 的工程闭环。这样能直接避开安全红线。
小白解析这像一个团队复盘:不是员工今天犯错后自己改公司制度,而是先写复盘,再把可靠经验变成手册,经过审核和试运行后才推广。
关联知识点Hermes 的 background review、MemoryManager、skill curator 和 trajectory pipeline 都在表达同一件事:学习要发生在运行之后,但发布要经过证据、版本、状态机和评测。

1 MIN一分钟口语版

我会把自我更新拆成可治理的资产升级,而不是自由改自己。第一步,所有对话、工具、错误、权限、压缩和结果都形成 trajectory。第二步,后台 reflection 在用户响应之后异步跑,只从快照里提取稳定事实、偏好、流程和失败模式。简单事实进入 memory,复杂流程进入 skill,prompt 或 policy 只能生成候选变更。第三步,新 skill 或 policy 必须过 eval gate,看完成率、错误率、成本、人工干预次数有没有变好。第四步,所有更新都有版本、来源、状态机、pin、archive、restore 和 rollback。这样 Agent 能学习,但不会把一次偶然经验变成永久规则。

理解与记忆 · 术语、解析、关联知识点
专业术语Reflection:任务结束后对轨迹做复盘和提炼。
Curator:维护 skill 生命周期的后台治理器。
State Machine:candidate、active、stale、archived 等状态流转。
Pin / Archive / Restore:固定、归档、恢复经验资产。
Data Flywheel:用真实轨迹持续生成评测和训练数据。
Policy Candidate:待评测的策略变更。
为什么这样回答1 分钟版按生产链路展开:先保存证据,再异步反思,再分层写资产,最后评测发布。这个顺序能体现安全和产品化意识。
小白解析Agent 可以学,但不能一边服务用户一边偷偷改规则。它应该先把经验放进草稿箱,检查没问题,再升级成正式手册。
关联知识点Mem0、Zep 强调记忆要有来源、作用域和检索;OpenAI/Anthropic 的 agent 实践强调评测和安全边界;Hermes 进一步把 skill 和 trajectory 纳入可迭代资产。

FLOW自我迭代闭环

TRACE保存对话、工具、错误、权限、压缩和最终结果。
REFLECT后台 review 识别事实、偏好、流程和失败模式。
WRITE小事实进 memory,复杂流程进 skill,候选先审核。
EVAL用回归任务验证新 skill/prompt/policy 是否真的提升。
RELEASE通过版本、状态机、pin/restore/rollback 安全发布。

自我迭代是经验资产升级

Hermes Agent 如何从运行轨迹中沉淀 memory / skill / eval? Mermaid diagram 1

COMPARE别人怎么设计

Hermes 的 MemoryManager

Hermes 用 MemoryManager 编排 MemoryStore 和外部 MemoryProvider,有 prefetch、sync_turn、on_pre_compress、on_session_end、on_session_switch。它的重点不是只记住,而是把记忆放进生命周期。

Hermes 的 Background Review

它会在工具调用累计到阈值后,在用户拿到回复之后 fork 一个静默 Agent,最多跑少量迭代,回顾对话,把值得保存的事实写 memory,把复杂工作流创建或更新 skill。

Hermes 的 Curator

Curator 定期维护 agent 创建的 skill:active 到 stale 到 archived,不自动删除,pinned skill 不动,可 restore。这说明自我迭代也要治理,不是越写越多。

训练数据链路

Hermes 支持保存 trajectory,把真实工具调用轨迹转成训练格式,batch runner 可以并行跑任务、过滤坏数据,用于后续 RL 或 SFT。这是模型层迭代的数据飞轮。

DESIGN我会怎么设计 Hermes Agent 的自我更新

  1. 先定义可更新对象memory、skill、prompt template、tool policy、context policy、eval case、模型训练样本。源码和生产配置属于高风险对象,不能自动无审核发布。
  2. 所有更新来自证据每条 memory 或 skill patch 都要引用 source session、turn、tool trace、失败现象和用户反馈。没有来源的“灵感”不能进长期资产。
  3. Reflection 后台化主对话先服务用户,review 在回复后异步跑。它拿的是消息快照,不污染主 session,也不阻塞用户。
  4. Memory 和 Skill 分层简单稳定事实进 memory;5 次以上工具调用、带流程和判断的经验进 skill;过去对话用 session_search,不要全塞 memory。
  5. 更新要经过 eval gate新 skill 或 policy 不是写完就算变强,要用回归任务验证:完成率、工具错误、token 成本、人工干预次数有没有改善。

SAFETY自我迭代的安全边界

更新层级能否自动保护机制
Memory可以自动候选,敏感信息需 gatescope、source、confidence、tombstone、安全扫描。
Skill可以后台创建/patch,但需要状态机治理injection scan、pinned guard、archive/restore、usage tracking。
Prompt / Policy可生成候选,不应自动上线diff、eval、人工确认、版本回滚。
Tool / Code默认不能自动生产发布PR、测试、权限审批、审计 trail。
Model只能进入离线训练链路轨迹过滤、数据脱敏、评测集、灰度发布。

PROBLEM我遇到的问题和优化

问题

  • 自我更新如果没有边界,会把一次偶然失败总结成错误规则。
  • memory 和 skill 越积越多,会污染 prompt,甚至让旧经验反过来伤害新任务。
  • 后台 Agent 如果能改生产代码,风险不可控。
  • 训练数据如果不清洗,幻觉工具名、无推理轨迹、失败样本会污染模型。

优化

  • review prompt 要鼓励“不值得保存就跳过”,而不是强行产出。
  • curator 只归档不删除,pinned skill 永不自动转换。
  • 所有更新都版本化,有 created_by、source、eval result 和 rollback path。
  • trajectory pipeline 做 schema 归一、坏工具过滤、reasoning 覆盖率过滤和隐私脱敏。

REVISION哪些轨迹不能进入训练或沉淀

轨迹类型默认处理
包含 PII、secret、客户数据脱敏、最小化或拒绝;需要合规审批。
失败未标注、人工大量改写只进 reject / review record,不直接当正例。
tool hallucination 或 observation 错误作为负例或 runtime bug,不沉淀为 skill。
policy violation、安全绕过进入安全 eval 和 incident review,不进入普通经验库。
license / 来源不明隔离,等来源和授权确认后再考虑使用。

自我迭代的默认动作是生成候选和负例,不是自动吸收成功经验。失败候选也要保留 reject record,避免系统反复提出同类坏规则。

INTERVIEW资深追问 Q&A

去重后的阅读路径

本章聚焦“轨迹如何升级成候选资产、如何评测发布、如何回滚”。Memory schema、删除、冲突、隐私和注入污染的细节已经在 第 5 章长期记忆设计 展开,这里只保留和自我迭代闭环直接相关的问题。

面试官:你说自我迭代,不就是 Agent 自己改 prompt 或改代码吗?第二层追问:为什么这不是安全事故?

我:我不会把它设计成自由自修改。自我迭代是把运行经验逐级提升成可治理资产:trajectory 先落账,稳定事实进 memory,可复用流程进 skill,失败模式进 eval case,prompt、policy、tool 或代码改动只能生成候选,必须经过评测和人工审核后发布。它可以学习,但不能绕过权限、测试和版本控制。

理解与记忆 · 背后工程点

背后工程点:自我迭代是经验资产化,不是无约束自修改。
专业术语:
Self-modification 是系统直接修改自身行为;
Candidate Change 是候选变更;
Release Gate 是发布门禁;
Version Control 是版本控制;
Human Review 是人工审核。
为什么这样回答:面试官第一刀一定会问安全边界。先否定自由改代码,再给分层资产升级路线,能把题从科幻拉回工程。
小白解析:会学习不等于能自己改公司章程。它可以写建议,真正生效要有人审核、测试和回滚方案。
关联知识点:Hermes 的 background review、skill curator 和 trajectory pipeline 都把学习产物放进候选和状态机,而不是直接改运行核心。

面试官:到底哪些东西可以被更新?第二层追问:源码、工具权限、模型权重是不是也能自动改?

我会把可更新对象分层。低风险的是 memory、skill draft、eval case、检索权重和上下文模板候选;中风险的是 prompt、tool policy、context policy,必须评测和审核;高风险的是生产代码、工具权限、模型权重和企业策略,只能走 PR、测试、灰度和人工审批。自我迭代不能越权,只能在被允许的资产层产生候选。

理解与记忆 · 背后工程点

背后工程点:更新对象要按风险分层,不能把所有行为都叫学习。
专业术语:
Asset Tier 是资产风险层级;
Prompt Template 是提示词模板;
Tool Policy 是工具使用策略;
Model Weight 是模型权重;
Canary Release 是灰度发布。
为什么这样回答:这能堵住“自动改一切”的追问,把系统控制权放回 harness 和发布流程。
小白解析:改个人备忘录和改公司付款权限不是一个级别,不能用同一套自动流程。
关联知识点:Hermes 把 memory、skill、trajectory 作为主要学习资产;Guga 的 runtime 边界也要求权限和策略由核心控制面管理。

面试官:Trajectory 应该记录什么?第二层追问:没有完整证据,怎么证明一次更新来源可靠?

Trajectory 至少记录 user goal、messages refs、context projection、tool intent、permission decision、tool result refs、errors、compact boundary、verification result、final outcome、feedback 和 usage。候选 memory 或 skill 必须引用 source session、turn id、artifact ref 和证据摘要。没有可追溯来源的“灵感”不能进入长期资产。

理解与记忆 · 背后工程点

背后工程点:自我迭代的事实源是轨迹,不是模型事后编的总结。
专业术语:
Trajectory 是任务轨迹;
Evidence Ref 是证据引用;
Turn ID 是轮次标识;
Outcome Label 是结果标签;
Lineage 是资产血缘。
为什么这样回答:学习系统最怕“看似合理但无来源”。先讲证据结构,能展示你把可追溯性当作核心设计。
小白解析:复盘报告要能指向哪次会议、哪份文件、哪个错误,而不是凭印象写一句“以后都这么做”。
关联知识点:Hermes trajectory-and-data-generation 强调从真实工具调用轨迹生成数据;OpenAI tracing 也强调端到端工作流可观测。

面试官:后台 reflection 什么时候跑?第二层追问:它会不会阻塞用户,或者污染主 session?

我会让 reflection 在用户拿到主回复之后异步跑,拿的是本轮消息和工具轨迹快照,不共享主 session 的可变状态,也不能继续执行高风险工具。它最多生成候选 memory、skill patch、eval case 或 review report。主 session 只在下一轮通过受控 retrieval 看到已通过的资产,不直接吸收后台 Agent 的临时推理。

理解与记忆 · 背后工程点

背后工程点:学习要异步、隔离、候选化,避免影响在线任务。
专业术语:
Background Reflection 是后台反思;
Snapshot Isolation 是快照隔离;
Sidecar Agent 是旁路 Agent;
Candidate Output 是候选输出;
Controlled Retrieval 是受控检索。
为什么这样回答:这回应了性能和安全双重压力:不阻塞用户,也不让后台复盘直接改主流程。
小白解析:客服先回答客户,事后再写复盘。复盘报告要审批后才能进知识库,不能在通话中偷偷改话术。
关联知识点:Hermes background review 在用户响应之后 fork 静默 Agent,少量迭代后写 memory 或 skill 候选。

面试官:什么时候写 memory,什么时候写 skill?第二层追问:怎么避免把流程碎片塞满 prompt?

简单稳定事实、用户偏好、项目约束进 memory;多步骤、可复用、有判断分支的流程进 skill;一次性上下文继续留在 session 或 artifact。一个经验如果需要超过几步工具调用、包含前置条件和失败处理,就应该变成 skill candidate,而不是塞成一大段 memory。检索时只给 skill 摘要和触发条件,真正展开由 harness 控制。

理解与记忆 · 背后工程点

背后工程点:Memory 记事实,Skill 记流程,Session 记临时上下文。
专业术语:
Procedural Knowledge 是流程性知识;
Skill Trigger 是技能触发条件;
Precondition 是前置条件;
Failure Handling 是失败处理;
Context Budget 是上下文预算。
为什么这样回答:这能防止“长期记忆万能论”。不同知识形态要进入不同载体。
小白解析:“用户喜欢中文”是记忆;“如何发布一个版本”是操作手册;“这次正在改哪个文件”只是当前任务状态。
关联知识点:Hermes concepts/skills-and-memory-interaction 区分简单事实和复杂工作流;Deep Agents 也把 instructions、filesystem、subagents 和 memory 分开治理。

面试官:Skill curator 怎么设计?第二层追问:旧 skill 不删会堆积,自动删又危险,怎么办?

我会用状态机治理:candidate -> active -> stale -> archived,可以 restore,不默认 hard delete。每个 skill 有 source、owner、version、usage_count、success_rate、last_used、risk_level、dependencies 和 pinned 标记。Curator 可以建议合并、归档、降权和修复,但 pinned skill、企业模板和高风险 skill 不能自动改。

理解与记忆 · 背后工程点

背后工程点:技能库需要生命周期治理,目标是可用和可回滚,不是无限增长。
专业术语:
Curator 是维护技能库的治理器;
Stale 是过期待归档状态;
Archived 是已归档状态;
Pinned Skill 是被固定保护的技能;
Usage Signal 是使用反馈信号。
为什么这样回答:它回应了“越学越乱”的担忧:有状态、有指标、有人工保护。
小白解析:公司的 SOP 不能越写越多没人管,也不能被系统偷偷删除;应该定期整理、标记过期、可恢复。
关联知识点:Hermes curator 从 active 到 stale 到 archived,不自动删除 pinned skill,并支持 restore。

面试官:训练数据飞轮怎么设计?第二层追问:哪些轨迹不能进入 SFT 或 RL 数据?

训练数据 pipeline 要从 trajectory 生成标准样本,再经过过滤:失败但无清晰标注的、包含隐私或 secret 的、工具 schema 错误的、模型幻觉工具名的、人工大量接管的、违反 policy 的、缺少 reasoning 或 observation 的都不能直接入库。保留下来的样本要有 task type、quality label、tool trace、license/privacy metadata 和 eval split。

理解与记忆 · 背后工程点

背后工程点:数据飞轮不是把所有轨迹喂给模型,而是高质量过滤和标注。
专业术语:
SFT 是监督微调;
RL 是强化学习;
Quality Label 是质量标签;
Tool Trace 是工具轨迹;
Eval Split 是评测切分。
为什么这样回答:这能体现你知道自我迭代可以走到模型层,但不会把坏数据变成坏模型。
小白解析:不是所有客服通话都能拿来培训新人,错误示范、隐私内容、信息不完整的录音要先剔除或标注。
关联知识点:Hermes trajectory pipeline 和 batch runner 支持并行跑任务、过滤坏数据,用于后续训练和评测。

面试官:怎么证明一个新 skill 或 policy 真的让 Agent 变强?第二层追问:指标怎么选?

每个候选更新都绑定 eval gate。我会用固定回归任务和近期真实任务样本做 A/B,对比 task success、verification pass rate、tool error rate、permission denial rate、human takeover、token、latency、rollback count 和安全违规。只要成功率提高但越权、成本或失败严重性变差,也不能直接发布。

理解与记忆 · 背后工程点

背后工程点:自我迭代必须用评测证明增益,并同时看质量、安全和成本。
专业术语:
A/B Evaluation 是对比评测;
Task Success 是任务成功率;
Verification Pass Rate 是验证通过率;
Human Takeover 是人工接管;
Safety Regression 是安全退化。
为什么这样回答:“感觉更聪明”没有意义。资深答案要把 release 条件变成指标。
小白解析:新手册不能只看一两个案例说好,要拿同一批题测,既看分数也看有没有新风险。
关联知识点:OpenAI 和 Anthropic 的 agent 实践都强调先用小范围可评测任务证明价值;Hermes batch runner 可并行跑任务并过滤坏数据。

面试官:评测集会不会被 Agent 记住?第二层追问:自我迭代如何避免 eval contamination?

要把训练样本、可见回归样本和隐藏评测集隔离。Reflection 可以看到任务轨迹,但不能看到 hidden eval 的答案和打分规则;生成 skill 时只引用真实来源,不引用评测标签。Eval 结果只给聚合指标和失败分类,避免把答案泄回 memory。重要评测集要定期轮换,并做相似度检测。

理解与记忆 · 背后工程点

背后工程点:评测门禁自己也要防污染,否则系统会学会刷题。
专业术语:
Eval Contamination 是评测污染;
Hidden Set 是隐藏评测集;
Label Leakage 是标签泄漏;
Similarity Check 是相似度检测;
Aggregate Metric 是聚合指标。
为什么这样回答:这说明你不只是会加 eval,而是知道 eval 会被自学习系统反向污染。
小白解析:学生可以看错题类型,但不能偷看下次考试答案。
关联知识点:trajectory pipeline 做训练数据时要过滤和隔离;成熟 eval 流程通常区分开发集、回归集和隐藏集。

面试官:Prompt、policy、tool 这些候选更新怎么发布?第二层追问:失败后怎么回滚?

候选变更要有 diff、source_refs、risk_level、eval_result、reviewer、release_channel 和 rollback_plan。发布先 canary 到小流量或低风险任务,监控指标异常就自动回滚到前一个版本。每个 session 要记录使用了哪些 asset version,这样事故发生时能定位受影响任务,并支持 cascade rollback。

理解与记忆 · 背后工程点

背后工程点:自我迭代要像发布软件一样发布资产。
专业术语:
Asset Version 是资产版本;
Release Channel 是发布通道;
Canary 是灰度;
Rollback Plan 是回滚计划;
Cascade Rollback 是级联回滚。
为什么这样回答:学习系统一旦影响线上行为,就要进入发布工程,而不是停留在 prompt 生成。
小白解析:新制度先在小团队试用,发现出错要知道哪些团队用了、怎么恢复旧制度。
关联知识点:Hermes 的 version、pin、archive、restore 机制和 Guga 的 durable event/artifact 设计都支持资产血缘和回滚。

面试官:如果候选更新上线后指标变差,系统怎么学会“不再犯”?第二层追问:失败候选是删除还是保留?

我会保留失败候选的 reject record,而不是静默删除。记录它来自哪些轨迹、改了什么、在哪些 eval 上失败、失败类型是什么、谁拒绝的、下一次生成时要避开什么。这样 curator 和 reflection 可以把它作为 negative example,避免重复提出同类坏规则。真正敏感或违规内容则脱敏后只留最小审计记录。

理解与记忆 · 背后工程点

背后工程点:自我迭代不只学习成功经验,也要把失败候选变成反例。
专业术语:
Reject Record 是拒绝记录;
Negative Example 是负例;
Failure Taxonomy 是失败分类;
Regression Note 是退化说明;
Suppression Rule 是抑制同类候选的规则。
为什么这样回答:很多系统只会追加好经验,导致坏建议反复生成。保留失败血缘能让学习闭环更完整。
小白解析:复盘不只保存优秀案例,也要保存“这个办法试过不行,原因是什么”,下次别再走同一条弯路。
关联知识点:learn-agent 的 trace analysis 强调失败分类要指向修复路线;Hermes curator 和 eval gate 也需要记录候选为什么没有被提升。

面试官:自我迭代会不会让 Agent 获得更高权限?第二层追问:它能不能自己学会绕过审批?

不能。学习产物只能改变建议和检索,不能提升 permission mode。工具权限由 harness 的 PermissionKernel 和 org policy 决定,skill 里即使写了高风险步骤,执行时仍然要经过 tool intent、schema、permission、sandbox 和 HITL。任何尝试绕过审批的 skill 都应该被安全扫描拒绝或降权。

理解与记忆 · 背后工程点

背后工程点:学习不能改变权限根,权限必须由外部控制面裁决。
专业术语:
PermissionKernel 是权限内核;
Org Policy 是组织策略;
Privilege Escalation 是权限提升;
Policy Root 是策略根;
Security Scan 是安全扫描。
为什么这样回答:这是安全底线。Agent 变聪明不能等于权限变大。
小白解析:员工学会了报销流程,不代表他能自己给自己开财务管理员权限。
关联知识点:Guga 的 tool pipeline 把模型意图和真实执行分离;MCP 和 agent guardrail 思路也要求客户端和 runtime 控制工具授权。

面试官:后台学习会不会很贵、很慢?第二层追问:怎么控制成本和延迟?

我会把 reflection 做成异步队列,按价值触发,不是每轮都跑。比如工具调用超过阈值、用户纠正、任务成功且有复用迹象、失败分类明确时才触发。先用小模型做抽取和去重,复杂 skill 生成再用强模型;低价值会话只做摘要或跳过。预算、采样率和队列优先级由 harness 控制。

理解与记忆 · 背后工程点

背后工程点:学习回路要按价值触发,并使用模型分层和队列治理。
专业术语:
Async Queue 是异步队列;
Trigger Policy 是触发策略;
Model Tiering 是模型分层;
Sampling Rate 是采样率;
Budget Guard 是预算保护。
为什么这样回答:自我学习很容易变成隐藏成本。先承认成本,再给触发和分层策略,像真实产品设计。
小白解析:不是每通电话都开高级复盘会,只有有价值或出问题的案例才深度分析。
关联知识点:Hermes background review 有触发阈值和迭代限制;Agent 工程实践也常用小模型抽取、大模型综合来控成本。

面试官:用户怎么知道 Agent 学了什么?第二层追问:如果用户不想被学习怎么办?

产品上要有 memory/skill inbox 或 activity feed,让用户看到新候选、来源、影响范围和开关。用户可以 approve、edit、reject、pin、archive、restore,也可以对某个项目关闭学习或只允许本地学习。关键是把“学习”做成可见、可控、可解释的资产管理,而不是后台黑箱。

理解与记忆 · 背后工程点

背后工程点:自我迭代需要用户控制面,不然信任会崩。
专业术语:
Learning Inbox 是学习候选收件箱;
Activity Feed 是活动流;
Opt-out 是退出学习;
Local-only Learning 是仅本地学习;
Explainability 是可解释性。
为什么这样回答:这把技术能力落到产品信任。用户必须知道系统为什么变了。
小白解析:助手学了你的习惯,应该告诉你学了什么,并允许你删掉或改掉。
关联知识点:Hermes 的 pin、archive、restore 是用户和系统共同治理经验资产的基础;企业产品还需要可审计的变更记录。

面试官:多 Agent 场景下谁来决定学习?第二层追问:子 Agent 产出的经验能直接进全局 skill 吗?

不能直接进全局。子 Agent 只能提交 learning proposal,带 role、task、scope、evidence 和 confidence。主 Agent 或 curator 负责合并、去重、冲突检测和评测。局部经验先进入项目级或角色级作用域,只有跨任务稳定有效,才提升到全局 skill。否则一个子 Agent 的偏见会污染整个系统。

理解与记忆 · 背后工程点

背后工程点:多 Agent 学习要有作用域和合并审查。
专业术语:
Learning Proposal 是学习提案;
Role Scope 是角色作用域;
Merge Review 是合并审查;
Global Promotion 是提升到全局;
Bias Propagation 是偏差传播。
为什么这样回答:多 Agent 会放大学习污染。把子 Agent 学习限制为 proposal,能保留协作又不失控。
小白解析:实习生可以提交经验总结,但不能直接改全公司手册。
关联知识点:多 Agent 设计通常把委派结果当成可审查 artifact;Hermes/Guga 的资产治理也强调来源和作用域。

面试官:什么情况下 Agent 不应该学习?第二层追问:如果用户明确说“记住这个”,也一定要记吗?

不一定。临时指令、一次性上下文、明显错误、来自不可信网页的注入、secret、PII、受版权或合规限制的数据、用户情绪化表达、未验证的工具结果,都不应该直接沉淀。用户说“记住”也要过 scope、sensitivity、policy 和 conflict check;高风险内容可以生成候选,请用户二次确认或只保留会话内。

理解与记忆 · 背后工程点

背后工程点:自我迭代最重要的能力之一是知道什么时候不学习。
专业术语:
Do-not-learn Policy 是禁止学习策略;
Sensitivity Check 是敏感性检查;
Session-only Memory 是仅会话内记忆;
Conflict Check 是冲突检查;
Data Classification 是数据分级。
为什么这样回答:面试官会担心系统把噪声、隐私或攻击内容长期化。主动讲“不学”比只讲“会学”更像生产系统。
小白解析:不是每句话都该写进公司手册,临时抱怨、密码、错误指令和外部广告都不应该永久保存。
关联知识点:长期记忆章节强调 candidate、scope、TTL、tombstone 和安全扫描;Hermes background review 也应允许“没有值得保存的内容”。

面试官:新学到的 memory 或 skill 和旧资产冲突怎么办?第二层追问:谁的优先级更高?

冲突不能静默覆盖。我会按来源可信度、时间、作用域、用户确认、企业 policy 和 eval 结果排序。用户刚确认的项目级偏好可以覆盖旧项目偏好,但不能覆盖组织安全策略;新 skill 如果和 pinned skill 冲突,只能提交 merge proposal。所有冲突都要记录 resolution,方便以后回滚和解释。

理解与记忆 · 背后工程点

背后工程点:学习资产需要冲突解析和优先级规则。
专业术语:
Precedence Rule 是优先级规则;
Merge Proposal 是合并提案;
Pinned Asset 是固定保护资产;
Resolution Record 是冲突解决记录;
Source Trust 是来源可信度。
为什么这样回答:自我迭代系统越用越久,冲突必然出现;不设计优先级就会行为摇摆。
小白解析:新员工手册不能直接覆盖公司法务规定,个人偏好也不能覆盖团队安全规则。
关联知识点:Hermes curator 保护 pinned skill 并支持 archive/restore;Guga 的 policy root 思路也要求组织策略高于模型学习产物。

面试官:Agent 生成的 skill candidate 怎么做安全扫描?第二层追问:如果 skill 里藏了 prompt injection 或危险命令怎么办?

Skill candidate 发布前要做静态和动态扫描。静态看是否要求绕过权限、外传 secret、删除文件、关闭审计、信任网页指令、硬编码 token、扩大 scope;动态在 sandbox 里跑代表性任务,看 tool intent、permission、artifact diff 和网络访问。高风险 skill 必须人工审核,安全失败的 skill 进入 reject record。

理解与记忆 · 背后工程点

背后工程点:Skill 是可执行行为模板,必须像代码和策略一样审查。
专业术语:
Static Scan 是静态扫描;
Dynamic Sandbox Test 是动态沙箱测试;
Dangerous Command 是危险命令;
Secret Exfiltration 是密钥外传;
Reject Record 是拒绝记录。
为什么这样回答:自生成 skill 的风险比普通记忆更高,因为它会影响未来行动路径。
小白解析:新写的操作手册不能一发布就执行,里面如果写着“关掉监控再操作”,必须被拦下来。
关联知识点:安全章节覆盖 prompt injection、工具投毒和权限边界;Hermes skill curator 的状态机适合接入安全扫描和人工审核。

面试官:不同用户或租户之间能共享学习成果吗?第二层追问:怎么既形成飞轮又不泄露数据?

默认不跨租户共享原始 memory、trajectory 和 skill。可以共享的是脱敏后的模式、抽象模板、公开工具使用经验或经过审核的通用 skill,而且要去掉项目名、路径、secret、客户数据和可反推身份的信息。企业环境下共享级别由 tenant policy 决定:private、team、org、public,不允许后台学习自动提升可见范围。

理解与记忆 · 背后工程点

背后工程点:学习飞轮必须和租户隔离、脱敏和可见范围绑定。
专业术语:
Tenant Isolation 是租户隔离;
Anonymization 是匿名化;
Template Promotion 是抽象模板提升;
Visibility Scope 是可见范围;
Tenant Policy 是租户策略。
为什么这样回答:跨用户学习是很诱人的增长点,也是最容易出隐私事故的地方。
小白解析:公司可以总结“好客服话术”,但不能把 A 客户的合同细节教给 B 客户的助手。
关联知识点:Guga enterprise policy 和第 10 章模型路由的数据策略都要求按租户和作用域控制数据流;memory provider 也必须支持 scope。

面试官:如果让你做 MVP,最小自我迭代系统做哪些?第二层追问:哪些高级能力先不做?

MVP 我会做五件事:trajectory ledger、memory candidate queue、skill draft + curator state、eval gate、rollback/versioning。先不做自动改生产代码、在线训练模型、跨组织共享 skill、复杂 RL 和全自动策略发布。只要能把一次任务变成可追溯候选,再经过评测和审核发布,最小飞轮就成立了。

理解与记忆 · 背后工程点

背后工程点:MVP 先做安全飞轮,不追求全自动进化。
专业术语:
Candidate Queue 是候选队列;
Skill Draft 是技能草稿;
Versioning 是版本化;
Online Training 是在线训练;
Learning Flywheel 是学习飞轮。
为什么这样回答:最后收束范围,能证明你知道从哪里起步,也知道哪些诱人的能力要延后。
小白解析:先做复盘、草稿、审核、测试、回滚,不要第一天就让系统自己改代码、训练模型、全网发布。
关联知识点:Hermes 的 memory、skill curator、trajectory 数据链路可以分阶段落地;Guga strategy 也主张先把 runtime facts 和评测闭环做稳。

PRINCIPLE我总结的核心范式

自我迭代不是让 Agent 没约束地改自己,而是把经验从“运行轨迹”逐级提升为“记忆、技能、策略、数据”。每一级都要有证据、评测、人工边界和回滚。能安全沉淀,才叫进化。