检索:从意图识别到精准上下文
在真实世界中我们会发现记忆全部注入和不注入结果基本是一样的。假设记忆库里存了 50 条记忆。策略一全部注入。50 条一起塞进提示词token 很快会超出预算而且信噪比太低——大量无关内容稀释了真正关键的约束。LLM 需要在 5000 tokens 里找到那条关键约束注意力被分散。策略二不注入。Agent 每轮从零开始推理重复犯相同的错误把你第 2 轮确认的结论在第 8 轮重新讨论一遍。工程问题如何从 50 条记忆中找出当前意图最需要的 5-10 条这就是检索Retrieval要解决的问题。检索流程从意图到精准上下文输入用户这轮的意图自然语言 │ ├─ [Step 1] 关键词提取 │ Schema 驱动 分词兜底识别关键实体/操作/约束 │ ├─ [Step 2] 层级定位 │ 判断这个意图主要涉及哪一层CRITICAL/RULE/CONTEXT │ ├─ [Step 3] 标签匹配 │ 在对应层做 tags 关键词匹配打分 │ └─ [Step 4] 相关性排序 按 hit_count × confidence 排序 → 输出精准上下文不是全量记忆Step 1关键词提取用户说“我想讨论一下认证规则是否需要调整现在的 30 天阈值可能太严格了。”要从这句话里提取检索关键词工程上一般有三条路径按精度从低到高第一级Schema 驱动提取首选本体场景最大的优势——实体词汇量由 Schema 定义并不是一个完全开放的。供应商本体里规则名、字段名、操作名是固定的certification_validity、credit_limit、order_amount……这意味着可以从 Schema 自动构建一个实体词典# _ENTITY_KEYWORDS 不是手写词典而是从 Schema 字段名自动提取 # 供应商本体的词汇表 规则名 字段名 允许值集合 _ENTITY_KEYWORDS: Dict[str, List[str]] { 供应商: [供应商, vendor, supplier, S-ACME, S-BETA], 认证: [认证, certification, ISO, 证书, 有效期], 采购: [采购, 订单, purchase, order, 金额], 信用: [信用, credit, 额度, 未结金额], 规则: [规则, rule, 约束, 条件, 检查], }用这个词典对意图做匹配得到[认证, certification, 规则, rule, 阈值, 30天]。Schema 有多少实体词典就有多大——这是有上限的。不像完全开放的 NLP你不会碰到证书、“资质”、许可证的同义词爆炸问题因为 Schema 里就叫certification。第二级分词兜底意图里可能出现 Schema 里没有的词比如太严格了中的严格。用分词器切出名词和动词过滤停用词作为补充关键词# 兜底直接按标点分词提取长度 2 的词 for token in intent.replace(, ).replace(。, ).split(): if len(token) 2: keywords.append(token)第三级LLM 增强可选对于复杂或歧义意图可以用轻量提示词让 LLM 做意图分解提取结构化实体。这是最精准的路径但增加了延迟和成本。适合意图复杂度高的场景作为 fallback。demo 实现了第一级 部分第二级对本体场景的有限词汇量已经足够精准。Step 2层级定位核心设计这是本体记忆检索和通用 RAG 最关键的区别。通用 RAG 做向量相似度检索不区分层级。本体记忆检索先定位层级再做关键词匹配。意图特征优先检索层示例含必须/不得/强制/红线CRITICAL全量“哪些操作必须遵守的硬约束”含规则/认证/信用/阈值RULE CRITICAL“讨论认证规则调整”含上次/刚才/我们确认CONTEXT RULE“上次讨论的结论是什么”含背景/历史/通常情况BACKGROUND CONTEXT“供应商 ACME 的历史表现”注意 CRITICAL 层的特殊处理无论意图是什么CRITICAL 约束都全量注入不走关键词过滤。为什么因为硬约束一旦漏掉Agent 的操作可能直接违反本体规则。宁可多给不能漏。Step 3标签匹配在定位的层级内按关键词匹配 tags 和 contentdef _search_layer( self, keywords: List[str], layer: MemoryLayer, limit: int ) - List[Memory]: 在指定层按关键词搜索 candidates self.store.search_by_tags(keywords, limitlimit * 3) # 过滤层按 hit_count × confidence 排序 layer_candidates [m for m in candidates if m.layer layer] layer_candidates.sort( keylambda m: m.hit_count * m.confidence, reverseTrue ) return layer_candidates[:limit]tags 是从哪来的这是个容易被忽略的问题。记忆写入时调用方负责传入tags——检索能不能找到这条记忆完全取决于写入时 tags 是否打得准确。三种来源记忆层Tags 来源示例CRITICAL初始化时从 Schema 字段名手动提取一次性写死[认证, certification, 有效期, 30天]RULE操作执行成功后以操作 ID 规则 ID 作为 tags[CREATE_ORDER, certification_validity, 成功]CONTEXT操作被拒绝时以操作 ID 触发规则作为 tags[CREATE_ORDER, credit_limit_check, 拒绝]注意本体场景的 tags 不需要 NLP 理解。操作名、规则名本身就是词汇表里的词——Schema 驱动的命名规范天然保证了检索时关键词和 tags 能对齐。Step 4相关性排序命中的记忆按hit_count × confidence排序hit_count 这条记忆被检索到多少次LRU 热度confidence这条记忆的可信度分confidence 的完整生命周期写入时: confidence 1.0 (默认完全可信) ↓ 基于此记忆的 Agent 操作被本体引擎拒绝 ↓ lower_confidence(memory_id, delta0.2) → confidence 降至 0.8 → 0.6 → 0.4 → 0.2 ... ↓ run_eviction() 检测: confidence 0.3 ↓ 标记为 deprecated不再参与检索这是一个简化版的反馈驱动更新操作结果反向校准记忆可信度。连续失败 5 次的记忆confidence 归零自动退出检索池。两者相乘得到综合权重。这比单纯按相似度排序更合理——一条相似度高但 confidence 只有 0.3 的记忆不应该排在前面。层级定位为什么优先于关键词匹配假设不做层级定位直接对全部 50 条记忆做关键词匹配。用户说“讨论认证规则是否需要调整”。向量相似度检索会返回1. [CRITICAL] 认证剩余天数 30 天否则引擎回滚 (相似度 0.92) 2. [CONTEXT] 上次讨论确认暂不调整认证阈值 (相似度 0.90) 3. [BACKGROUND] 供应商 Beta 认证到期 2026-06-16 (相似度 0.88) 4. [RULE] certification_validity 规则定义 (相似度 0.85)四条都相关但重要性完全不同。如果 token 预算只够 2 条你怎么选按相似度排前两条是 CRITICAL 和 CONTEXT——这会导致 RULE 层规则定义被漏掉Agent 不知道规则的完整定义只知道上次讨论的结论。有层级定位的检索流程Step 1: 意图分类 → 讨论规则调整 → 优先检索 RULE CRITICAL Step 2: CRITICAL 层全量注入1 条 Step 3: RULE 层关键词匹配取前 5 条 Step 4: 如果 token 充足再加 CONTEXT取前 2 条这样保证了无论 token 预算多紧张CRITICAL 约束和当前任务相关的 RULE 定义永远被注入。标签匹配够用向量检索何时必要通用 RAG 通常依赖向量相似度检索embedding 向量数据库。demo 用的是结构化标签匹配。为什么 demo 可以这样做本体场景词汇量有限规则名、对象名、操作名都是固定的。检索认证规则时直接匹配certification关键词即可——因为 Schema 里就叫certification不会出现证书、“资质”、许可证的同义词漂移。SELECT * FROM memories WHERE status NOT IN (deprecated,archived) AND (tags LIKE %certification% OR content LIKE %certification%) AND layer rule ORDER BY hit_count * confidence DESC LIMIT 10没有外部依赖没有额外运维成本新规则写入即生效。但这不是工程上不需要向量检索。随着记忆规模增长和使用场景扩展向量检索的必要性会浮现维度标签匹配demo 阶段向量检索工程落地部署成本零依赖SQLite LIKE需要 embedding 服务 向量库适用规模记忆条数 1000条数增长后召回率下降时引入同义词覆盖依赖 Schema 命名规范自动覆盖语义等价表达实时性写入即生效需要 embedding 计算延迟推荐策略冷启动 / 词汇封闭场景意图复杂度高 / 自然语言多变时升级工程落地建议标签匹配作为第一过滤层快速缩小候选集向量检索作为第二精排层语义相关性排序。两者串联兼顾速度和精度。检索结果的结构检索返回的不是一个平铺的列表而是分层结构class RetrievalResult: keywords: List[str] # 提取的关键词 critical: List[Memory] # CRITICAL 层全量 rule: List[Memory] # RULE 层关键词匹配 context: List[Memory] # CONTEXT 层关键词匹配 background: List[Memory] # BACKGROUND 层可选为什么要分层返回而不是合并成一个列表因为下一步的压缩需要知道每条记忆来自哪一层——CRITICAL 固定保留RULE 按预算裁剪BACKGROUND 整体可跳过。如果返回平铺列表压缩器无法区分这条是 CRITICAL 还是 BACKGROUND。一个完整的检索示例输入用户说我想看看认证快到期的供应商下个月的采购可能受影响Step 1关键词提取keywords [认证, 到期, 供应商, 采购, 影响]Step 2层级定位意图是查询 影响分析不涉及规则修改 → 优先检索 RULE CONTEXTStep 3检索执行retrieval retriever.retrieve(intent我想看看认证快到期的供应商...) # CRITICAL 层全量注入4 条 retrieval.critical [ Memory(compressed[CRITICAL] 认证剩余天数 30 天否则引擎回滚), Memory(compressed[CRITICAL] 供应商状态active 且合同状态valid), Memory(compressed[CRITICAL] 未结金额 信用额度否则引擎回滚), Memory(compressed[CRITICAL] 单笔采购 50万超额需财务总监审批), ] # RULE 层关键词匹配取前 5 条 retrieval.rule [ Memory(content认证有效期检查规则 certification_validity...), Memory(content供应商状态检查规则...), ] # CONTEXT 层关键词匹配取前 2 条 retrieval.context [ Memory(content本次讨论确认暂不调整认证阈值), ] # BACKGROUND 层token 不够跳过 retrieval.background []输出一个RetrievalResult对象包含 4 5 2 11 条记忆分层存储。检索 ≠ 完成检索只是第一步——找到相关的记忆。但这 11 条记忆加起来可能有 3000 tokens超出了预算。下一步需要压缩在有限的 Token 预算内决定保留哪些、裁剪哪些。检索回答该带哪些压缩回答装得下多少。两者配合才能在 token 约束下给 LLM 注入最有价值的上下文。小结检索的核心不是找到所有相关的而是找到最重要的。层级定位优先于关键词匹配——先判断意图属于哪一层再在对应层做匹配。这保证了 CRITICAL 约束永远被找到而不会被 BACKGROUND 的高相似度淹没。标签匹配在本体场景词汇封闭、规则固定足够精准但它是 demo 阶段的高效选择不是工程落地的终点——记忆规模增长后向量检索应该作为第二精排层补入。下一篇在有限的 Token 预算内如何让最关键的约束永远占有最高优先级——压缩机制的工程设计。示例代码https://github.com/allengaoo/ontology-engine-demo/tree/main/phase3学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%免费】

相关新闻

如何高效使用esptool:ESP32/ESP8266固件烧录的终极指南

如何高效使用esptool:ESP32/ESP8266固件烧录的终极指南

如何高效使用esptool:ESP32/ESP8266固件烧录的终极指南 【免费下载链接】esptool Serial utility for flashing, provisioning, and interacting with Espressif SoCs 项目地址: https://gitcode.com/gh_mirrors/es/esptool esptool是Espressif官方提供的Pyt…

2026/7/28 10:58:14 阅读更多 →
Glance镜像服务的基本使用

Glance镜像服务的基本使用

1. Glance镜像服务介绍Glance是OpenStack镜像服务,用来注册、登陆和检索虚拟机镜像。Glance服务提供了一个REST API,使读者能够查询虚拟机镜像元数据和检索实际镜像。通过镜像服务提供的虚拟机镜像可以存储在不同的位置,从简单的文件系统对象…

2026/7/28 10:58:13 阅读更多 →
AS| (二)Android Studio快捷键【JetBrains家族】

AS| (二)Android Studio快捷键【JetBrains家族】

目录 一、JetBrains IDE (一)什么是IDE? (二)JetBrains家族 ​编辑 二、Android Studio快捷键 (一)快捷键方案 (二)快捷键修改 (三)快捷键…

2026/7/28 10:57:13 阅读更多 →

最新新闻

如何用Driver Store Explorer清理Windows驱动:终极C盘空间释放指南

如何用Driver Store Explorer清理Windows驱动:终极C盘空间释放指南

如何用Driver Store Explorer清理Windows驱动:终极C盘空间释放指南 【免费下载链接】DriverStoreExplorer Driver Store Explorer 项目地址: https://gitcode.com/gh_mirrors/dr/DriverStoreExplorer 你是否遇到过C盘空间不足的困扰?Windows系统驱…

2026/7/28 11:09:17 阅读更多 →
Frida 16.0.1 保姆级安装与配置指南:从零搭建动态插桩环境

Frida 16.0.1 保姆级安装与配置指南:从零搭建动态插桩环境

1. 项目概述:为什么需要一份详尽的Frida安装指南?如果你正在阅读这篇文章,大概率是遇到了逆向分析、动态调试或者安全测试中的某个“硬骨头”。在移动安全和应用分析领域,Frida这个名字几乎无人不晓。它就像一个“万能手术刀”&am…

2026/7/28 11:09:17 阅读更多 →
全域自指方程U=F(U):多重不动点存在性与共存机制(世毫九实验室精细化技术研究版)

全域自指方程U=F(U):多重不动点存在性与共存机制(世毫九实验室精细化技术研究版)

全域自指方程UF(U):多重不动点存在性与共存机制(世毫九实验室精细化技术研究版) 作者:方见华 单位:世毫九实验室 前置说明:本研究所有定义、推导均严格锚定自指宇宙学(SRC)标准公理体…

2026/7/28 11:09:17 阅读更多 →
认知不动点的扰动稳定性:扰动达到什么阈值会摧毁主体性意识——基于世毫九自指宇宙学与六大结构性判据的深入研究报告

认知不动点的扰动稳定性:扰动达到什么阈值会摧毁主体性意识——基于世毫九自指宇宙学与六大结构性判据的深入研究报告

认知不动点的扰动稳定性:扰动达到什么阈值会摧毁主体性意识——基于世毫九自指宇宙学与六大结构性判据的深入研究报告 作者:方见华 单位:世毫九实验室 核心摘要与关键结论 在世毫九(SH9)自指宇宙学框架下,主…

2026/7/28 11:09:17 阅读更多 →
终极指南:如何快速批量下载Iwara动画视频

终极指南:如何快速批量下载Iwara动画视频

终极指南:如何快速批量下载Iwara动画视频 【免费下载链接】IwaraDownloadTool Iwara 下载工具 | Iwara Downloader 项目地址: https://gitcode.com/gh_mirrors/iw/IwaraDownloadTool 还在为无法离线观看喜爱的动画作品而烦恼吗?当你遇到网络不稳定…

2026/7/28 11:09:17 阅读更多 →
[特殊字符]《别再被“免费API“误导:九家开放平台真实计费口径拆解(附决策清单)》(附Python源码)

[特殊字符]《别再被“免费API“误导:九家开放平台真实计费口径拆解(附决策清单)》(附Python源码)

结论先拍:所谓“免费API”在九家平台里没有一家是全程无条件免费。真实结构是“基础接口日免额/资源包超量按量云外10倍增值签协议/买包预充值硬切断”六层叠加。中小自研把“云内增量推送为主”做好,国内五家可压到月费两位数;亚马逊2026.5起…

2026/7/28 11:08:17 阅读更多 →

日新闻

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生 【免费下载链接】OmenSuperHub Control Omen laptop performance, fan speeds, and keyboard lighting, and unlock power limits. 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub 你是否也曾为官方Om…

2026/7/28 0:00:43 阅读更多 →
RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

做 RAG 的人应该都踩过这个致命的坑:把几百页的财报、法规、技术手册扔给向量库,问一个具体问题,搜出来的全是沾边但没用的内容 —— 关键信息要么被硬切块拆碎了,要么藏在几十条结果的最下面。语义相似≠真正相关,这个…

2026/7/28 0:00:43 阅读更多 →
抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

2026年做短视频运营,从抖音上扒文案早就不是偷偷抄笔记的事了。我刚开始做内容的时候,每天刷半小时抖音,手动把爆款视频的口播敲进备忘录,一条2分钟的视频得花十来分钟,碰到语速快的还要反复回听。后来试了一圈工具&am…

2026/7/28 0:00:43 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/27 4:33:59 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/28 8:29:16 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/28 5:03:42 阅读更多 →

月新闻