ai edge 上下文一多就开始制造失忆字节大佬开源狂揽一万多新的神器 open mike, 它是专门为 ai 打造的上下文数据库,最牛的是首创了文件系统范式,这意味着你可以像管理电脑本地文件夹一样,给 ai 挂在长期记忆工具和知识库, 不但自带三级缓存报 show token, 还能用类似 linux 的 目录解锁,结合语域搜索 ai 到底是怎么思考怎么调用知识的解锁轨迹直接可视化告别黑盒调试,它还完美兼容各种大模型。赶紧给你的 ai 换上一个能自我净化绝不失忆的最强大脑。
粉丝1905获赞7.9万

大家一定要记住,为什么会有龙虾?龙虾为什么会这么火?是因为以前的大模型有几个缺陷,包括刚刚企业私有化, ai 没有做好的一个核心点,就首先他是没有记忆的,记你就全记吧,记不下来。大家知道大模型有个叫上下门窗口,上门窗口几百 k 也就存几十万字, 那很多数据都往里 c, 而且它 c 多了还有什么问题?你知道上门太长还你知道什么问题吗?记模糊了就是他找不到重点了, 这就是为什么上就他记了很多东西以后,你就发现他在写东西有时候会变笨,他变笨的核心原因是他以前的东西记太多以后,你再想他的原理什么是根据这么多词的概率推荐下一个词, 当那边词太多以后,他不就模糊了吗?所以他抓不住重点了。所以在在这个很多这个大模型产品里,对记忆都是一个非常头头的东西, 再一个就他也没有办法主动去记,对吧?有的新东西来了,不断出现的事,他也没有办法变成一个重点的归类。所以呢,今天龙虾 tcclor 就 有了文件记忆,文件记忆又分好几层啊,再一个就是定时器,再一个就是用工具,再用机制等等这些。所以你们一定要把这几这两个东西记住,一个叫 cron, 一个叫工具, 这两件事情还有他的记忆。就有的时候我跟三万交流的时候,我会说我们曾经发生过什么什么事,前天我让你做个什么文档,你先想一下,你以为我是真的让他想吗?我让他想一下,是把我关注的文档给他调到他的上文里,他 想完之后他会把那文档吐给你们,他吐给你,过程就装到他大脑里。这个事我在这有次文档跟他讲,所以这里面有个很重要的那个,就是你真的要跟他记忆搞好,要一个长问题,至少分两步,你看刚才我是怎么把一个国产模型用的这么好的, 我都是在跟他分两步,我第一步是说我要一个什么什么你经典啊什么,然后我跟他说,我说怎么样,你这个工作步骤都给我讲一遍,看见没有?这是第一步,就我不会让他直接干活,让他直接干活他就要去把这个任务分的很长,他很多地方就太碎了嘛。所以我第一步让他总结这个工作步骤, 这就第一步,等他总结步骤完了,再再让他去做这第二步,然后再让他发一个测试,这样是第三步, 也就说你今天要真的去理解他的时候你才知道,哦,原来我去训他的时候,我是要一点一点的层层递进的去聊 这个基因怎么去利用它,你去问龙虾,你跟他探讨你就知道了。大家去要 c m c 点 b o t 啊,去下载一键就知道了,就可以跟着我的教程一点点往前走,非常简单的原理,但是得花点时间真正实践养龙虾就用 ez curl。

最近我们发现其实人和人在使用 ai 的 时候还是有很大的差距的,然后更多的大家使用的方式还是像是百度一样的有问题去问一下,我就觉得可能是因为还有很多人没有意识到,像 ai 编程软件对于我们生产力就是非技术人员的分,生产力影响其实是很大的。 其实大家一听到因为就像我之前一样听到这个编程软件,就觉得这跟我有什么关系啊?我是一个写文档的,我是一个职场的文案工作者,我为什么用这个东西,我就觉得这个东西我都不想听。 对,像 ai 编程软件就是像 corsa, cloud code free 这种软件,它们其实对于我们这种非研发人员来说, 它是可以在我们的日常工作生活中也能提供很大的帮助的。甚至包括一些现在 asp, 他 们已经推出了这种 co work 这种基于 cloud code 的 基础之上的一些办公领域的 agent 软件,它们改变的最大的是这个交互形式,而交互形式改变呢?其实是你可以把你的所有的 与 ai 写作的数据全部归导到你的本地,这些才是你真正沉淀积累下来的那一个肉体 agent 的 肉体。而像 crosa, color code, 甚至包括 openclaw, 它们只是去赋赋予这个肉体的灵魂,让这个肉体动起来的一部分而已。所以 如果现在大家对 openclaw 感兴趣的话,你们可以先从就是就是简单的 ai 编程软件开始尝试使用,因为它们区别其实没有那么大。 通过这个方式,你可以去构建沉淀下来一个很完整的你自己的工作体系,这包括了不光是工作,如果你是学生,你可以把你的学习情况,你的学习进度都都构建到这个 ai 体系中来,然后由它来帮助你追踪你的学习情况,来帮你完成答疑或者是 提问等等。这个可以看我上一期那个一百八十八小时法考攻略的那个方法论啊。如果你是职场的那些牛马,你也可以把你的日常工作中需要做到的事情去 全部放到你的 ai 工作体系中来,当然叠个假就是要公司要允许允许。对,这个也可以看我之前上过的职场牛马的那些方法论,我们都讲过,就是这些东西的底层方法论是我们特别想要传达出去的。就是就是,我之前不是用 ai studio 吗?用的很开心,因为模型很好,每次问完问题以后,他就给了我一个内容的答案, 我要把它复制下来贴在我的文档里修改修改给我的领导看。这大概是现在我们很多人很常见的交互形式。对 等。我把所有的生产的环节搬到工厂以后,发现所有的事情全是在本地发生的,我跟他的所有的对话,他直接在本地上进行修改,那所有本地产生的内容,他能自动 构建出一套体系,下次我跟他的对话,他直接去本地查找所有的内容,我不需要再跟他去做很多的前置,也不需要做内容的搬运了,所有的事情发生都在本地。 总结一下就是把 pad 型、聊天型的 ai 应用,它们的内容仍然是局限于一次的绘画中,一个新的绘画对于你来说它们就是一次新的认识,所以你要重复去补充很多必要的上下文,或者你要去保存很多的提示词, 但是在本地的时候,你去通过构建一个自己的文件夹,这里面就是你的工作系统,再去结合或是 coco 的 这些软件,那么它们就是相当于可以融入到你的工作体系中。工作上下文中还有一个很大的点就是因为 skill 的 出现。首先大家也不要认为 skill 就是 提供给研发用的 skill 其实我觉得是对于非技术人员来说是更大的使用场景,因为 skill 它其实就是把一些工作中常经常会用到的一些流程,把它体系化提炼出来,然后变成一个方法论。 比如说像我们之前视频中的一些插图,全都是通过 skill 一 键生成的,我就把我们的视频的字幕导给 ai, 用一个我自己做的 skill 就 可以自动化的生成这些视频中的插图了,不需要我再去重复的去 表述应该使用哪些方法,甚至包括不需要不需要去表述应该调用什么样的 api, 这些全都是可以自动化的执行了。 其实还有我现在不是写日常的工作汇报嘛,工作汇报 ppt 又写的特别正式,但是呢,如果我用 word 文档全是文字,看的又没那么清楚,所以我现在所有的工作汇报的形式就是写完文档以后,自动变成一个格式化的一个内容,然后呈现给我的领导 样子的话,它看上去就更舒服。而且它生成这个过程所有的过程全部都是它自动化,能够将我的一些方案在跟我勾兑完了以后,直接折腾到这一步,我也不需要跟它留什么标准,我只需要说一句,我要给谁谁做汇报,它就自动能够把这件事情换起了。对,而且 still 其实就是它的 想象力空间可以很大,而且它的客力度甚至可以很小,但是使用频率很高的一些事情,如果你能学会利用这些软件的话,这将是你卖出的。 在 ai 时代迈出了很大的一步,也是希望很多一直在看我们视频的同学们可以能够紧紧的跟上,不一定要去不断的切换工具,而是要构建出属于自己的这种知识体系。 ok, 那 本期视频就这样,拜拜。拜拜。

上一期我们讲了为什么 ai 需要上下文工程。上下工程能帮助我们在合适的时间把合适的信息放进模型的上下关口,让 ai 保持清晰、稳定、有逻辑。整个上下工程可以分成两部分,静态部分和动态部分。 静态部分是在智能体启动之前,我们提前为他准备好的内容,比如他是谁,能做什么,该怎么做,这些就是 ai 的 出场配置。而动态部分则是 ai 在 运行过程中,根据任务环境、外部知识的变化,实时管理和更新自己的上下文。这一期我们聚焦静态部分, 也就是上下文工程的三大核心组建,系统提示、工具和象力。可以这样理解,系统提示是 ai 的 灵魂工具是它的手和眼,视力是它的经验和范本。静态像啥工程?就像一次 ai 的 出厂设置,我们要决定它出生时装了哪些模块, 能看到什么,理解什么以及能做什么。接下来我们一部分一部分来看如何为它构建这三大组建。首先是系统提示,系统提示是整个 agent 的 大脑基础,它告诉模型你是谁,你该干什么,你该怎么干。文章里提到一个重要概念叫合适的高度, 意思是指令不能太细,也不能太空,要在具体性和灵活性之间找到平衡。我们来看两种常见的极端情况,第一种是太具体, 有些人写系统提示时会写得像北代码一样,用大量 ifelse 逻辑硬编码, ai 该怎么反应,听起来考虑周到,但结果往往是模型变得死板,一旦遇到没写进去的情况就不知所措,而且这样的提示很难维护。 这就像在职场上进行微观管理,事无巨细地盯着下属每个动作,反而让人失去思考空间, ai 也是如此。 另一种极端是太模糊,有些人只写一句话,比如请像一个专家一样帮我思考。问题是模型根本不知道专家是谁,该怎么思考。我们以为他能理解语境,但其实他不懂。 结果就是输出飘忽不定,要么太抽象,要么风格不对。这就像只告诉团队去改变世界吧,却不给任何计划和目标。那到底该怎么写系统提示呢?文章给出了两个实用建议。第一个是结构化,不要写成一大段散文, 用清晰的层次,比如分出指令背景信息与其规范,可以用简单的标签将指令部分背景分别写在不同段落, 这样模型更容易理解每块内容的作用。第二个是迭代优化,不要一上来就堆十段文字,先用一个最小版本的提示,跑几轮测试,看看出错的地方,再针对性的补充。这是测试驱动的写法, 比一开始就靠灵感写题是靠谱的多。接着讲第二个部分,工具,工具是 ai 的 首和感官,能让 agent 和外部世界交互、计算、解锁或执行任务。 但要注意,工具的定义本身也属于上下文,每个工具的名字、描述、输入、输出、说明都会占用模型的注意力、预算。 所以设计工具时有一个核心原则,最小可行工具集,也就是能解决任务所需要的最小那一组工具,能不放的工具尽量不放。很多人会犯堆太多工具的错误,算数的、翻译的、搜索的、数据库的、 生成图片的,看上去功能丰富,但其实很混乱,功能重叠,命名模糊,模型也不知道该选哪个。文章中有句话很到位,如果人类工程师自己都不确定该用哪个工具,那就别指望 ai 能选对。正确的做法是遵循高内距低藕合的原则。每个工具的功能要独立清晰,不要混在一起。 每个工具的描述要准确、无歧义,因为对模型来说,工具的描述就是它的说明书。工具越清晰, ai 的 行为就越可靠。 最后一个部分是势利,也就是 few shot examples。 它的作用是告诉模型你希望它怎么思考,怎么回答,不是训练它记答案,而是教它一种思维方式。很多人以为势利越多越好,其实并非如此。 视力太多会让上下文膨胀,信息嘈杂,模型反而更难抓住重点。好的视力不是覆盖所有情况,而是展示一种思考模式,比如遇到模糊问题时,先澄清再回答,这种就是有代表性的典范视力。文章中有个形象的比喻,对模型来说, 一个好的视力就像一张能说明一切的图片,它的价值不在数量,而在代表性。下面我们来总结一下一个高质量的静态上下文由三部分组成, 系统提示、定义方向、工具提供能力、视力校准、行为。这三者共同决定了 ai 的 稳定性和一致性,构成了 ai 可靠行为的基础。现在我们已经帮 ai 装好了大脑的基础结构,接下来它在运行中会不断接收新的信息,该怎么让它动态地管理这些上下文呢?这就是下一期的主题, 动态秤下跟检测,我们会看看 ai 怎么学会自己动态找信息,为自己提供合适的上下文。

哈喽,大家好,这里是七号。前几期视频我们提到过,当上下文越长的时候,模型就越难记住之前的信息, ai 回答的质量反而会出现越来越差的情况。所以我们现在破解需要一种机制,让 ai 的 上下文始终包含的是有效的信息。 这期我想用几分钟讲清楚 coco 博克里一个很关键的设计,动态上下文,发现它的核心做法很简单,就是让 ai 在 需要的时候自己把信息找出来。接下来我会拆解 coco 的 五个实践,告诉你动态上下文应该怎么落地。 在我的理解里,上下文就是你在和 a 站的交互的时候,模型能看到的一切信息。它包括系统提示、对话历史、你打开的代码、文件、工具的定义以及工具运行后的结果等等。 但关键的点在这里,上下文不是无限的,它本质上是一个有限的窗口,比如常见的一百二十八 k to, 所以 问题就变成了这么多信息,哪些应该立刻放进窗口里面,哪些应该等需要的时候再拿出来。很多系统的做法是绘画一开始就把能想到的东西全部塞进去,这就是静态上下文。它看起来很贴心,但我们会遇到几个很现实的后果, 包括上下文膨胀、关键细节丢失、托管的浪费、换小和中途等等。最后你可能会说,既然上下文膨胀,那我就进行一个摘要,但摘要的本质上就是有损压缩细节,丢了就是丢了, 所以我更喜欢另外一条路,按需加载。这里就是动态上下文要解决的事情。剩下一题,刚才做过 ab 测试,这种思路可以让托管的消耗减少百分之四十六点九, 这个数字我会在后面再次提到。那接下来我们通过科室的五个实践,一条条来讲清楚科室是如何通过文件系统来实现动态上下文管理的。首先科室做的第一个实践就是把超长的工具输出变成文件。 我们经常遇见一个场景,终端一跑,输出的日期文件就有几千行,如果直接把这几千行塞进上下文窗口,立刻被撑大,而且还有可能会被截断。 查找的算法更倾向于先存档再缩影。当工具的输出太长的时候,就直接写入临时文件,同时把文件的路径返回给 agent, agent 在 需要的时候,再通过这个文件的路径去寻找到对应的文件,然后先读取文件的末尾,然后再决定要不要扩大范围,继续去搜索文件的剩余内容,这样既不丢数据,又能控制成本。再来第二个时间是摘要的时候保留可以解锁的完整历史。 当我们和 ai 的 对话很长的时候,很多系统就会把对话历史压缩成一段摘药,但我们最怕的就是摘药这个操作,把关键的约束抹掉了。比如当我们明确提出不要使用某某某方法的时候,结果 ai 的 生成的胶囊并没有这条约束,那后面就很容易翻车, 咳嗽的程度就是两条腿走路。他在新的窗口里面放精简的摘药,同时又把完整的对话历史单独保存为文件。接着当 ai 觉得缺少细节的时候,就可以去这个历史文件里面 grip 一下,把那一轮对话的原话找出来, 这就把记忆从脆弱的摘要变成了可靠的可解锁文档。第三个实践就是用 agent skills 做开放的能力扩展。我们都知道,最近的 agent skills 很 大程度上拓展了 ai 的 能力边界。 agent skills 本质上就是通过这种渐进式批注的方式,把新能力增量地引入到模型当中。 关键的地方在于,对话启动的时候,它不会把 skill 的 全文都塞进上下文,它只是放了一个很清亮的列表,比如这里视力当中的 name 和 description。 等到对话真的涉及到这部分任务的时候, agent 再去读取 skill 文件当中的完整内容,按照里面的流程进行执行。 这样做的好处就是扩展能力非常的简单,同时也不让上下文被一堆用不到的说明文字给拖垮。第四个时间和 agent skills 的 原理也是类似的,也就是让 mcp 也进行按需加载, 服务器上可能有几十上百个 m c p 工具,如果每个工具都带着长描述,一次性全加载,拓客很快就会爆掉。那可傻的做法就是把工具描述同步到本地文件夹里面进在上下文里面只保留工具的名称。 当 agent 真的 是要创建某个 issue 的 时候,再去对应的目录读取那部分的工具文档,拿到参数和说明,然后再进行调用。 在 cos 的 案例里面,这种策略在 a b 测试里面带来一个明确的结果,图控的消耗减少了百分之四十六点九。我很喜欢这一点,因为它不是理论更优,而是实际测出来更深。最后一个实践非常贴近我们开发的日常, 当我们的终端日制很长的时候,手动复制给 agent 又慢又容易漏,有时候直接把终端输出的日制信息同步到文件系统当中。所以当你遇到问题问 ai 为什么启动失败的时候, ai 不是 等你填日制,而是自己去日制文件里面搜 error、 field 这类关键词,以此来修复 bug。 这道题的本质就是把需要人肉搬运的文本变成可以被 agent 直接解锁的外部记忆。最后让我们来简单总结一下今天的内容,我会用一句话来说,为,文件系统是一种简单强大且面向未来的抽象结 构,动态上下文发现不是在减少信息,而是在改变信息进入上下文的时机。我们要做的其实就是先清量引导,让 ai 按需读取,让 agent 在 任务过程中自己找到最相关的证据。 这也解释了为什么魔性越强。我们应该越少做静态的赛马,去多做动态的发现。好了,那么今天的视频就到这里,我们下期视频再见!拜拜!

你有没有发现,有时候给 ai 喂了太多资料,它聊着聊着反而变笨了,甚至开始胡言乱语? 这其实是因为 ai 的 脑容量是有限的。在 ai 领域,我们把这个脑容量叫做上下文。过去几年,大家都在研究提示词工程,也就是怎么对 ai 说话才能让它听懂。 但现在,随着 ai 越来越像一个能独立工作的智能体,我们进入了上下文工程的时代。打个比方,提示词就像是菜谱,告诉 ai 怎么做菜,而上下文就是你摆在 ai 面前的所有食材和厨具。 你可能会问,既然 ai 处理速度那么快,我把所有资料一股脑全塞给他不就行了吗?千万别研究发现, ai 和人一样,看的东西太多,就会走神,这被称为上下文腐败。 ai 有 一个注意力预算,你每多塞进去一句话,就会消耗一点他的注意力。资料越多,他提取关键信息的准确率就越低。 所以,优秀的上下文工程核心秘诀就是用最少的高质量信息换取最准确的回答。那么,在实际操作中,我们具体该怎么做呢?主要有三个关键点。 第一,设定系统提示词时,要找到刚刚好的平衡点,不能太死板,也不能太模糊。 最好用清晰的结构把要求分块,比如用标签区分出背景信息、具体指令和输出格式,让 ai 一 目了然。第二,给 ai 配备工具时要精简,不要给他一个乱七八糟的工具箱,让他自己猜该用哪个。 每一个工具都应该功能独立,描述清晰。如果连人类都不知道某个场景该用什么工具, ai 就 更猛了。 第三,给 ai 举例子时,不要试图穷举所有的边缘情况,给几个最经典、最具代表性的例子就足够了。掌握了基础,我们来看看进阶技巧,如何让 ai 学会现学现卖,也就是及时获取上下文。 想想我们人类是怎么工作的,我们不会把整个图书馆背下来,而是通过目录文件夹去搜索需要的那一页。 高级的 ai 智能体也是这样,不要一开始就把几万行代码全发给他,而是让他自己去读文件名,看时间戳,按需提取信息。 这种渐进式的信息获取,能让 ai 的 工作记忆里只保留最必要的信息,从而保持高度专注。但是,如果遇到需要连续工作几个小时的超长任务, ai 的 记忆还是会爆满。怎么办? 工程师们发明了三个绝招来解决这个问题,压缩、记笔记以及多智能体写作。 第一招是压缩,当对话快达到上限时,让 ai 自己把前面的内容写个总结,然后清空历史,带着总结重新开始。这就好比定期清理电脑内存,保留核心的决策和未解决的 bug, 扔掉那些已经没用的中间过程。 第二招是记笔记,给 ai 一个外部的记事本文件,让他随时把重要发现和进度写下来。 比如,在让 ai 玩宝可梦游戏的实验中, ai 就是 靠着自己写笔记,记住了地图怎么走,哪种战术最有效,连续玩了几个小时都没乱。 第三招是多智能体协作,不要让一个 ai 包揽所有脏活累活。让一个老板 ai 负责调度,派几个员工 ai 去查资料, 员工 ai 可以 去翻阅几万字的繁杂资料,但最后只给老板 ai 汇报一份几百字的精简总结,这样老板的思路就永远清晰。总结一下,随着 ai 越来越聪明,我们不再需要死磕怎么写提示词,而是要学会做信息收纳, 把最关键的信息在最恰当的时间给到 ai。 这就是打造强大 ai 助手的终极秘籍,你学会了吗?

大家好,欢迎使用 vgspaicod 的 插件,接下来让我们快速浏览界面的各个功能区,助您轻松上手。首先来看界面顶部的工具栏,新建绘画,即刻开启全新对话 数据库设计器配置好压末文件后自动启动,在项目内直接管理数据库,无需打开额外数据库工具,流程更高效。工作流设计提供基于 vjsp 工作流引擎的流程设计能力,支持审批流程的配置、调整与管理。历史记录轻松查看和管理过往绘画支持删除、回溯或重启对话设置含盖模型、配置模式切换、上下文管理机 自动批准权限等核心功能。多窗口绘画支持开启独立窗口,实现多任务并行编辑。插件市场提供多种运行模式与丰富的 m c p 工具,供您自由选用与安装。 界面核心交互区左上角设有任务列表开关,您可自由控制是否展示最近的任务记录, 中央区域实时呈现与 ai 的 对话内容,让思维过程清晰可见。下方是一组自动批准菜单, 含盖读取、写入、删除、浏览器 m c p 模式、子任务及代办等权限选项,用户可根据任务需求开启或关闭相关自动操作权限,也可在设置中统一管理。 输入框下方是模式切换区,默认扣的模式可灵活切换,亦可自定义模式,打造您的个性化工作助手。代码锁影库基于 ai 与 e 搜索,深度理解项目结构, 输入时还支持多种快捷操作,输入 alt 符号即可快速引用上下文,按住 shift 键拖拽文件可直接附加,为任务输入 输入框上方的画笔图标提供提示词增强功能,可智能优化输入内容。通过提示词优化,强化 ai 对 任务意图的理解精度, 全面提升生成效果与执行效率。界面左下角是模型切换区,支持多种 ai 模型灵活选用我们预制代码开发模型可用于智能对话、复杂推理、代码生成、视觉理解等,同时也完全开放 支持用户自行接入并配置其他模型。界面右下角是规则管理入口,点击图标即可进入配置中心。在这里,您可以一览所有已启动的项目级与局规则,无需删除, 仅需一键即可灵活切换每条规则的起用或禁用状态,直接创建与编辑规则内容,定制您的开发规范,更能按分类与优先级对规则进行有序组织 管理。井井有条 v j s p a i ko 的 插件,通过清晰的功能分区与智能化的交互设计, 全方位赋能开发者,无论是代码生成、补全还是调试,都能根据实际需求灵活调用各项功能,从而显著提升编码效率与开发体验。

为什么大模型读到一半总是断片?这就是困扰所有 ai 专家的上下文窗口挑战。看左侧,我们要处理的信息像无限卷轴一样涌入,可能有十万个词, 但模型的瞬时记忆力就像中央这个红色的容量槽,它是有限的,一旦填满就会触发内存溢出警告。为了不让模型变成金鱼脑,我们开发了两套方案。 上方是感知方案,我们用滑动窗口像扫描仪一样分段读取,配合旋转位置编码 ro 和 alibaby 信信编制。它就像给模型装上了空间标尺,让它即使面对远距离的文字,也能精准定位它们的相对关系。 下方是效率方案,稀疏,注意力跳过了不相关的计算。 kv 高速缓存,把见过的词存在池子里,避免重复复习。而摘药提取器则将废话压缩,只保留最核心的干货。 正是这些精妙的工程权衡,让 ai 能够从最初只能读几百个字,进化到如今能瞬间吞掉整部小说并谈笑风生。在有限的窗口里,容纳无限的逻辑。

这是拆解,不是定论,今天给你拆解一款专门为 ai agent 设计的上下文数据库,看完你就能知道它值不值得你花时间。你开发 ai agent 时还在头疼上下文碎片化吗? 今天咱们要聊的就是火山引擎 viking 团队开源的 open viking。 这是一款专门为 ai agent 设计的上下文数据库,采用文件系统范式来统一管理 agent 的 记忆资源和技能,解决传统 reg 的 碎片化问题。首先来说说它是什么? open viking 是 一个开源的上下文数据库, 它放弃了传统 reg 的 碎片化向量存储模型,采用文件系统范式来统一结构化组织 agent 需要的记忆资源和技能, 可以像管理本地文件一样管理 agent 的 大脑,通过 viking 非协议的虚拟文件系统来定位、浏览和操作信息。它能干嘛呢?它能解决 agent 的 开发中的多个痛点,比如碎片化的上下文管理。它用文件系统范式统一管理记忆资源和技能,上下文需求激增导致的托肯浪费。 它支持 l 零飞 l 一 飞 l 二三层上下文加载,按需加载,节省成本,解锁效果差。它支持目录地归剪辑,结合目录定位和语义搜索,提高剪辑的全局性 和准确性。上下文不可观测。它支持可视化的剪辑轨迹,方便调试,记忆迭代有限。它支持自动绘画管理,提取长期记忆,让 agent 越用越聪明。它支持多种模型服务,包括火山引擎的豆包模型 和 open ai 的 模型。安装简单,只需要用 peep install open viking, 而且是 apache 二点零许可证,商业使用也免费,有详细的文档和视力,适合 ai agent 的 开发者使用, 那它值不值得关注呢?如果你是 ai agent 的 开发者,这个工具非常值得关注。它能帮你节省大量的上下文管理时间,解决传统 ragu 的 多个痛点, 而且免费商用。部署简单,但是也要注意门槛和坑。它需要 python 三点九及以上的环境,需要配置模型的 api 密钥,而且需要稳定的网络连接来下载依赖和访问模型服务。 如果你没有 python 开发环境,或者没有模型的 api 密钥,可能无法使用。总的来说, open viking 是 一款实用的 ai agent 上下文管理工具,能解决 agent 开发中的多个痛点,适合有 ai agent 开发需求的开发者。 觉得这个工具能用到你的 agent 项目里吗?觉得有用的话,点赞收藏、关注,下次给你拆解更多实用的 ai 工具。

curser 团队近期发布了名为动态上下文发现的工程博课,今天我们来拆解这篇博课,看看 curser 是 如何用文件系统解决商业工程难题。 curser 最基础的判断是,随着模型在充当 agent 方面的能力不断提升,预先提供更少的细节,反而能让 agent 更容易自主地按需提取相关上下格这句话,其直接点出了什么是动态上下分线,从过去的提前灌输转向按需发现, 这正是动态上下文发现与传统静态上下文之间的根本区别,可以用一个例子来直观理解它们之间的差异。静态上下文的思路是在任务开始之前,把所有的 api、 文档、数据库 steamer 都作为静态上下文而常住在 system profit 里。这就像是去旅行, 把锅碗瓢盆全塞进后备箱,车重的跑不动。而 curser 提出的动态上下文发现,在一开始系统只提供一个干净、最小化的上下文起点,把大量可能用到的信息放在外部,当 agent 在 执行任务的过程中意识到自己缺某类信息时,再主动去发现、去加载。 这就像像是一位经验丰富的背包,里面放的不是工具,而是最关键的几样东西,比如护照和信用卡。真正需要什么, 它不会提前准备,而是在到达现场之后根据实际情况再获取。动态上客发现带来的价值不仅是节省 token, 它同时减少了上下文中的信息噪音,降低了模型的认知负债, 让 agent 能够在更少、更干净的上下文中进行推理,反而更容易给出高质量的结果。那这个理念在工程上到底该怎么实现才能既可控又高效? cursor 给出的答案是,把所有可能进入上下文的东西,包含工具输出、 对话历史 skill、 mcp、 终端输出等都卸载到文件系统。 agent 按需发现实现渐进式批录。它给出了五个非常具体的工程实践。第一个实践是 将较长的工具响应转换为文件。想象这样一个场景,你让 agent 当你运行一个数据库,迁移脚本, agent 执行了命令, 然后终端里瞬间吐出了五千行日制,其中前四千九百九十九行可能都是进度百分之十,进度百分之二十这样的废话 只有最后一行写着 error, 数据库连接超时。在传统的开发模式里,为了防止这五千行日制抷报上下文窗口,开发者通常会做一个简单的截断处理,比如只保留前两千个字母。但这就会导致一个灾难性的后果,数据丢失,关键的报错 信息往往就藏在你截断的那部分里。结果就是 agent 拿着前两千行正常的日记,一本正经的告诉你任务执行成功了,或者一脸茫然的说我不知道发生了什么。 kerf 是 怎么做的呢? 他没有选择截断,而是选择把工具输出完整的写入文件,不立刻塞进上下文,只告诉 agent 一个事实,这个结果在这里,如果需要,可以自己去读。这时就会出现一个新的问题,文件这么大, agent 应该从哪里开始读? curser 做法是使用 tie 工具。 tail 是 一个非常基础的命令,它的作用只有一个,就是查看文件的末尾内容,默认是最后十行,你可以把它理解为先翻到一份长报告的 最后一页,快速看结论和最新状态。很多工程输出的决策信息确实常常出现在末尾,比如最终报错摘要测试是否通过退出状态 最新的异常提示。所以从末尾开始看,是一种低成本的鲜艳策略。但关键点在于, tail 只是默认的第一步策略, 不是读取策略的全部,其作用是低成本判断我需不需要更深入。它更像一个探针,让 agent 先用极小的上下文成本摸一下水温。如果末尾信息已经够决策,那就到此为止。如果末尾信息不够,比如你关心的是输出里某些具体字段、 某些具体条目、某些细节证据,那 agent 就 会继续展开,扩大读取范围,或者用关键词去定位,再把真正需要的片段引入上下文。整个过程是先探测再展开,直到信息刚好够用。这样在接近上下文上线时,就能减少不必要的额外总结。 接着我们来看第二个实践,摘药时引用对话历史。现有的模型都有一个唱下坟,当对话太长时,系统必须进行摘药,把旧的对话压缩成一段总结,但凡是压缩,就一定是有损的。摘药可能会保留用户修改了代码这个大意,但会丢掉 用户把超时时间从十秒改成了五秒这个关键细节。这就导致 agent 越聊越笨,越聊越不精准。科学的解法是给 agent 一 本历史书, 即使对话被摘要了,原始的、完整的对话记录并没有被扔掉,而是被转存成了一个文本文件。在新的一轮对话中, agent 的 脑子里虽然只有那段简短的摘要,但他手里握着这个对话历史文件的路径。当他在写代码时,如果发现摘要里提到的信息不够用。比如他心里在想, 我记得用户之前提过一个 s 三的存储桶名字,但在招标里找不到了。他不会瞎猜,而是会立刻暂停手头的工作,去搜索那个历史文件。他会执行搜索,从几十轮之前的对话里把那个具体的桶名字精准的捞回来。这就像是考试, 传统的招标机制是闭卷考试,富习兰就把书收走,全靠脑子记。而 cursor 的 机制是开卷考试,脑子里只记重点脉络, 但允许你随时翻书查细节。这种机制让 agent 拥有了近乎无线且高保真的长期记忆。第三个实践是 skills, 也就是能力说明的按需加载。 cursor 支持 agent skills 开放标准 skill 像一份用文件写成的操作手册,告诉 agent 如何执行特定领域的任务。它包含名称和描述,可以作为静态上下文放进系统提示词里,但只放目录级信息,不放全书。 agent 可以 进行动态上下文发现, 使用诸多 grip 和 cursor 的 语义搜索等工具,自动引入相关的 skills。 grip 是 关键词搜索工具,你给他一个关键词,他就在一堆文件里找包含这个关键词的内容。他的优点是确定性强,速度快,结果可解释。比如 agent 知道自己要做的是数据库迁移,他就可以用 grape 在 skills 文件夹里搜索 migration 或者 schema, 快 速定位到最相关的技能说明文件,然后再把那一段加载进上下文。语义搜索解决的是关键词不一致的问题,你在任务里说的是财务异常排查,但技能文件里写的是 revenue, irregularities, investigation。 关键词不完全重合,但语义很接近。 语义搜索就能把这种一丝相近的内容找出来。技能发现不是靠单一魔法,而是靠一套可控的发现手段。能用关键词就用关键词,关键词不够再用语义匹配,最 终目的是同一个按需发现后再加载。第四个。实践是高效的仅加载所需的 m c p 工具。现在的 agent 往往集成了成百上千种工具,为了让 agent 学会用这些工具,传统的做法是把所有工具的说明书全部塞进 system prompt 里, 这就造成了所谓的说明书膨胀。假设你有一百个工具,光是把它们的参数定义写完,可能就占了五万个头。肯 agent 还没开始干活,脑容量就被这些说明书占满了一半。而且这么多工具混在一起,很容易让 agent 混淆,不知道该用哪个 carfer 把工具说明书卸载到文件系统。在 agent 的 初使 prompt 里只保留一个简短描述,而不包含具体说明书。当用户说帮我把代码推送到 gitop 时, agent 看到菜单里有 github 工具包,他会意识到,哦,我需要用这个能力。对,然后他 才会主动去读取那个对应的说明书文件,学习具体的 api 怎么调用,参数怎么填,学完之后立马执行。仅仅是这一项改动,就将 agent 的 token 消耗减少了百分之四十六点九,这意味着推理成本直接减半。而且 这种做法还带来了一个意外的用户体验提升。以前如果你的 gitop 账号突然掉线了,工具不可用,系 统为了省事,往往直接把这个工具从 prompt 里拿掉。结果就是 agent 突然失忆了,告诉你我不会用 gitop, 用户会觉得莫名其妙。现在因为工具列表是作为一个文件存在的,即使工具不可用,文件还在。 agent 读取文件时会发现 工具的状态变成了需重新认证。于是 agent 可以 非常智能的告诉用户,老板我有 gitop 的 能力, 但是现在的状态显示需要重新登录,请您提供一下新的 token, 从我不会变成我需要权限。这一个微小的转变,让 agent 看起来更像一个专业的合作伙伴,而不是一个随时会出 bug 的 程序。最后是第五个实践,将所有集成终端绘画视为文件。回想一下我们是怎么跟 ai 结队编程的, 你在终端里跑了一个命令报错了,你得手动选中那一大段红色的报错信息,右键复制,然后切到 ai 的 对话框粘贴发送。如果报错太长,你还得往上翻好几页去找头。这个过程非常打断心流,而且很容易复制漏了。 科学的做法是把集成终端里的所有输出都写入了一个本地日制文件。这个过程你是无感的,但是当你对 a 阵说修好它或者刚才为什么报错了的时候, a 阵它不需要你提供任何上下文,它会自己读取最近的终端日制,利用 grab 快 速定位到最近一次出现的 error 关键字,分析堆占信息,然后给出修复建议。整个过程你不需要做任何一次复制粘贴,这种流畅的交互体验正是得益于底层那个默默工作的文件流。总结下, curter 做的不是几个零散的小技巧, 而是在系统层面统一改了上下文的进入方式。动态上校箱发现的核心不是让模型背更多,而是让模型在更少更干净的上下文里思考,同时保留一套可访问的外部信息空间。系统负责把信息完整地落到文件里, 并提供清晰的指征和工具。 jenger 负责在任务推进过程中自己判断信息需求,然后通过搜索、定位和渐近读取,把真正需要的片段带入上下文,这样既提高 token 效率,也降低认知赋载,最终提升输出质量。 当再回看之前读过的 minus 关于文件系统与上下文的讨论, pigger 提到的工具卸载实践,以及 antropic 在 skill 机制里强调的渐近式。譬如会发现 cursor 的动态上下分发现并不是孤立出现的,不同团队在不同产品形态下正在独立的收敛到一套相似的工程思路。把上下文视作稀缺内存,把文件系统视作几乎无限的外部存储,把卸载视作缓解上下文压力的基本手段,把渐进式路由视作信息进入工作空间的默认策略。 这种顶层设计的趋同说明在 ai agent 领域,顶级团队正在形成一套隐性的工程共识。虽然文件未必是 ai 交互的终极形态,但它至少证明了一个现实判断,在当下模型能力、成本和可能性都仍受约束的阶段, 最稳妥的路线往往不是发明更复杂的抽象层,而是选择更简单、更可控、更可演化的源语作为外部大脑的底座,它让 agent 把智能从记住更多迁移到找到更准,把能力从生成答案扩展到管理信息流。 好了,本期内容就到这里,这里是慢学 ai, 我 们下期见。


哎,你有没有过这种特别崩溃的时刻?就是你正跟 ai 聊的好好的,一开始他表现的特别棒,简直完美。可聊着聊着,哎,他好像突然就换了个人,把你最开始的那些指令忘得一干二净,整个对话一下子就跑偏了。说真的,这感觉太让人抓狂了, 是吧?这感觉我们都懂,你明明在第一轮对话里把要求说得清清楚楚,明明白白,结果呢?聊到第七轮、第八轮的时候, ai 突然就把你的核心要求给扔到九霄云外去了, 这时候你可能就会怀疑自己了,是不是?我哪里没说清楚?还是说这个 ai 就是 故意跟我对着干?但你放心,问题真的不在你,今天咱们就来把这个谜底给揭开。好的,咱们现在就来深入的看一看,到底是怎么回事。首先,你得知道一个事,就是 ai 的 记忆力,它不是无限的,它其实也有一条遗忘曲线,特别是那种聊的特别长的对话,它忘掉你最初指令的这种情况简直是太普遍了。 所以啊,最核心的原因其实就一句话, ai 不是 突然变笨了,也不是给你捣乱,说白了就是它的短期记忆容量满了。那么问题来了,这个所谓的短期记忆到底是个啥呢? 要想真的解决问题,咱们就必须得了解一个核心的技术概念,它叫做上下文荒口。简单来说,这个上下文化窗口,它就像是 ai 在 跟你这一次对话里能记住的东西的总量上限,这里面包括了你说的每一句话,也包括了他回的每一句话。为了让这个概念更好理解,咱们来打个比方吧,你就把这个上下文框想象成一个背包,这个背包的大小是固定的,不能变大,也不能变小。 那你想想这个背包要是装满了,会发生什么事?很简单嘛,你每个 ai 多说一句话,就等于往这个背包里塞了点新东西,那为了给新东西腾地方,最先进去的也就是你最开始说的那些话就会被无情的挤出去。你看,这就完美解释了为什么 ai 会把你最初的指令给忘了。 来,我们看这张图,这个过程就一目了然了,你看啊,第一轮,你的核心指令好进背包了,然后随着你们的对话越来越多,这个背包就越来越满。等到第八轮,当你输入一个新内容,最早放进去的那个核心指令就被挤出去了,就在这一刻, ai 失忆了。 好了,既然咱们已经把问题的原因搞清楚了,那接下来就是最重要的部分,到底该怎么办?别急,我这给你准备了三个立竿见影的方法,就像一个工具包,能帮你轻轻松松的把 ai 拉回正轨。第一个方法也是我个人觉得最稳妥最省心的,就是定期重复操作,特别简单,把你认为最重要的那几条规则调出来。然后呢,大概每个三四轮对话,你就把它们重新复制,粘贴到你新提示的最前头。 你可以把这个方法想象成是给你们的对话加装了一个护栏,你定期的去刷新这些核心规则,就算之前的内容被挤出了 ai 的 背包,没关系,你又把最重要的任务重新放回了他的眼前,这样就能确保他绝对不会跑偏。 第二个方法呢,叫做创建便携式摘药,就是当你感觉这个对话已经进行的很长了,你就可以直接让 ai 帮你做个总结,让他把到目前为止的核心目标啊,各种限制啊,还有你们俩已经确定的关键结论呐,都给你列出来,这就像什么呢?就像在玩游戏的时候,设置一个存档点,你可以把这个摘药存下来,后面的对话随时都能拿出来用,让 ai 一 秒钟回到主线。 第三个方法,我们叫他紧急重置,这个特别适合用在 ai 已经开始犯错的时候,比如说他突然改了格式,或者开始胡说八道了,你千万别跟他争论,直接用这条命令,你先让他复述一遍核心要求,把他拽回到正确的轨道上,然后再让他重新干活。那么除了这些及时补救的方法,咱们还有没有一些更高级的技巧能从跟上防止问题发生呢? 当然有,这些是能让你的指令更耐用,更不容易被 ai 忘掉的长期好习惯。这三个习惯非常关键,第一,尽量让 ai 每次给你的回复短小精悍,内容越短,他的背包装满的速度就越慢。第二,给他的指令一定要具体可衡量。第三呢,就像做项目管理一样,把一个大任务拆成好几个小阶段,每完成一个阶段就做个小总结。 到底什么叫可验证呢?你看这张对比图就明白了,你跟他说别跑题,这太模糊了,不如直接说你的回答里必须包含 abc 这三点,你让他要专业,他怎么知道什么是专业?不如明确要求,必须保持跟第一条消息一样的语气和格式,你的指令越具体,越像一张可以打勾检查的清单, ai 执行起来就越稳定,没跑 好了。通过理解 ai 的 记忆机制,再加上掌握了这些超级实用的技巧,你现在啊,已经有了让 ai 对 话再也不跑偏的能力了。这可不仅仅是几个小技巧,这更是你对这个工具的一种精通和掌控。 所以咱们最后来划个重点,今天你只要记住三件事就够了。第一, ai 失忆的根本原因是它那个有限的上下文窗。第二,对话越长,你最开始的那些重要指令就越容易被挤掉。 第三,最有效的解决方法就是主动去管理 ai 的 记忆,用重复和总结不断地提醒他任务重点是什么。现在你再也不是那个被动接受 ai 随机表现的用户了,你已经成了一个主动的掌控者。那么带着这些新知识,你准备去解决的第一个问题是什么呢?你会让你的 ai 牢牢记住哪条最重要的指令呢?

哈喽,大家好,从今天开始,我想用一个系列的视频跟大家聊一聊 ai 记忆系统这个话题,这是我最近一直在琢磨的问题,也是我在实际工作中踩了很多坑之后总结出来的思考。 那说实话呢,这个问题困扰我非常久的时间了,我相信屏幕前的大家也遇到过类似的问题,那你跟 ai 聊了很久,聊的也特别投机,特别的深入, 突然间你想要开启一个新的话题的时候,或者说你想换一个方向继续进行聊天的时候,这个时候你就面临一个非常两难的选择,要么你就把之前的对话内容全部的带上,导致上下文超级的长, ai 处理起来也相当的慢,要不清空了以后我们重新进行, 那这样之前积累的这些重要的信息就全部的丢失掉了。我之前也试过非常多的方案,我在本地搭建过后端服务, 专门用来压缩上下文,还做了向量解锁,想着怎么能够把之前的内容解锁回来,但是说实话流程又复杂,而且呢问题也是非常多。什么问题?第一个就是非常容易丢失重要的上下文, 你用向量解锁,他只能找到那些看起来相关的内容,但是真正重要的内容可能因为语义的距离不够而被忽略掉了。 那第二个问题呢,就是解锁精度也一般,而且会附带很多无用的上下文进来,你本来只需要找到与当前任务相关的这些信息就可以了,结果呢它塞给你一大堆可能相关,但是其实什么用都没有的内容,那么这样的话,它会白白浪费你非常多的 token 额度。后来我就在想这一个问题,它到底出在哪? 我慢慢的意识到,核心问题可能是我们现在的压缩策略是非常盲目的。什么是盲目的?其实就是不管你接下来要做什么,要干什么,你都用同一套逻辑去进行压缩,他根本不考虑你压缩完这些内容之后,你要用来做什么。 这就让我想到一个非常有意思的类比,那么人类到底是怎么去进行记忆的?那你想想,如果你碰到一个老朋友,你会把这一辈子的所有的记忆都翻出来吗? 肯定不会吧,你大概率会只想到与这个人相关的这些事情,而且你想起来的内容还会根据当前的情况而有所不同。 比如说你们正在聊的这个工作,那么你想起来的可能就是以前和他一起做项目的经历,或者说你和他一起谈论工作内容的这个经历。那如果你们是在聊生活,比如说过年我们大家坐在一起去聊一聊生活,那这个时候你想起来的可能是之前跟他一起出去玩,一起去吃饭,一起去 ktv 的 这个场景。 这个说明了什么呢?人的记忆提取是相当的目标导向的,我们并不是毫无差别的去回忆所有的信息,而是根据当前我们的目的,精准的去里边去提取这一部分关键的记忆。 ai 的 上下文的压缩是不是也可以借鉴这个思路呢?我给大家举一个特别的例子,假如你正在开发一个软件项目,你已经完成了用户中心这个模块的开发,现在你想要开始做订单管理的模块,你会怎么去处理之前的上下文呢? 按照传统的做法,可能你要把用户中心开发的整个过程做一个总结,然后再把整个框架信息给他带上。这里边会有一个非常关键的问题,你到底会怎么去总结这个开发部的内容呢?你要总结什么内容呢?如果你用目标导向的思路,这个答案就相当清晰了。 你下一个模块开发的是订单管理系统,那么你就要去想订单管理和用户中心之间,他们到底有哪些内容是订单管理里必须要知道的。 那比如说订单管理需要关联用户的 id, 需要知道用户的收货地址,也需要共享用户的登录状态,这些就是关键信息, 那你必须要保留下来。但是用户中心里边和订单完全没有关系的功能细节,比如说用户的头像上传路径、用户昵称的修改规则,这一些对于开发订单管理系统来说就没有那么重要了,那你可以压缩掉, 或者说你直接把它舍弃掉都是可以的。这就是我说的根据目标优化的上下文压缩,你下一个任务要做什么,就决定了你当前到底应该保留什么信息。在这个思路里,其实你可以应用在很多的场景, 比如说你可以做一个灵感整理类的应用,用户的使用目的性很强,他就是想要记录和整理灵感,那你就可以根据这个目的去设计优化上下文的压缩策略,保留和灵感主题相关的内容。当然呢,这里我还可以给你举一个非常经典的例子, 比如说视频生成的场景,假设你做一个系列的视频,第一集主角在家里面去收拾衣服,第二集主角去赶汽车,那传统的做法是你要把第一集的所有的细节都保留下来,衣服是什么颜色是什么?他叠衣服的动作是什么?他叠进去的这些衣服有什么? 但实际上第二集真正需要的关键的清晰点是什么?是那个行李箱的样式,是主角的外貌特征,是他穿到身上的那套衣服,是他的发型,是他的眼镜以及其他配饰的细节。那至于他收拾衣服的具体的过程, 他收拾的这些衣服的颜色是什么款式,是怎么摆到那行李箱的?这些都是重要的,在下一集里面你根本看不到。所以说你完全没有必要把这一种细节信息传递给下一集 你看,这就是目标导向压缩的精髓,不是关注全部的上下文,也不是完全无脑的建议压缩,而是说根据你下一步要生成的内容去判断这些信息是关键的, 这些信息是可以舍弃的。那么具体怎么实现呢?我有一个非常具体的思路,假如你要开发一个包含五个功能模块的软件,那在开发之前,你就要想好这五个功能模块之间的关联关系哦。聪明的小伙伴一定知道,你这个时候完全可以用 ai 去帮你去分析这种关联关系。那比如说用户中心和会员收费中心他们之间有什么关联点? 用户中心和订单系统之间他们有什么关联?你在完成一个模块开发的时候,可以根据这个模块和其他模块之间的关系,生成多份不同的上下文招标,每一份招标都是面向特定模块的, 只包含和那个模块相关的信息。这样的话,当你开始开发下一个模块的时候,你只需要把对应的那一部分材料拿出来,配上当前所需要的上下文就可以了。 其他的记忆信息可以暂时的搁置或者压缩掉,这样的话你的记忆容量变得非常小,记忆也变得更加精准。而且对于不同的场景来说,不同的记忆模块就像人的记忆宫殿一样。 说到记忆宫殿,这个其实就跟古罗马人发明的那个记忆术是一个道理,他们把不同类型的信息放到不同的房间里边,需要回忆的时候就去对应房间里面去找我们的上下文存储,也可以是这样按照记忆的场景关联关系进行分类的存放。那么每一次我们只提取和当前任务相关的那部分。 这个思路的核心就是在认知层面进行一定的干预,而不是被动的让系统进行压缩,而是主动的有目的的去决定要保留什么内容。这就需要在开发之前,我们要整理好设计思路,建立树状的上下文的结构。 当然这个方案更适合那些有目的性很强的应用场景,这些应用或者这些 agent, 他 们有非常强的针对性的目的。 那如果你的应用是向与 chat gpt 进行长篇大论的,完全没有死角的这种对话, 那么用户的行为将很难预测,你就不太可能草率的去进行压缩上下文。但是对于大多数垂类领域的应用来说,或者 agent 来说,用户的行为模式是相对可以预测的,你完全可以根据提前设计好的上下文进行精准的压缩策略的设计。 最后呢,我想说, ai 记忆系统的核心从来不是存储本身,而是让智能系统真正的理解用户,建立与用户之间的认知默契。 目标导向的上下文压缩,就是让 ai 在 处理记忆的时候能够像人一样知道什么重要,什么不重要,知道什么时候该记什么,什么时候又应该舍弃什么。 那么这个不仅仅是在技术上去做优化,而是让 ai 从工具走向伙伴的那个关键一步。那好,今天我们分享的内容就这样。当然今天我们只是做一个开篇,给大家掏出了这些问题以及大致的解决思路。 下一期开始我们会详细的拆解 ai 记忆系统面临的五大困境,每一个都是我在实际生活和工作中遇到的,那么我们第一个要遇到的困境就是上下文丢失和断裂的问题,我们下一期再见。

你有没有遇到过这种情况?和 ai 聊了很久,但越到后面,他给的答案越奇怪,甚至开始忘记你前面说过的话。 这并非程序漏洞,而是其设计上存在的边界。它被称作上下文窗口。 context window, 指的是模型每次能够看到的最大透坑数量。一旦内容超出了这个范围,模型就无法获取相关信息了。说得直白一点,模型并不具备长期记忆能力, 他在进行每一次回答时所能获取到的信息仅仅局限于当前窗口内的内容。窗口之外的对话内容对他而言就如同不存在一般。不同的模型,其窗口大小存在差异。 早期的模型窗口大小仅能容纳几千个偷啃,而如今主流模型的窗口大小普遍达到了十万甚至百万。偷啃窗口越大,意味着模型能够处理的内容长度也就越长。但窗口大并非没有代价,窗口越大,每次调用所消耗的偷啃数量就会增多,这不仅意味着更高的费用成本,还会导致响应速度变慢。 这个概念在后续的操作中会反复被提及和使用。在进行多轮对话、构建 r、 a、 g 和 agent 等操作时,我们都必须时刻清晰地了解窗口中所容纳的具体内容。恭喜你成功通过本关。 在这一关中,我们一起学习了上下文窗口是什么,超出上下文窗口会产生怎样的情况,以及使用时需要注意的要点。下一关要探索的 temperature 究竟是什么呢?它就像是一把神秘的钥匙,掌控着 ai 的 创意开关,让我们一同满怀期待,揭开它的神秘面纱。

工具栏介绍画布操作区 顶部导航栏底部快捷工具栏 主画布区域一左侧画布列表、图层、节点大纲,控制画布的基础交互状态。现在新增画布三和画布四,可查看画布版本历史,收起面板 对画布进行排序,也可以手动拖拽进行排序。对画布的操作重命名, 删除画布图层和节点,以树状结构清晰展示当前画布的所有节点, 关联关系一目了然,便以快速定位编辑节点, 可隐藏节点, 可节点重命名, 主划部区域也会相对应改变命名节点定位, 可快速定位该节点,方便查找和操作。清空节点,可快速清空节点,一键操作项目名称重命名。 顶部导航栏创作画布,开展剧本导入、主体提取、风景制作、图像生成等核心创作操作,是素材生产的核心。场景剪辑预览, 进行素材剪辑、音色配置、字幕制作、特效添加等精细化剪辑操作,会单独出一集介绍。成片审阅, 对剪辑完成的成片进行预览、审核。批注,支持批量审核与版本对比。成片审阅会单独出一级介绍个人积分实时显示账户剩余积分。分享与协助, 可分享项目和发布首页分享审片链接。协助管理查看项目,协助成员分配权限查看。协助日制管理团队协助进度。 下载功能,下载至本地保存作为备份或离线使用。上锁功能锁住当前画布,已完成画布,防止误操作删除节点。 小地图主要用于大面积、多节点画布的快速导航,解决画布内容过多导致的定位困难问题。 底部快捷工具栏是创作画布的操作核心,集成了画布操作、节点添加、参数设置等高频功能。 选择模式,点击按钮激活后鼠标变为选择指向,可点击选中单个节点,按住 c、 t、 r、 l 键多选节点,选中后可拖拽移动节点位置。 显示。隐藏连线,点击按钮切换节点间连接线的显示状态,隐藏后画布更整洁。聚焦单个节点操作素材管理器 可多维度搜索筛选资产,批量操作资产,实时联动多级分类标签。 对齐参考线,点击按钮开启关闭参考线,开启后划步将显示均匀分布的网格线,支持节点吸附。对齐添加节点,可快速创建节点,批量添加同类型节点, 快速关联上游节点。画面比例,可多比例进行选择,抖音、西瓜电影都有对应选择。 主体库,专门用于存放短剧创作中以定稿的角色、场景、道具、音效等核心资产,支持跨画布、跨项目快速调用风格,设置风格模板类型,动漫风格库、 写实风格库,也可自定义风格保存到我的风格。智能辅助区, any 创作助手提供 ai 辅助创作功能,降低专业创作门槛,尤其适合提示词优化、构图建议等场景。 可以提问做什么短剧能火等待结果, 也可点击节点进行提问。

今天呢分享一下如何让 ai 一 次性生成几万字的长文,并且呢可以保证它输出的一个质量。在解决这个问题之前呢,我们先来看一下为什么 ai 现在无法生成很长的一个文字, 主要的原因呢有以下三点。第一个呢就是 top 输出的一个限制,比如说五千字,一万字,他就会直接停止,没有办法去继续输出了,这个是大漠星本身的一个限制。 另外呢就是一个上下文窗口的限制,就是说他会失忆,他输出到后面之后呢,他就会忘记前面的一个内容,比如说他的一个小说的剧情,我小说人物的名字,他就会直接失忆。第三个呢也是非常重要的一个点,就是注意力稀释,这样的一个机制, 就是说他的一个输出的质量会越来越低,通常呢在一开始的时候他就会思考的比较全面,到后面呢就会开始去胡编乱造,开始去凑字数,这个呢是大模型他本身的一个机制啊,本身他的一个问题, 那么如何去解决这个问题呢?我们的核心方法就是化整为零,滚动刷新,具体是什么意思呢?比如说你让他去写一本小说,第一个阶段呢就是去锁定骨架,就是先让他去生成一个小说的大纲,小说的一个目录,先让他把这个目录啊先生成出来。 第二个呢就是逐章的去填写内容,然后你让他拿着这个大纲啊去生成第一章的一个小说的情节。第三部分也是非常关键的一步,滚动刷新,那么是什么意思?比如说你在写完一章之后啊,你绝对绝对不要说继续写第二章,如果你这样说之后呢,他就会 把这个第一章的内容作为一个输入项给到这个大模型,让他去权威的去阅读,阅读好之后呢再去输出第二章。那么这个时候呢,第一章的权威的内容啊,就会作为一个输入项,会占据这个大模型的一个上下文的窗口,这个时候呢他的输出的 这个字数就会变少,并且他输出的一个质量啊,也会受到这个输入项的一个影响。我们要做的一个方法呢,就是当他生成好第一章的内容之后呢,我们让他把第一章的内容总结成一个五百字的故事梗概, 当然呢也可以是三百字,两百字,这个字数呢是越少越好。总结好之后呢,让他带着这个第一章的这个故事梗概去给你去生成第二章的内容, 这个时候呢他的输入项就会变得特别少,输出项就会变得特别多,我们就使用这种滚动刷新的这种方式,就可以让他逐章的去生成我们小说的内容,并且呢也不会去忘记前面的一个剧情,是因为我们会让他不断的去生成这个故事的梗概,比如说你写完前三章之后呢, 你让他把前三章的内容再去总结成一个故事梗概,那么再让他去生成第四章,我们就使用这种方式,这种滚动刷新的方式去一直让他去生成, 直到你写完整篇的一个小说,这个呢是我们目前在用的一个方法,这个效果呢也是特别好的。我们现在呢去写一些很长的文章, 比如几万字的公众号的文章,或者说某些这个教程,我们都是使用的这种方式供大家来参考。如果大家有更多的一个 ai 使用方面的一个问题,大家呢可以点个关注,后面呢会分享更多的一个技巧。