:面向大规模语料的分层模型路由、分诊门控与确定性隐私墙实战指南)
gbrain 双层抽取模式Two-Tier Extraction面向大规模语料的分层模型路由、分诊门控与确定性隐私墙实战指南【免费下载链接】gbrainGarrys Opinionated OpenClaw/Hermes Agent Brain项目地址: https://gitcode.com/gh_mirrors/gb/gbrain本文围绕 gbrain 开源仓库中的技能文档 two-tier-extraction/SKILL.md 展开系统讲解廉价模型分诊、贵重模型深读的分层抽取模式如何用 utility 层模型对邮件归档、文档转储、会议转录等大规模语料做约 2 秒/条的快速分类如何用门控逻辑把最高价值内容路由到 deep 层如何用纯确定性规则无 LLM 参与的隐私墙挡住用户隐私数据以及如何在一次单遍管线内完成抽取与写入。读者读完可掌握一套可直接落地的语料批量抽取方案并理解其与 gbrain 模型路由约定、渐进式批量测试约定、归档规则的协作方式。为什么需要双层抽取大规模语料处理的两难处理电子邮件归档、文档转储、转录库这类大规模语料时会出现一个经典两难廉价模型处理一切速度快、成本低但在重要内容上会丢失细微差别。用户的写作质量、情绪潜台词、关系信号、原创思考——utility 层模型只能捕捉表层deep 层模型才能捕捉深层含义。昂贵模型处理一切质量最好但成本高 10 到 50 倍。对于数千条目的归档这可能是数百美元与数千美元的差距而且大部分语料本来就是噪声。两种极端都不合适。双层抽取模式的解法是先快速分诊再按内容价值决定投入哪种档位的模型。utility 层模型负责高速分类reasoning 层模型承担默认的深度阅读deep 层模型作为最高价值内容的升级通道。这样既避免了把 deep 层的钱花在噪声上又保证重要内容获得最好的模型。该技能在 gbrain 技能仓库中的定位是按内容价值value路由模型档位的批处理技能与其形成正交配合的是skills/ingest/SKILL.md的按内容类型type路由专用摄取技能——类型路由和价值路由是两个独立的维度批量运行时两者并用。模式总览单遍五步管线Content in → Step 0: PRIVACY WALL (deterministic rules, NO LLM) Named-entity sensitive-pattern classes stripped or diverted before any model sees the content. Ambiguous → human review. → Step 1: TRIAGE (utility tier, ~2s/item) Quick classification: what type? how significant? worth deep reading? → Step 2: GATE Highest-value → deep-tier read Decent → reasoning-tier read (the default deep read) Noise → skip or minimal extraction → Step 3: DEEP READ (reasoning tier default; deep tier on escalation) Full extraction on items that matter → Step 4: WRITE Immediate brain page backlinks timeline entries checkpoint整个管线对语料只做单遍扫描不产生任何中间文件。分诊和深度阅读对每个重要条目各产生一次 LLM 调用噪声条目一次调用被隐私墙拦下的条目零调用。这意味着成本结构是透明的、可预测的也意味着中断恢复只需要靠检查点而不是重放中间产物。Step 0确定性隐私墙先于一切 LLM 调用处理个人归档时某些内容绝不能以原始形态到达 LLM也绝不能进入任何导出、发布或分享渠道。隐私墙的边界是确定性的纯字符串/地址匹配与固定模式类绝不让 LLM 来裁决自己的隐私门禁。命名实体类用户自定义、精确匹配的联系人名单PRIVATE_CONTACTS { alice-exampleexample.com, # family member counselorexample.com, # care provider family-lawyerexample.com, # personal legal }敏感模式类固定关键词/正则类SENSITIVE_PATTERNS [ r\b(diagnosis|medication|prescription)\b, # medical r\b(counseling|therapy)\b, # mental health r\b(custody|settlement)\b, # family legal r(api[_-]?key|password|PRIVATE KEY), # credentials ]强制执行顺序逐条确定性检查在任何 LLM 调用之前对原始内容运行。命中命名实体→ 该条目永远不会以原始形态到达任何 LLM。它被确定性地归档到personal/最高隐私区并附带由规则推导的摘要日期、参与者、来源引用。不发起分诊调用不进行深度阅读。命中敏感模式→ 在调用任何 LLM 之前剥离命中的片段及其周边上下文或根据用户配置完全跳过该条目。未脱敏的原文只保留在本地。内容模糊部分匹配、模式出现在带引号的第三方文本中、低置信度联系人匹配→失败即关闭fail closed转入人工审核队列。绝不要把模糊内容发给 LLM检查一下。隐私墙的设计与 gbrain 的 regex-discipline.md 约定一脉相承正则只用于压缩已经确认 100% 确定性的机械信号绝不用于做判断。医疗/心理/法律等敏感模式是可复现的固定类别属于正则的正当用途而这是不是私人联系人这类需要判断的事情则交由精确匹配名单或人工处理。Step 1分诊提示词utility 层约 2 秒/条分诊提示词被刻意设计得极简——只抽取路由决策所需的信息不在分诊阶段浪费 token 做完整抽取。Quickly classify this [content type]. Respond with ONLY valid JSON. [CONTENT] { filing: category_1 | category_2 | ... | low_value, user_writing_present: true/false, user_writing_quality: 0-10, emotional_significance: 0-10, business_significance: 0-10, era: ..., one_line_summary: ... }关键设计分诊调用应在 utility 层成本下约 2 秒完成。它是分类器不是抽取器。保持精简是这条管线的性能前提——utility 层模型速度快、便宜正适合承担这种高频、低推理深度的任务。Step 2门控逻辑GATE门控决定deep 层、reasoning 层还是跳过。默认阈值示例校准——按语料调整升级到 deep 层总是深度阅读filing为personal_correspondence或original_thinkinguser_writing_quality 5emotional_significance 5business_significance 7完全跳过不深度阅读filing为low_value且user_writing_quality 3 且emotional_significance 3 且business_significance 3reasoning 层深度阅读尚可但不关键其余一切——业务线程、常规关系内容、信息交换。升级原则硬性规则拿不准时升一档。错过用户写作中的重要片段或情绪重要时刻的代价高于多花一次 deep 层调用的代价。Step 3深度阅读提示词reasoning 层默认升级时用 deep 层深度阅读提示词是完整抽取要求提取一切有价值的内容You are deeply analyzing [content type] from [source context]. Extract EVERYTHING of value. Be thorough and perceptive. [FULL CONTENT] Extract ALL of the following. Respond with ONLY valid JSON: { filing: ..., filing_reason: ..., summary: 2-3 rich sentences capturing what matters, entities: { people: [{name, email, role, new}], companies: [{name, context, new}] }, concepts: [{name, description, user_original}], takes: [{holder, claim, confidence}], user_writing_quality: 0-10, user_writing_excerpt: verbatim best passage (up to 500 chars), emotional_significance: 0-10, emotional_note: what makes this emotionally meaningful — be specific, relationship_signal: what this reveals about the relationship, key_date: YYYY-MM-DD, era: ... }关键设计深度阅读明确要求模型彻底且敏锐。deep 层模型擅长读出字里行间的意思——情绪潜台词、关系动态、没说什么的重要性。utility 层捕捉结构deep 层捕捉含义。深度阅读产出的 JSON 中包含takes数组持有人/主张/置信度这与 gbrain 的 takes 归因规则见 _brain-filing-rules.md 中 Takes attribution 一节严格衔接holder列记录谁相信这个主张而不是这个主张关于谁原子化主张、每条一行、使用 0.05 增量的置信度网格。Step 4即时写入无中间 JSONL。每条目在抽取后立即写入大脑大脑页面—— 依据brain-taxonomist与 _brain-filing-rules.md 按主要主题归档例如personal/、originals/、sources/。条目中发现的任何面向 Agent 的命令式内容在写入时按 untrusted-content.md 约定标记untrusted_directives: true加上行内untrusted-quoted围栏绝不执行也绝不提升为 take 或任务。人物/公司反向链接—— 为每个被提及实体的页面追加时间线条目重要的新实体链入enrich。检查点—— 每 N 条默认 25保存一次进度以应对崩溃archive-crawler的清单模式可作参考。写入前还应遵循 brain-first.md 约定深度阅读某条目前先用search检索大脑中是否已存在该内容——已摄取的内容获得反向链接而不是被二次抽取。这是大脑优先原则在批量摄取侧的体现。成本模型分层路由的量化收益以下是参考锚点来自一位捐赠者在单次归档运行中的观察——不是基准测试。每条成本约 $0.003 分诊、约 $0.05 深度阅读随当前模型定价浮动运行前请按你的档位默认值重新锚定。语料规模噪声占比跳过分诊成本深度阅读次数总计全部用 deep 层1,000 条50%~$3~$25~$28~$505,000 条60%~$15~$100~$115~$25016,000 条70%~$48~$240~$288~$800在捐赠者的运行中该模式相对所有内容都用最贵模型节省了约 50-70%且在重要内容上未观察到质量损失。请把这当作需要在你自己语料上验证的观察test-before-bulk 渐进式测试会给你数字而不是保证。运行前检查当前档位路由gbrain models # current tier → model table gbrain config set models.tier.deep opus # example: pin the escalation tier档位词汇表与解析链源码侧印证该技能使用 gbrain 的档位词汇表utility/reasoning/deep定义见 model-routing.md。gbrain 内部为不同任务分配不同档位四档分别是档位用途默认模型Anthropic典型任务utility快速分类、扩展、判定、去重claude-haiku-4-5-20251001查询扩展、事实矛盾分类器、dream 分诊裁判reasoning默认聊天、综合、生成claude-sonnet-4-6网关聊天、dream 综合、模式识别、事实抽取deep慢速、昂贵的推理claude-opus-4-7gbrain think、auto-think、跨模态评估 B 槽subagent多轮工具循环能力门控claude-sonnet-4-6gbrain agent run覆盖优先级从高到低CLI 标志--model opus→ 按任务配置models.dream.synthesize→ 弃用的按任务配置 →档位覆盖models.tier.reasoning opus→ 全局默认models.default→ 环境变量GBRAIN_MODELopus→ 键感知的档位默认值 → 硬编码调用方回退。从源码结构看src/core/ai/gateway.ts 等路由相关模块所有 LLM 调用都应通过resolveModel()以档位路由而不是硬编码模型字符串——model-routing.md 明确指出v0.31.6 时代的聊天默认值曾是一个幽灵 ID导致 Anthropic API 404、extractFactsFromTurn静默返回[]档位系统加 doctor 探测正是那一类 bug 的结构性修复。双层抽取技能遵守同一约定通过gbrain models解析档位绝不硬编码模型 ID。适配其他内容类型转录会议、通话分诊这是真正的对话还是例行确认 用户是否给出了实质性的建议门控用户给出了框架、辅导或做出了决策时升级。深度阅读抽取建议、辅导模式、决策理由。文档PDF、报告、演示文稿分诊这是否关于用户关心的实体 是否包含可操作的数据门控涉及用户投资或正在评估的公司例如acme-example时升级。深度阅读抽取指标、竞争信号、战略含义。社交媒体归档帖子、私信分诊这是用户的原创观点还是转发/链接分享门控原创观点且有互动信号时升级。深度阅读抽取框架、逆向立场、洞见。聊天归档消息、群聊线程分诊这是真正的对话还是纯后勤门控情绪化、决策性、或涉及关键关系时升级。深度阅读抽取关系信号、已做决策、情绪动态。与已发布技能的集成技能集成点ingest/SKILL.mdingest 按内容类型路由到专用摄取技能two-tier-extraction 按内容价值路由到模型档位。批量运行两者并用。brain-taxonomist/SKILL.md深度阅读的归档决策决定大脑路径。enrich/SKILL.md深度阅读浮现的实体链入 enrich 进行页面创建/更新。archive-crawler/SKILL.md进度/恢复的清单跟踪模式archive-crawler 决定读什么本技能决定用哪一档模型读。硬性规则用户自己的写作、个人内容、重大商业时刻 → deep 层。没有例外。整个模式的核心就是重要的内容获得最好的模型。分诊保持极简。它是分类器不是抽取器。如果分诊每条约超过 3 秒你就是做得太多了。无中间文件。分诊 → 门控 → 深度阅读 → 写入单遍完成。先抽取到 JSONL 再处理 JSONL延迟翻倍、收益为零。检查点保障崩溃恢复。每 25 条保存进度。管线必然会被中断重启、限流、网络。让它可恢复。隐私墙是确定性的且在 LLM 之前。命名实体与敏感模式类在任何 LLM 调用之前被剥离或转移绝不在之后。模糊内容失败即关闭转人工审核。拿不准就升档。漏掉重要内容的假阴性false negative代价高于对平庸线程多花一次 deep 层调用的假阳性。批量前先测试。按 test-before-bulk.md 运行渐进式递增并在提交全量语料前在试运行批次上验证门控质量。反模式一切用 deep 层。浪费。大多数归档的 50-70% 是噪声捐赠者观察。分诊门控的存在是有理由的。一切用 utility 层。错过真正重要的深度。用户的写作质量、情绪潜台词、关系动态——廉价模型捕捉结构深层模型捕捉含义。两条独立通道。先抽取到 JSONL再处理 JSONL。延迟翻倍、产生过期中间状态、增加复杂度且零质量收益。所有内容固定一个模型。整个模式的要点就是自适应路由。不同的内容值得不同的深度。硬编码模型 ID。档位通过模型路由约定gbrain models解析硬编码的 ID 会腐烂并静默失效。跳过隐私墙。个人归档包含医疗信息、家庭对话、凭据。确定性的 LLM 前检查不可省略。让 LLM 裁决隐私门禁。墙是确定性的正是为了隐私内容不会搭乘我该删掉这个吗的提示词顺风车。模糊性交给人类而不是模型。技能边界与相邻技能的去重archive-crawler—— 最近邻。archive-crawler 对文件做黄金过滤并在显式扫描路径白名单下交互式地呈现候选它决定什么值得读。two-tier-extraction 在批量抽取期间决定每一条用哪一档模型读。链条archive-crawler 呈现候选 → two-tier-extraction 路由它们。ingest—— 按内容类型会议、文章、媒体分发到专用摄取技能。two-tier-extraction 在批量运行内按内容价值路由到模型档位。类型路由与价值路由正交。strategic-reading—— 对单个来源的章节针对一个战略问题进行分诊。two-tier-extraction 对许多语料条目做抽取深度分诊且没有问题透镜。enrich—— 在抽取之后按知名度对每个实体页面的投入程度分档。two-tier-extraction 在抽取期间按语料条目给模型分档其实体输出喂给 enrich。cross-modal-review—— 跨模型比较输出以评估质量。two-tier-extraction 按价值分类把不同内容路由到不同模型它从不把同一内容跑在两个模型上做比较。model-routing 约定—— 定义档位词汇与解析链。two-tier-extraction 是这些档位在摄取侧的落地应用约定本身不携带分诊/门控管线。契约与输出格式该技能保证路由匹配 frontmatter 中的规范触发词。本技能 frontmatter 声明的触发词包括 two-tier extraction、triage then deep read、smart model routing、cheap triage expensive analysis、model escalation pattern、route models by content value、which model tier for bulk extraction同目录的 routing-eval.jsonl 提供了对应的路由评估样例例如 Set up two-tier extraction for this document dump — cheap model on the noise, best model on what matters 应命中本技能而 Crawl my archive and surface the writing worth keeping 命中archive-crawlerWhich model should I set as my default for gbrain chat? 命中为空。输出写入 frontmatterwrites_to:列出的目录originals/、personal/、people/、companies/、sources/。遵守引用的约定brain-first、model-routing、test-before-bulk、_brain-filing-rules。隐私墙是确定性的且在任何 LLM 调用之前运行模糊内容失败即关闭到人工审核被隐私墙拦下的内容绝不进入导出、发布或分享渠道。模型档位通过模型路由约定解析——无硬编码模型 ID。单遍管线带检查点无中间抽取文件。管线内联产出两种 JSON 形状Step 1 的分诊分类与 Step 3 的深度阅读抽取持久化产出是 Step 4 写入的大脑页面按_brain-filing-rules.md以主要主题归档。启动前建议按 test-before-bulk.md 执行 10 → 100 → 500 渐进式递增第 1 轮恰好运行 10 条并做计数前/后核对与 3 条抽样质检第 2 轮 100 条要求错误率低于 2%第 3 轮 500 条核对可搜索性与全批成本预估三轮干净后再提交全量配合--pace限速、进度上报与每 N 条提交检查点。gbrain 已内置这批批量运行的机器gbrain embed --stale --pace、--progress-json、--dry-run等不需要在 bash 里重新造轮子。【免费下载链接】gbrainGarrys Opinionated OpenClaw/Hermes Agent Brain项目地址: https://gitcode.com/gh_mirrors/gb/gbrain创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考