上下文与检索:Context Window = f(Context),以及不调库的 RAG

发布时间:2026/9/23 2:21:54

上下文与检索:Context Window = f(Context),以及不调库的 RAG 上下文与检索Context Window f(Context)以及不调库的 RAG配套课程第三章11 讲 智能检索主线。对应考点上下文不是越多越好、压缩与细节找回、RAG 不止于“丢给向量库”。1. 一句话点破误区面试官你的 Agent 怎么管理上下文候选人把历史对话全塞进 prompt 就行了。面试官长任务跑 50 轮呢token 爆了、噪声淹没关键信号怎么办课程的原话是Context Window f(Context)—— 上下文是“上下文状态”的函数不是堆得越多越好。本系统的memory_agent.py同时做了上下文管理和检索两件事而且零三方依赖不用 langchain、不用向量数据库方便你读源码、改源码、讲源码。2. 上下文管理 f(Context)该放什么、该丢什么、丢了怎么找回来2.1 工作记忆 预算压缩def_compress(self,sid):whileTrue:size(sum(len(str(h))forhinhistory)len(str(entities))len(str(prefs)))ifsizeself.WORK_BUDGETorlen(history)3:breakoldhistory.pop(0)# 丢最早的细节self.compressed[sid][key]old# 但细节进“压缩存储”超预算时丢弃早期历史细节但保留实体与偏好机票、上海、低预算这类关键信息永不离场。被丢的细节不是没了而是进了compressed存储。2.2 细节找回detail recoverydefexpand(self,sid,key):return{key:key,detail:self.compressed[sid].get(key)}需要时可以按 key 把压缩掉的细节重新展开。这就是课程说的“压缩之后细节怎么找回来”。2.3 相关度过滤不是越多越好get_context支持按当前任务做相关度过滤——只把与当前任务相关的实体送进窗口iftaskandentitiesinctx:ctx[entities_relevant][eforeinctx[entities]ifeintask]这一行就是f(Context)的具象上下文是“当前任务”的函数。3. 智能检索不用向量库的 RAG 也能跑课程说“智能检索不止 RAG”。但 RAG 本身也要讲清楚“该查什么、去哪查、chunk 粒度与召回精度怎么平衡”。本系统用一个零依赖的 TF-IDF 字符 bigram 向量实现真实检索deftokenize(text):toks[w.lower()forwinre.findall(r[a-zA-Z0-9],text)]cnre.sub(r[a-zA-Z0-9],,text)foriinrange(len(cn)-1):toks.append(cn[i:i2])# 中文按字符 bigram 切规避分词依赖returntoksclassTFIDFIndex:defquery(self,q,top_k3):# 构造查询向量 → 与每篇 doc 的 tfidf 向量算余弦 → 取 top_k为什么不用现成向量库为了把检索原理讲透。面试时能说出“chunk 粒度太小召回碎、太大引入噪声”“查询改写提升准确率、索引提升性能”比“我调了 xxx 向量库”强。3.1 真实召回效果S2 里retrieve(机票)命中《机票产品知识》片段“机票预订支持单程与往返价格随淡旺季与提前天数波动。通常提前 21 天以上预订最划算……”S3 里retrieve(云服务器)命中《云服务器规格与计费》。检索相关性指标在实测里 1.0。3.2 chunk 粒度与召回/精度的权衡语料corpus_data.py把知识切成一条条 chunk每条一个概念/一个产品演示了 chunk 粒度的选择太细一个概念拆成 5 段 → 召回碎、拼不起来太粗整章一个 chunk → 噪声多、精度掉本系统取“一个概念/产品一条”是兼顾召回与精度的折中。4. 检索失败怎么办也是 Replan 的素材当查询过窄导致0 条命中执行层返回结构化失败PlanAgent 把它分类为retrieval根因插入“放宽检索/切换知识源”的纠正步。这就把“智能检索”和“规划执行”连起来了。5. 面试话术模板“上下文管理我用f(Context)的思路上下文不是越多越好。我给工作记忆设预算超阈值丢早期细节但保留实体和偏好丢弃的细节进压缩存储可按 key 找回get_context还按当前任务做相关度过滤只把相关上下文送进窗口。检索侧我实现了一个零依赖的 TF-IDF 字符 bigram 检索讲清楚 chunk 粒度、查询改写和重排对召回/精度的影响而不是黑盒调向量库。”下一篇执行与评估TAO 工具选择与评估反馈闭环
延伸阅读

更多相关文章

2026/9/23 2:19:54

规划执行:好 Plan 的 G4C,与“失败点 ≠ 根因点”的 Replan

规划执行:好 Plan 的 G4C,与“失败点 ≠ 根因点”的 Replan 配套课程第二章(05~10 讲)。对应考点:Plan 机制、Replan 上下、TAO & ReAct、面试场景设计。 1. 面试官的两连问 面试官:你的 Agent 怎么制定…

2026/9/23 2:20:28

意图识别:面试官不想听“调大模型判断”,这三层才是答案

意图识别:面试官不想听“调大模型判断”,这三层才是答案 配套课程第一章。对应考点:用户输入规范化、三层意图识别机制、准确率提升、简历写法。 1. 面试现场最常翻车的一句话 面试官:用户说“那个最划算的帮我订了”,…

2026/9/21 6:22:59

StreamCap:免费跨平台直播录制工具的终极使用指南

StreamCap:免费跨平台直播录制工具的终极使用指南 【免费下载链接】StreamCap Multi-Platform Live Stream Automatic Recording Tool | 多平台直播流自动录制客户端 基于FFmpeg 支持监控/定时/转码 项目地址: https://gitcode.com/gh_mirrors/st/StreamCap …

2026/9/23 2:17:26

docker-compose 多文件合并机制详解:从基础叠加到多环境配置实战

开发环境能跑,测试环境一启动就报端口占用,生产环境又缺了三个环境变量……如果你维护着多套 docker-compose.yml,靠复制粘贴来同步差异,这类问题迟早会找上门。我早年就栽过这个跟头,后来干脆把编排文件从一份巨型 YA…

2026/9/23 2:17:25

高德地图API批量距离计算工具:Java多线程实现物流距离矩阵

简介:面向物流、配送及地理信息处理开发者,这套基于高德地图API的Java工具专门解决批量地理位置距离计算问题,支持地址批量输入、距离矩阵计算、CSV文件导入导出、多线程并发处理与结果可视化展示,适合需要处理成百上千个地址数据…

2026/9/23 2:17:25

Nushell+coreutils+Fresh:打造高效Windows终端开发环境

在 Windows 上做终端开发,最烦人的从来不是终端本身,而是终端里那套跟 Unix 世界长期割裂的命令体验。早几年我从 Linux 切回 Windows 办公,每次打开 PowerShell 想复现一套ls | grep | sort的管道操作,都要先愣一下:参…

2026/9/23 2:12:25

下载电子邮箱踩坑实录一文搞懂

下载电子邮箱踩坑实录一文搞懂 刚学会Python基础语法,是不是觉得自己已经入门了?结果一上手做项目,连个像样的邮件发送功能都写不利索,卡在半路动弹不得。这种“语法都会写,项目不会搭”的断崖式体验,是无数初学者从教程走向实战时最真实的痛。…

2026/9/22 10:02:42

GAMP 5 基于风险的计算机化系统验证:软件分类与审计追踪实践

简介:《A Risk-Based Approach to Compliant GxP Computerized Systems》即业内熟知的GAMP 5指南,面向制药企业质量与IT合规人员、验证工程师及计算机化系统管理者,用于解决GxP法规环境下系统合规性难以科学落地的问题。文档以风险管理为主线…

2026/9/22 9:07:39

安全托管MSSP实战:从静态防御到人机协同的攻防运营与应急响应

简介:这份PPT围绕互联网业务安全托管服务展开,面向企业安全负责人、IT运维人员及关注MSSP/MSS选型的读者,重点回应传统安全过度依赖人工、碎片化静态防御难以对抗产业化攻击等痛点。资源共1个pptx文件,包体约30.63MB,以…

2026/9/23 0:01:54

3个实战技巧搞定形式英语:从看教程到跑通性能优化

3个实战技巧搞定形式英语:从看教程到跑通性能优化 看了一堆教程还是不会写项目?别慌,这种“眼高手低”的困境在开发者圈子里太常见了。很多人以为卡点在语法,其实真正拦路虎是缺乏将知识点串联成完整链路的能力。今天咱们不聊虚的,直接拿【形式英语】这…

2026/9/22 16:34:32

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/22 20:01:30

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/22 13:25:41

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码