粉丝2947获赞1.2万

那这两天我同时用 codex、 cloud code 和 gemini 去重构我一个网站,所以切身的体会了这三个的不同。如果说你也想知道他们在时弹当中有什么样的区别的话, 那应该对你有一点点帮助。那我这两天要优化的是这个产品是我之前做的一个生成视频的网站,那主要是对操作区和首页的 ui 做了一些重构优化。 那我是在谷歌的这个 anti gravity 工具下面去操作的, 同时打开了 codex、 cloud code 和 gemini。 那 首先我是先让 gemini 去优化,因为 gemini 三 pro 据说很厉害,但是我还没有深度的使用,所以我就先让他去尝试了一下,我把我的需求告诉他,结果一顿操作之后,我发现根本就用不了我一千五百行那个 文件,他在有一个组建的结尾的地方,应该是换行出了错还是什么一个非常低级的错误,但是他一直就没有修复,我告诉他很多次他都没有修复成功, 所以我最终放弃了。接下来我就用 cloud code, 我 把提示词也稍微换了一下,先让他去重构我一千五百行这个大文件。因为如果不把它拆小,你后续再做重构其实更容易出错,所以我就先让他重构这个文件。 它的分析看起来是非常细致,一路下来把一个大的文件大概给我拆了,有记得有八九个组件左右,拆的力度是非常细的,但是同样它不仅把整个国际化,也就是翻译这一块出了问题,而且 我某一个核心的功能完全被它漏掉了,所以这算是非常严重的问题了。当然至少它还能运行起来 比 gemini 要稍微好一点, gemini 是 根本就没有运行起来,整个文件就报错。最后我就让 codex 来试。 codex 可以 说是人狠话不多的典型,它没有像 co cloud code 这样给我大幅的解释 他的开发计划,基本上没有说什么,几句话,非常简短的说了他要干什么事情。 ok, 接下来就开始干活,也是很简短,你看从他开始干到结束 也就这么一点就完全搞定了,一次运行没有出任何错误。而且他把这一千五百行的文件给我重构的非常的合理,大概拆成了七个组件。那有了这个重构,我后续再去改 ui 其实就不容易出错了, 所以我后续的重构就是基于 codex 的 更改基础之上的。那从这个事情上我就发现 jamimi 处理这种大文件,他是很不擅长的,至少在这个案例当中,那 cloud code 呢?看似很细致,但是稳定性也不咋地,只有 code x 一 次性完成。我之前也看过很多人对于这三个模型的一些评估, 包括这些大模型的刷分,但是只有真正的去实战应用,你才会 切身的感受到他们的不同。当然我觉得这些模型它各有各的长处,只不过在我这个场景当中,我觉得 codex 表现的非常好,因是因为它是一个重构为主的任务。那在前几天,我做了另外一个, 因为我要去给我幼儿园的女儿上一个 ai 课,所以我用 jammy 做了几个课堂的游戏。那 jammy 完成的非常好,所以他做这种快速的圆形,对 y 要求比较高, jammy 是 他的, 这是它的擅长领域。那 cloud code 呢?我后续的这些 ui 的 优化,其实很多都是 cloud code 来完成的,它对 ui 的 细节把控做的很到位,这个要比 codex 在 ui 上的审美 cloud code 要好很多。所以我们切到这张图来看一下。 codex 就 像一个扫地僧一样, 话不多,但是干的稳准狠,非常像一个成熟的工程师或者架构师,所以它适合干什么呢?这种大规模代码的重构,这三个一定要让 codex 去做这样的事情, 而且它的稳定性非常的高,它适合去做你的系统的架构,给你搭框架以及后续的架构级的调整,都适合 codex。 那 cloud code 呢?它很认真,很细腻,你看它给你出的开发计划 都有一米长,那它的前端的审美也比 codex 要好,但是它容易出的问题就是想多了, 比如说那个文件,他给我拆了大概接近十个组件,拆的力度非常之细,列的计划非常之多,但是做出来以后发现他把我很多的翻译搞错,把我一个核心功能搞掉, 所以他的稳定性其实不如 qd x。 但是他在我后续做 ui 的 细节打磨的时候,他 的审美和细节做的是要比 codex 要好的,所以它更适合在框架搭好的基础之上做细节的 u i 的 优化。那杰米奈适合做什么呢? 他真的属于灵感型的选手,做圆形很快,而且很有创意,但是在复杂的工程面前容易翻车,就像我这次一样,根本就跑都跑不起来, 文件结尾都出错。所以他的强项在于快速的原型生成,适合去验证我们的一些想法,做 mvp 他 很适合, 所以如果这三个你要去搭配的话,那我们在前期做原型 mvp 适合用 gmail 来快速出效果,中间搭架构我们可以让 codex 来上,最后再做 ui 的 细节打磨,可以让 cloud code 来上。 当然模型现在进化的非常快,我现在说的这些呢,只是针对我这个项目,以及我目前的认知,以及目前模型的一个进展程度,但是也有很多可以 补足它们的短板的方式。你比如说在 cloud code 里面有 skill, 其中有个 skill 就是 专门做前端设计的一个 skill 叫 frontend design, 那这个 skill 是 完全可以在 codex 的 这个里面去安装的,那我刚才也试了一下,完全可以安装,并且你可以在 codex 当中调用这个 skill, 让它去做 ui 级别的打磨, 那有了这个加持, codex 的 ui 能力就会有个大幅提升,所以这算是一个外挂,来弥补 codex 它原生在 ui 能力上的一个不足。所以这就是我通过这个项目的一个实际感受,这三个模型的差异,以及如何去为 codex 增强它的 ui 能力,希望对大家有帮助。

我们程序员最常用的 ai 就是 第一就是 cloud code, opens 四点五最强的这个编程大冒险,还有就是掐的,掐的 gpt, 五点二 也是它的推理能力、逻辑能力用的最多的。我们一般是用 cloud code 来写整个项目代码,因为它的速度快,然后遇到问题了再让 codex 来呃,修复 bug, 解决非常 复杂的有难度的问题,这两个一配合基本就是无敌了,你像别的我们就根本就没有时间去用,虽然这两个我们都要花钱,比如我们一天可能要花大几十美金,一个月可能有时候好几百上千美金,我们愿意去花呀,你花了这么多, 你相当于请了一个员工啊,但是他一个,他一个这个东西,他顶你十几个员工干的活,所以他我们宁愿用最好的。你像国内的我们,你们试一试,你们也都知道了,你像什么豆包啊,还有这个千问呢?还有什么所谓的一些流氓的那些东西,都说自己最牛逼, 但实际上差得远。你问第一个问题可能还好,多问几个问题他头脑都混乱了,所以你怎么能让他用于工作呢?还有国内的很多这种所谓的这个这个智能企业还是什么他纯粹流氓软件啊, 对不对?他绑到你电脑上,他为了有这种叫什么装载量三六零是吧?那些三六零最牛是吧?我们程序员你说对此那些流氓软件说说删就给他删掉了,三六零删不掉,到现在我这个电脑这个机器上还装了一个三六零的,一个什么 ai 啊,这叫什么纳米 ai, 怎么删都删不掉, 哎,我也真是服了,所以用用这些东西就用最好的是吧?我们请个大学生,不要请个小学生来为我们工作。这是最务实的东西,没必要搞什么情怀啊。我要支持什么什么什么,我觉得没必要是吧?谁对你好,谁对你坏, 清清楚楚。谁有能力谁没有能力也要清清楚楚。因为我们是做企业,我们是在做事情,我们是要赚钱的,对不对?那不能跟我们自己的事业过不去啊,不要浪费我们的时间,对吧?所以选择比努力更重要嘛。

hermes 和 cloud code 跑同一道题,模型都用 deep sec, 差距大的时候能差出二三十秒。这一期就在命令行里把这场对比给你跑一遍,丢给两个 agent, 同一道题,同一个模型,看谁先收工,看谁少绕了几步路。 更狠的是, hermes 还不是一台死机器,它有记忆,每跑一次任务就比上一次更熟,同样的任务多做几次,它下回更快,绕的弯路也更少。 所以这一期看完,你就明白,这段时间用过 hermes 的 人为什么都说它比 cloud code 顺手。 terminal agent 啊,这个呢,其实属于我们最基础的啊,最入门的一个使用和讲解的这个方法,也就是在这命令行里边啊,来进行一个这个对话,它是一个非常简单啊,也是非常基础的一个场景。 它这个命令行里边实际上是有这么多种啊,不同类型的这样的一个对话,这个大家可以自己去选择对应的对话的方式来进行一个提问啊,只不过我们这里呢,可能主要啊是使用杠 q 这样的这个模式,一次性的去发布对应的这样的任务啊,然后呢,它通篇的从头到尾的全自动的来进行解决和运行。 那么除此之外啊,你还可以比如说啊,直接使用这个什么 chat 呀,进入交互式对话这样的这个模式对不对?然后你也可以使用这个 toolset 啊,这样的命令去指定它现在运行的过程当中呢,需要啊,去调用哪些这个 tools 啊,都是可以的。那它有对应的六种不同的对话,这样的这个模式, 我们就可以直接非常方便来进行一些这个简单的测试,但是我们课程里面主要是使用杠 q 这个模式呢,来进行这个对话,那么具体的不同类型对话这样的方式呢,对应的这个指令啊,都在这里,大家可以自己去看一下,然后呢自己来进行一个这个运行。对于我们的这个 hermes 来说,它呢实际上是一个 a 阵的运行时啊,它呢是一个 react 的 架构,这个其实 我相信大家是明白的,就一边啊在进行运行,一边呢来进行工具调用,一边呢来进行这个思考。当然现在啊,所有的 a 智能运行,其实毫无疑问啊,都是这个 react 这样的这个架构,对不对?能够长期的啊,这个专注某一个这样的任务,然后多部调用工具去解决啊,当前的这样的这个问题啊,这个其实都没有什么问题啊,这个其实都是都是这么来进行实现的, 只不过啊,我发现大家可能会比较关心一下,关心啊对这个 hermes agent 和 open globe 之间的这个效率这样的问题,那其实有个非常形象的这个比喻哈,就是这个 hermes agent, 它呢实际上是一个工具类型,相对来说非常少,同时非常精简,其实非常干练。这样的一个这个一组啊,它们在形容它是瑞士军刀对不对啊?而 open globe 啊,是一组 啊,这个乱七八糟,杂乱无章的这些工具啊,这个组合,呃,这个形容其实还是非常贴切的好,当然可能也是 open call, 现在可能还没有太多的这个时间去维护它的内置的这样的工具集啊,但是呢,像 the hermes agent 啊,实际上它的工具集呢,其实它的这个提示词是经过炼丹的啊,就是是一组,是一组高度凝练的啊,这样的一组,这个 也是配合他内部的这样的工具啊,他的这个实际运行的效率其实会高很多啊,这是第一个,他还有哪一些啊?前沿的一些这个特性,像这样的一些这个内容啊,我们这里面有一些这个文字的这个补充内容啊,大家回头可以自己去看一下啊,自己去了解一下啊,那么第二个呢,是 它的这个经验哈,实际上是会不断累积的啊,我们一会在这个属于第四个案例,我们到时候看到啊,它呢,实际上这个 skill 啊,是完全可以在一次又一次执行过程当中不断的去调整啊,自己的这个题日词的啊,所以呢,它的这个经验是可以累积的啊,所以它执行效率也会更高啊,这个解释为什么我们现在会非常明显的感受到啊,大家使用这个 hermes 之后呢,会觉得它会比 open globe 要好的,这个非常核心的这个点啊, hermes 内置工具其实并不特别多啊,但是所有工具它的 tips 都是经调过的啊,你可以这么来进行理解, 好的,比如说我们接下来啊,就来进行一个测试,对不对?好,我们让这个 hermes agent 啊和 openfloor 啊,当然我这里装了 openfloor 啊,大家如果装了 openfloor, 也可以来进行一个对比这个测试来进行运行啊,如果没装的话,就看我这边来进行演示,也是一样的, 比如说我们让他呢去分析一下啊,这个 open 这个 hermes agent 项目,自己啊,这个呢是属于让他自己分析自己啊,这样的这个情况,那么紧接着啊,他就会自己啊来进行一个这个调用,然后呢来进行一个这个分析啊,这个其实没有任何问题,那整个 过程呢,当然就是一个这个 react 循环的这样的过程,对不对啊?多部调用工具,然后呢一步一步一步啊来去调用,一步一步去查看,我们现在呢应该啊,这这这完成用户刚刚开始刚开始发布这样的任务,对不对啊?我们这里呢是通过杠 q 这样的模式给它输入了对应的这样的这个指令,让它去分析一下当前这个 herms agent 这样的项目结构, 然后呢就会开始来进行分析,对不对?首先呢第一个啊,是这个啊,输入了这个呃 search files 啊这样的工具,然后呢来进行一个运行,然后呢接下来啊,它又它又调用了两组这个 terminal, 然后 terminal 下面呢能够看得出来啊,这每个 terminal 下面实际上是对应的啊,当前运行过程当中的一些这个指令啊,比如说它使用了这个 find 的 命令,对吧?它使用了这个 s 这样的这个命令啊,总之他这里就是一这个两行啊,代表内容就是他在进行某一次工具这样的调用,然后呢一步一步来进行工具调用,然后呢找到啊这个 pie project 啊,对吧? 然后来进行文件的分析,然后看到核心文件模块,再看一下核心的 tools 列表,好,再看一下安全相关的配置文件啊,噔噔噔噔噔噔噔噔一系列来进行执行啊,总之这是一个非常复杂多步的啊,这个执行这样的这个过程。 那么这里面啊,其实,呃,我们一般来说哈,就是你这个拿到一些通用智能体验,一般让几个这个比较复杂的任务,就能看得出来他当前的这个性能怎么样。 那么这里面呢,他大概啊运行了将近一分多钟之后呢,那么接下来啊,他又得出了一个这个完整的这个结论啊,就是啊,现在给出了一个完整分析报告,对不对啊?我们说现在这个项目呢, 这个什么样这个情况,然后呢有哪些这个核心的这样的一个这个模块等等等等啊,这个呢,就是一个非常完整的啊,一个这个项目报告啊,你可以交给他啊,来进行这个分析运行。当然其实哈这个单独看他来进行运行啊,你可能只能看的出来,他可能是个 react 这样的架构。然后呢,呃,这个功能还不错啊,能够非常 这个高性能的啊,稳定的调用自己的一些工具来完成对应的这样的一个事项。那同,但除此之外呢,如果你把它交给 openclaw 啊,那么你会发现 openclaw 的 它的这个实现跟调用的这个流程啊,其实就完全不一样, openclaw 首先它要更慢一些,然后同时呢它在实际调用工具的这个数量也会更多一些。 这个哈,其实,呃,我们运行了很多次,基本上都是有这样的一个这个结果出现啊,这次的这个结果啊,什么多了这个十几秒啊,这个其实还属于一个比较中立的这样的这个结果,差别比较大的时候,甚至能差不相差这二三十秒啊,都是有可能的。当然我们背后到用的模型都是 deepsea 这个模型啊,并不是一个特别强的这个模型啊。那为什么用 deepsea, 其实也是因为之前很多同学问到 啊,说这个免费的这个模型对不对?用哪个啊?这个注册 deepsea 填起来运行也可以啊。所以呢,我们后面的课程很多都是使用 来进行这个演示啊,因为他有免费的额度, ok? 行,那不管怎么样啊,就是能看得出来啊,相同模型下,然后他们各自运行的这个性能其实完全不一样啊。当然你这里也可以再去考虑运行一下别的这个任务啊,当然越复杂的任务,他们二者之间呢,可能越能拉开差距。 当然这只是 prince agent 他 刚开始的这样的这个状态哈,但伴随着到后面,比如说我们经常去让他去执行一下啊,什么什么去查看某个项目完整目录的啊,相关那些这样的功能的话,那么其实啊,他的后面 还可以有更多的一些这个 skill 的 自主进化这样的空间啊。然后如果他的 skill 我 们给他开启了自主进化这样的模式的话,那么他的这个实际执行效率呢?调用实际执行的这个时间和具体他需要调用的工具的数量还会进一步减少啊,所以呢,他们两个其实在运行相同任务的这个情况下,效率呢,其实是不太一样 的啊。这个其实我们上面也说了啊,他背后的核心原因呢,实际上是因为他们各自的 这个内置的一些这个 skill 啊,和内置的一些的工具啊,他们的内置提示模板其实不太一样啊,然后对于这个赫默斯来说,他其实是经经调过他内置的这些工具的提示词的啊,但是这个大家感兴趣的话可以去看一下啊,他因为他整项目都是开园的,你可以看一下他内置的这个提示词到底是怎么样去写的啊,我们就不展开说了, 接下来啊我们就打一波广告,哈哈哈,也欢迎大家啊报名,有我和木鱼老师啊,还有志杰老师我们共同开设的 大模型 agent 啊,智能体开发实战课这样的一门付费课程。那么我们今天啊来讨论的啊,关于 harness engineering 啊相关的这样的一些这个内容啊,以及 harness agent 啊,也是像也是 harness engineering 这样的一套技术体系啊,它的一个落地的这样的框架,那么这个内容啊,实际上是节选资我们的二零二五啊大模型 agent 智能体开发实战课这样的一门付费课程, 那么这本课程啊是由我们三位老师共同来主讲的一个一百个小时以上的完整体系大课啊。然后呢,这本课程从今年的这个三月份啊开始新增 open club 开始啊,到我们今年四月份啊,新增 harness engineering 啊,以及像 harness agent 相关内容的讲解介绍啊,那么这本课程呢,到呃我们今年啊的 最新的啊春季班是已经是开设了二十三期了哈,那么这门课程呢,是帮的是能够帮大家零基础入门,然后直达目前顶尖大厂的中高级岗位能力要求的一门一百个小时以上的完整体系大课, 那么这门课程啊,其实是可以完全零基础啊,来进行的一个这个学习,并且这门课程呢,是一个硬核的啊,这个大模型开发的技术教学的啊,这样的课程,那么这门课程啊,是 这个对标目前的大模型开发工程师啊,大模型的这个应用开发工程师这样的岗位能力要求啊,这么个人如果完整学完,肯定是啊,这个拿下五十万年薪的大模型开发岗位啊,的这样的一个,这个 offer 肯定是不在话下, 这个人总共呢啊是六个技术模块啊,首先第一个模块呢,是关于大模型技术入门啊,在这里面我们会详细的介绍关于目前顶尖的啊,这些大 大模型的 api 的 接入啊,本地大模型的这样的部署啊,然后呢,智能体 a 智能开发的这个入门呐,还有 rex 的 增强技术的系统开发入门等等等等啊,这个呢,是一个 入门的啊,这样的一个阶段。然后同时紧接着第二个阶段,我们会进一步来介绍关于热门的 a 智能开发框架的上手实战。那么主要啊,是会包括一些 d 代码啊, like 啊,还有 n 八 n 啊,以及 这个顶尖的 rex 的 框架啊,以及啊,对不对啊,新兴的一些 a 智能开发框架, 像 agent sdk 啊,还有 agent school, 还有 adk 等等,当然也包括啊,工业级的 agent 的 框架啊,像 longchen 啊,还有 long graph 等等等等啊,那么这些呢,实际上都是能够帮助我们啊,从零到一呢,来完成 agent 的 开发的啊,一些非常核心这样的工具, 当然有了工具还不够啊,我们还需要去讨论一些,还需要跟大家详细介绍跟讲解一些工业级的 agent 的 开发的一些进阶的一些这个技术,对不对?就比如说啊,这个智能体的这个 agent skills 的 这开发的管理啊, 以及啊,像这个 agenic reg 一 些进阶的一些这个技术啊,包括啊,如何来进行这个剪辑的一些这个优化,多模态的这个实战 graph reg 制图普查优化啊,还有这个什么视频信息剪辑啊,图文混排, pdf 剪辑啊等等等等啊这样的一些啊, reg 的 这个进阶优化这样的这个内容。 当然啊,上面大家可以看,可以看得好,我们其实每个模块里面都有非常非常多的一些实操的一些这个小案例哈,当然这个实操案例其实并不属于我们后面要谈的这个大型案例啊,总之呢,其实我们所有的课程啊,每个模块都有非常非常多的一些实操的这样的内容, 那么再往下啊,还会来讲解关于智能,关于智能体的,对吧?啊,长短期的这个记忆管理啊,这个其实就会涉及到,比如说我们现在讲的啊,一些 这个智能体的啊,记忆的优化啊,安全防护措施啊等等等等啊,当然也会来讲解啊,关于智能体双下文的一些优化的这样的这个策略啊, harness engineering 相关的这个内容,以及多智能体啊,系统开发相关的这样的内容啊,当然在我们课程里面还会介绍啊,关于大模型高校微调和 和强化学习微调啊,相关的一些能够定制化啊,你开源大模型的啊,能力的相关的这样的内容,那么同时紧接着第四模块,我们就会进来探讨关于工业级的 a 证的部署上线啊相关的这个内容了, 好,那么呃,你 a 证的开发完了之后对不对啊,肯定还需要考虑怎么样呢来进行部署上线,这里面我们会进来介绍啊,关于智能体项目部署上线的这个基础的理论啊,同时也会来讲解啊,关于智能体开发部署的 上线的全部的这样的流程一块介绍啊,关于两大溶剂化交付工具的这样的实战,以及智能体上线之后啊,长期的追踪和运维如何来进行处理啊,当然我们一块介绍关于智能体的这个性能评估和如何来进行优化, 那么同时我们现在啊,我们还这这本书,里面还包含十大项啊,这个工业级智能体的开发项目实战啊,包括像长文档啊,编辑 agent, 文档交互 agent, 然后 deep research agent 啊,数据分析 agent 啊,数据分析可行话 agent, 然后呢,垂欲的 agent, graphregg, 高精度的啊,机制图谱的解锁增强系统,然后啊,像多模态的这个 app, 本地致富问答,韩 国的 banana 啊,像这个 ppt 的 这个 agent 生成等等等等啊,这一期的 agent 啊,是我们会有,总共呢会有十个啊,工业级的项目实战,那么除了这十个项目之外呢,我们还有四大项啊,百万用户级别的智能体项目开发啊,这个呢,相当于是商业化的这个智能体,包括啊,像多模态的这个 app 致富解锁问答, 包括啊,全新一代的啊,智能客服 a 证的项目开发啊,以及呢,包括啊,这个通用智能体的这开发以及啊,还有这个数据分析和 ai 呃编程的啊, a 证的开发项目等等等等啊,总共呢是有这四大项的,这个商业的商业级的啊,这个呃智能体的开发项目啊,总共呢是这么十四项啊,大 型的 agent 项目开发, ok, 那 么所有这些项目呢啊,实际上是会覆盖目前我们说比较主流的,也是比较热门的这样的一系列的 agent 开发的 agent 应用,这样的主流方向啊,包括啊,对吧啊,这个整个的这个八大类三十家场景的 ai 落地解决方案啊,这么科学的 都会有对应的落地实操性质的这样的这个内容。然后同时呢啊,对我们课程来说啊,我们在今年的这个啊,今年的春季我们还新增了很多啊,关于 openclaw harness engineering 相关的这样的一个技术内容啊,当然同时我们也新增了一个大型的项目啊, 从零到一呢,带大家去搭建啊,这个 harness engineering 啊,对不对啊?从 open call 啊开始来进行个搭建啊,我会从零呢来教大家如何呢去呃从零到一来完成这样的一些 agent 开发啊,因为本身呢,咱们这门课程就是来讲解啊,关于现在的 agent 开发的核心这样的一个技术。那么当然 对于大家刚刚啊所看到的这样的一个 harness engineering 啊,这样的一些这个内容,我们肯定呢也是会啊来进行一个 啊详细的呃讲解和这个开呃详细的这个开发和实战啊这样的一些这个内容的, 当然我们说除了啊,大家刚刚我们所看到的这个大冒险 a 正正的开发实战课程之外呢,还有两门课程啊,是呃,也是啊,现在正在进行这个招生啊,我们正在进行授课,正在进行连带更新两门课程,一门课程呢是 open club 智能题应用实战课啊,那么这门课呢,是由我来主讲的一门体系课程。 这么课程啊,其实和我们刚才所看到这个硬核的这个技术的这个课程啊,会有非常本质的一个区别啊,在这么课程它主要是在讲解 open 如何进行使用啊,是覆盖基本上所有的 一些应用场景下如何使用这通用智能体啊,用的更好啊,然后呢,来完成各式各样啊,不同类型的一些自动化的啊,工作流的这样的这个搭建去提升啊,目前我们实际去啊,这个工作过程当中各式各样的不同场景下的工作效率啊,这个呢是 孟克洛啊,这样的一门课应用的这样的一个课程啊,这门课程是由我来主讲,那么除此之外,我们还有一门课程,是啊,沐雨老师在进行主讲的 web coding 啊,这个编程实战课, 当然 web coding 啊,这门课程就不用说了,对不对啊,现在基本上是所有的咱们这一个啊,编程的这个同学啊,都需要掌握这样的像这个技能。然后刚刚咱们班上还有同学在问到说,哎,我们公司团队内部的这样的 web coding 流程是什么样的啊?等等等等, 是不是很多项目已经是这个零代码啊,在这个情况下在进行这个纯粹使用 web web coding 来进行开发,是的啊,在基本上就是非常这个情况, 然后啊,这么课程啊,会有穆玉老师来主讲啊,会大家好好来讲解啊,关于 web coding 呢,如何从零到一呢,来进行一个这个上手跟使用,以及各个不同,不同场景下有哪一些啊, web coding 这样的工具啊,是非常的这个适用以及呢,像 cloud code 啊,还有这 codex 啊,这样的一些顶尖的 web coding 这样的工具, 它的一些具体的这个使用和进阶技巧,然后也会从零到一呢,带大家去完成啊,很多的一些 web coding 的 啊,一些这个项目的实战的这个开发,从零到一呢,帮大家啊砥砺完整的啊, web coding 这样的技能体系啊, 那么现在呢,大家啊,不管是对哪门课程感兴趣啊,我们现在总共呢是三门课程啊,分别是 openclock 智能体应用课啊,主要是讲 klo 这样的智能体如何来进行一个使用。然后呢,还有啊,大冒险 a 证智能体开发实战课啊,这门课是一个更加硬核的来讲解大冒险底层的这个 agent 如何来进行开发的啊,这样的一门课程,以及适用于现在所有程序员的啊,这个 web coding ai 编程实战课,这么三门课程。

大家好,今天来给大家讲解一下可乐扣的桌面端,他接入了国内的第三方大模型之后,是如何实现联网搜索的功能的。现在呢,我们先来做一个试例,我们现在以小米的这个咪蒙模型为例啊,问他一个问题,今天杭州的天气怎么样? 我们稍等一下来,我们来看它是没有办法实现这个 websearch 的 功能的,那我们其实是可以取现救国一下的,具体采用这个 web fetch 的 方式,那么该如何实现这个功能呢?我们点击左上角三条杠,然后点这个 developer, 然后点这个 configure third party inference, 然后选中这个 sandbox 和这个 workspace, 点击这个选项右边的这个 allow all, 然后点这个 apply locally 重启,然后我们再回到这个绘画,我们再问它一遍, 我们稍等一会儿 看它,这个结果很快就出来了,这个其实是通过 web fetch 的 功能来实现的,它没有使用这个 web search 的 功能,我们可以来问它一下,你使用 web search 的 功能了吗? 所以说它其实是没有实现这个 web search 的 功能的,但是我们用这个 web fetch 曲线救火,实现了一部分的联网搜索能力。那有的朋友可能就要问了,如何实现这个 web search 的 功能呢?这个很简单,其实我们换一个大模型就可以了, 还是点左上角三条杠, developer a figure third party influence, 我 们切换成智普的模型,然后我们再问同样的问题,今天的杭州天气怎么样? 你看我们智普这个模型,其实就可以使用这个 web search 功能,我们可以看到智普的这个 web fetch 的 功能是关闭的,那为什么智普可以用,但是小米 miimo 却不行?那是因为 web search 功能它是通过这个 m c p 服务去实现的, 而智浦它本身是带一个 m c p 的 每月额度,可以调用这个联网搜索的功能。而小米咪某呢?我们来看小米咪某,它其实也是带这个联网服务插件的,我也已经开通了,但是为什么不可以用呢?因为它不兼容。 你看在这里 openai 它是兼容这个联网搜索功能的,但是在 osmic 这里它是不支持联网搜索功能的,这个是属于小米,它还没有提供这样的服务,所以说我们没有办法实现这个功能,只能是取现救国,用 web fetch 的 方式去实现。好了,这就是今天所有的内容了,祝大家用的愉快。

cloud code 和 code x 这两个 ai 编程工具到底用哪个?说实话,很多人一开始先上 cloud code, 直接被难度吓退,因为光安装这一个环节就拦退了百分之九十的人。 code x a p p 是 open ai 出的,打开就是界面,左边导航右边出结果,不用你去敲命令,点点就可以用。 cloud code, 它是一个命令行黑框,白字黑, 很多都是在终端去用它,看着就想关掉,每天深度使用这两个工具。我的用法是这样的, codex 用来做一些脏活累活,读文件,搜网页,帮我做 ppt, 一 句话产出产物的。这种 cloud code 是 用来搭建我的工作系统的,他认识我,知道我的写作习惯,我在做什么事情,接受什么,不 能接受什么。他用起来就是一个真正了解自己的人,而不是每次都需要重新去给他解释。你是谁,两个都不贵。如果是最基础的版本,就是一百二十块钱左右,各自都有各自擅长。如果你是刚刚开始,你直接用 codex, 因为它的下载使用更方便,等你用熟悉了之后再开始上 c c。

hermes 是 nomis research 今年二月底开源的,已经有人在说 hermes 在 不少场景里可以直接替代 cloud code, 为什么这么说?市面上所有的 ai agent 出场就是他一辈子最强的样子,你用第一天跟用第一百天,他还是那个他,能力一模一样。 现在 hermes 把这条规则改了,他每跑完一次任务,就自己回去把操作流程改写一遍,同一件事做到第十四次任务就自己回去把操作流程改写一遍,同一件事做到第十四次任务就自己回去把操作流程改写一遍,同一件事做到第十四次,更懂你。 今天这条视频,我们把 hermes 从头拆到尾,先说它的四层记忆系统, memory、 medie、 user、 medie、 circle、 light、 数据库、外部 provider, 这四层各自在管什么?再说它的 skills 怎么在没有你参与的情况下自己完成迭代,然后是 g e p a, 这套机制除了改 skills, 还能反过来改你的系统提示词。最后是四十七个内置工具,为什么跑起来比 cloud code 更稳?如果你在做工程化的 a 阵,或者想自己搭一套越用越懂你的私有智能体 harms 背后这套 harms engineering 的 打法,你接下来一年绕不过去。看完这条视频,你会知道 harms 到底在哪些场景已经能替代 coldcold, 哪些场景现在还替代不了,以及你要不要现在就切过去。爱马仕智能体和 openclock 其实非常非常类似, harms agent 最为核心的功能特性啊,就是在于说它能够 不断的啊,来进行自主的这个进化啊,一方面呢,它自己的这个记忆啊,是能够不断的进化的,然后同时它的这个 skill 啊,也能够不断的进化啊,它会根据用户跟它这个交互啊,反馈啊,以及啊平时的一些这个对话哎,它会自己的去沉淀一些这个记忆, 从而让它越用越懂你啊,然后同时也越用越强。 promise agent 在 实际使用过程当中呢,不管是性能方面还是要更胜一筹的啊。 promise agent 相比 open call 来说呢,它有很多自己独有的一些啊优势。 openclaw 呢,主打一个这个高效快速上手,大家都能用,但是呢,在很多工业性的这个设计方面其实会偏弱一些啊,但是呢,这 kramus agent 啊,实际上这方面就会比较强啊,这也是为什么它从二月份发布到现在这段时间是属于越来越火 哈,这关注的越来越高啊,这样的这个情况。 kramus agent 它呢是一个智能体啊,并不是一个 agent 的 开发框架,那么它的这个定位呢,更像 openclaw 一 些啊,但是呢,由于它整个的这个内部的框架啊,这套理论体系的啊,所以呢,它在实践过程当中啊,可 可以发现运行的更加稳定啊,然后同时呢迭代速度也更快啊,我们今天来讲解关于 hermes agent 这些底层基本原理啊,包括它背后的这个 harness engineering 啊,到底是怎么做的?这个 hermes 和这 harness 啊,实际上是同一套这个词汇的不同 的这个表达啊,然后呢,这个 hermes 啊,爱马仕啊,智能体,它呢实际上就是一个现在啊,我们其实拆包即用啊,并且它也是一个完全开源的啊,可以在一定手上代替掉你现在手头上去使用的 open club 的 这样的一个这个智能体啊,其现在啊,这个大家 网上吹得很凶啊,关于说这个 humulus humulus agent 啊,能不能够代替这个 open claw 啊,其实一定程度上是可以的啊,在某些场景下,其实它呢是能够去代替到 open claw 的 一些这功能啊,但是呢,可能并不是全部啊,这个 harness engineering 啊,那么它的核最核心的特性就是它的这个记忆呢,会 呃在一个无感的这个状态下啊,伴随着用户的这个使用啊,来不断地向你对齐啊,包括啊,一些这个人类偏好这样的审美啊等啊,它内部呢,实际上搭建了四 套四层的这个记忆系统啊,从比较简单的啊写写入到 memory 点 m d 啊,到比较复杂的能写入到这个 circle light 啊,一个这个数据库里面来进行解锁啊,再到整个记忆内部来进行安全审查啊,它的这方面的这个内容其实做的是非常丰富的啊,这个呢是其, 那么其二呢,它内部的这个 skill 也是可以伴随用户来进行使用,不断来进行进化的啊,这东西我们在下个学期都会有对应的这个实操啊,所谓技能也会来进行进化啊,指的是我们越用呢啊,它就会 知道啊,该怎么样啊,来进行这个实现啊,你不断的给他发布这样的任务,那么他的这个 skill 呢,就是会在一次又一次的这个执行过程当中,主动地来进行经验的这样的总结,然后呢,化繁为简啊,总结出最高效稳定这样的列录,然后不断来进行执行 啊,这个呢是当前这个 a 阵呢,可以说最为核心的一些功能特性啊,当然这个 a 阵呢,其实它呢,呃,这个呃并不是一个草台班子搭建的啊,哈哈。啊,它是这个 nose research 啊,他们这个组织呢,去做的啊,一个这个项目,这个这个 组织节之前主要是去做一些这个开源的,呃,微调的这样的这个模型啊,以及发布了很多开源模型的一些这个数据等等啊,那么这个项目呢,其实从二十五号发布到现在啊,已经是迭代了,这个呃,按照他们的编号啊,实际上是迭代了八个大的这个版本啊。然后呢,现在啊,其实可以说一方面 opencloud 非常核心的功能,它其实都有包括什么 工具编排啊,什么消息网关呐,对不对?哈哈,记忆系统啊,技能自生成啊,自我进化呀等等啊,同时呢,对国内的很多的一些模型啊,知识点也是非常到位的啊,包括,呃所有的国内的各式各样的个模型啊,以及国内的一些这个通信的平台啊, im 的 软件也都是可以来进行接入的。 那所以啊,它呢,其实对于在核心功能上啊,基本上和 openclaw 呢,是完全的这个继承。然后除此之外呢,它的啊,这个自我进化和这个技能自生成啊,这两个点啊,是属于它独创的 一些这个能力啊,这方面其实性能非常不错啊,这个我们稍后就会看到啊,总之呢,其实你可以把理解成是一个啊,这个能够更加高效率啊,更加这个自主,然后稳定性更强的,然后同时还能不断进化的啊,这样的 open cloud 这个版本就 可以了哈,这也是为什么大家经常会啊说现在的这个呃, hermes agent 啊,实际上是可以变成了代替 open claw 的 非常主要的这样的一个原因啊,但是呢,呃,总的来说哈,这个 hermes agent 啊,它其实跟 open claw 呢,其实可能还是会有一些的这个区别啊,现在 open claw 相比于 hermes agent 来说啊,其实还是有很大的优势的,一个呢是 open club 啊,它的生态可会更加丰富一些啊,它有很多的一些这个 skill 啊等等啊,那么除此之外呢,它的这个多 agent 啊, multi agent 的 这个系统啊,其实也是落地的更加完善一些啊,就相比于这个 hermes agent 来说,目前 hermes agent 呢,只有一个这个 sub agent 这样的个分发,这样的个模式啊,但是对于 open club 来说,它的 这个 sub agent 的 分发,或者是这个 agent teams 啊,这样的模式,其实都还是非常的这个完善的啊,所以呢,这里我们也是需要这个简单来进行的这个说明的。 ok, 行啊,那么接下来我们就来看一下啊,关于这个 humulus agent 啊,到底它是个什么个东西,对不对啊,有哪些核心的这个特性啊,以及呢,它到底是怎么样去进行这 harness engineering 的 啊,以及它到底如何来进行上手跟这个使用。 我们在进行上手的使用之前啊,其实我们这里面啊,有一段是来介绍啊,它是如何去进行这个 harness engineering 的 啊,这部分的这个理论的啊,这个理论其实我还是觉得会非常重要哈,所以我们会在今天的啊,这个内容呢,这上半场呢来进行一个这个讲解啊,其实核心原因呢,就是因为我, 我们现在啊,大家去看有很多个 sky 这个开源的这个项目啊,有很多这个项目呢,都是啊因此上进行了这个 harness engineering 这样的这个理念啊,但这个理念呢不仅仅是需要在比如说它的这个呃 agent 的 开发框架里面来进行实现,很多时候呢也是我们去使用这个 agent 的 开发框架的过程当中,你的一个主动发起的这个行为背后的这个思想基础啊, 所以呢这也就代表了,如果我们需要用好啊这个 harmless agent 的 话,那么你可能多少也得了解一下哈,这个 harmless agent 到底是一个什么样的意思,对不对?你怎么样才能够驾驭好当前的这个 agent 呢啊?这个 agent 它会有这么多的这个问题啊,怎么样才能够啊比较好的来进行一个这个驾驭呢啊?对不对?这里面其实 啊这个 harness 这套理论基础告诉我们啊,首先呢对于一个 a 证来说,你可以管控的这个抓手在哪里啊?就比如说总共呢就是这么几个方面啊,第一个呢是工具啊,第二个是消防工程啊,第三个状态管理啊,第四个错误恢复,然后呢验证循环安全防护跟生命周期管理。 那么在所有的啊,我们是构成 harness 这个组建里边啊,我们一会就看到啊,这对于这个 harness agent 来说啊,它呢首先做的比较好的是它的工具编排啊,它的所有内置的工具呢,其实都是经过这个精心编排之后的啊,这个版本啊,所以它内置工具,单纯内置工具应用效率来说,其实就要比啊这个 open color 器要强很多。 然后呢,它的上下文工程里面啊,也有非常精妙的这个什么记忆的这个编排啊,对不对啊?还有什么这个 skill 的 这个自主进化的啊,导致它其实啊这个效率会很高,然后同时它状态管理里边啊,它呢实际上也是一个 agent 运行时啊,它呢,是啊,通过一个这个 log 循环这样的方式,不断不断的去尝试的完成某项这样的个任务, 所以它状态管理也是非常完善的啊,当然下面啊,其实也有啊,各自的一些对应的这样的这个功能等等等等啊,这个我们稍后呢也都会看到, 不管怎么样, harness 其实它是有很好的这个效果的哈,上面其实还有一些啊,这个关于工程博课的这些内容的这个讲解啊,这个我们就不说了啊,这个呢,其实之前啊,咱们的公开课里面其实有讲到过啊,大家感兴趣可以自己看一下啊,关于它的一些理论的这样的这个基础。 但总的来说,我们说对于 harness 安全理论来说啊,它最核心的就构成的这个板块啊,是像就上下文工程,机械式的约束反馈闭环啊,还有中间件啊,基本上都是靠着这么四个方面来进行的这个来进行的这个约束。 比如说啊,上下文工程里面啊,可能就包括啊什么记忆的加载啊,还有这个 skill 的 这个加载啊等等啊,这个呢,其实,呃理论的这个部分内容啊,我们就快速的看一下啊,我们就不一点点来讲啊,因为其实之前我们其实讲到过啊,很多这个 harness engineering 的 这个理论的部分内容,那么重点我们是需要看这个 harness agent 啊,它是怎么样来进行实现的。 那么 hermes agent 它的这个首先哈我们需要看到的啊,它关于这个什么啊?这个呃,上下文的这个管理方面,那么第一层啊,关于 hermes agent 来说,它最核心的实现的这个方式啊,这就是通过一套非常精妙的啊这样的记忆管理系统啊,来去约束整个 agent 的 这样的行为。 它的这个记忆呢啊,差不多至少啊是分成这么四个组建啊。稍后我们看到它其实这除了这四个组建之外,其实还有一套安全的这个管理的这个措施。那么这四个组建啊,分别是 memory 点 md 啊, user 点 md 啊, second light 啊,然后长期记忆啊和外部的这个 provider 啊,是通过这四个方面呢,来去构成我们每次对话过程当中一些计时的这样的记忆。 但是除此之外,我们说它还有这个 so 点 md 哈,但是这个 so 点 md 呢,是呃可选的一个额外的这个选项啊,但基本上我们说它这这这四个方面这个记忆呢,是写死了的啊,是每次对话过程它都会来进行调用的 哎,你会发现啊,这四个记忆呢,很明显就和这个 open color 会有很大的这个区别,对不对啊?当然其实对于 memory md 来说都是类似的啊,都是一些持久记忆啊,可会来进行在实际对话过程当中会来进行自动的这个写入的啊,它呢其实是会持续的去积累啊,当前用户的这样用户画像, 那么除此之外啊,它还会有一组的这个记忆啊,是存储在这个 circle light 里边啊,然后呢,它呢是会这个在实际对话过程当中啊,然后呢如果我们通过一些这钩子啊,或者通过一些这个设置让它 开启存储模式的话,那么它呢实际上是把文的啊这个历史的记录呢,全部给它保存在这个本地的啊这个 circle 数据库里面啊,方便你们之后呢来进行一个这个解锁, 那么四个数据库里面其实是可以存储一个又一个的这个啊自然对话的这样的语句的啊,这个其实没有什么问题,然后之后呢在进行剪辑过程当中,你也是可以啊通过一些关键词来进行匹配来进行剪辑啊,它呢实际上虽然不是 reg 啊,但是呢实际上是一种非常高效的一种匹配剪辑这样的方式,那么除此之外,我说它呢还有 可以啊一组来进行拓展记忆的这样的功能啊,所谓拓展记忆指的是啊,它允许一些外部的啊这样的一个插件,实时的给他去嫁接一些这个记忆, 也是因为它有这个外部的这个 provider 这个拓展记忆哈,所以呢,现在这 hermes agent 啊,它也是声称啊,它是可以直接呢让用户啊无缝的从 openclaw 里面去迁移到这 hermes agent 上面去的啊,这个呢其实没有什么问题, ok, 好, 那么紧接着啊,就是关于这个机械式的这样的这个约束,那么所谓这个机械式的这个约束哈,当然这一点其实会非常的这个复杂啊,原因呢?呃,核心的这个理念呢是 我们啊如果告诉 a 君呢,做什么不应该做什么啊,这个时候 a 君呢不一定会听啊,因为呢他呢其实会有很多自己的这样的问题啊,比如说什么注意力稀释啊,然后呢上下文焦虑啊,各式各样的问题,就会导致有的时候他并不会听你的这样的提示, 那这个时候如果他不听你的提示怎么办呢?那,那我们就是有的时候就需要把你的这样的一个要求啊,转化成固定的一个这个标准,让他必须来进行执行啊,也就是说我们不是说你最好做什么,而是呢你只要没有达到标准,我们就给你一个这个副反馈 啊,这个呢是所谓的这个机械式的这样的这个约束啊,很多啊,这里有很多啊,什么什么机械式的这个约束这样的个手段啊,等等等等。那么 hermes agent 啊,它里面的这个机械式的这个约束呢,其实会非常的这个多啊,然后呢它呢实际上 可以非常精准的去控制你每一个执行上的这个步骤,并且它的钩子系统呢,也是非常的这个完善的啊,它会实时的去捕捉记录,然后呢给予当前 agent 啊,各式各样的反馈啊,这个呢其实是没有什么问题,也是因为它的这个机械数据做的很好哈,所以呢它才能够 在后面我们能看到啊,它其实有一套自主迭代 skill 这样的这个方式啊,它呢会不断的每次,每次都给当前这个 skill 运行呢,给他一个评价, 你这个 skill 这次运行的好还是不好?而不好的话,咱想想办法啊,是不是啊,通过一个什么方式啊,去改一下你当前的这个 skill, 然后看下下次是不是运行的更好啊,那么你想他要去完成这个自主迭代这样的过程,当然是需要有非常明确的这样的个反馈,对吧?啊,这个呢,是一个 那么同时啊,还有啊,包括什么这个反馈闭环和这个验证啊,就是我们刚刚所说的啊,这样的一个这个过程。那么总之呢,其实对于现在的啊,这个呃呃 hermes agent 来说啊,它呢,实际上是有一整套啊,这个反馈闭环,去引导它不断的啊,去做得更好啊, 是这么样的一个这个情况,当然再往下啊,还有什么这个中间键的这样的这个模式啊,等等啊,它呢,其实对于当前的 hermes 里面也是有的啊,这个我们之后用到的就就会 来进行一个这个探讨。但总之呢,大家需要知道的是啊,这个 hermes agent 呢,其实从头到尾哈,它从它的这个记忆啊,从它的这个 skill 啊,从它的这 go 系统啊,都是 去进行的啊,当前的这个 her harness engineering 啊,一整套的这个思路啊,也是因为有这么一整套这个思路呢哈,才使得它现在运行的这过程会更加稳定一些,但是下面还有些这个理论方面的探讨哈,我们就不展开来说了,大家可以继续看一下啊,比如说什么这个上下文工程啊,和 这个 harness engineering 啊之间的这样的这关系等等等等啊,这个呢,其实之前我们在讲 harness 的 时候都有讲到过啊,这个我们就不展开讲了啊,理论部分东西大家可以自己啊拿到课间之后呢,来进行一个这个深度的这个查看啊,或者是看一下我们之前的公开课啊,又讲解过这个 harness engineering。 好,那么接下来我们就来看看关于 hermes 的 这个 agent, 它到底有哪些功能特性,以及如何上手来进行一个使用。首先哈,我们这需要说明的是啊,这个 agent 呢,它呢,你如果想要去了解它的这个 agent 的 基本情况的话,你可以把它看成就是一个 open call 啊,然后呢,它是一个天然就自带了一整套 学习跟迭代功能的啊,这 open call 就 可以了哈,也是,他呢,实际上是会在运行的过程当中呢,不断不断的向你靠齐,哎呀,不断的这个理解啊,向你来进行理解等等等啊,他是个越用越强的一个 a 阵的运行时。当然啊,说到这个 a 阵的运行时哈,这里面其实会有个小小的问题啊,就是之前 也经常同学会问到啊,到底什么是 agent 运行时啊,它和普通的这个 agent 啊,比如说和这个 function calling 啊,对吧,好简单的一次工具调用啊,或者多次工具调用它到底有什么这个区别?那么这里其实有一个非常明确的这个结论哈,就是, 呃,现在我们所谓的啊,这个 agent 运行使它不仅仅是说让 agent 运行起来啊,完成一两次工具调用,而是一整套关于 agent 的 基础设施,包括啊,这个模型调用、工具执行状态管理、错误恢复、安全防护、生命周期管理等等等等啊,是这么一回事啊,这个我们会把统称为叫做这个 agent 运行使 啊,那么这个呢,它肯定是比单纯的一个啊,让这个 agent 完成一两次的这个运行呢,其实是要好很多的啊,对吧?啊?那么第二个呢是对于这个 meta hermes 来说,它所谓的就越用越强的体现在哪儿这里 面呢啊,主要是这三个方面啊,分别是它有一个四层记忆的这样的这个系统,然后同时呢它有啊全自动的技能生成跟迭代进化这样的个系统 啊,同时它还有这个 g e p a 的 啊这样的套啊,这个系统呢,其实不仅仅是可以用于你的 skill 的 优化,还能用于你每一个 agent 啊,包括系统提示词的这样的优化,也就是它呢实际上是会围绕你每一次做完这样的工作呢,来进行个复盘总结,然后呢自我来进行个提示优化啊,是这样的一个啊, 这么样的一个这个流程啊,也说有这套系统之后呢,它的才能够啊,更好的来进行成长,对不对啊?才能更好的来进行这个哈哈哈,来实现这个越用越强的这样的一个状态。 那么实际上哈,我们说基本上啊,如果你在用他的过程当中,如果用了十次二十次之后啊,他就,呃,当然前提是同一类型的这样的任务哈,如果你运行了这个十次二十次之后,那么他的这个运行的效果其实会好很多啊,他的这个效率呢,两到三倍其实,呃是差不多的哈,我们一会看到啊,他的这个呃,比如说 完成一个事项,他的工具调用时间啊,可以缩短百分之六十到百分之七十啊,然后呢准确率能够提升很多等等等等,确实是能够越用越强啊,并且这个过程呢,对于呃所有用户来说,他的使用门槛其实并没有那么的高啊,其实很多时候呢,你这个只要会跟他来进行一个对话啊,基本上就能够做到这样的一些这个事情。 那么 harness 啊,这个 hermes 什么意思? hermes agent 啊,它的这个 get up 主页在这儿啊,大家回头给自己看一下啊,里面有非常详细的关于这个 hermes agent 的 这个代码啊,还有相关的一些这个说明啊,它呢是一个完全开源的一个这个项目啊,主要是个 python 来写的。然后它呢其实也 同样啊,是这个呃纯手写的一个这个架构啊,然后呢它这个呃是在二月底啊,开源的啊,现在越来越火了啊,主要原因是因为这个 herniss engineering 这个技术感觉越来越火了哈,是怎么样的这个情况?然后呢,这个下面啊,还有一串啊,一段啊,关于这个主创团队的一个这个基本背景啊,这个大家可以自己看一下, 然后同时呢对于这个 herniss agent 来说啊,我们一会就会用到哈,大家需要知道的是啊,它呢和 open call 呢,还有个非常本质的一个区别就在于说它其实并没有那么多的啊 啊,一些这个啊,什么外部端的交互这样的个页面啊,它呢相对来说还是一个非常专业的一个这个智能体啊,就你快理解成像 cloud code 那 样啊,它只能在命令行里面来进行运行最核心的交互的入口啊,就是这个命令行啊,来进行一个这个运行,除此之外呢,它也支持 getaway 啊,我们到一会也会看啊,怎么去连这个飞书啊,它支持 getaway 之后呢,也是可以在比如说飞书啊,这个,这个,这个企业微信啊,来来进行聊天也是一样的, 然后同时啊,它也有啊,这 crown 啊,这样的个调度器这样功能啊,就是它会有一个定时的,可以有啊,这样的个定时的一个任务的这样的这个机制啊,这个呢是关于 agent, 呃呃, hermes agent 啊,一些基本的最核心的功能接入的啊,这样的一个这个方式啊,当然剩下的关于,比如说它的啊,什么核心编排层啊,什么人格定义啊啊,这东西我们一会在用的时候大家就会看到啊,这里我们大概先留个印象啊,就是我们谁在进行使用的时候呢?哎,你也是需要去编 先写一下啊,它的什么 so 点 m d 的 啊, memory 点 m d 的 啊, user 点 m d 的 啊,但你自己不写也没关系啊,它呢自己也会写哈,然后呢,它也是有啊,这个 scuse 的 这样的一个这个加载的,然后同时呢,它呢,也是啊,会有类似于像 cloud code 啊,点 m d 那 样的这个文档,它有 hermes 点 m d 哈和这个 agents 点 m d 啊,这个 html 就是 当前这个机子上面所有的啊,这个 html 的 这样的 agent, 它通用的一套基本的呃约束,然后呢,这个 agent html 就 当前你某一个具体的这个 agent 啊,它的一个约束,或者说明这样的文档。 这个系统啊,其实有点像 cloud code, 对 吧?哈哈,那就像 cloud 里面这个 cloud 点 html 啊,是一样的啊,然后同时呢,它内部啊,有非常多的一些这工具啊,这个呢,大家知道一下就好啊,是这么样的一个这样的一个架构, 当然啊,下面有很多的啊,关于说现在我们的是运行过程当中呢,他的一些需要用到的这样的工具啊,这个呢,呃,大家看一下就好啊,总之呢,工具有很多啊,大家一看这工具 啊,可能看不太清,给他放大一点,那么大家一看这些他内置这工具哎,会不会觉得有点眼熟呢,对不对啊,都是常用的工具啊, 啊,什么命令行工具啊,这文件操作工具啊,还有这个啊,这个浏览器的这个 fetch 工具啊,还有浏览器自动化操作的工具啊, vision 的 工具啊,还有这个多模态的,对不对啊,这个图片生成,语音合成的这样的工具等等啊,一看这些工具啊,就能够发现,嗯,这些工具都是我们常用的哈,这样的限制工具, 那么这些工具呢,实际上哈,都是这个,尽管我们这列的其实会比较快啊,大家按按照什么二十个分类啊,四十七个工具,往这给大家看啊,它到底哪些工具?那实际上的每个工具呢?对于 hermes 来说,它都是内部呢,是进行了精心的啊,这个编排之后的这个结果啊,差不多呢,它的这工具集合呢,就长成这个样子啊,大家可以自己去看一下。 当然啊,其实对于现在的这些通用的 agent 来说哈,它底层的这些工具基本上都是这么几大类,对不对?终端啊,文件啊,多模态啊,搜索呀,视觉啊,代码啊,定时啊,伪派啊,记忆啊,这样的一些工具啊,基本上都是这么一类啊,所以呢,呃,这也给大家一个小小的启发啊,你们接下来如果自己要去 做一些啊,类似于这个 hermes engineering 啊,从零到一去开发些 a 智能的话,那么啊逆一的这个内置工具 a 差不多也知道这些啊,这个呢是现在大家实践出来的通用智能体最合适啊,也是最要紧啊,最重要的这样一些工具,这 工具的这个组合啊,这大家可以看看啊,有很多的工具啊,分不同场景呢,来进行一个这个使用啊,当然下面还有一套记忆系统这个说明啊,记忆系统我们刚刚已经讲过了啊,我们这里就 不再重复的啊,来进行讲解了啊,这个呢我们之后呢在下一个小节在使用过程当中呢,我们待会再来看哈,对不对?总之它是分成 memory, user, circle, 还有这个啊 provider 啊,什么四层呢,去架构它当前的啊,一整个记忆的这样的这个系统, 然后同时啊下面还列出了啊,当前它的八个这个什么 memory provider 啊,外接的一些这个记忆的这个库啊,这个呢,呃,都属于我们先大概了解一下啊,之后呢我们用的时候我们再说啊,然后同时它还有这个网关系统啊,对不对?它呢能够去连接 什么这个飞书啊,钉钉啊,企业微信啊,都是可以的啊,现在的国内的这些 m 软件啊,支持的也都是还是非常的这个不错的啊,等等等啊,各式各样的平台,大家也可以来进行一个这个使用啊,我们到时候也会看跟大家说啊,怎么去连接这个飞书,然后同时它还有这个 skill 系统啊,跟这个 gpa 这个优化啊,这个我们刚也说过了啊,这里有具体的文字的这样的描述,大家可以看一下, 那么像我们公开课的课间哈,其实里面的内容其实非常完善哈。大家,这个啊,如果听视频里面你们发现啊,如果有一些内容不太了解的话啊,也可以好好的看一下啊,公开课里面的课间啊,这里面基本上就有全部的啊,你现在想要去了解的啊,关于现在的这个 harness engineering 啊,它啊关于 hermes agent 啊,所有的这个架构这样的这个信息, 那么现在来看哈,这 hermes agent 啊,用户的反馈还是非常不错的啊,主要的核心反馈在于说它呢,实际上,呃,一个呢是自主进化这样的功能啊,确实会非常强啊。第二个呢是它整体的运行效率很高,并且非常稳定啊,基本上这么就是这么几点啊,然后呢,尤其是在一些工程化的这个场景下啊,我们说这个 hermes 的 其实会更好用一些, 那么那么对应的代价呢,就是这个 hermes 呢,对于大家这个操作的要求呢,会更高一些啊。这个呢,大家也需要这个了解一下,哈哈, 是它呢,其实并没有像这个 openclaw 一 样啊,这么简单容易就能上手,甚至还有外部端跟你来进行对话啊,它都是没有的啊,它呢是像是纯命令行的这样的个交互和这个操作啊,所以呢,确实会更难一些啊,但是呢,它整体性能目前来看还是非常不错的,唯一的短板啊,就是它的这个 multi a 制的系统目前还不是很完善啊, 大概是个情况,那么下面还有一些关于 humulus 的 一些啊,什么版本迭代的一些这个说明哈,和一些具体的内部的一些命令的一些这个集合。这个呢啊,作为一些溯查表啊,大家回头可以自己去看一下啊。

code 的 整个的大狗长什么样,以及我们怎么样去引导当前这个 agent 长期稳定高效的产出基金的内容的。我们会先从一个 很简单的代码的一个 demo 入手,跟大家来进行一个讲解的介绍,这也是考虑到咱们今天晚上可能有一些零基础的同学来听课,那证明我们学上是借助了一个项目叫 learn cloud code, 大家如果想要去深入学习 cloud code 的 每一个技术细节,一个非常不错的一个,之前是一个逆向 去拆解 clock code 的 一个这个项目,现在 clock code 的 这个原码泄密了之后,这个项目也火了,因为他很多之前对 clock code 的 一些这个猜想是对的,大概猜对了三四成吧,哈哈,剩下的都都不太对。在这个项目里边就有很多围绕 clock code 的 一些基本的底层功能的一些 demo 级的这样的实现,所以我们接下来在进行运行的时候,也会采用这个项目里边的一些代码给大家来进行演示,就是出于一个教学或者零基础理解这样的场景一下,我们看看 a 阵是怎么运行的,它会有什么样的问题,以及如何来进行解决 好。首先我们需要知道当代 agent 在 进行运行的时候,其实它的整体的运行逻辑或者核心股价其实非常简单,就是一个能调用工具的这个大模型,加上这个 cmd 命令行工具,基本上就构成了我们现在看能看到的所有的 agent 最核心的这个股价。 那所谓的 cmd 命令行这工具,它实际上就是一个 tool 对 不对?这就是一个工具,这工具它可以操作你当前的环境这个命令行,你只需要给它输入命令,然后它就可以自动来进行执行,你可以这么来进行理解就可以了。 那这个工具之所以会成为当代 a 证的最为核心的工具,大家可以想想,你用这个 openclaw, 是 不是你动不动让他什么生成个文件,整理个桌面,做这个事,做那个事,阅读他自己的这个记忆,修改自己的记忆,他在背后怎么来进行实现的,基本上都是靠 那个命令行来进行实现。命令行就是操作你当前这个电脑最为核心的这样的这样的工具。这个呢是第一个命令行工具,在上面这个项目里边回大家可以自己在我们的课程的课间里面能找到这样的这个代码,来看一下命令行工具定义长什么样。 同时关于这个核心的 agent, 在 运行的过程当中,它的核心功能其实都是通过一个叫做 agent loop 的 这样的工具来这样的一个形式来实现的。那给大家课间放大一点, 所谓这个 agent look, 它实际上就指的是我们在进行调用的时候,在大模型调用工具的这个时候,基本上它就是处于一个循环的状态,那么这个循环它循环的什么?其实循环的是我这次在进行工具调用,看它能不能成功,如果成功了,我们就退出这个循环,给用户一个答案,如果没有成功,咱们再多运行几遍,哈哈,对不对?这所谓的什么多部调用工具, 它本质实际上就是一个 loop, 是 一个循环。当然我们一会去看 cloud code, 它其实也是,那它里面的原码其实也是一个 loop, 也是一个循环这样的概念。那么现在为什么这个 agent 运行的这个核心本质上就是个 loop? 非常重要的原因是因为现在的大模型性能都非常强, 如果是早几年的这个大模型,比如说二四年的那个大模型啊,那个时候呢?大模型不说调用工具稳定不稳定,如果你是把它放到一个 loop 里面来进行这个循环,那它就完蛋了,因为它根本不知道自己什么时候该停下来。 但是对于当代大冒险来说,它其实都会有个非常清楚的这样的一个认识,一个是对用户的意图更加深刻的把控,除此之外,它也有一套自己非常清醒的去判断。关于说我现在运行到这个什么程度,或许需要停下来是这样的一个状态,所以基本上核心的 a 阵,它都是在一个 look 里面来进行运行,不断地尝试 用各式各样的工具去完成当前用户的提出这样的问题,完成了之后就跳出这个循环,或者失败了很多次之后,觉得自己没必要再试了,也可以跳出这样的个循环,否则就一直在循环里面来进行运行。有了这个路,又有了这个命令行工具之后,接下来我们说你的这个 a 政策就属于一个基本成型的这样的一个状态啊,因为它可以持续不断的调用命令行去完成各式各样这个操作啊。这里面大家如果感兴趣的话,可以在这个 呃 beautiful s r c 的 那个文件里边能够去找到它完整这个源码啊,然后呢,这部分的,它的内部的 agent 运行的这个源码核心代码呢,是在这 q r 点 t s 里边啊,大家可以去看一下, 你发现啊,它其实也是一个也是一个路,对吧啊,它其实就是在不断地调用当前的 cloud cloud 这样的模型在进行一个循环啊,差不多是这样的一个这个情况, 所以啊,你会发现,呃,整个的啊,我们当代的 a 卷的核心呢,就是要需要构建好这样的个 loop 啊,当然我们这一期讲的会比较简单哈,真正在构建 loop 的 时候,你可能好歹得用些这个工具啊,得用些这个框架啊,然后呢辅助你更好的去 完成这样的这个 loop 啊,这里大家可以自己去试一试啊,我们上面给大家给出的这个原码啊,就是上面呃我们这个教学视力的这个代码啊, 就 learn cloud code 啊,这里面这个代码,大家可以自己去尝试着去用用,看一看啊,感受一下啊,它现在整个的这个核心的这个 log 呢,大概长什么样啊?你现在呢,让它呃这个执行简单的任务,它就是一部啊,调用工具结束了啊,如果让执行复杂任务,它可能会 考虑多部啊,来调用这工具啊,但总之呢,有了这个命令,行啊,有了能够啊,有了这个能够调用工具的这个大模型啊,再加上一个 log 啊,基本上我们的 agent 的 核心呢,就这么构成了啊,是这样的这个情况, 当然哈,我们去构建这样的 agent 的 这个核心啊,大家肯定会想啊,那呃他肯定会有些不太够的地方,对不对啊?你好歹给他多整一点这个工具啊,给他搞一点这个复杂的上下文呐,等等等等。那我们说所有的啊,其他的这个 agent 的 这个架构,基本上都是以这个为核心去进行那些功能的这个拓展,我们这也就不展开了来说了,但是大家需要知道的是 一个基于 loop 啊和啊基于这个命令行为核心工具的这样的 agent 的 体系,它其实会面临很多问题的啊,我们接下来主要是看他会有什么样这个问题,以及呢 cloud code 到底是如何来进行解决的? 那么他会有哪一些问题呢啊?首先第一个就是上下文会不断的增加,对不对啊?这其实是非常明显的一个这个问题啊,也是我们在实际对话过程中迅速就会遇到的这样的这个问题啊,上下文会 越来越长啊,越来越长啊,并且呢伴随着像现在啊,我们很多比较复杂的这工具在进行调用的时候啊,他这个上下文呢,实际上是会呈现这个指数级的这个上涨这样的情况, 上下文一长啊,其实就会带来很多的非常致命的一些这个问题哈,就比如说一个呢,是模型的啊,他会有个上下文的这样的窗口啊,超过这窗口他就没法来进行运运行了,必须要去裁剪一下之前这样的记忆啊。那么第二个呢,是 伴随上下文越长啊,其实模型的注意力呢,也会被稀释掉啊,这就是所谓的现在我们再去使用,比如说 color code 呀,或者是大家去用很多的一些大模型,你会发现前半段啊,运行的还很好啊,愿意去生成一些很长这个结果,到后半段 啊,尤其是这个模型快到自己的上下文窗口的时候啊,就开始疯狂的个输出啊,对不对啊,也不管这个输出对不对啊,或者质量好不好啊,甚至是这个给你乱输出一通啊,总之就是会迅速在短时间内把这任务给结束掉啊,这就是所谓的当代大模型的上下文焦虑,哈哈,会存在这样的这个问题。 那么第二个就是对于每一个 a 阵,在这运行的过程当中啊,他其实会存在关掉就失忆啊,重开全部知道啊,这样的这个情况啊,但是这个情况 大家都能理解,对不对啊?因为上下文没了嘛啊,但是呢,我们说在当代的 agent 的 这样运行体系里面,为什么这一点会变得非常重要啊?其实是因为我们现在的很多 agent 在 运行的时候,它往往不是一个 agent, 它是很多个 agent 啊,这个时候呢,它我们在实际执行任务的时候,就需要非常合理的给不同的 agent 啊,给他来进行非常精密的上下文,这样的匹配,才能够迅速的带入到自己的这个角色里面来啊,来完成运行啊。所以呢,对于现在的 agent 在 运行过程当中来说啊,我们说合理的给他匹配上下文也是非常重要的一个方面。 那么第三个就是安全方面这样的问题,对不对啊?那么安全方面的问题呢?呃,之前我们在讲 cloud code 啊,讲 open cloud 时候其实有讲到过啊,就是由于你现在啊这个 a 智能很厉害啊,对不对啊?他自个又很聪明哈,然后呢,他又有智慧啊,又可以操作命令行这工具啊,对你各种环境的一通操作哈,那么 这个时候呢,呃,他这个安全问题就会变得非常重要啊,因为他一不小心把你什么关键文件给删了哈,对不对?那这个事情就很尴尬了啊。所以呢,对于现在的这个 a 智能运行来说,安全其实是一个很大的 一个,这个需要考虑的一个方面。那么 agent 的 安全哈,跟传统的软件安全还不太一样啊,传统的软件安全,它其实是可以通过一系列这个测试给它测试下来的 哈,就去看啊,关于啊,你在各个场景下你的所有功能是怎么样来进行运行的,一个一个来进行安全测试,测试完了之后就可以上线。 但是对于大模型来说啊,他呢是一个有智慧的工具啊,那么你引导他去工作啊,那么也可能会,他呢也可能会被别的一些信息给忽悠瘸了啊,这个时候呢,你就得这个想办法,对不对啊?这个用魔法,对,用魔法对抗魔法啊,才能够解决大模型的安全性的这样的问题。 我们现在说 open clock 啊,这个很多的安全性问题,非常的这个显著,有很多隐患需要来进行修复。但实际上呢, code 啊,他作为目前非常通用这个智能体,他的安全的这个级别是非常高的,他也是之前经历了很长一段时间安全啊,踩坑啊,甚至被竞争对手蒸馏啊,这样的这个情况之后啊,现在他才这个逐渐逐渐提升了啊,他的安全性,这样的,这个提升他的安全性的一些这个措施, 那么现在啊 code 的 的安全的很多措施我们会看啊,其实还是非常精彩的。那不管怎么样,我们说对于安全性这个问题,哎,他其实也是属于, 对吧?啊?整个 agent 它进行运行的过程当中啊,这个我们是要时刻关注的啊,就比如说这里面我们现在给大家的这个势力代码里边啊,这个不是,呃,这个不是卡扣的这个原码哈,这是我们给大家势力代码里,比如说一些就包含了一些非常基础的安全性啊,这样的一个解决这个问题,比如说 啊不让他去使用什么 r m 杠 r f 这样的这个命令啊,还有这个杀档啊,关闭某些东西这个命令等等等等啊,会有这样的这个提示啊,等等等等。 当然啊还有一个非常重要的一个这个问题啊,就是他其实 a 证的运行的过程当中啊,尤其是一些长效长期这样的问题,会带来巨量的知识的这个 商增啊,那么你运行的越多啊,关联的文档就越多啊,他你现在需要处理的这个局面就越就更加的这个复杂啊,他其实是会出现一个非常巨量的、非常快速的这个商增这样的状态, 这个上证这个状态哈,其实会很大程度上啊影响你未来 a 证呢,是否能长期稳定运行的一个这个点啊,这个其实并不是在于说我的现在啊,这个每次带入状态我就越多了,然后我付的钱就越多,并不是这样,而是它整个的运行的稳定性 都会遭到巨大的啊,这个呃影响啊,那么就比如说啊,我们这个 agent 的 look 对 不对?在运行的过程当中呢,你会发现啊,这个运行的,运行的,运行的每一轮 talk 就 越来越多啊,当然浅层次的呢,是你的费用越来越多啊,但是这个深层次的呢,是伴随着你当前 agent 的 这个商增啊,你其实你的稳定性会受到很大的影响。 好,那这问题怎么解决呢啊?我们接下来其实哈整,如果你去纵观整个 cloud code 啊,它的这些原码,基本上它就是围绕着这 四个问题啊来进行的这个展开啊,我们其实今天晚上的公开课并不会啊,直接去贴一个啊,比如 cloud code 的 完整的啊,这个什么几十个这个,呃,几十个不同的核心的这个主类啊,还有上百个啊,这个子类,它的功能对比的这个表啊,这个其实意义不大啊,我们更多的希望大家能够通 过我们接下来这个解读啊,能够看得出来这个 cloud code 是 怎么样啊,去实现这个 harness engineering 的 啊,以及呢,我们现在这 cloud code 到底是啊作用于它的核心架构,对我们开发人员来说,它到底是能够解决哪些问题? 那么接下来啊,这个原码这个层面,其实就,呃基本上啊,整个扣的这个原码层面都是围绕的我们刚才所说的这四个方面啊来展开的啊。当然大家如果想去看他完整这个原码的话,那么其实呃上面有原码,上面完整这个原码大家可以自己去拿,自己荡下来之后去可以去看一下啊,那么总之呢,现在他总共呢是 五十一万多行的这个代码里代码文件啊,然后总共呢是一千九百多个这个,呃,五十一万行的代码啊,主要是 t s 的 代码,然后呢,差不多是一千九百多个这个代码的这个文件,那么他总共的各式各样的分类呢?差不多是这样的这个情况啊,与 模型 api 交互的核心代码啊,差不多是八千行啊,然后呢?这 query engine 啊,推理引擎啊,差不多是这个,呃,四万六千行啊,然后呢?工具系统啊,它有四十多个工具这个模块啊,差不多三万行代码啊,然后呢?什么这个终端 ui 渲染啊,差不多是两万五千行,剩下的这所有的哈,尤其是 什么工程基础设施啊,总共有三十六万行代码,剩下这些所有的基本上都是为了啊,让当前这个 agent 给它约束,好,让它更好的去呃,围绕长期的问题来进行解决啊,所以呢,你会发现对不对啊?差不多这个百分之九十八啊,都是这个 harness engineering 啊,里面相关的这个内容啊,这个呢,就是它完整的 项目的这个代码啊,大家可以自己当下来去看一下啊,然后下面呢也有关于它的这个代码的一个基本的这个分布啊。好,那不管怎么样,我们接下来就来看看到底是怎么去解决这样的一些这个问题的啊,就是怎么去借助这个啊,现在 a 证的长期稳定运行的这样的一些这个问题的 啊。当然其实讨论到这 harness engineering 这个的话,其实我们之前是,呃有单独讲到过哈,这个 harness engineering 的 这个内容, 哎,稍等,我们这个图它裂了啊,我们其实之前有一期公开课专门是讲到过啊,它内部的这个整个的这个 harness engineering 的 这样的一个这个呃基础理论。那么对于 android pig 来说啊,他会觉得整个的啊,这个按整个去构建考核的这样的高性能这个智能体,我们基本上是需要做好以下这么四 个方面的这个工作啊。这个是他的第一版的这个想法。第一个呢是 context engineering 啊,他的这个角色流程啊。第二个呢是啊,我们如何协调内部的 agent 工作流和他的这个决策流程啊。第 三个呢是提供高质量的工具接口跟工具描述啊。第四个呢是做好他的安全行为边界这样的个约束啊,差不多是他最开始啊,是有这样的一套这个理论体系,这个是他自己的这个博课里面,这个呃博课里面来进行的这个介绍哈。当然这个理论其实说起来会比较 呃枯燥,我们接下来直接去看它到底是怎么做的,对不对啊?我们直接去看它这四个方面啊,到底是如何去解决的啊?那么它整个的 harness engineering 基本上就是集中在这四个方面的工程的实践。一个呢是所谓这个约束工作台啊,专门去进行上下文管理啊。第二个呢是它的这个记忆方面的这个管理啊,它呢是分成了三层来进行记忆管理, 这个记忆管理不仅仅记忆存储哈,还涉及到非常复杂的这个记忆处理的相关的这个内容。然后同时呢还有很多众生防众生的这个防御啊和它如何来进行成本啊,这是 talking 消耗方面的这个成本的这个约束,我们再来看一下啊,是如何来进行实现的。 当然我们说对于整个的卡扣的来说啊,它的这个整体的这个架构啊,这个我们简单提一句啊,这个我们这个大家感兴趣可以自己去看一下,它的整个架架构其实分为五层的,分别是入口层啊,这是运行层、隐形层、工具能力层、技术设施层啊,差不多是分为这么五层的 啊,这个内容啊,但是入口就指的是它的所有的可以调用啊,给它进行信息传递的这样的这个接口,有一点像 opencloud 的 这个 getaway 啊,这样的一个这个系统啊,因为其实对于现在的 cloud code 来说啊,它呢是可以 在就比如说这个啊, kle 啊,对不对?命令行里面来进行调用,可以在 id 里面调用,也可以使用这 sdk 啊,也就是这个 opencloud 啊, cloud code, 不好意思啊, cloud code 官方他们推出这个 sdk 对 不对啊?来进行调用等等等等。 然后同时啊还有这个运行时程啊,这个运行时程其实主要就是我们之前所说的啊,它的这 agent look 啊,这样的一个这个环节啊,只不过呢它的运行时程里面还包括啊,比如说这 r e p 啊,交互式的这样环境,还包括啊这个后壳的一些这个钩子,还包括它当时运行的过程当中状态的管理等等啊,这呢是所谓的运行时程, 那么当下啊,就是这个推理的这个引擎层,对不对啊?主要是 q r i n g i 啊,考虑成这个模型的这个内部模型的管理以及呢 compact 非常非常重要的关于上下文压缩的 这样的一个工作的啊,这个实现,然后再往下啊,就是关于工具和能力层啊,内部工具怎么样进行实现,怎么通过啊,插件来进能力拓展啊,还有 m、 c, p 跟 skill 如何来进行接入, 多 agent 啊,如何来进行复制和分发啊等等等等啊,相关这个内容啊,再往下还有更加基础的一些基础设施啊,什么什么的存储的格式啊,还有这个缓存的这个内容啊等等等等啊,这怎么一系列的这个总共啊,是这么五层啊,来进行的一个架构,当然我们这里啊,接下来重点是来探讨关于它的引擎层和工具能力层啊, 这两层呢,就是主要去解决我们上面所看到的这四个方面核心问题的啊,这两层的这个基本的架构 ok, 行啊,那么首先啊,第一个我们先来看啊,它的上下纹是如何来进行管理的, 这个呢,其实是涉及到我们上面啊,关于这四层里边第一个啊,关于约束工作台啊,他的上下文管理的第一个模块的一些 qq 的 一些这个措施。那么首先啊,这张图其实非常形象哈,就是它的适用于来去描述啊,关于你现在的 a 证在进行运行的过程当中啊,可能最开始 运行的还不错,对不对啊,是一个非常整洁干净的这个宽敞的这个桌面啊,运行了一段时间之后呢啊,这边乱七八糟啊,你就根本不知道如何进管理,它整个的 a 智能运行的过程呢,它的这个性能也会下降啊,这是一个非常形象的这样的比喻, 当然我们这里是以以两百两百 k talk 为例来进行的这个说明哈,实际上最新的这 cloud code open 啊, cloud open 四点六实际上已经是全面升级到一兆通宵文了啊,相当于是拓展了这个五倍, 那么这对于这个上下文来说哈,首先啊,两百 k 肯定是一个这个硬的这个极限,然后同时呢,大家也需要知道是他的这个整个 agent 啊,在进行运行的过程当中,他只要啊超过了差不多百分六十之后,他的整个模型的这个注意力啊, 实际上就会被稀释掉啊,也就是他的这个呃呃,他去进行长段内容的输出的意愿就会下降啊,然后同时呢,他对于之前的很多内容的记忆呢,也会下降啊,是那么一回事, 所以哈也是因为它存在这两方面硬的杠杆啊,一个呢是它两百 k 只有那么长,或者一照它只有那么长哈,那么第二个呢,是你伴随增加的越多,哪怕你没有突破它的这个呃,最大上下纹的这样的限制啊,实际上它也会 记得越来越模糊啊,也是因为这有这两层的这个限制,所以呢我们才需要非常谨慎的啊,给每次的这个运行啊去构建一下上下文,对不对啊?那么在我们现在这个视力项目里面,就是这个 learn cloud code 啊,这个项目里面呢,它呢是提供了一个叫三层压缩的这个策略的一个简单的代码的这个实现 代码实现啊,上面有这个对应实现的这样的脚本啊,大家有感兴趣可以自己去这个运行一下,那么总的来说呢啊,我们说在一个简单的环境下啊,注意哈,一会我们会说哈,在 cloud code 实际上是这个五层实现啊,在简单的环境下啊,实际上大家需要知道是首先呢是有这么三层的 啊,这个压缩的这个策略是可以来进行选举的,第一个呢叫做微压缩 micro compact 这一点啊, cloud code 也有,那所谓这个 micro compact, 它呢实际上指的是我运行很多轮之后,就把之前的工具调用这个结果给他删了啊,是这么样的这个情况, 那么呃,这一点其实也可以理解哈,因为很多时候我们在进行工具调用的时候啊,工具返回的信息其实是非常非常多的啊,就比如说我们查询的天气对不对啊?使用什么 api 查询天气,那么这个时候呢,那他在这个实际工具返回回来这个信息会很多, 但是呢在当时那一次的绘画过程里面啊,你就必须得包含这一个工具返回的这个信息的这个内容啊,因为他需要依据这个内容呢给用户来进行回复,但是呢伴随着运行的时间越长啊,那么之前的工具 加载这个这个加载的这个内容呢,可能就不是那么重要啊,所以呢我们就可以把它删掉,一般来说呢,是在三到五轮对话之后,那么之前的工具调用这个结果就可以直接把它删了啊,这个呢是指的是这个微压缩,那微压缩基本上是一种无损的一种压缩这样的方法哈,因为毕竟那些工具调用这个信息可能也会不变的,不是特别重要,但这里有一点其实是需要这个, 那这需要说明的一点就在于说,我们现在去使用一些 agent 的 skill 啊,大家都知道啊,这个这个 agent 的 skill 啊,它呢是一个灵活自动加载加载的这个上下文,它是一种提示增强了这个策略啊,有了这个 skill 之后呢,这个模型啊,它就它就具有某方面这个能力了。但是这里呢,需要知道的是这个 skill 的 这个加持啊,它呢实际上 也是通过外部工具这样调用啊,通过这个 function response message 的 方式加载到当前的上下文里面来的啊,所以你的这个 skill 啊,它也是会伴随着我多对话几轮之后,它之前你加载调用过的那个 skill 就 忘了啊,会存在这样的这个 情况啊。所以呢,这也是提醒我们在使用 cloud code 的 过程当中啊,你如果你总是需要某一个 skill 啊,你下一次在线运行的时候啊,还需要再把这个 skill 加载加载进来啊,因为它运行两轮之后,就会把之前加载进来这个 skill 给它删了,以维持上下文的,这个对不对啊,不要太长了这样的状态。这是第一个, 第二个呢就是关于自动压缩啊,第三个是手动压缩啊,当然这两种压缩呢,其实呃,都是这个压,都是呃这个同一套流程啊,只不过他们各自压缩的这个方式不一样啊,这种压缩往往是采用这个摘药这样的个形式,对之前内容来进行一个总结啊,你可以 这么来进行这个理解啊,只不过呢,一个呢是到达预知之后自动来进行处罚,一个呢是手动来进行处罚啊,但是总的来说它都是 compact 这样的过程。 那么这三种压缩策略可以说是非常典型的啊,也非常呃,这个非常通用的啊,这么个压缩策略啊, cloud code 是 这样啊,我们现在这个势力项目是这样啊,然后这个 open cloud 也是这样啊,基本上都是这样的一些这个压缩这个策略啊,这种呢,其实属于 一个非常通用的啊压缩这样的方法。当然啊,下面其实还有啊,具体的代码实现的这个过程啊,大家感兴趣啊,可以自己去运行一下,我们课程就不展开讲啊,因为 cloud code 它这个架构内容,大家可以自己去进行实践一下, 然后具体它的 compact 啊,这部分的这个内容,尤其比如说我们刚刚说不说这个 micro compact 对 不对啊?再说运行几轮之后,把之前的这个工具栏给它删了哈,这个,呃部分这个源码呢,是在这个 service, 在 s r c 啊,然后呢 services 啊,下面 compact 啊里面这部分这个内容啊,你看它这个 compact 啊,光是这 compact 就 有这么多 啊,哈哈的这个内容啊,这个其实这段原码非常精彩哈,因为之前很多同学一直在问啊,说 cloud code 他 是怎么样来进行压缩的,为什么感觉我们会感觉 cloud code 压缩了之后呢,效果性能非常不错啊,跟这个普通的比如说 open code 压缩之后,他基本上记不得之前的这样的信息了。 那么其实,呃,大家如果对这种感兴趣的话,就可以看一下啊,他这个 compact 的 这部分原码里面到底怎么写的?这份原码其实非常复杂哈,它还包括一些康啊,一些这 compact 过程当中的一些这个 prom 是 怎么写的? 因为它在进行压缩的时候啊,其实并不是一个机械的压缩的过程啊,由于它需要涉及到这个 summary 嘛,所以呢,它是内部会调用这个 sanit 那 个模型,就中杯那个模型啊,来围绕你之前的这个信息内容来进行一个提取,来进行格式化这个提取, 同时呢,他还会留下你最近那几几次对话的这个 to do list 啊,就是没有完成这个事项,所以呢,你才会觉得说啊,一方面他好像也记得之前这样的事情,一方面又帮我腾空上下文啊,同时呢,还能够顺着你这 compact 的 之前的这个事项来进行运行,哎,感觉非常不错啊。其实这样的一个这个原因在里边啊, 这里面大家看的清楚的话,可以自己去看一下啊,这部分这个原码啊,这部分其实还还是非常精彩的哈,当然就对于 o o cloud code 来说啊,他会啊,什么最近三个工具这个结果不压缩啊,之前都压缩啊,是不是这个 读文件的这个结果永远不压缩啊,然后呢,这个因为读取进来这个内容嘛,所以不能压缩,等等等等啊,有很多这个具体压缩规则啊,这个呢,是第一个 micro compact, 这样呢叫做自动压缩啊,自动压缩就是指的到达预值之后呢,哎,自动给它来进行压缩啊,当然这个 auto compact 啊,在这 compact 里面啊,在 cloud code 里面也有对应的这个原码,对不对啊?到达预值之后呢,哎,自动的啊,来进行一个这个 来进行一个压缩啊,这里面有非常多的啊,它这个什么预值的这样的一个射击呀,然后呢啊,到多少的时候就来进行触发,等等等等啊,一般来说啊,差不多在百分之八十 到九十左右,它就会触发自动的这个 auto compact 这样的过程啊,它是不会到百分之百来进行触发的啊,因为它在,它在进行,在在进行最后的 compact 过程当中,它还需要腾出一部分上下文来围绕之前内容来进行个总结啊,所以一般来说是百分之八十,百分之九十啊,当然我记得最新的 这个呃 cloud code 也是呃,二点一点九零这个版本啊,应该是百分之九十二啊,作为预值啊,这个大家感可以感兴趣的话自己去看一下啊,然后呢来进行一个这个压缩啊,差不多这么样的情况,然后除此之外呢啊,还可以手动压缩,对对,手动压缩跟这个自动压缩跟这个 auto pack 的是有一样的这个过程啊,只不过的手动手动压缩呢,是通过 这个斜杠命令来进行的这个触发欸,然后呢,它这个手动压缩呢,跟这个 auto compact 啊,基本上是完全一样的这个流程啊,只不过它是允许你在任何时候啊都来进行一个啊 compact 的 这样的一个操作啊。当然其实如果你不需要这 compact 的 话,你可以直接杠 clear 就 把它删了啊,这个也是可以的。 好,那上面的是关于这个 open cloud 啊,关于 cloud code 啊,它的一些基本的一些实现方法啊,就我们刚刚所说的 micro compact 啊,然后呢 auto compact 啊,还有这个 menu compact。 那么除了这几种 compact 之外啊,我们说其实 open code 还有很多的非常精彩的关于它来进行压缩过程当中啊,一些这个啊,所谓的这个防御策略啊,或者说它在压缩过程上可能出现的问题,如何来进行解决啊,你可以这么来进行理解啊,这里也有四层压缩防御策略。 首先啊,第一个肯定是 oppo compact 啊,它会临临临近上下文的时候呢,自动啊,来进行出版。然后呢, oppo 这个 micro compact, 当然也是啊,全自动的来进行一个这个出版啊,但是呢,我们说你 compact 可能会存在一些这个问题,对不对啊?所以呢,当它当它你的 compact 没有办法来进行这个 summary 总结的时候啊,它还会有一个叫这个 reactive compact 啊, 这样的这个流程啊,指的是 api 调用,呃, api 调用这个模型 api 来进行 summary 的, 不是呢,如果报错了啊,它呢就会啊,这个触发叫所谓的啊这个 reactive 啊,叫呃 reactive compact 这样的这个流程。 而 reactive compact 这样的这个流程啊,它呢,实际上一旦触发了之后,它就会使用这个 snip 的 这样的方法啊,直接呢大刀阔斧的啊,来进行一些这个压缩啊,或者直接删除上下文啊,这个呢,是有可能来进来 这么来进行操作的。它一般来说哈,这个 reactive compact 其实并不会特别常见啊,因为其实对于现在的这个 sony 的 这个模型的调用来说,相对来说还是比较保险啊,但如果确实是没法出现的话,它就会使用这个 snape, 对 不对啊?来进行一个啊,简单粗暴的啊,这个 啊,完整的呃,大段大段的原始内容的这样的一个这个删除啊,当然在 compact 过程当中呢,它还会 出现这个啊,出现一些这个循环啊,因为 compact 内容呢,很有可能再次被 compact 啊,这个呢也是有可能的啊,然后呢它对于啊这个地归呢,还有一些地归的这个防护啊,所谓地归防护指的是我上一次 compact 的 这个内容,这次呢如果按照正常 compact 的 这个过程来说的话,它呢可能会被 大幅的这个降低权重啊,但是呢之前 compact 的 内容往往它可能是比较重要的这个内容啊,所以呢,它在下一次 compact 的 过程当中啊,会尽量的保存你上一次已经 summary 之后的这个内容啊,是这么样的一个这个情况, 是这么样的个情况,大家也能够感受到,对不对啊?他迟早有一天会 compact 不 下来啊,就是我们的 compact 之后呢,你的上下文并没有压缩特别多啊,这个时候呢,可 能就会触发我们上面所说的啊,叫做这个 reactive compact 这样的这个流程啊,他就开始给你直接删了啊,是这么样的这个过程啊,所以呢,这个 reactive compact 不 仅仅是 api 调用错误的时候可能会触发啊,你这个 compact 不 下来的时候,他也可能会进行处罚, 对不对啊?然后呢这里面啊 compact 这个代码大家可以自己去看一下啊,总之呢这都是在这个原始文件里边啊,然后同时呢除了啊他的 compact 这个策略之外呢,他还有啊,在五步流水线的这样的一个处理策略啊,这个呢,实际上是他的每一次消息在进行构建的时候,他还会走一遍这样的这个流程啊, 这个流程呢,跟上面这个流程其实很多是重复的哈,只不过上面这个流程呢是呃,跟着你现在到达某个域值,或者是有很多是重复的哈,只不过上面这个流程呢,实际上是你每次在 构建这个 system 啊,在构建你这个 message 的 过程当中呢,会这么样啊,来进行一个这个处理啊,这个呢,大家可以啊自己来去看一下啊,那么其中呢 compact 也是一样的啊,因为你 compact 呢,不仅仅是在到达预置的时候会会这么来进行一个处理啊,你每次构建上下文的时候,它也会啊来进行一个啊简单的一个 compact 的 这样的过程。 然后同时呢啊,这里有一些非常有趣的一些地方在于说对于当前的 cloud code 来说,在某些情况下啊,它呢实际上是会把你输入的问题来进行一些重写和进行一些优化的啊,这个呢,其实是一些 非常细节的一些这个点啊,然后呢,他会觉得你这样的这表述其实是会存在一些问题的啊,所以他会对你当你的这个原始这个问题呢啊,来进行一些这个优化啊,当然他也会有这个 prompt catch 啊,对吧?好,提示词缓存的这样的个策略啊,提示词缓存我们会放在后面统一来讲啊。那总之呢,大家需要知道的是啊,它的这 compact 啊, 怎么做的啊?然后呢啊,它这个整个的啊 cloud code 啊,是如何来进行上下文的啊,这个压缩的啊?当然其实啊,不管怎么样啊,我们说这 compact, 它呢肯定是进行有损啊,肯定是这个有损类啊,肯定也是这个不可逆的啊,因为之前其实经常有同学会问到啊,说这 cloud code 啊,这 compact 跟是不是这个无损这个亚索啊,但是其实只要是亚索它就是有损啊,这个其实啊,不用考虑啊,它肯定是这个无损啊,只不过呢,对于现在的啊这个 cloud code 来说啊,它呢其实并没有采用像 opencloud 啊,这个 rec 解锁这样的一个这个方式啊,它呢实际上就是单纯的亚索压缩完了之后呢,把所有上下文带入来进行解锁 带入呢来进行一个这个问答。而啊,就比如说像,呃,这个,呃, open clock 啊,它呢实际上是先它是,它呢实际上是超过了预值之后呢会对它的这个 memory 啊,来进行这个 red 的 这个解锁啊,是这么样的一个这个这么样的这个情况,这 两者他们的技术方案呢,实际上是有区别的啊。当然其实就目前的实践情况来看,如果是普通用户在进行使用的话,肯定会觉得这个 clock code 其实会更加的这个友好一些, ok 啊,是这样的情况好, 那当然下面还有一些具体的这个细节方面的这个展开的这个说明哈,我们就不继续来进行讲解了啊,大家感谢我自己看一下里面的这个文字,然后呢有一个非常有趣的地方,我们刚刚不是说到 这个 cloud code 啊,它呢实际上是会对用户输入这个内容啊,你在构建上下文的时候,它就会来进行一轮感知,甚至是来进行一些这个修改啊,甚至是把一些重要或者不重要上下文的来进行加载和这个删除,去构建你当前这一次绘画的这个 message 这个列表,这里面操作非常多哈,我举一个小例子啊,大家能感受到它是怎么样 去啊,做到这个非常细节的这一点的这个优化的,就比如说如果你对 cloud code 骂街了,哈哈哈啊,就比如说你说啊,这不不是,就比如说 啊,那就用户的这个情绪啊上头了啊,对不对啊?用户觉得说啊,你这个做的简直是垃圾啊,那个你这个完全不懂我的这个意思,跟你说了多少次,然后完事你还是做不对啊,对不对啊?就是如果用户骂街了啊,那这个时候呢, cloud code 就 会自动的 检测你上下文,会发现,哎,这个时候呢就触发了啊,所谓叫的这个沮丧检测的这个机制。那么一旦啊触发这个沮丧检测的这个机制啊之后呢啊他呢实际上就会迅速的啊,来进行一个这个 经典上下文,然后围绕当前这个问题来进行快速的响应啊,他会做这样的一个这个事情啊,并且这个过程他是使用 这个呃正则,呃观正,正则表达式啊来进行的剪辑和这个匹配啊,他会有这样的一个啊响应的这个方式啊,这个呢其实是一个小这个小彩蛋啊,这个大家发现了之后呢,发现啊,这个有这个技术人员发现这个细节之后呢,会觉得很有意思啊,这个 open club club 呢,它其实进行了非常非常多细节方面这个优化, 这个呢是第一方面这个优化啊,总共四个方面优化哈,我们讲完第二个方面,我们再啊中场休息,然后再来进行一个这个啊,再来进行答疑,然后第二方面这个优化呢,实际上啊,是更好的去每一次去 folk 啊,或者说或者说去实力化多个 agent 啊,那么这个呢,也是呃 cloud code 的 一个非常核心的 一个架构方面这样的一个亮点吧,那比如说啊,我们现在呢,每次开启这个 a 阵啊,由于呢它其实并没有上下文啊,所以呢它其实什么都不知道啊,这个时候呢,你可能就需要按需呢,对它对这个上下,对当前这个 a 阵来进行一个知识的这样的这个贯注,对不对?那么呃,我们之前在讲 opencll 的 时候啊,其实当时我讲过 opencll 呢内部有非常复杂的提示模版,然后呢我们需要去组建非常复杂的内部这个提示词,然后才能够去开启一个又一个的这个呃,一个又一个 opencll, 那么对于 cloud code 其实来说其实也是类似的啊,然后呢 cloud code 它内部呢,也是啊,每次在运行之前呢,会有非常多的啊,一些这个扫描,我们下面应该会有一个完整的一个这个层级记忆的这个层级的这个图啊,那么 cloud code 呢,是按照这样的个记忆层级来进行解锁跟架构的。 上面哈,其实有一些啊,上面我们讲的它什么自动加载 system prompt 啊,自动加载这个 skills 啊,然后呢是如果有需求的时候才会去加载对应的这个 skill 啊,这个呢是属于所有的 agent 呢,基本上都是这么通用来进行的,这个执行我们直接看它,像它 对于 cloud code 来说,它的这个整个的新开启的这个 a 制呢,记忆架构差不多是这么三层啊,第一个呢叫做 memory 点 m d 永久记忆。第二个呢叫 topic files, 按需加载啊。第三个呢叫 transcripts 啊,只只搜不加啊,差不多是这么三个不同类型的层级的这个记忆, 那么 memory 点 md 这个很明显对不对啊?每次呢,它都会啊这个来进行一个加载,那么一般来说哈,呃,当然我们我觉得现在可能很多大家在使用在 cloud code 的 时候,可能压根就不知道啊,它还有 memory 点 md 这样的文件,是的,这个文件不对用户开放啊,这个文件呢,是纯粹的,它内部会通过一个非常精妙的过程来去维护的一个高质量的记忆文件, 它不是简单的啊,你要记住什么,它就把它写到哪啊,不是这样的,它内部有一个记忆的加载、清洗、分门别类存储,然后记忆的优化,一整个非常复杂流程,共同去维护这个 memory 点 md。 所以 这个 memory md 呢,对用户是不开放的啊,你就去改了,很容易把它改毁了啊,你也不能够去改它这样的文件 下面啊,这个所谓的 topic files, 它呢指的是针对不同的这个事项啊,它呢其实是会有对应的这个存储的文件的,然后这个存储的文件是可以通过 memory md 来进行锁影的,比如说你要记住一百件事情啊,那一百件事情可能都没有办法全部给它放到这个 memory md 里面,它就需要分门别的来进行存储,然后呢按需来进行锁影, 那么再往下啊,这个 scripts 啊,那么 scripts 呢,实际上就是关于历史的这个绘画了,那么历史绘画其实大家都知道啊,一旦我们现在在 carco 进行 compact 之后呢,历史绘画就不会再再进行加载了,但是呢,历史绘画它是会在本地来进行一个永久的这个存储的啊,所以呢,如果有需要啊,它呢实际上是会通过这个 那 grab 这个非常简单的这个匹配解锁这样的方式呢,去找啊,你之前的历史对话啊,这也是通过命令行工具啊,直接使用这 grab 的 这样的脚本啊,就可以去匹配啊,去寻找你的一些历史对话。差不多是这么样的这个情况啊,这个呢,就是整个的啊,关于 cloud code, 它的一个永久记忆的这样的一个机 本的这个架构啊,当然其实除此之外啊,这个我们刚刚也说啊,它的什么啊, system prompt 啊,它的这个 skill 啊,也是按需加载的呀,那块其实我们刚刚跳过了啊,大家感兴趣可以翻到前面来去看一下啊,那我只觉得这段呢会非常精彩啊,所以呢,给大家来进行一个分享。 ok, 好, 那我们先看啊,这个 memory 点 md 啊, memory 点 md 呢,实际上都是通过啊这个 memory 的 direction 点 t s 啊,这样代码来进行这个维护啊,它里面呢,实际上是有一套啊,非常精妙的这个维护的这个过程哈, 那么它在记忆的过程当中呢,它会不断地去识别 user 啊,不断地去啊,记住你的行为偏好啊,不断地记住你当前的这个 project 啊项目这样的信息啊,然后呢会去记住资源的位置,这个呢是它构建它当前的这个记忆最为核心的四个要素啊,当然这个要素它实际上是会伴随着这个运行不断不断来进行加深的。 举个例子啊,就比如说我们在使用 cloud code 的 时候,其实你会有这样的感受哈,就比如说你最开始没有跟他讲过你叫什么名字啊?但是呢,如果在某一个项目里边,哎,你透露了你叫什么名字,你是在干什么的啊?那么其实哪怕你没有让他记住这个信息呢,也会啊,在他的这个漏斗状的这个筛选的过程当中,不断不断的啊被筛到这个 memory 点 md 里边 这么样的这个情况。然后呢在这样的一个啊,这个 memory 的 这个记忆的过程当中啊,它不仅仅是说会围绕这四个非常核心的记忆类型的,有针对性的啊来进行一个这个记忆。然后同时呢它还有很多的啊,一些写入记忆的一些 这个纪律,对不对啊?比如说它这个这个很多时候啊是先先进行缩影啊,再去先创建这个缩影,就是创建这个 topic 的 这样的文件, 然后呢再写入到这个 memory 里边儿。再比如说对于 memory 来说,它呢只会解锁前两百行啊,超过前两百行之后呢,就需要啊给它进行一个这归类,就需要来进行个精简,就需要把它放到比如说某一个 topic 里边去,不断不断的啊来进行一个精简跟迭代。然后这个呢是它的这个 memory 啊,部分的这个文件的 啊,文件的修改这个流程,当然下面其实有一段哈,就是呃整个的 clock code, 非常精彩的一个这个设计啊, 当然上面还有一个关于 cloud, 呃, cloud 点 md 这个文件,这个加载啊,这个我们就不说了啊,因为这个文这个呃记忆文档,其实是我相信大家其实用 cloud code 其实都会用到过,对不对?你需要在根目录里面创建一个 cloud md 这样的文件,然后它呢其实就是你的 system prompt 啊的一个最核心的加载的这样的这个文档, 那么呃我们现在来看啊,关于 auto dream 啊,这样的一个自动的去清洗啊和沉淀记忆的这样的一个流程, 哎呀,说是这个流程,其实上非常的这个魔幻哈,就是我们在实际时候呃 cloud code 的 时候,如果它是在你当前进程持续运行啊,但是呢,某一些间隙的时候,实际上这 cloud cloud 它是会开始做梦的啊, 它是会有叫睡睡眠记忆巩固的这个时间的,它会在内部悄悄咪咪的 fok 一个 agent 啊,然后呢去审查自己的这个记忆,再根据我们当前白天对话的核心内容或者删除一些记忆,再根据我们当前白天对话的这个记忆,再根据我们当前白天对话的这个记忆,再根据我们当前白天对话的这个记忆 啊,这个呢叫做 auto dream 啊,在这个做梦啊,在利用睡眠来进行记忆巩固啊的这样的一个非常神奇的这个流程啊,这 东西其实确实这个说起来非常的这个魔幻啊,但是呢他确实是会这么做的啊,首先呢在他空闲的时候啊,就会自动的来进行这个触发啊,然后呢呃他呢?这个呃会单独的 fork 啊,单独创建一个 agent 来去做这样的事情啊,不影响主程序的来进行这个运行。 然后呢,接下来啊,它会去看啊,你当前对话所有这个时间戳对不对?就我们刚刚所说的啊,你越近的这个对话呢,它的这个权重就会更重一些, 然后来进行一些这方面这个梳理啊,然后最后呢,单独的啊 for 可以 一个这个 agent, 然后呢通过当前这个 agent 去整理你的 memory 点 md 这样的文档啊,所以呢,它的这个 memory 点 md 呢,是一个非常非常复杂而且精妙的这个设计的过程啊,不像 open curl 一 样啊,你让它写入它就写入,写入完成之后呢,这个 memory 太长了,就直接来进行 rec 解锁啊,并不这样啊,对于 cloud 来说啊,由于它是通过这样的一个可是非常神奇的这个维护 memory d m d 这样的一个文档的方式啊,所以它其实并不需要啊,所谓的这个 rack 这个流程来进行解锁啊,因为它的上下文呢,其实它的这个上下文其实能够被能够来进行非常好的这样的控制的, 而且 cloud code 的 本身它对用户的要求也会非常高啊,就比如说我们上面所看到的 cloud 点 m d 这个文件,对不对?那么这个文件呢,其实是所有的 cloud agent 每次在进行运行之前,它都会加载的这样的这个文件。那么只不过啊,大家可能之前不知道的是,对于 cloud 点 m d 这样的文件呢,它啊和其他的 studio 一 样,只会最多加载五百行, 更多它不会加载了,哈哈,所以呢,你对于 cloud 的 m d 来说,你写的再多啊,这个这个意义也不是特别大啊,所以呢,它呢? cloud 它其实会盗弊用户,我们在进行实际使用过程当中呢,你得想办法啊,去主动的去精简这样的一些这个记忆,主动去精简你希望主动让它记住的这样的一些这个东西,而它怎 自己维护的这个 memory md 啊,这个呢,是他自己维护的啊,然后这个呢? cloud md 是 用户可以维护的,它们共同构成每次对话这个上下文,那么他自己维护的啊,这个 memory md 呢?哦, ok 啊,他呢?实际上就会,对不对啊?这个什么 auto dream 啊哈啊?然后呢?他又什么这个 那会,呃,创建一些这个 topic files, 对 不对啊?分门别类的去存储记忆等等等等啊,这个呢,是它自己会去做的这个事情,而对于像 cloud md 啊,需要用户去做的啊,它就没有太多的这个要求啊,跟你 说,反正我只读前五百行,剩下的你自己看着办哈,对不对啊,你自己想办法来对它来进行优化啊,当然其实 cloud 它也有一些 skills, 能够去帮助你 cloud md 来进行一些剩下我们这样的优化啊,这个呢,就属于应用层面上这个东西了啊,但不管怎么样, 对吧?啊,通过这样的一些这个流程啊,还有上面的源码的一些这个实现啊,大家能发现整个的 cloud 啊,它在构建每次对话啊,每个新的这个 agent 的 这个时候啊,它的上下文呢,是如何来进行的创建啊?这里面呢有呃,大家如果想看更加详细的源码的话,可以 去找到啊,我们的这 auto dream 啊,点 ts 的 这个文件里边啊,里面呢有非常详细的关于它是如何引导,如何构一个当前的 agent 去整理自己的记忆的啊,包括什么审查呀,强化一些东西啊,删除一些东西啊,如果存在矛盾应该如何来进行处理啊?然后如何啊,把 这个什么模糊洞察转化为确定事实啊,如何去重组当前这个记忆啊?哎呀,这个流程其实非常复杂啊,如果有机会的话,我其实还是非常 愿意展开跟大家说的啊,因为这个其实还是非常精彩啊,去整理他这个记忆比简单的啊,什么寄到本地文档,再通过 red 来进行剪辑,要好的多啊,要好的多, ok, 当然下面还有一些这个安全的这个措施啊,当然他这个也会有一些这个啊,也会有些这个局限啊,因为他的记忆组装的好坏,其实会跟他当前这个模型呢,会有直接的这个啊,直接很大的这个影响啊,当前模型如果指令跟随能力强的话,那么他记忆组装的其实就更好。 下面还有啊,什么分层的知识注入啊,然后呢还有下面的什么提示词啊,什么六层动态组装啊,这些东西呢,其实都是属于怎么去更好的去维护他当前这个上下文的啊,那这部分其实并不会特别复杂啊,这个大家可以自己回头去看一下。 好,那么到这啊,我们就觉得基本上对于像 cloud code 啊,它的一些架构,就我个人觉得比较精彩的啊,两个方面的这个内容啊,一个呢是如何来进行 compact, 对 不对啊?去压缩上下文,够压缩上下文啊,去构建更好上下文工程啊。第二个呢是如何修改它的这个像整个 agent 这样的个记忆, 这两方面的核心的我觉得比较亮眼,功能呢都就都跟大家讲清楚了啊,那么接下来呢还有两个方面, cloud code 它的这个项目架构的优化。一个呢是 那么也欢迎大家啊报名,有我跟沐雨老师啊,还有啊还有这些老师我们共同来主讲的啊,二零二六大模型 a 证的开智能体开发实战课啊,这样的一门付费课程。这 门课程啊,是我们三位老师共同来主讲啊,是一门一百小时以上的完整体系大课。那么今天我们去讨论了非常非常多啊,关于啊大模型 a 证的开发相关的一些这个内容啊,当然我们今天讨论的是一些理论层面上的啊,这样的一个这个东西, 那么啊大家如果接下来想进一步的来进行深度的时间落地啊,或者你是想从零开始来学习大模型 agent 开发,就未来想要去参与到啊这个大模型 agent 技术岗位当中去的话,那么那么也非常欢迎大家啊报名这样的一门啊,由我们三位老师共同来主讲的大模型 agent 的 开发实战课, 那么课程是一百个小时以上的完整体系大课,能够帮大家零基础入门,然后直达目前顶尖大厂大模型 agent 的 开发中高级岗位能力要求的这样的一门课程。 那么这门课程啊,其实我们现在已经开设到第二十四期了哈,这今年的这个春季班啊,也是第二十四期了,我们从二三年的这个五月份啊开设第一期到现在啊,已经 已经是将近三年的啊这个时间了啊,三年的时间里面已经也是有两万多名的学员报名了我们这样的一门课程也有非常非常多的学员啊,现在是已经是加入到啊我们大魔神 a 制的开发的这样的一个技术岗位当中来了,那么这门课程呢,是可以帮大家零基础入门来进行的学习,然后呢可以全方位淬炼大家 大模型 a 证的开发的啊能力的技术体系啊,那么这本课程是可以帮大家零基础入门,然后直达目前顶尖大厂的五十万年薪的大模型 a 证的开发岗位能力要求的 这个五十万年薪啊,这个我们不是随便说说的啊,我们也不是随便糊口的个周了一个这个数字出来啊,是因为我们团队其实也是在进行大模型 a 证岗位这样的招聘啊,我们课程里边讲解的内容就是我们团队的要求啊,那么那其实我们今年金三银四的内容就是我们团队的招聘啊,那么那其实我们今年金三银四的这个招聘啊, 我们招聘要求非常简单啊,大家只要是学了我们的课程啊,学了百分之六十到百分之七十以上啊,就可以啊加入到我们公司团队里面啊,来进行一个这个工作了啊,就可以顺利的拿到大模型 a 证的开发的岗位的这个 offer 了啊,所以呢,我们这样的一门课程是完完全全严格按照目前顶尖的大厂的技术岗位的要求进行的 内容的设计,那么这门课程啊,总共呢是六个模块,我们现在给大家看一下啊,现在这门课程完整的课程介绍。 首先啊,第一个模块呢,是来会讲解啊,关于现在顶尖的大模型的一些基本的技术入门啊,包括顶尖的在线大模型的 api 的 接入使用,本地开源模型的部署和使用。然后呢,智能体 a 智能开发的理论基础和基本开发工具,然后呢, rap 解锁增强技术啊,开发入门等等等等啊,这是第一阶段, 然后第二阶段我们会进一步的来探讨啊,关于热门的 a 证的开发框架的上手实战啊,包括一些零代码啊, d 代码的开发工具啊,像这 cosdefine 啊,还有 nba 啊,也包括那一些顶尖的 regreg 框架啊,主要是拉玛 index 啊,在开发实战, 也包括新兴的 a 证开发框架实战啊,像这 a 证的 sdk 啊,还有 a 证的 school 啊,还有 adk 等等等等。然后同时啊,还包括工业级的 a 证开发框架啊,这主要是 luncheon 和 lun graph, 那 么这个当然是我们会主讲啊,这样的开发框架,那么刚刚啊,其实 弹幕上啊,有同学在问到啊,说啊,我们能不能够呃使用 long chain 来复现一版的 cloud code 呀,等等等等啊,其实我们课程里面已经使用 long chain 就 复现了一版 open cloud 了啊,然后呢,我们课程里面也有啊, cloud code 的 这个附件啊,只不过呢,使用 agent sdk 去进行的这个开发。 然后呢,当然底层开发思思路其实是一样的。好在我们课程里面啊,我们会从头跟大家去讲啊,关于最新版 long chain 应该做出来进行使用啊,然后呢,如何啊?去复刻这些顶尖的这个呃 agent 啊,就是这一些像 open cloud 呀,还有 cloud code 呀,这一系列 agent 复刻的这个核心的思路啊和方法,然后 同时第三个,第三个板块,我们会进一步来讲解啊,关于工业级的 agent 开发境界的这个技术啊,包括啊,智能体的内部的啊,多工具的管理呀, m c p 工具的这样的一个使用啊,包括啊,这个 agintic, 呃, reg 进阶的这个技术实战呢,包括纯文本的解锁优化啊,包括图文混排的 pdf 解锁啊,多动多模态的 pdf 解锁,结构化数据的解锁和 graph reg 基于知识图谱的解锁啊,还有视频信息解锁等等等等。 那么刚刚啊,就有同学问到啊,说我上下文特别特别长啊,然后呢,呃,我们怎么样啊,去这更好的去读取啊,或者是去获取上下文这样的信息啊,那么要么你就是进行 compact 啊,压缩对不对?要不的话你可能就是采用 reg 技术啊,来进行更高精度的这样的个解锁。 好,那么再往下啊,还有关于智能体长短期记忆的这样的管理啊,和智能体上下文工程,这都是构建我们智能体直观重要的相关的这样的个技术。再往下啊,还有关于多智能,多智能啊记忆多智能 某体 agent 的 系统开发啊,对不对?然后呢,相对于现在的啊这个 cloud code 来说啊,它呢,其实只有一种啊,这个某体 agent 的 系统就是所谓的 supervisor 这样的架构,一个主 agent 不 负责干活,负责分配活啊,剩下很多的啊,这些 agent 负责来进行干活。 那么除此之外啊,我们说其实还有啊,像这 handle office 的 这个架构,还有这个 router 架构啊,还有 network 架构等等等等啊,有这四种主流这个架构,那么这些架构呢,都会在我们政客里面啊来进行讲解的介绍。那么 再往下啊,还会包括啊,会讲解关于大模型高效微调啊相关的这样的内容啊和呃,紧接着啊,我们这这个呢,就是我们第三个模块内容啊,第四个模块,我们进步来讲解关于工业级的大模型 a 证的部署上线啊,相关的一些内容,包括 啊,像智能体项目部署上线的这个基本理论啊,包括智能体开发部署上线全部的这个流程对不对?好,从最开始的前后段功能设计啊,到这个接口的这开发啊,到前后段的连调,到最后的项目上线啊,一整个完整这个流程啊,然后也会来讲解关于两大的容器啊,交呃, 两大容器化啊,这个交付工具这样的实战啊,主要是 ducker 跟 kbs 的 这样的使用,然后同时也会来介绍关于智能体的追踪啊和运维实战啊,以及智能体的评估和优化相关的这样的内容。 那同时这门课程我们说现在总共呢还有啊,总共呢是十大项啊,工业级的这个实战的这个案例啊,分别是长文档啊,定制化文档编辑 agent 啊,然后文档审核 agent 啊,图文视频 agent, 语音交互 agent 啊, deep research agent 啊,然后呢数据分析 agent, 然后啊数据分析可知化 agent 啊,垂玉的 agenatic reg 系统啊,多模态 reg 本地知识库解锁系统啊, nintendo pro ppt 生成系统啊等等等等,然后同时还会有四大项, 这个百万用户级别的啊,这个商业化的项目,工业级项目实战啊,分别是企业级多模态啊, rek 知识库解锁实战项目,然后全新一代智能客服 a 智能开发项目啊,其实我们所有项目都有对应的演示视频啊,这个演示视频可能会比较长啊,我们这个啊就不展开给大家看了啊,大家可以自己登录我们的主页来进行观看, 然后啊包括一比一复刻 miniso 通用智能体的啊,这样的项目和啊这个 ai 编程啊跟数据分析 agent 的 开发项目。当然在我们的春季版里面,我们还新增了啊丛林去复现 open club 啊这样的个项目,完整的相关的内容啊,那么在我们的这个春季版里面,我们是完整的大家去复现了一个啊,这个复泛 open club 啊,这样的一个这个项目啊,然后呢所有功能呢,都会从零来进行实现啊,这个项目其实就是 呃使用 long chain 啊来进行的开发啊,在开发的过程当中呢,我们就跟大家详细去介绍啊,它背后的核心的 啊,这样的一门呃大冒险 a 级的开发实战课之外呢,我们这还有两门课程啊,一门课程呢是 open club 啊,这个技术实战课啊,这门课程呢是由我来主讲的 一门啊,这个总共呢是二二十到三十个小时的啊,这样的 open club 智能体的应用实战课啊,这门课程是目前是呃,我正在讲解啊,这样的一门 联赛更新这样的课程啊,但这么课程其实主要就是来讲解关于 openclo 啊,这样的这个技术应用啊,实战相关的一些这个内容啊,那么 openclo 这个定位呢,其实和呃 cloud code 还是有些区别哈, openclo 其实是更加通用的一个智能体啊,它呢,其实更呃有更低的这个啊, 使用这样的个门槛,对不对?然后同时呢也能够覆盖更多的啊,一些实际应用的这样的岗位。那么这个 openclaw 实战课里面,我们会给大家介绍各式各样的不同类型的这个应用范式啊,和基本上所有工作的各个不同类型场景下的 openclaw 啊,这个落地应用实战,然后同时呢在这本课程呢,最后我们还会介绍目前四个 核心的啊,这 opencloud 商业变现的啊,一些这个流程啊,包括全自动的 ai 内容工厂啊,包括这个全自动的啊,公司网站运维和建设啊,包括这什么呃,艺人公司的啊, ai ai 员工团队啊,如何进搭建啊,以及呢,包括垂雨 ai 自动化的啊,这个服务开发等等等等啊,这个呢,是属于 open collog 啊相关的这个技术内容啊,但是 open collog 其实是一样更加通用的一项啊,技术开发这样的工具啊,或者说一项通用这个智能题使用的这样的个指南,那么和我们刚刚大家所看到的啊,这个 agent 开发实战课其实完全不一样的方向哈,因为 agent 开发实战课其实是更加硬核的 这样的一门啊,这个主要是面向技术人啊,大家如果未来是想做 a 证的开发啊,来去但量身定制的这样的课程,但是除此之外,我们还有第三门课程啊,是由木鱼老师来主讲的 web coding ai 编程实战课啊,这个课程,这个啊,重要性就不言而喻了,对不对?这个 web coding 嘛, 哎,这个,这个,去年我们这个时候啊,大家说 ai 编程可能会还会觉得比较早,早啊,时间还比较早,那么到现在啊,大家如果说自己不会 web coding 啊,这个,这个属于是古法编程啊,是不是啊,人类手工编程啊,这都属于非遗传承的这个技术 啊,所以现在我们基本上所有场景里面啊,我们可能都会,呃,会用到啊,这个 web coding 这样的这个技术啊,都会来进行 ai 编程啊,那这门课程呢,是沐浴老师来主讲的啊,一门可以说啊,已经是开设第二期的 完整的 web coding 的 体系大课啊,然后呢,能够帮大家零基础啊,零门槛啊,上手 web coding 这样的工具,然后呢,开始啊,你的 ai 编程之旅啊,这可以说是现在所有程序员必备的这样的技能了,我们 可以讲解啊,像 kris pro code codex 啊,这一系列 ai 编程工具这样的使用啊,然后我们也会来讲解啊,关于像 open code, 对 不对啊,这样的开源的 ai 编程工具,这样的这个使用啊,然后呢来介绍啊,关于 ai 的 skill, m c p 啊,这样使用啊,和 像 figma 啊, pencil 来进行前端设计的一些工具啊,然后呢,像以及啊,像这个 openstack 还有 superpowers 啊,一些非常有用的,非常实用的,能够提升你的 ai 编程的水准的啊,一些这个 skill 的 这个使用啊,也包括像现在 cloud code 啊,它的 agent teams 啊,多智能体协调来进行开发的一些这个方法等等等等。 那么这门课程啊,是由沐雨老师来去主讲的啊,一门课程啊,这个对不对啊?关于 ai 编程的这个重要性啊,这个其实呃已经是非常非常重要的哈,因为其实呃这个不仅仅是现在啊,像 enflop 啊,像在国外顶尖的大厂啊,大家是在使用 ai 编程的,国内大厂也在用 ai 编程哈, 不仅国国内大厂在用 ai 编程啊,基本上所有的岗位大家都是在用 ai 编程啊,很就是除非一些特特定的这个情况啊,可能还需要手工编程之外啊,剩下的 ai 编程呢,它已经是属于大模型 a 制的应用的啊,一个非常成熟的这样的一个领域了。 那么在这个课程里面,我不仅会教大家啊,怎么样从零开始去使用这 ai 编程工具上手来进行 ai 的 编程外部口令啊,同时呢,我们也会 从头啊开始教大家啊,怎么样从最开始能写高质量代码,到做出 demo 啊,到精准的输出啊,到完成一整个完整的应用啊,到推送产品上线啊,到产品二十四小时的这个运行到最后啊,对不对啊,全站的开发啊,到运维的完整的这个技能体系啊,写在这么课程里面,我都会来进行详细的这个介绍。 刚刚我们给大家看到的啊,像这样的一个复饭,呃呃呃, cloud code 啊, web 这样的一个这个程序啊,其实就是我们当前这门课程里面给大家提供的一个应用的一个工具啊,这是其中一个工具啊,我们这门课程里面其实还很多其他的工具 啊,当然其实这门课程里面我们重点是来讲啊,像 cloud code 怎么样去用好它,去完成一系列的啊,这个开发的这样的一个项目,而啊这是我们的 agent 开发实战课,那门课程里面主要是会讲它底层的原理,一个呢是 进行使用啊,一个呢是底层原理的这个介绍啊,这个呢其实是各不相同,有所侧重的这样的点。当然对于 ai 编程来说,我相信很多同学肯定也会有这样的个误解,大家会觉得 ai 编程吗?有嘴就行啊,对吧?只要跟他说我要开发什么,他就能完成开发,其实并不是这样,哈哈,现在其实对于很多的 a 证的使用来说,还是有不小的这个门槛的哈, 你可能还是需要掌握很多的一些这个技术,然后同时也得积累一些这个经验,然后才能够完成一些很好的产品这样开发。那么大家现在看到的都是我们当前课程里边会给大家讲解的啊,一系列这个产品的这样的一个这个开发, 那么这门课程啊,我们就会好好的跟大家来介绍啊,关于从工具的使用啊,到我们现在前沿的实践经验的沉淀跟总结啊,一整套完整的 web coding 相关的这样内容。

来分别对比一下 cloud 和其他的差距。我想作为一个企业官网行,这是去大圣传媒帮我制定一个开发方案。好,这是一个简单的提示词,他正在搜索让你选择用什么方案去构建, 说不定他执行的比 cloud 的 扣的好啊,也许感受一下,这是 cloud 扣的同样的提示词。 ok, 他 这边也是有一个。嗯,然后我就按照第一个,这一步是很重要的,因为要明确用户需求,他可以很简单,我操作没问题。嗯, 吹出来了,牛逼了,预览的效果。哇,这个,这个官网可以的啊,这一点才玩完成啊, 这也可以啊,有一说一也可以啊,到位的,相当简单的。对的啊,你看,对,选择了红与黑的配色, ok, 还有包括这个动效也不错,开发的过程就很简洁,也没也没有什么主动行为。下面就看看克拉斯了, 它, cloud, 它现在还在执行,它现在已经开发完成了,但是它现在在生成一个开发的清单,就是告诉你已经完成了哪些东西。 ok, 这是 cloud, 这是 cloud 生成的,它这个里面有有动态的效果,加载的时候,嗯,加载的时候它会有一个动态的效果,就没有跳,没有跳转的呗,也是它这个是,就是这样子的。嗯, 越南好。那个 cloud code 主动询问,我觉得挺关键的。 cloud code 它有个特点,就是做完之后它会写一个最终的项目说明文档,是便于后面开发维护,后面调整的时候比较方便,工作做的挺细致。这两个如果是两个员工,你更喜欢哪个?那肯定 cloud, 那 cloud, 你 他做的所有的事情你都知道吗?环节,什么?细节做到哪一步,对吧?

你是不是用 cloud 写代码的时候新开个对话,之前定的架构全忘 get, 提交记录全是改 bug 更新那种没用的内容? ai 做代码评审只会说你写得好。 今天这十一款热门 cloud 插件,我全实测过,三款 b 装,直接让你开发,效率翻一倍,看完就能直接用,少走半年弯路。看之前记得点赞加关注,咱们马上开始。 首先说三款闭眼入的高性价比插件,日常开发天天能用。第一款是 commit helper, 你 肯定遇到过翻半年前的提交记录,全是眉头眉尾的模糊描述,想找之前改动的逻辑根本找不到的情况吧。这个轻量插件会自动分析你代码的改动内容,生成待改动原因的规范。提交信息 不是记流水账,每次提交能省三十秒,一天提交十次就省五分钟,一年下来能省出几十个小时的摸鱼时间,几乎没有缺点,装了就不会卸。第二款必装的是 code review 插件,之前让 ai 帮忙看代码,他永远只会夸你结构清晰,命名规范,顶多提两个改个空格的无关建议, 跟应付事似的。这个插件会强制 ai 从逻辑、漏洞、安全、风险、性能优化、边界情况、处理类型、安全五个维度逐一排查,每个问题还会标注严重程度,不会随便糊弄你。 我上周用它查了个用户登录模块的代码,直接揪出来个没处理空密码的边界漏洞,要是上相啊,少说要赔几万块,专业度比普通审高太多。 第三款必装的是文件规划插件,你有没有做大项目的时候,上午刚和 ai 定好架构方向,下午开个新对话,他全忘了,还要花十几分钟从头解释一遍,解释完他还不一定能还原之前的理解。 这个插件的思路特别朴素,就是在本地存三个小文件,分别记录阶段计划、调研结论、每次绘画的进度和遇到的问题。每次 ai 干活前先读一遍之前的记录,干完了自动更新内容,再也不用担心上下文丢失。目前我还没见过比这个更靠谱的几个方案。 说到这,你平时用 cloud 最头疼的问题是什么?打在评论区,咱们聊聊接下来讲几款按需选择的插件。避坑指南要记清, tapp 上有四万多星的 superpowers 插件,不是单一功能,是一整套流程规范, 会强制 ai 先把需求问清楚再生成实现计划,最后分批执行,每个阶段还有检查点,避免复杂需求。做一半才发现 ai 理解错了,特别适合多文件重构,大型项目开发。不过缺点是小需求走完整流程会有点烦,就改个按钮,颜色的话就没必要开。 还有三款官方出的插件,稳定性比第三方高很多。第一款是文档处理, pdf、 word 这些文档 不用你自己导出文本再粘贴,适合经常要处理需求文档的开发或者产品用。第二款是自定义技能插件,你用自然语言说需求, 它就能帮你生成自定义的技能文件,还会自动跑测试验证。单人用没必要,装现成的插件就够,但团队用特别值钱,可以把内部的规范业务知识打包成自定义技能。所有人的 qlab 都遵循同一套标准,协助效率会高很多。 第三款是接入内部系统的插件,是给想自己搭工具的人用的,普通开发者现成的工具已经够用,没必要自己造轮子。 然后是测试用力,生成插件,他不会随便给你生成,测试用力会先扫你项目里现有的测试文件,学你们的命名风格、断言方式、模拟数据的套路, 再按同样的风格补,测试不会给你瞎写,让你适配。不过要是你项目里根本没有测试文件,它没有参考样本,生成出来的风格可能不符合你的预期,适合已经有测试基础的项目用。还有个名字来自新普森一家的循环执行插件,它会拦截 cloud 的 退出信号, 带着上次的改动和提交记录继续跑,形成自主循环。有人用它跑了几个月,造出了完整编辑,还有黑客松团队用它一夜做了六个项目,但一定要给他设最大运行次数和明确的停止条件,不然不仅会跑偏, api 账单也会长到你心疼。适合干有清晰验收标准的批量活,比如给所有没注置的函数加注置这种。你有没有过让 ai 做任务跑偏到离谱的经历?评论区分享一下。 最后说一个很多人不知道的隐藏神迹,就是 cloud 自带的批量处理功能。不用装插件,它可以把你说的任务拆成独立的小单元并行跑, 还能自动创建提交请求,特别适合批量改造的场景。比如几十个接口响应格式统一,就依赖批量升级这种,我上周升级三十个接口的响应格式,十分钟就跑完了,以前手动要干半天。 最后给大家理清楚,优先级先装 commit hypercode review、 文件规划这三款解决最高频的痛点,性价比最高。 superpowers, 复杂项目再开批量功能,直接用 剩下的插件,有明确需求再研究就行。下一期我会教大家怎么自定义开发自己的 cloud 插件,把你们团队的业务规范直接塞进去。今天的内容就分享到这里了,如果你觉得有收获的话,记得点赞加关注哦!

今天的话我们来详细讲解 cloud code 它底层的源代码,然后这节课的话,我们会通过详细的讲解 cloud code 它源代码是怎么被开发出来的,普通人怎么样去二次开发 cloud code, 以及 cloud code 所有的底层技术原理是怎么样规划开发出来的,那么以及教会大家用 ai 编程怎么样去一步一步开发出自己想要的 cloud code, 或者是呃基于这个 cloud 去做其他的一些事情。 那么我们继续讲解 aspapi 在 二零二六年发布的这一个重点的这一个报告,就是人工智能辅助如何影响编程的技能这些, 那么这里的话就是存在一个效率的这个微局。首先的话就是我们会发现, 那么在推进这个企业或者一人公司 ai 转型或者 ai 诞生的时候,很多高管和 hr 部门陷入了一种狂热,只要给所有的员工配备好这个 ai 的 助手,公司的效率就一定能够瞬间翻倍,人力的成本也能够大幅度削减削减。而但是这一个 asp 它 做了大量的这个研究发现,比如基于这个软件工程师进行深度的研究之后,发现接受了一个致命的权衡,就是过度的依赖会 摧毁你公司的未来的这个人才梯队。那么这里的话其实重点就是说这是一个非常具有前瞻性的这个研究,就是精准的如何转化成我们内部使用 ai, ai 的 培训工具的裁买人才架构的这个建立这些首先的话就是 我们从低信原理来来看待的话,就是说要区分这个产能释放和技能降级,那么传统的妙物就是认为 ai 帮员工把代码写了报告出了,这就是绝对的好事情。 但其实的话, srb 官方他的这个数据就是在测试这个掌握度和使用这个 ai 辅助的级别,他的得分比纯手写低 这一个组低了百分之十七,然后相当于就是成绩的这个下降低了整整两个等级。最可怕的话就是这一个调调试的这个 bug 环节,由于员工没有亲身经历这个卡壳和试错,所以他们识别和诊断代码的错误能力大幅度下降。 那么在这里的解法就是要建立这一个 ai 使用白名单和黑名单。企业必须要明白, ai 可以 极大地加加速这个成熟的技能员工以及能够懂得领域的这个生产力,但极有可能会阻碍这个新技能的习得。 落地的这一个动作就是对于资深的架构师,鼓励他们用 cloud code 自动化的去执行这个繁琐的日常工作。但对于这个新入职的管理培训生和这一个 初级的这个研发人员,必须要限制其在特定的核心模块使用 ai 直接生成最终的代码,强制要求他们用原生的方式去理解底层的逻辑,就算要做的话,也是他们配合 ai 一 步一步自己要进行实操和操作。 其次的话就是这一个企业的实战落地,打造高分的这一个 ai 交互模式。如果不能够阻止员工使用 ai, 那 么企业必须要教导这个员工如何正确的与 ai 进行互动。 报告通过这个录屏分析,找出了这一个高分和这个低分的两级交互模式,这也是企业的 ai 员工培训手册最佳的蓝本,那么我们要坚决地抵制这个低分的模式, 严禁在企业内部的蔓延,比如说 ai 的 这个伪派,直接把这个需求扔给 ai, ai 生成什么代码就用什么代码,完全不看这是生产石山的这个代码和未来灾难的这一个源泉。 第二部分的话就是这一个迭代, ai 调试出了报错,不是自己去想为什么,而是直接 a log, 把这个 a log 复制给这个 ai 求解决,这会导致员工彻底的丧失排障的这个能力。 那么我们要做的一件事情就是在我们企业的内部要去做好,就是相关的这一个培训,要培训全员推广高得分的模式。在培训过程中我们要必须要强制要求我们员工采取三种模式。第一个的话就是概念的探求,遇到不懂的库技术,或者是 哪怕是一些词汇,不要问这个 ai 怎么写代码,而是问 ai 这个库的核心原理是什么, 靠自己去提升的理解去完成任务,这是速度和得分都最高的一个最佳模式,就是你要懂知其然,并且要知其所以然,你不要让他直接基于这个库去写代码,而是让你自己先懂这一个 库的核心的原理。第二点的话就是生成后理解,要允许 ai 生成代码,在复制到这个项目之前,必须要向 ai 追加提问,请给我解释这段代码用到了某某模式。 第三点的话就是混合代码的解释,那么在最初的这个 prompt 里面就写死这个规矩,给我生成代码,并且在代码下方逐行的解释,你为什么要这样这么设计? 那么组织架构的这个重塑就是要防范这个开门人的危机。报告里面其实提出了一个极其敏感的这个宏观问题,就是如果代码越来越自动化,人类最终的这个角色就会变成这个监督者。 但是如果这一个初级的工程师因为过度的依赖 ai 而没有积累扎实的底层的技能,未来谁来监督那些在极高风险环境下面运行的由 ai 写的这个百万的行的这个代码? 企业落地的这一个职责的话,其实就是要做好这一个, 比如说采用这种设计反脆弱性的这个人才培培训体系,开启这一个学习模式,强制这一个企业版的 ai 工具在内部培训或者试用期员工的这个机器上,然后开启这个学习模式和解释模式。 对,这个很重要,就是你要企业版的这个 ai 工具,你要设置好学习模式和这个解释模式,系统会拒绝直接给出标准答案,而是像苏格拉底式的一样的去引导员工自己去进行推理 推导,那么刻意的制造这个困难。在内部的这个晋升考核里面必须要引入这个断网断 ai 纯手工提 bug 环节,确保那些即将负责审核 ai 的 代码的高级的人员 依然能够保持敏捷的这个代码直觉和这个调试能力。这里的这个互动演示,就是比如说我们企业的这个人才技能培养和 ai 短期的这个沙盘,那么我们的 hr 负责人和技术总监要证明我为什么我们不能放任 ai 当员工的拐杖,而是要把 ai 当做健身的器材,这就是我们可以用这个定制沙沙盘。第一个的话就是 ai 的 拐杖效应的话, 我们会发现就是如果 ai 只当拐杖的话,那么它会处在一个智力降级的风险中,整个企业都会处在一个智力降级,员工会呢,虽然会在短期内复制 ai 的 代码提升这个速度, 但是它最底层的逻辑一窍不通,一旦进入到这个线上排障的环节阶段的话,那么团队将会面临彻底的瘫痪,交付的速度和 debug 存活率以及核心的技能掌握度以及系统的风险都会非常的高。第二点的话就是这一个, 这一个当导师当,如果 ai 当做导师的话,那么虽然前期的这个交付会存在这个认知磨合期,但是员工会在这一个通过 ai 导师 构建真正的这个底层的模型。长期来看的话,这种快慢就是快的这一个策略确保了这个技术底座的极端的稳健。那么苏格拉底士的这个提问帮助这一个工程师和员工进行深度的这个学习, 那么它的交付速度也有保障,然后 debug 这个存活率也有保证,同时它的核心技能掌控率也比较高,系统风险是受控的。 那日常开发的这个阶段的话,当拐杖的时候它会也有,比如说它的这个交付速度的确非常快,但是 debug 存活率可能会比较低,同时的话,它的这个核心技能掌握的话,以及这个系统风险的话,它其实会 降低我们用户的这个认知和他努力的程度。那么基于这份报告的话,其实我们重点想告诉的就是,我们要 保证就是这个企业他的这个认知努力和陷陷入困境,以及这一个对于培养精通的这个能力可能会更为重要。在帮助我们企业进行 ai 转型的时候,我们必须要向决策者传递一个核心的观点,就是真正的 ai 转型不是消灭一切工作中的痛苦和摩擦, 相反的话是为了保持组织的韧性,我们甚至需要刻意的去设计一些困难的环节,不要让这一个 ai 剥夺了人类思考的权力,利用这一个 ai 加速常规的事物, 把这一个需要深度思考的,需要磨练团队的核心竞争力的这些硬骨头留给人类,这才是让人类在这一个智能革命中永不掉队的这一个终极的策略。

用 cloud code 搭建的一套营销系统,一周变现四十五万美元,但是呢,他说构建这个工具呢,只占百分之二十,会造东西,但不会卖东西。这可能是二零二六年独立开发者超级个体们最普遍的问题和困境。那比如说,你 web coding 的 一个产品上线了,然后没有人来, 没有用户,没有收入,什么都没有。如果呢,你经历过这种精心构建,然后呢,石沉大海的感觉?恭喜你啊,你不是一个人。最近呢,我看了硅谷创投播客请到了 johnson 的 一期节目,这哥们呢,是连续创业者,虽然说名气不大,但他旗下呢,多个业务啊,营收到了七位数到八位数美元, 它有非常落地和实操的业务经验和创业的经验。访谈里面呢,重点聊了一个很多技术的人呢,不愿意面对的一个问题就是,你以为你的工作是构建产品,实际上你的工作应该是推广产品。那我看到这句话呢,直接脑子炸了,因为现在国内外,不管是不是 ai 圈的人,都在谈 build, 都在谈产品,大家几乎都是以成为 builder 为荣的。而 ai 圈基本上没有几个人在谈推广,甚至很多情况下呢,觉得这个推广不如构建来的高大上。而这个访谈里面呢, justin 呢,不仅讲了底层逻辑,还打开 cloud code, 现场演示了他怎么用 ai 搭建一整套营销流程的。 我连夜呢刷到这个视频啊,感觉狠狠的长脑子了。然后马上呢,把这个访谈里面最反直觉的内容全部提炼出来,下面 呢,是精华的内容,视频末尾呢,你也可以获取访谈竹子稿中文完整版。第一点,你可能正在给自己建一个精致的拖延战。 johnson 呢,一开场就说了一句话,超现实的一句话,就这些 ai 工具,如果用错了,就是你给自己搭建的 拖延机器。这句话呢,来源于他观察到的一个现象,就是很多 ceo, 他的朋友啊,花了好几天甚至几个星期,用 ai 搭建的各种自动化系统,各种酷炫的工作流。然后呢,他问了一个问题, 你现在赚到更多钱了吗?答案呢,通常是沉默的。他用了一个餐厅的比喻啊,就是你花了一整年,把厨房的每台机器哎,都给自动化了,实物完美,系统丝滑,预定流程的顺畅。但是呢,你从来没有告诉过任何人这家餐厅的存在,这家餐厅,那显然会死的很快。 这个比喻呢,刺痛了很多人,因为他精准的描述了大量 web coding 的 这种现状,沉迷于构建的快感,规避推广的不适感。第二点啊, ceo 真正的工作应该是一个推广者。 johnson 呢,很坦诚的指出了一个被严重忽视的事实,就是你叫得出名字的每一个成功的创始人,至少百分之五十的时间,他是在推广自己的业务的。这句话戳破了很多粉饰的真相啊,就是很多创始人其实都是以产品经理自居的。 但实际上呢, ioseco 在 达沃斯接受澎湃采访,他不是为了公益,是在给客户做预售,特别是企业客户 fatternevers 的 x 账号置顶贴就是它产品的长篇推广文章,而且它还晒了发帖后的销售销量的增长。 sam 奥特曼几乎每周都在某个播客或者会议上去露脸,这些人他不是顺便在推广,而是推广就是他们的核心工作。但是呢,微妙之处在于, 他们呢,又不太愿意承认这一点,似乎这会有损即刻的这种形象啊。但是那个乔乐森说呢,如果你不愿意做推广,那就找一个愿意做的联合创始人,公司里面必须有人承担这个角色,否则是不会成功的。这是他做了十四年生意,经营多个七位数到八位数业务之后的经验的血泪的总结。 第三点啊,推广者蓝图,一个四步赚钱的循环。这是整期访谈里面最核心的框架, jealous 呢,把它叫做 promoter, bloom sprint, 它用这套逻辑经营所有的业务。第一步呢,获取流量 traffic, 就 两种方式啊,免费的或者付费的, 那免费的就是上别人的播课,然后设媒,发帖,参加活动,制作内容等等这些。那付费的呢,就是比如说 meta, tiktok, youtube, 它们的这种广告,关键点在于说流量呢,你不要直接导向你的产品, 一上来就说买我的东西,我听到这里呢,其实很疑惑起来,那你不直接导向产品,那干啥呢啊?往下看。第二部呢,是蓄水池,把流量引入一个你能够持续触达的地方,比如说国外,就是这个邮件的订阅列表,播客 youtube 频道 x 的 账号,这是你能持续提供价值,建立信任的地方,你的日常内容周跟内容都是在这里发生的。第三步呢,销售事件,这是大多数人缺失的环节,你有了关注者,你有了订阅者,然后呢,你需要一个明 的推动,把人从蓄水池呢推向购买。这就包括在线内容,要展示你的产品呢,是如何使用的,让人亲眼看到价值。第二个呢,邮件列表有三到四封精心设计的邮件引导购买。还有呢,投放广告,用已有的邮件列表创建 facebook 相似受众精准投 放以及主动触达。如果看到微软邮箱的订阅者,就直接联系看看呢,有没有企业合作机会。那国外呢?邮件营销是比较普遍的,国内的话就是换成地球号来理解。 第四步,循环。经过了上述三步呢,没有转化的人,他回到蓄水池要等待下一次的销售事件。 jackson 呢,说他已经能算出这个循环的数学了。多五千个邮件的订阅者呢,就会多两百人参加线上的活动。那么多的这两百人参加活动的就会多十二个个人购买 这个 logo 啊,它一旦运转起来呢,就是可以预测的。第四步, ai 在 这套系统里面的真正角色。注意啊,相比于那些硬核的 webcoder 呢, jaredson 说他只用了大概百分之二十的时间,因为他把剩下百分之八十的时间呢全部花在推广上了。 ai 是 服务于推广的工具, 而不是目的本身,这是他说的很重要的一句话。而且他现场演示了他的营销文案的机器。他有一个专门的 cloud 项目呢,用于营销,里面放了他写过的书,以及一份 一万七千七百六十六行的文档,这个文档里面收集了所有的好的别人的这种营销邮件,让 cloud 提取出核心的策略,然后它还有一个详细的 cloud 点 m d 的 指令文件,每次需要新的邮件营销活动,它直接在这个项目里面开始。它在访谈录制现场呢,演示了这一套方法,就是 他录完播课之后,把上下文就喂给了 cloud, 然后呢,让他生成营销的方案。 cloud 马上给出了三个选项,第一个, promoter blueprint, 就是 一页纸的 pdf, 四步框架的精华版。第二个,五十个 ceo 推广 prompt 合集,可以直接拿去用的 ai 提示词。 三个呢,就是审计自评表,帮你判断一下自己是不是在见而不推。然后呢,它会让 cloud 呢给出内容,再用 cloud code 做出活动的落地页。第五点,四十五万美元的 webinars 是 怎么搭出来的?在这次访谈里面呢, johnson 呢,还透露了一个他 正在进行的活动,预计呢,本周产生四十五万美元的收入,因为已经有四千人报名了。他的做法呢,是这样的,用 cloud code 进行项目训练,一个 webinar 设计助手贯入他最喜欢的结构。第二呢,使用 cloud code 的 ask user question 这个模式,让 ai 花三十分钟拷问他关于这个活动的主题,受众痛点 以及解决方案。通过这个过程产出的内容,内容质量呢,比他自己坐在那里想要高得多。这其实呢,跟大家说让 ai 先 先分析再干活是类似的意思。原访谈里面说的是 ask user question 这个模式,千万你别认为这个是 cloud code 的 这个 ask 模式,我仔细查了一下相关的这个解释资料,其实这个是 cloud code 的 plan 模式。那第六点,两个反直觉的建议。第一个,不要追求效率,要追求规模。 java 省说呢,现在不是用 ai 审人的时候, 而是用 ai 做更多的事情的时候。如果你已经有了一个小团队留着他们,现在呢,你的小团队相当于三倍大小,你可以一个月做五个营销活动,而不是以前的一个可以做更多版本的 facebook 广告,而不是六周才更新 一次。这其实跟国内很多老板现在的看法是不一样的,国内很多老板大部分在公司内部,用上 ai 之后,他第一时间想的事情是什么?是 裁员。老板们呢,其实可以从进攻的角度来想一下,就是团队,我规模不变,但是业务规模要求翻倍。第二个呢,就是不要过度准备,直接开干。他自己用 cloud code 的 方式就是不做 测试项目,直接上真实的项目。第一次遇到上下文窗口溢出,压缩后信息丢失,然后呢,他就学到了要分小块来做。他还提到呢,他的合伙人花了三天用 ai 搭了一个提案生成器,然后问 cloud 呢,给了一个开箱即用的方案。这个小事呢,得到了教训,就是不 是所有东西都需要丛林构建的。先问问有没有现成的,我们娇乐斯呢?在访谈最后说,如果你能接受自己作为一个 ceo 的 角色,是一个推广者,不要为此感到尴尬,这就是 ceo 的 工作,这一点我其实很欣赏他的 坦诚。如前面所述呢,大部分创始人其实更希望自己看起来是个产品经理啊, builder 啊,或者是即刻啊,这样的显得更高大上。那回到我们开头的问题, 你 webcoding 的 一个产品上线了,然后呢,没有人来看了这个视频呢,你就应该知道啊,问题大概率不是你的产品呢不够好,不是你的 ai 工具呢不够强,不是你的自动化不够 精细,而恰恰是因为你没有在推广这事呢,似乎如此显然,但是呢,就像这个房间里面被忽视的大象一样。而现在呢, ai 让推广这件事情的门槛低的一个数量级,一个人就可以做出以前需要一个营销团队 能产出的内容量,但前提是你得把 ai 用在推广上,而不是用在给自己搭建更精致的拓延站上。现在呢,你就可以算一下你花在构建和推广上的时间比例是多少。我想这其实已经注定了结局。

今天给大家介绍一下 cloud code 里面原生自带的两种多 agent 协同的两种方式啊,一个叫 sub agent, 一个叫 agent team, 然后我也会说明为什么这两种方式在某些业务场景下,它没有办法解决多 agent 的 协同的问题。然后啊,为此我自己做了一套 agent 的 写作流程, 能够很好的解决这两个问题。对,首先首先介绍一下啊, cloud code 自带的两种 agent 写作的方式吧。第一种叫做 sub agent 的 词代理, 子代理,就是当你跟 agent, 当你跟 cloud code 会对话的时候,这个主会话,他在完成你的任务的过程中,可以去派发一个子代理帮他去啊,完成他这个任务里面比较边缘的那一部分事项 啊,然后子代理把这个事项完成之后,得到一个执行的结果和招标,把这个招标返回一个主代理,主代理拿到这个招标之后,就可以把他的工作重心聚焦在你给他的这个任务里面比较核心的那个部分,这就是子代理的实现方式。 那他的启动方式也很简单,就是你直接在绘画里面在跟主代理对话的过程中显示的声明,像这样的声明说 啊,帮我启动一个或者多个子代理,或者具体多少个帮我去做一件什么样的事情,然后它就会自动地去启动子代理,帮帮他去做了啊。然后第二个 cloud code 的 原生自带的就是 agent team, agent team 呢,其实就是你在绘画中也是在跟主代理的这个绘画的过程中显示的声明说你想要拉起一个 agent team, 然后去帮你做一件什么样的事情,解决一个什么问题。比如说你要做一个网站,那这是一个比较大的需求, 你可以让他拉起一个 agent team, 这个 team 里面你去定义成员,有产品经理,有程序员,有 u i 设计师,有测试啊,这几个角色,他们分别的角色定义他们的职责,他们的工作流程, 然后让 cloud code 去组织他们帮你把这个网页做出来。啊,那这两个模式他有什么问题呢?或者说他有什么缺点呢? 啊?我觉得在业务实现上是有两个比较大的痛点的。第一个就是不管是 sub agent 的 子代理还是 agent team 里面的这个成员代理,他都没有办法,他们的绘画都是无法回溯的, 这就意味着你没有办法去看到他们的推理过程和他们的思考过程,你只能看到他们的一个结果,那当你对这个结果不满意的时候,你很难去 通过绘画,通过 session, 通过这个 agent 的 他的一个思考过程来判断到底是哪里有什么问题,怎么去优化它,我觉得这是在业务上是一个比较大的问题。然后第二个问题就是 不管是 sub agent 还是 agent team, 他 设计的初衷都是为了去解决一个任务,这个任务就是你在主绘画里面给 cloud code 抛出的那个任务,或者让他要解决的那个问题 啊。但是在很多业务场景下啊,我们更多需要的是一个重复性的去执行一个任务的能力, 那比如说我今天要,今天要玩,今天要做这件事情,明天也要做,那这种事情其实就不适合 sub agent 的, 或者 agent team 去合作去去完成。 那为了解决解决这两个问题,我自己设计的这套多 agent 的 协同的方案,我觉得是能够比较好的解决这两个问题的。首先就是你我们可以在这个 agent 里面去定义你需要的这个 agent 的 的角色, 他的身份,他的定义,他的工作流程啊,甚至是说他的 skill 有 哪些。 然后第一个问题怎么解决呢?就是你直接进入到这个 agent 的 文件里面,然后去启动 cloud, 那 你你其实就等于在一个新的绘画里面启动了这个 agent, 那 这个 agent 你 让他做任务的过程,他的思考过程,他的推理过程, 都是通过可以通过 cloud resume 的 方式去啊回溯的。对,那那这样的话你就可以知道 你的他的任务执行过程中有遇到什么问题,那你可以直接的在绘画里面让他去解决,比如说优化他的 skill, 优化他的工作流,优化他的身份设定,优化你的 prompt 等等 啊,来来达到来让这个 agent 的 这个执行的交付质量是更好的,符合你的业务预期的。 然后关于第二个问题,就是当我们的这个工作流程,工作流打磨的比较好了的时候,每个每个 agent 它的输出质量都已经不错了的时候,那你就可以直接通过定时任务的方式 啊,进入这些文件夹,然后驱动这些 a 帧的工作,这样的话你的整个工作流程,整个流水线就是可以一直重复的去产出结果的。 对,这样的话就解决了第二个问题就是啊原啊 cloud code 的 原声自带的两种多 a 帧的写作方式,它 都是为一次性的任务去服务的,那这样的架构其实就可以啊,不停的去驱动每每一个代理为你工作,然后不断的去重复性的产出 结果,并且这些结果因为你已经打磨好了他们的工作流程,他们的 skill, 那 他们产出的结果大概率也是符合你的业务预期的,这样的话就是他的工作结果既是好的,并且他又可以不断的重复的为你工作。

cloud code 架构解读,这个其实会稍微有一点点的这个小小的这个难度啊,但是我们会尽量的在今天晚上这个讲解过程当中呢,把这个难度降一下来进行一个讲解的介绍啊。因为 cloud code 它作为目前可以说全球最顶尖的 agent 架构,它底层的原理其实非常非常复杂,内部的这个架构呢,也非常非常复杂, 对吧?源码出来之后总共又是五十一万行啊,这样的一个很大的这个项目,虽然里面其实会有一些这个技术债在里边啊,但是其实不是很多 啊,整个源码的这个结构还是非常的这个紧凑,然后效率也是非常高的啊,所以我们才有说围绕他这个内容来进行解读的这个必要。我们今天晚上在课间里边有一个百度网盘,网盘里面就包括包含完整的 cloud code 这个项目的这个源码啊,然后呢我是给大家准备了两个 啊,一个叫 beautiful 杠 folk 的 一个原码,还有个 collection, 这两个原码像这个 beautiful folk 啊,直接打包运行,就可以直接去在本地运行一个 cloud code 啊这样的一整套原码。然后这个 collection 呢,实际上是一些更加零散的啊,一些这个原码,下面有非常非常完整的这个原码参考说明哈。大家这个领取原码之后呢,可以自己去看一下啊,这个呢是 它的这个完整这个原码,但是呢它因为它这个原码有五十一万行啊,所以呢,如果你想呃自己从头去进行这个开发啊,或者是自己来进行打包的话啊,也可以试着来进行一些这个运行啊,当然我们说如果你只是去用 clock code 的 话,那么拿它的原码或许没太大用啊,但如果你是想 去参考 clock code 的 这样的架构,然后来进行二次开发啊,那这个原码可能就很有用了。对于 clock code 来说,它总共是五十一万多行的这个代码,其实它的这个项目体量呃是非常大的一个这个项目哈, 那么在五十一万多代码里边,我相信可能很多同学就会比较感兴趣啊,那他什么这个代码会比较多呢?对不对啊?那个是不是调用模型代码会比较多呢?啊?构建一个 a 政策让他能够顺利调用工具代码比较多呢?还是用于去构建上下文的啊?这个代码比较多呢?还是要内置工具的 使用代码会比较多呢?还是他的这个内部的 skype 代码会比较多呢?那么同学其实会有这方面的这样的这个想法,但实际上啊,我们如果去看 clock 它完整的这个代码体系的话,那么你会发现它里边啊,只有不到百分之五的这个代码 是用于去给你构建一个完整的这样的一个 agent 啊,就是啊,大模型啊,这个调用某些工具啊,然后呢给它写成是一个 look, 对 不对?对不对啊?这个 agent 运行时嘛,一个这个循环,它会不断地调用这工具来完成对应的这样的一个这个工作,它里边啊,总共是只有不到百分之五代码是去写这些东西的, 剩下所有的这个代码,其实基本上全部都是 harness engineering 啊,就是我们呃上一场公开课讨论的这个内容啊,所谓这 harness engineering 要指的是它这里面基本上很多很多代码都是为了 如何让一个 agent 更加稳定,长期稳定啊,这个并且能够非常好的理解用户意图来进行一个这个运行好的,但这个其实对于现在我们在进行 agent 开发的很多同学啊,甚至是对于比如说啊,像 long chain agent school 啊,这些 agent 的 开发框架来说,都有非常好的这个借鉴意义啊,因为其实啊, 现就是呃大模型技术发展到现在,你会发现让一个模型会调用工具啊,会多用调部工,呃,会多部调用工具对不对?会一边思考一边调用工具等等等等啊,这个事情其实已经不是什么特别难的这个事情了啊, 包括现在大魔仙本身上下纹也很长啊,然后呢,工具识别能力也很强啊,在这样的情况下呢,你要去定义一个 agent 的 loop 啊,一个运行的这个循环啊,其实非常简单,你让它调用各式各样的工具,其实它也都也能够也都能够来进行很好的调用,但是呢,难就难在 很多复杂的工作,你怎么让 agent 去做呢啊?很多需要长时间啊,来进行运行的这个事务怎么样让 agent 去完成呢?很多需要非常非常长的上下文,长期持续专注去解决某些问题啊,怎么去交给 agent 来进行运行呢?这个其实才是现在我们在去使用 agent 的 一个非常大的一个难题。 那所以哈,我们前段时间公开课讲的 harness engineering 啊,这个驾驭工程啊,就指的是,哎,我们现在呢是要需要给当前的 agent 更好的一些 约束对不对啊?约束好了之后,他才能够长期稳定的去完成某一些这个工作,这其实是一个架构的这个理念。而在 cloud code 他 这次泄露的这个原码里边,我们就能够非常好的看出啊,他的这个驾驭工程是怎么做的啊?所以啊,我们 这次的 cloud code 这个原码的个泄露啊,也有很多技术人觉得说啊,这就是一个非常好的一次这个驾驭工程的落地实践的这样的样板啊,值得好好学习。 我们都知道在 a 证的运行的过程当中,其实需要他如果需要长期运行的话,会有很多很多很多问题的啊,比如说什么上下文越来越大, a 证的越迟钝,然后关掉就失忆啊,然后这个重开的 之之前的这个所有的这个记忆全全部都没有了啊,然后呢,比如说他的安全性的这个问题,对不对?然后比如说他的在伴随着运行的过程当中啊,他的这个实际的运行成本是限性增长啊,并且呢他其实会有个海量的啊,这个知识方面的这个商增啊,非常迅速的这个知识方面商增的这样的过程啊, 那么这些结都是会去影响一个 agent 的 长期稳定来进行运行的这样的一些这个不利的影响因素啊,那么其实从 code 完整的架构里面我们就能看得出来,哎,他呢是怎么去考虑解决的啊?解决这个问题,那么其中呢,既有一些 我们现在通用的啊,知道的一些这个解法的代码层面上的实现啊,同时呢他也会有一些啊,这个我们可能之前不太了解啊,甚至都没有听到过的 一些这个方法啊,来进行这个实现,等等等等啊,那么我们接下来在接下来的课程里面都会来进行一个这个介绍,那么这部分工作之所以会非常有价值的一个原因啊,其实也是因为大冒险本身啊,他的这个模型或者这个算法 导致的他本身运行的这个不确定性。那么我们在使用大模型的时候啊,其实经常啊,大家会觉得说啊,我们运行一个同一个任务,运行多次,他的结果不一样,我们在使用大模型的时候,很多时候都是在类似于像绝经的这样的过程,哎,他这次运行效果好了, 说不定啊,我们就有很大的这个用处,那这次运行效果不好,我们可能很可能很多时候甚至希望他多运行几遍,那至于这样的场景,我们当然是希望大冒险每次运行都能够长期稳定的,对不对啊?运行的这个很好啊,所以这才是所谓的这个驾驭工程的这样的一个啊,他的核心的这个出发点啊,跟现在这套技术最有价值的这个地方啊, 当然如果类比,比如说现在很多的一些这个啊,视频啊, ai 生成的这个视频的这个领域,它现在不仅仅是说啊,在在在什么这个提示方面会有些优化啊,甚至还出现了类似于这个抽卡这样的个流程啊,就同一个 场景啊,同一段故事啊,他可能会生成很多遍啊,然后你去找那些生成效果最好的那样的一些这个内容啊。当然我们想,如果你可以通过驾驭工程啊,假设类似这样的场景能够让当前这个 a 阵子长期稳定的去生产对应的这个结果的话,那么其实这个过程中间你要省去的成本或者提高效率就非常的可观了。 所以这就是我们接下来啊,需要去看现在的 cloud code, 它的这整个架构,或者我们通过今天晚上这样的一个学习啊,最后能够收获到的啊,最可贵的这样的这个知识和内容。哈哈,好,那么接下来我们就来看看啊,现在的这 cloud code 的 整个的这个架构啊,长什么样啊?以及呢,我们怎么样去啊,它,它是怎么样 很好的去引导当前这个 agent 长期稳定高效的就产出基金的这个内容的,对不对啊? ok, 好, 那么首先哈,我们会先,我们会先从一个 很简单的一个这个代码,呃,一个这个 demo 入手啊,跟大家来进行一个讲解的介绍啊,这也是考虑到我咱们今天晚上可能有一些呃,之前零基础的这个同学啊来听课, 那证明我们学上是借助了一个项目啊,叫 learn cloud code 啊,这个项目啊,这个项目其实是一个大家如果想要去深入学习 cloud code 的 每一个技术细节的话,一个非常不错的一个,呃,之前是一个逆向 去拆解 clock code 的 一个这个项目啊,然后现在呢, clock code 的 原码卸灭了之后呢,这个项目也火了啊,因为他很多之前对 clock code 的 一些这个猜想是对的啊,呃,大概猜对了三四层吧,啊哈哈,剩下的都都 不太对啊。然后呢,在这个项目里边其实有很多的一些围绕 cloud code 的 一些基本的底层功能的一些 demo 级的这样的实现啊,所以呢,我们接下来呢,在进行运行的时候呢,也会采用啊这个项目里边的一些这个代码给大家来进行演示啊,就是出于一个教学或者零基础理解这样的场景下,哎,我们看看 agent 是 怎么运行的,它会有什么样的问题,以及如何来进行解决 好,那么首先哈,我们需要知道当代 agent 在 进行运行的时候,其实它的这个呃整体的这个运行逻辑或者核心股价其实非常非常简单啊,就是一个呃能调用工具的这个大模型啊,加上这个 c m d 命令行工具啊,基本上就构成了我们现在看能看到的所有的 agent 最核心的这个股价。 那么所谓的这个 cmd 命令行这工具哈,它呢,实际上啊,就是一个这个 tour, 对 不对啊?这就是一个工具啊,然后呢,这个工具呢,它可以操作你当前的环境这个命令行,然后你只需要给它输入命令,然后它就可以自动来进行执行,你可以这么来进行理解就可以了。那这个工具之所以会成为当代 a 阵的最为核心的这工具, 大家想一想嘛,啊,你用这个 openclo 是 不是你动不动让它什么生成个文件啊,这个整理个桌面啊,啊,做这个事,做那个事啊,阅读下自己的这个记忆啊,修改自己的记忆啊,它背后怎么来进行的,基本上都是靠 这个命令行来进行实现啊,命令行就是操作你当前这个电脑最为核心的这样的工具啊,那么呃这个呢,是第一个,那么命令行工具在上面这个项目里边啊,回大家可以自己 在我们的课程的课间里面能找到哈这样的这个项目,然后里面有这个代码啊,让大家看一下啊,命令行工具,一个典型的命令行工具定义长什么样?然后同时呢啊,关于这个核心的 agent 在 运行的过程当中,它的核心功能其实都是通过一个叫做 agent loop 的 这样的工具来啊这样的一个形式来实现的啊,稍等 大家课间放大一点。然后呢,所谓啊这个 agent loop 呢,它呢实际上就指的是我们在进行调用的时候啊,啊,在大模型的工具的这个时候啊,基本上它就是属于一个啊 循环的这样的状态啊,那么这个循环它循环的是啊,我这次在进行工具调用啊,在这个看它能不能成功啊,如果成功了的话,我们就退出这个循环啊,给用户一个答案啊,如果成功了的话,我们就退出这个循环啊,给用户一个这个循环啊, 当然我们一会去看 cloud code, 它其实也是哈,那这个它里面这个源码其实也是一个这个 loop 啊,也是一个循环这样的概念。那么现在为什么啊?这个 agent 运行的这个核心本质上就是个 loop 啊,也非常重要的原因是因为现在的大模型性能都非常强 啊,如果是早几年的这个大模型啊,比如说二四年的那个大模型啊,那个时候呢,大模型这个不说调用工具稳定不稳定吧,如果你是把它放到一个 loop 里面来进行这个循环的话,那它就完蛋了哈,因为它根本不知道自己什么时候该停下来, 但是呢,对于现在当代大冒险来说,他其实都会有个非常清楚的这样的一个认识啊,一个呢是对用户的意图更加深刻的这个把控啊,那么除此之外呢,他也有一套自己啊非常清晰的去判断,关于说,哎,我现在运行到这个什么程度,或许需要停下来啊, 这样的一个这个状态啊,所以呢,基本上核心的这个 a 阵,它都是在一个 log 里面来进行运行啊,就是不断不断不断的尝试这样用各式各样的工具啊,去完成当前用户的提出这样的问题啊,完成了之后呢,就跳出这个循环啊,或者失败了很多次之后,觉得自己没必要再试了,也可以跳出这个这样的个循环啊,否则就一直在循环里面来进行。 那么有了这个 log 啊,然后呢又有了这个命令行工具之后啊,那么接下来啊,我们说你的这个 agent 啊,就属于一个基本成型的这样的一个这个状态啊,因为它可以持续不断地调用命令行,去完成各式各样这个操作啊,当然这个其实也是 cloud code 啊,里边核心源码的这个部分啊,这里面大家如果感兴趣的话,可以在这个 呃, beautiful s r c 的 那个文件里边能够去找到它完整这个源码啊,然后呢,这部分的它的内部的 agent 运行的这个源码核心代码呢,是在这 q r 点 t s 里边啊,大家可以去看一下, 发现啊,它其实也是一个也是一个 loop, 对 吧啊,它其实就是在不断的调用当前的 cloud cloud 这样的模型,在进行一个这个循环啊,差不多是这样的一个这个情况, 所以啊,你会发现,呃,整个的啊,我们当代的 ag 的 核心呢,就是要需要构建好这样的个 loop 啊,当然我们这一期讲的会比较简单哈,真正在构建 loop 的 时候,你可能好歹得用些这个工具啊,得用些这个框架啊,然后呢辅助你更好的去完成这样的这个 loop 啊, 这里大家可以自己去试一试啊,我们上面给大家给出的这个原码啊,就是上面呃,我们这个教学视力的这个代码啊, 就 learn cloud code 啊,这里面这个代码,大家可以自己去尝试着去用用,看一看啊,感受一下啊,他现在整个的这个核心的这个路谱呢,大概长什么样啊?你现在呢,让他呃这个执行简单的任务,他就是一步啊,这样工具结束了啊,如果让他执行复杂任务,他可能会 多部啊来调用这工具啊,但总之呢,有了这个命令,行啊,有了能够啊,有了这个能够调用工具的这个大模型啊,再加上一个路谱啊,基本上我们的 agent 的 核心呢,就这么构成了啊,是这样的这个情况, 当然哈,我们去构建这样的 agent 的 这个核心啊,大家肯定会想啊,那呃,他肯定会有些不太够的地方,对不对啊?你好歹给他多整一点这个工具啊,给他搞一点这个复杂的上下文啊,等等等等, 那我们说所有的啊,其他的这个 agent 的 这个架构,基本上都是以这个为核心去进行那些功能的这个拓展,我们这也就不展开了来说了,但是大家需要知道的是一个基于 look 啊和啊基于这个命令行为核心工具的这样的 agent 的 体系,它其实会面临很多问题的啊,我们接下来主要是看它会有什么样这个问题,以及呢 cloud code 到底是如何来进行解决的? 那么他会有哪一些问题呢啊?首先第一个就是上下文会不断的增加,对不对啊?这其实是非常明显的一个这个问题啊,也是我们在实际对话过程当中迅速就会遇到的这样的这个问题啊,上下文会越来越长, 越来越长,并且呢伴随着像现在啊,我们很多比较复杂的这工具在进行调用的时候啊,他这个上下文呢,实际上是会呈现这个指数级的这个上涨这样的情况, 上下文一长啊,其实就会带来很多的非常致命的一些这个问题哈,就比如说一个呢,是模型的啊,他会有个上下文的这样的窗口啊,超过这窗口他就没法来进行运运行了,必须要去裁剪一下之前这样的记忆啊。那么第二个呢,是 伴随上下文越长啊,其实模型的注意力呢也会被稀释掉啊,这就是所谓的现在我们在去使用,比如说 color code 呀,或者是大家去用很多的一些大模型,你会发现前半段啊,运行的还很好啊,愿意去生成一些很长的这个结果。到后半段 啊,尤其是这个模型快到自己的上下文窗口的时候,他就开始疯狂的输出啊,对不对啊?也不管这个输出对不对啊,或者质量好不好啊,甚至是这个给你乱输出一通啊,总之就是会迅速在短时间内把这任务给结束掉啊,这就是所谓的当代大模型的上下文焦虑,哈哈,会存在这样的这个问题。 那么第二个就是对于每一个 a 阵在这运行的过程当中啊,他其实会存在关掉就失忆啊,重开全部知道啊,这样的这个情况啊,但是这个情况 大家都能理解,对不对啊?因为上下文没了嘛啊?但是呢,我们说在当代的 agent 的 这样运行体系里面,为什么这点会变得非常重要啊?其实是因为我们现在的很多 agent 在 运行的时候,它往往不是一个 agent, 它是很多个 agent 啊,这个时候呢,它我们在实际执行任务的时候,就需要非常合理的给不同的 agent 啊,给他来进行非常精密的上下文,这样的匹配才能够迅速的带入到自己的这个角色里面来啊,来完成运行啊。所以呢,对于现在的 agent 运行过程当中来说啊,我们说合理的给他匹配上下文也是非常重要的一个方面。 第三个就是安全方面这样的问题,对不对啊?那安全方面问题呢?呃,之前我们在讲 cloud code 啊,讲 open cloud, 其实有讲到过啊,就是由于你现在啊 这个 a 智能很厉害啊,对不对?他自个又很聪明哈,然后呢,他又有智慧啊,又可以操作命令行者工具啊,对你各种环境的一通操作哈,那么这个时候呢,呃,他这个安全问题就会变得非常重要啊,因为他一不小心把你什么关键文件给删了哈,对不对?那这个事情就很尴尬了啊,所以呢,对于现在的这个 a 智能运行来说,安全其实是一个很大的 一个这个需要考虑的一个方面。那么 agent 的 安全哈,跟传统的软件安全还不太一样啊,传统的软件安全,它其实是可以通过一系列这个测试给它测试下来的哈,就去看啊,关于啊,你在各个场景下你的所有功能是怎么样来进行运行的,一个一个来进行安全测试,测试完了之后就可以上线。 但是对于大模型来说啊,它呢是一个有智慧的工具啊,那么呃,你引导它去工作啊,那么也可能会它呢也可能会被别的一些信息给忽悠瘸了啊,这个时候呢,你就得这个想办法,对不对啊?这个用魔法,对方用魔法对抗魔法啊,才能够解决大模型的安全性的这样的问题。 我们现在说 open cloud 啊,这个很多的安全性问题,非常的这个显著,有很多隐患需要来进行修复。但实际上呢, cloud code 啊,它作为目前非常通用的这个智能体, 他的安全的这个级别是非常高的,他也是之前经历了很长一段时间安全啊,踩坑啊,甚至被竞争对手殃流啊,这样的这个情况之后啊,现在他才这个逐渐逐渐逐渐提升了啊,他的安全性,这样的这个啊,提升他的安全性的一些这个措施,那么现在啊卡扣的的安全的很多措施我们会看啊,其实还是非常精彩的。 那不管怎么样,我们说对于安全性这个问题,哎,它其实也是属于,对吧?啊,整个 agent 在 进行运行的过程当中啊,这个我们是要时刻关注的啊,就比如说这里面我们现在给大家的这个视力代码里边啊,这个不是呃,这个不是 clock code 的 这个原码哈,这是我们给大家视力代码里,比如说 一些就包含了一些非常基础的安全性啊,这样的一个解决这个问题,比如说啊不让他去使用什么 r m 杠 r f 这样的这个命令啊,还有这个什么 s u d u 啊,这个全部权限这个命令啊,还有这个杀档啊,关闭某些东西这个命令等等等等啊,会有这样的这个提示啊,等等等等。 当然啊,还有一个非常重要的一个这个问题啊,就是他其实 a 阵的运行的过程当中啊,尤其是一些长效长期这样的问题,会带来巨量的知识的,这个 商真啊哈,那么你运行的越多啊,关联的文档就越多啊,他你现在需要处理的这个局面就越就更加的这个复杂啊,他其实是会出现一个非常巨量的、非常快速的这个商真这样的状态, 这个商真这个状态哈,其实会很大程度上啊影响你未来 a 智能是否能长期稳定运行的一个这个点啊,这个其实并不是在于说我现在啊,这个每次带货量我就越多了,然后我付的钱就越多,并不是这样,而是他整个的运行的稳定性 就会遭到巨大的啊,这个呃影响啊,那么就比如说啊,我们这个 agent 的 look 对 不对?在运行的过程当中呢,你会发现啊,这个运行的运行的,运行的每一轮 talk 就 越来越多啊,当然浅层次的呢,是你的费用越来越多啊,但是这个深层次的呢,是伴随着你当前 agent 的 这个商增啊,你其实你的稳定性会受到很大的影响。好, 那这问题怎么解决呢啊?我们接下来其实哈整,如果你去纵观整个 cloud code 啊,它的这些原码,基本上它就是围绕着这 四个问题啊来进行的这个展开啊。我们其实今天晚上的公开课并不会啊,直接去贴一个啊,比如说 clock code 完整的啊,这个什么几十个这个,呃,几十个不同的核心的这个主类啊,还有上百个啊,这个子类它的功能对比的这个表啊,这个其实意义不大啊,我们更多的希望大家能够通 过我们接下来这个解读啊,能够看得出来这个 clock code 是 怎么样啊,去实现这个 harness engineering 的 啊,以及呢我们现在这个 clock code 到底是啊作用于它的核心架构,对我们开发人员来说,它到底是能够解决哪些问题? 那么接下来啊,这个原码这个层面,其实就,呃基本上啊整个扣的这个原码层面都是围绕的我们刚才所说的这四个方面啊来展开的啊。当然大家如果想去看他完整这个原码的话,那么其实呃上面有原码,上面完整这个原码大家可以自己去拿,自己荡下来之后去可以去看一下啊,那么总之呢,现在他总共呢是 五十一万多行的这个代码里代码文件啊,然后总共呢是一千九百多个这个,呃五十一万行的代码啊,主要是 t s 的 这个代码,然后呢差不多是一千九百多个这个代码的这个文件,那么它总共的各式各样的分类呢?差不多是这样的这个情况啊,与它 模型 api 交互的核心代码,差不多是八千行啊,然后呢?这 curry engine 啊,推理引擎啊,差不多是这个 四万六千行啊,然后呢?工具系统啊,还有四十多个工具这个模块啊,差不多三万行代码啊,然后呢?什么这个终端 ui 渲染啊,差不多是两万五千行,剩下的这所有的哈,尤其是这个什么工程基础设施啊,总共有三十六万行代码,剩下这些所有的基本上都是为了啊,让当前这个 agent 给它约束,好 让它更好的去呃,这围绕长期这个问题来进行解决啊,所以呢,你会发现对不对啊?差不多这个百分之九十八啊,都是这个 harness engineering 啊里面相关的这个内容啊,这个呢,就是它完整的项目的这个代码,大家可以自己当下来去看一下,然后下面呢也有关于它的这个代码的 一个基本的这个分布物啊。好,那不管怎么样,我们接下来就来看看到底是怎么去解决这样的一些这个问题的啊,就是怎么去借助这个 harness engineering 这个架构呢,去解决它现在的这个啊,现在 a 证的长期稳定运行的这样的一些这个问题的 啊。当然其实讨论到这 harness engineering 这个的话,其实我们之前是呃有单独讲到过哈,这个 harness engineering 的 这个内容 哎,稍等,我们这个图它裂了啊,我们其实之前有一期公开课专门是讲到过啊,它内部的这个整个的这个 harness engineering 的 这样的一个这个呃基础理论,那么 对于 android big 来说啊,他会觉得整个的啊,这个按整个去构建它的这样高性能这个智能体,我们基本上是需要做好以下这么四个方面的这个工作啊。这个是它的第一版的这个想法。第一个呢是 context engineering 啊,就它上下文工程啊。第二个呢是 啊,我们如何协调内部的 agent 工作流和他的这个决策流程啊?第三个呢是提供高质量的工具接口跟工具描述啊。第四个呢是做好他的安全行为边界这样的个约束啊,差不多是他最开始啊是有这样的一套这个理论体系,这个是他自己的这个博课里面,这个呃博课里面来进行的这个介绍哈啊,当然这个理论其实说起来会比较 呃枯燥,我们接下来直接去看它到底是怎么做的,对不对?我们直接去看它这四个方面啊,到底是如何去解决的啊?那么它整个的 harness engineering 基本上就是集中在这四个方面的工程的实践。一个呢是所谓这个约束工作台啊,专门去进行上下文管理啊。第二个呢是它的这个记忆方面的这个管理啊,它呢是分成了三层来进行记忆管理, 这个记忆管理不仅仅记忆存储哈,还涉及到非常复杂的这个记忆处理的相关的这个内容。然后同时呢还有很多众生防众生的这个防御啊,和它如何来进行成本啊?这是 talking 消耗方面的这个成本的这个约束,我们先来看一下啊,是如何来进行实现的, 当然我们说对于整个的卡扣的来说啊,它的这个整体的这个架构啊,这个我们简单提一句啊,这个我们这个大家感兴趣可以自己去看一下,它的整个架架构其实分为五层的,分别是入口层啊,是是运行层、引擎层、工具能力层、技术设施层啊,差不多是分为这么五层的 啊,这个内容啊,但是入口就指的是它的所有的可以调用的啊,给它来进行信息传递的这样的这个接口,有一点像 opencloud 的 这个 getaway 啊,这样的一个这个系统啊,因为其实对于现在的 cloudcode 来说啊,它呢是可以 在,就比如说这个啊, kelly 啊,对不对啊?命令行里面来进行调用,可以在 id 里面调用,也可以使用这 sdk 啊,也就是这个 opencloud 啊, cloudcode, 不好意思啊, cloudcode 官方他们推出这个 sdk 对 不对啊?来进行调用等等等等。 然后同时啊还有这个运行十层啊,这个运行十层其实主要就是我们之前所说的啊,它的这 agent look 啊,这样的一个这个环节啊,只不过呢它的运行十层里面还包括啊,比如说这 r e p 啊,交互式的这样环境,还包括啊这个后壳的一些这个钩子,还包括它当时运行的过程当中状态的管理等等啊,这个呢是所谓的运行十层,那 再往下啊,就是这个推理的这个引擎层,对不对啊?主要是 q r n g 呢的管理以及呢 compact 非常非常重要的关于上下文压缩的 这样的一个工作的啊,这个实现,然后再往下啊,就是关于工具和能力层啊,内部工具怎么样进行实现,怎么通过啊?插件来进能力拓展啊,还有 m、 c、 p 跟 skill 如何来进行接入, 多 agent 啊,如何来进行复制和分发啊等等等等啊,相关这个内容啊,再往下还有更加基础的一些基础设施啊,什么什么的存储的格式啊,还有这个缓存的这个内容啊等等等等啊,这怎么一系列的这个总共啊,是这么五层啊,来进行的一个架构,当然我们这里啊,接下来重点是来探讨关于它的引擎层和工具能力层啊, 这两层呢,就是主要去解决我们上面所看到的这四个方面核心问题的啊,这两层的这个基本的架构 ok, 行啊,那么首先啊,第一个我们先来看啊,他的上下文是如何来进行管理的, 这个呢,其实是涉及到我们上面啊,关于这四层里边第一个啊,关于约束工作台啊,他的上下文管理的第一个模块的一些扣扣的一些这个措施。那么首先啊,这张图其实非常形象哈,就是它的适用于来去描述啊,关于你现在的 a 证在进行运行的过程当中啊,可能最开始 运行的还不错,对不对啊,是一个非常整洁干净的这个宽敞的这个桌面啊,运行了一段时间之后呢啊,这边乱七八糟啊,你就根本不知道如何进管理它整个的 a 阵呢,进行运行的过程呢,它的这个性能也会下降啊,这是一个非常形象的这样的比喻, 当然我们这里是以以两百两百 k talk 为例来进行的这个说明哈,实际上最新的这 cloud code open 啊, cloud open 四点六,实际上已经是全面升级到一兆风向文了啊,相当于是拓展了这个五倍, 那么这对于这个上下文来说哈,首先啊,两百 k 肯定是一个这个硬的这个极限,然后同时呢,大家也需要知道是他的这个整个 agent 啊,在进行运行的过程当中,他只要啊超过了差不多百分六十之后,他的整 个模型的这个注意力啊,实际上就会被稀释掉啊,也就是他的这个呃呃,他去进行长段内容的输出的意愿就会下降啊,然后同时呢,他对于之前的很多内容的记忆呢,也会下降啊,是那么一回事, 所以哈,也是因为他存在这两方面硬的杠杆啊,一个呢是他两百 k 只有那么长,或者一照他只有那么长哈,那么第二个呢,是你伴随增加的越多,哪怕你没有突破他的这个呃,最大上下纹的这样的限制啊,实际上他也会系的越来越模糊啊,也是因为这有这两层的这个限制,所以呢,我们才需要非常谨慎的啊,给每次的 运行啊,去构建一下上下文,对不对啊?那么在我们现在这个视力项目里面,就是这个 learn cloud code 啊,这个项目里面呢,它呢实际上是提供了一个叫三层压缩的这个策略的一个简单的代码的这个实现,具 体代码实现啊,上面有这个对应实现的这样的脚本啊,大家有感兴趣可以自己去这个运行一下。那么总的来说呢啊,我们说在一个简单的环境下啊,注意哈,一会我们会说哈,这 cloud code 实际上是这个五层实现啊,在简单的环境下啊,实际上大家需要知道是,首先呢是有这么三层的 这个压缩的这个策略是可以来进行选举的,第一个呢叫做微压缩 micro compact 这一点啊, cloud code 也有,那所谓这个 micro compact 它呢实际上指的是我运行很多轮之后,我就把之前的工具调用这个结果给它删了啊,是这样的这个情况, 那么呃,这一点其实也可以理解哈,因为很多时候我们在进行工具调用的时候啊,工具返回的信息其实是非常非常多的啊,就比如说我们查询的天气对不对啊?使用什么 api 查询天气,那么这个时候呢,那他在这个实际工具返回回来这个信息会很多,但 但是呢在当时那一次的绘画过程里面啊,你就必须得包含这一个工具返回的这个信息的这个内容啊,因为它需要依据这个内容呢给用户来进行回复,但是呢伴随着运行的时间越长啊,那么之前的工具 加载这个这个加载的这个内容呢,可能就不是那么重要啊,所以呢我们就可以把它删掉。一般来说呢,是在三到五轮对话之后,那么之前的工具调用这个结果就可以直接把它删了啊,这个呢是指的是这个微压缩,那微压缩基本上是一种无损的一种压缩这样的方法哈,因为毕竟那些工具调用这个信息可能也会不变的,不是特别重要,但这里有一点其实是需要这个, 那这需要说明的一点就在于说我们现在去使用一些 agent 的 skill 啊,大家都知道啊,这个这个 agent 的 skill 啊,它呢是一个灵活自动加载加载的这个上下文,它是一种提示增强了这个策略啊,有了这个 skill 之后呢,这个模型啊,它就它就具有某方面这个能力了。但是这里呢,需要知道的是这个 skill 的 这个加持啊,它呢实际上 也是通过外部工具这样调用啊,通过这个 function response message 的 方式加载到当前的上下文里面来的啊,所以你的这个 skill 啊,它也是会伴随着我多对话几轮之后,它之前你加载调用过的那个 skill 就 忘了啊,会存在这样的这个 情况啊,所以呢,这也是提醒我们在使用 cloud code 的 过程当中啊,你如果你总是需要某一个 skill 啊,你下一次再进行运行的时候,那还需要再把这个 skill 加载加载进来啊,因为它运行两轮之后,就会把之前加载进来这个 skill 给它删了,以维持上下文的,这个对不对啊,不要太长了这样的状态,这是第一个, 第二个呢就是关于自动压缩啊,第三个是手动压缩啊,当然这两种压缩呢,其实呃,都是这个压,都是呃这个同一套流程啊,只不过他们各自压缩的这个方式不一样啊,这种压缩往往是采用这个摘药这样的个形式对之前内容来进行个总结啊,你可以 这么来进行这个理解啊,只不过呢,一个呢是到达预知之后自动来进行处罚,一个呢是手动来进行处罚啊,但是总的来说它都是 compact 这样的过程, 那么这三种压缩策略可以说是非常典型的啊,也非常呃,这个非常通用的啊,这么个压缩策略啊, cologold 是 这样啊,我们现在这个势力项目是这样啊,然后这个 open cologold 也是这样啊,基本上都是这样的一些这个压缩这个策略啊,这种其实属于 一个非常通用的啊,压缩这样的方法。当然啊,下面其实还有啊,具体的代码实现的这个过程啊,大家感兴趣啊,可以自己去运行一下,我们课程就不展开讲啊,因为 cologold 它这个架构内容很多啊,很多手动实践的内容,大家可以去进行实践一下, 然后具体它的 compact 啊,这部分的这个内容,尤其比如说我们刚刚说不是说这个 micro compact, 对 不对啊?这个运行几轮之后,把之前的这个工具栏给它删了哈,这个,呃部分这个源码呢,是在这个 service, 在 s r c 啊,然后呢 services 啊,下面 compact 啊里面这部分这个内容啊,你看它这个 compact 啊,光是这 compact 就 有这么多 哈哈的这个内容啊,这个其实这段原码非常精彩哈,因为之前很多同学一直在问啊,说 cloud code 它是怎么样来进行压缩的,为什么感觉我们会感觉 cloud code 压缩了之后呢,效果性能非常不错啊,跟这个普通的比如说 open code 压缩之后,他基本上记不得之前的这样的信息了。那么其实,呃,大家如果对这种感兴趣的话,就可以看一下啊,它这个 compact 的 这部分原码里面到底怎么写? 这部源码其实非常复杂,它还包括一些康啊,一些这 compact 过程当中的一些这个 prompt 啊,它内部的这个 prompt 是 怎么写?因为它在进行压缩的时候,其实并不是一个机械的压缩的过程啊,由于它需要涉及到这个 summary 嘛,所以呢,它是内部会调用这个 sanate 那 个模型,就中杯那个模型啊,来围绕你之前的这个信息内容来进行一个提取,来进行一个格式化的这个提取, 同时呢,他还会留下你最近那几几次对话的这个 to do list 啊,就是没有完成这个事项,所以呢,你才会觉得说啊,一方面他好像也记得之前这样的事情,一方面又帮我腾空上下文啊,同时呢还能够顺着你这 compact 的 之前的这个事项来进行运行,哎,感觉非常不错啊。其实这样的一个这个原因在里面啊, 这里面大家看的清楚的话,可以自己去看一下啊,这部分,这个原版啊,这部分其实还还是非常精彩的哈,当然就对于 o o cloud code 来说啊,它会啊,什么最近三个工具这个结果不压缩啊,之前都压缩啊,是不是这个 读文件的这个结果永远不压缩啊,然后呢,这个因为这个读取进来这个内容嘛,所以不能压缩,等等等等啊,有很多这个具体压缩规则啊,这个呢是第一个 micro compact, 这个呢叫做自动压缩啊,自动压缩就是指的到达预值之后呢,哎,自动给它来进行压缩啊,当然这个 auto compact 啊,在这 compact 里面啊,在 cloud code 里面也有对应的这个原码,对不对啊?到达预值之后呢?哎,自动的啊,来进行一个这个 来进行一个压缩啊,这里面有非常多的啊,它这个什么预值的这样的一个设计啊,然后呢啊,到多少的时候就来进行触发,等等等等啊,一般来说啊,差不多在百分之八十 到九十左右,它就会触发自动的这个 auto compact 的 这样的过程啊,它是不会到百分之百才进行触发的啊,因为它在它在进行,在在进行最后的 compact 过程当中,它还需要腾出一部分上下文来围绕之前内容来进行一个总结啊,所以一般来说是百分之八十,百分之九十啊,当然我记得最新的这个呃 cloud code 也是呃 二点一点九零这个版本啊,应该是百分之九十二啊,作为预值啊,这个大家感可以感兴趣的话自己去看一下啊,然后呢来进行一个这个压缩啊,差不多这么样的情况,然后除此之外呢,还可以手动压缩,对对,手动压缩跟这个自动压缩跟这个 autocap 的是有一样的这个过程啊,只不过的手动手动压缩呢,是通过 这个斜杠命令来进行的这个触发哎,然后呢它这个手动压缩呢,跟这个 auto compact 啊,基本上是完全一样的这个流程啊,只不过它是允许你在任何时候啊都来进行一个啊 compact 这样的一个操作啊。当然其实如果你不需要这 compact 的 话,你可以直接杠 clear 就 把它删了啊, 这个也是可以的。好,那上面呢是关于这个 open cloud 啊,关于 cloud code 啊,它的一些基本的一些实现方法啊,就我们刚刚所说的 micro compact 啊,然后呢 auto compact 啊,还有这个 menu compact。 那么除了这几种 compact 之外啊,我们说其实 oppo 还有很多的非常精彩的关于它来进行压缩过程当中啊,一些这个啊,所谓的这个防御策略啊,或者说它在压缩过程中可能出现的问题,如何来进行解决啊?你可以这么来进行理解 啊,这里也有四层压缩防御策略。首先啊,第一个肯定是 oppo compact 啊,它会临临临临近上下文的时候呢,自动啊来进行触发。然后呢, oppo 这个 micro compact 当然也是啊,全自动的来进行一个这个触发啊,但是呢,我们说你 compact 可能会 存在一些这个问题,对不对啊?所以呢,当它当它你的 compact 没有办法来进行这个 summary 总结的时候啊,它还会有一个叫这个 reactive compact 啊,这样的这个流程啊,指的是 api 调用,呃, api 调用这个 sunny 的 这个模型 api 来进行 summary 的 过程当中,如果报错了啊,它呢就会啊,这个触发叫所谓的啊,这个 reactive 啊,叫呃 reactive compact 这样的这个流程。 而 reactive compact 这样的这个流程啊,它呢,实际上一旦出发了之后,它就会使用这个 snip 的 这样的方法啊,直接呢大刀阔斧的啊,来进行一些这个压缩啊,或者直接删除上下文啊,这个呢,是有可能来进来这么来进行操作的。 它一般来说哈,这个 reactive compact 其实并不会特别常见啊,因为其实对于现在的这个 sna 的 这个模型的调用来说,相对来说还是比较保险啊,但如果确实是没法出现的话,它就会使用这个 snip, 对 不对啊?来进行一个简单粗暴的啊,这个 完整的呃,大段大段的原始内容的这样的一个这个删除啊,当然在 compact 过程当中呢,它还会出现这个啊,出现一些这个循环啊,因为 compact 的 内容呢,很有可能再次被 compact 啊,这个呢也是有可能的啊,然后呢 它对于啊这个地规呢,还有一些地规的这个防护啊,所谓地规防护指的是我上一次 compact 的 这个内容,这次呢如果按照正常 compact 的 这个过程来说的话,它呢可能会被 大幅的这个降低权重啊,但是呢之前 compact 的 内容往往它可能是比较重要的这个内容啊,所以呢它在下一次 compact 过程当中啊,会尽量的保存你上一次已经 summary 之后的啊,这样的一些这个内容啊,是 这么样的一个这个情况,但是这么样的个情况大家也能够感受到,对不对啊?它迟早有一天会 compact 不 下来啊,就是我们的 compact 之后呢,你的上下文并没有压缩特别多啊,这个时候呢可能就会触发我们上面所说的啊,叫做这个 reactive compact 这样的这个流程啊,它就可以开始给你直接删了啊,是 什么样的这个过程啊?所以呢这个 reactive compact, 它不仅这种是 api 要用调用错误的时候可能会触发啊,你这个 compact 不 下来的时候,它也可能会进行触发, 对不对啊?然后呢这里面啊 compact 这个代码大家可以自己去看一下啊,总之呢这都是在这个原始文件里边啊,然后同时呢除了啊它的 compact 这个策略之外呢,它还有啊叫五步流水线的这样的一个这个处理策略啊,这个呢实际上是它的每一次消息在进行构建的时候,它还会走一遍这样的这个流程啊, 这个流程呢跟上面这个流程其实很多是重复的哈,只不过上面这个流程呢是呃跟着你现在到达某一个预值或者手动输入一些斜杠命令来进行触发啊,来进上下文字压缩。然后下面这个流程呢,实际上是你每次在 在构建这个 system 啊,在构建你的这个 message 的 过程当中呢,会这么样啊,来进行一个这个处理啊,这个呢,大家可以啊自己来去看一下啊,那么其中呢 compact 也是一样的啊,因为你 compact 不 仅仅是在到达预值的时候会会这么来进行一个处理啊,你每次构建构建上下文的时候,它也会啊来进行一个啊简单的一个 compact 的 这样的过程。 然后同时呢啊这里有一些非常有趣的一些地方在于说对于当前的 cloud code 来说,在某些情况下啊,它呢实际上是会把你输入的问题来进行一些重写,可以进行一些优化的啊,这个呢其实是一些 非常细节的一些这个点啊,然后呢他会觉得你这样的这表述其实是会存在一些问题的啊,所以他会对你当你的这个原始这个问题呢啊,来进行一些这个优化啊,当然他也会有这个 prompt catch 啊,对吧?啊,提示词缓存的这样的个策略啊,提示词缓存我们会放在后面统一来讲啊。那总之呢,大家需要知道的是啊,它的这个 compact 啊是 怎么做的啊?然后呢啊,它这个整个的啊,是如何来进行上下文的啊这个压缩的啊?当然其实啊,不管怎么样啊,我们说 compact, 它呢肯定是进行有损的啊,肯定是这个有损类啊,肯定也是这个不可逆的啊,因为之前其实经常有同学会问到啊,说这 cloud code 啊,这 compact 跟是不是这个无损这个压缩啊,但其实只要是压缩它就是有损啊,这个其实 啊不用考虑啊,它肯定是这个无损啊,只不过呢,对于现在的啊这个 cloud code 来说啊,它呢其实并没有采用像 openclock 啊这个 rack 解锁这样的一个这个方式啊,它呢实际上就是单纯的压缩,压缩完了之后呢,把所有上下文带入来进行压缩 啊,代入呢来进行一个这个问答。而啊,就比如说像,呃,这个,呃 open clock 啊,它呢实际上是先它是,它呢实际上是超过了预值之后呢会对它的这个 memory 啊,来进行这个 red 的 这个解锁啊,是这么样的一个这个这么样的这个情况,这 两者他们的技术方案呢,实际上是有区别的啊。当然其实就目前的实践情况来看,如果是普通用户在进行使用的话,肯定会觉得这个 clock code 其实会更加的这个友好一些, ok 啊,怎么样这个情况? 那当然下面还有一些具体的这个细节方面的这个展开的这个说明哈,我们就不继续来进行讲解了啊,大家感兴趣的话自己看一下里面的这个文字。好,然后呢,有一个非常有趣的地方,我们刚刚不是说到 这个 cloud code 啊,它呢实际上是会对用户输入这个内容啊,你在构建上下文的时候,它就会来进行一轮感知,甚至是来进行一些这个修改啊,甚至是把一些重要或者不重要上下文的来进行加载和这个删除,去构建你当前这一次绘画的这个 message 这个列表,这里面操作非常多哈,我举一个小例子啊,大家能感受到它是怎么样 去啊,做到这个非常细节的这一点的这个优化的,就比如说如果你对 cloud code 骂街了,哈哈哈啊,就比如说你说啊,这不不是,就比如说 啊,那就用户的这个情绪啊,上头了啊,对不对啊?用户觉得说啊,你这个做的简直是垃圾啊。那个你这个完全不懂我的这个意思,跟你说了多少次,然后晚上你还是做不对啊,对不对啊?就是如果用户骂街了啊,那这个时候呢,扣扣的就会自动的去检测你上下文,会发现,哎,这个时候呢就触发了啊,所谓叫做这个 沮丧检测的这个机制啊,之后呢啊,他呢实际上就会迅速的啊,来进行一个这个 经典上下文,然后围绕当前这个问题来进行快速的响应啊,他会做这样的一个这个事情啊,并且这个过程他是使用 这个呃正则呃观正正则表达式来进行的剪辑和这个匹配啊,他会有这样的一个啊响应的这个方式啊,这个呢,其实是一个小这个小彩蛋啊,这个大家发现了之后呢,发现啊,这个有这个技术人员发现这个细节之后呢,会觉得很有意思啊,这个 open club club 呢,它其实进行了非常非常多细节方面这个优化, 这个呢是第一方面这个优化啊,总共四个方面优化哈,我们讲完第二个方面,我们再啊中场休息,然后再来进行一个这个啊,再来进行答疑,然后第二方面这个优化呢,实际上啊,是更好的去每一次去 folk 啊,或者说或者说去实力化多个 agent 啊。那么这个呢,也是呃, cloud code 的 一个非常核心的 一个架构方面这样的一个亮点吧,那比如说啊,我们现在呢,每次开启这个 agent 啊,由于呢他其实并没有上下文啊,所以呢他其实什么都不知道啊,这个时候呢,你可能就需要按需呢,对他对这个上下,对当前这个 agent 来进行一个知识的这样的这个贯注,对不对? 那么呃,我们之前在讲 opencll 的 时候啊,其实当时讲过 opencll 的 内部有非常复杂的提示词模板,然后呢我们需要去组建非常复杂的内部这个提示词,然后才能够去开启一个又一个的这个一个又一个 opencll。 那么对于 cloud code 其实来说其实也是类似的啊,然后呢 cloud code 它内部呢,也是啊,每次在运行之前呢,会有非常多的啊,一些这个扫描,我们下面应该会有一个完整的一个这个层级记忆的这个层级的这个图啊,那么 cloud code 呢,是按照这样的个记忆层级来进行剪辑跟架构的。 上面哈,其实有一些啊,上面我们讲的它什么自动加载 system prompt 啊,自动加载这个 skills 啊,然后呢是如果有需求的时候才会去加载对应的这个 skill 啊,这个呢是属于所有的 agent 呢,基本上都是这么通用来进行的。这个执行我们直接看它,像它 对于 cloud code 来说,它的这个整个的新开启的这个 a 阵的记忆架构差不多是这么三层啊,第一个呢叫做 memory 点 m d 永久记忆。第二个呢叫 topic files, 按需加载啊。第三个呢叫 transcripts 啊,只只搜不加啊,差不多是这么三个不同类型的层级的这个记忆。 那么 memory 点 md 这个很明显对不对啊?每次呢它都会啊这个来进行一个加载,那么一般来说哈,呃,当然我们我觉得现在可能很多大家在使用在 cloud code 的 时候,可能压根就不知道啊,它有 memory 点 md 这样的文件,是的,这个文件不对用户开放啊,这个文件呢,是纯粹的,它内部会通过一个非常精妙的过程来去维护的一个高质量的这个记忆文件, 它不是简单的啊,你要记住什么,它就把它写到哪啊,不是这样的,它内部有一个记忆的加载、清洗、分门别类存储,然后记忆的优化,一整个非常复杂流程,共同去维护这个 memory 点 md, 所以 这个 memory md 呢,对用户是不开放的啊,你就去改了,很容易把它改毁了啊,你也不能够去改它这样的文件 下面啊,这个所谓的 topic files, 它呢指的是针对不同的这个事项啊,它呢其实是会有对应的这个存储的文件的,然后这个存储的文件是可以通过 memory md 来进行锁影的,比如说你哈记住一百件事情啊,那一百件事情可能都没有办法全部给它放到这个 memory md 里面,它就需要分门别的来进行存储,然后呢按需来进行锁影, 那么再往下啊,这个 scripts 啊,那么 scripts 呢,实际上就是关于历史的这个绘画了,那么历史绘画其实大家都知道啊,一旦我们现在在 carco 进行 compact 之后呢,历史绘画就不会再再进行加载了,但是呢,历史绘画它是会在本地来进行一个永久的这个存储的啊,所以呢,如果有需要啊,它呢实际上是会通过这个 啊, grab 这个非常简单的这个匹配解锁这样的方式呢,去找啊,你之前的历史对话啊,这也是通过命令行工具啊,直接使用这 grab 的 这样的脚本啊,就可以去匹配啊,去寻找你的一些历史对话。差不多是这么样的这个情况啊,这个呢,就是整个的啊,关于 cloud code, 它的一个永久记忆的这样的一个基本的这个架构啊,当然其实 除此之外啊,这个我们刚刚也说啊,它的什么啊, system prompt 呀,它的这个 skill 啊,也是按区加载的呀,那块其实我们刚刚跳过了啊,大家如果感兴趣可以翻到前面来去看一下啊,那我只觉得这段呢会非常精彩啊,所以呢,给大家来进行一个分享。 ok, 好, 那我们先看啊,这个 memory 点 md 啊, memory 点 md 呢,实际上都是通过啊这个 memory 的 direction 点 ts 啊,这样代码来进行的这个维护啊,它里面呢,实际上是有一套啊,非常精妙的这个维护的这个过程哈, 那么它在记忆的过程当中呢,它会不断地去识别 user 啊,不断地去啊,记住你的行为偏好啊,不断地记住你当前的这个 project 啊项目这样的信息啊,然后呢会去记住资源的位置,这个呢是它构建它当前的这个记忆最为核心的四个要素啊,当然这个四要素它实际上是会伴随着这个运行不断不断来进行加深的。 举个例子啊,就比如说我们在使用 cloud code 的 时候,其实你会有这样的感受哈,就比如说你最开始没有跟他讲过你叫什么名字啊?但是呢,如果在某一个项目里边,哎,你透露了你叫什么名字,你是在干什么的啊?那么其实哪怕你没有让他记住这个信息呢,也会啊,在他的这个漏斗状的这个筛选的过程当中,不断不断的啊被筛到这个 memory 点 md 里边 这么样的这个情况,然后呢在这样的一个啊,这个 memory 的 这个记忆的过程当中啊,它不仅仅是说会围绕这四个非常核心的记忆类型的,有针对性的啊来进行一个这个记忆,然后同时呢 它有很多的啊,一些写入记忆的一些这个纪律,对不对啊?比如说它这个这个很多时候啊是先 先进行缩影啊,再去先创建这个缩影,就是创建这个 topic 的 这样的文件,然后呢再写入到这个 memory 里边。再比如说对于 memory 来说,它呢只会解锁前两百行啊,超过前两百行之后呢,就需要啊给它进行一个这个归类,就需要来进行一个精简,就需要把它放到比如说某一个 topic 里边去, 不断不断的啊来进行一个这个精简跟迭代,然后这个呢是它的这个 memory 啊,部分的这个文件的啊,文件的修改这个流程, 当然下面其实有一段哈,就是关于它的 auto dream 啊,这个 auto dream 呢,实际上是呃整个的 cloud code 非常精彩的一个这个设计啊, 当然上面还有一个关于 cloud cloud 点 md 这个文件,这个加载啊,这个我们就不说了啊,因为这个文这个呃记忆文档,其实是我相信大家其实用 cloud code 其实都会用到过,对不对?你需要在根目录里面创建一个 cloud md 这样的文件,然后它呢其实就是你的 system prompt 啊,的一个最核心的加载的这样的这个文档。 那么呃我们现在来看啊,惯常的 auto dream 啊,这样的一个这个自动的去清洗啊和沉淀记忆的这样的一个流程。 哎呀,说是这个流程,其实上非常的这个魔幻哈,就是我们在实际上呃 cloud code 的 时候,如果它是在你当前进程持续运行啊,但是呢某一些间隙的时候,实际上这 cloud cloud 呢,它是会开始做梦的啊, 它是会有叫睡睡眠记忆巩固的这个时间的,它会在内部悄悄咪咪的 fok 一个 agent 啊,然后呢去审查自己的这个记忆,再根据我们当前白天对话的核心内容去选择性的巩固或者删除一些记忆 啊,这个呢叫做 oto dream 啊,在这个做梦哈,那在利用睡眠来进行记忆巩固啊的这样的一个非常神奇的这个流程, 这东西其实确实这个说起来非常的这个魔幻啊,但是呢它确实是会这么做的啊,首先呢在它空闲的时候啊,就会自动的来进行这个触发啊,然后呢呃它呢?这个呃会单独的 fork 啊,单独创建一个 agent 来去做这样的事情啊,不影响主程序的来进行这个运行。 然后呢,接下来啊,它会去看啊,你当前对话所有这个时间戳对不对?就我们刚刚所说的啊,你越近的这个对话呢,它的这个权重就会更重一些,然后来进行一些这方面这个梳理啊,然后最后呢,单独的啊 for 可以 一个这个 agent, 然后呢通过当前这个 agent 去整理你的 memory 点 md 这样的文档啊, 所以呢,它的这个 memory 点 md 呢,是一个非常非常复杂而且精妙的这个设计的过程啊,不像 openclo 一 样啊,你让它写入它就写入,写入完成之后呢,这个 memory 太长了,就直接来进行 rec 解锁啊,并不这样啊,对于 cloud 来说啊,由于它是通过这样的一个可是非常神奇的这个维护 memory d m d 这样的一个文档的方式啊,所以它其实并不需要啊,所谓的这个 rap 这个流程来进行解锁啊,因为它的上下文呢,其实它的这个上下文其实能够被能够来进行非常好的这样的控制的, 而且 cloud code 本身它对用户的要求也会非常高啊,就比如说我们上面所看到的 cloud 点 m d 这个文件,对不对?那么这个文件呢,其实是所有的 cloud agent 每次在进行运行之前,它都会加载的这样的这个文件。那么只不过啊,大家可能之前不知道的是,对于 cloud 点 m d 这样的文件呢,它和其他的 skype 一 样,只会最多加载五百行, 更多它不会加载了,哈哈,所以呢,你对于 cloud md 来说,你写的再多啊,这个这个意义也不是特别大啊,所以呢,它呢, cloud 它是会盗弊用户,我们在进行实际使用过程当中呢,你得想办法啊,去 主动地去精简这样的一些这个记忆,主动去精简你希望主动让他记住的这样的些这个东西。而它自己维护的这个 memory md 啊,这个呢,是它自己维护的,他们共同构成每次对话这个上下文,那它呢,实际上就会, 对不对啊?这个什么 auto dream 啊,然后呢,它又什么这个啊,会呃,创建一些这个 topic files, 对 不对啊?分门别类的去存储记忆等等等等啊,这个呢,是它自己会去做的这个事情。而对于像 cloud 的 md 啊,需要用户去做的啊,它就没有太多的这个要求啊,跟你说,反正我只读前五百行, 那你自己看着办哈,对不对啊,你自己想办法来对它来进行优化啊。当然其实 cloud 它也有一些 skills, 能够去帮助你的 cloud 点 m d 来进行一些上下文章的优化啊,这个呢就属于应用层面上这个东西了啊,但不管怎么样, 对吧?啊,我们通过这样的一些这个流程啊,还有上面的源码的一些这个实现啊,大家能发现整个的 cloud 啊,它在构建每次对话啊,每个新的这个 agent 的 这个时候啊,它的上下文呢,是如何来进行的创建啊?这里面呢有呃呃,大家如果想看更加详细的源码的话,可以 去找到啊,我们的这 auto dream 啊,点 t s 的 这个文件里边啊,里面呢有非常详细的关于它是如何引导如何 fork 一个当前的 agent 去整理自己的记忆的啊,包括什么审查呀,强化一些东西啊,删除一些东西啊,如果存在矛盾应该如何来进行处理啊?然后如何啊?把 这个什么模糊洞察转化为确定事实啊,如何去重组当前这个记忆啊?哎呀,这个流程其实非常复杂啊,如果有机会的话,我其实还是非常 电影展开跟大家说的啊,因为这个其实还是非常精彩啊,去整理他这个记忆比简单的啊,什么寄到本地文档,再通过 red 来进行剪辑,要好的多啊,要好的多, ok, 当然下面还有一些这个安全的这个措施啊,当然他这个也会有一些这个啊,也会有些这个局限啊,因为他的记忆组装好坏,其实会跟他当前这个模型呢,会有直接的这个 啊,直接很大的这个影响啊,当前模型如果指令跟随能力强的话,那么他记忆组装的其实就会更好。但下面还有啊,什么分层的知识注入啊,然后呢,还有下面的什么提示词啊,什么六层动态组装啊,这些东西呢,其实都是属于怎么去更好的去维护他当前这个上下文的,那这部分其实并不会特别复杂啊,这个大家可以 自己回头去看一下。好,那么到这啊,我们就觉得基本上对于像 cloud code 啊,它的一些架构,就我个人觉得比较精彩啊,两个方面的这个内容啊,一个呢是如何来进行 compact, 对 不对啊?去压缩上下文,够压缩上下文啊,去构建更好上下文工程啊。第二个呢是如何修改它的这个像整个 agent 这样的个记忆, 这两方面的核心的我觉得比较亮眼,功能呢,都就都跟大家讲清楚了啊,那么接下来呢,还有两个方面, cloud code, 它的这个项目架构的优化,一个呢,是 啊,关于他是如何做这个安全检查的啊,第二个呢是他是如何去抵抗啊,一些这个知识的商增的啊,这两部分的这个工作啊,那么接下来啊,我们先稍作休息一下啊,然后呢,我们再来讨论啊,这两部分的这个内容。 ok, 那 我们说了这么多 啊,原理层面的这个,呃呃,原原,原理层面这个问题啊,我觉得很多同学可能都已经有点晕了啊,对于 cloud code 来说啊,它这个,呃,确实。嘿,我们接下来是讲 antispac 的 cloud code 的 最后两个非常核心的架构,一个呢是它的安全防御策略, 一个呢是他的对抗知识商商增的一个这个策略 pdf 里面图是,好,那我们就对着 pdf 来讲,大家看到这个 pdf 里面图应该也是也都是应该,应该也都是 ok 的, 我们是从安全, 其实这个安全呢,不仅仅是啊,它会被有害,而且很多时候指的是对他行为的一些这个约束。 ok, 好,从这啊开始继续好,那么了解啊,关于 cloud code 的 一些很精彩的一些这个架构,对不对啊?上下文怎么管理的呀?这些记忆是怎么约束啊?记忆是怎么优化的呀?之后接下来我们再来看非常重要的一个问题啊,就是 cloud code 啊,它的安全性啊,是怎么做的啊? 这也是我们现在很多在运行 agent 的 时候啊,开发者经常会非常头疼的一个这个事情啊,对不对啊?怎么确保这个我的 agent 它不会做一些有害的这个事情呢啊?那么其实 cloud code 开源之后呢, 泄密了之后,哈哈啊,是给大家有一个非常直观的一个这个感受啊,或者提出了一个非常通用的这样的一个范式啊。当然,其实我们 说伴随着你 a 证本身的应用面越来越广啊,你可能会面临的啊,什么投毒啊,或者其他的些恶劣的情况肯定会越来越多啊,这个属于魔高一,这个魔高一尺,道高一丈的这个事情啊,但是呢, cloud code 确实给你提出了一套作为基础的啊,所有的 a 证都可以上来就可以用的啊,这一套安全的这样的措施,我们看他是如何进行实现的。 首先哈,我们其实呃都知道啊,对大模型来说,他他他有智能啊,所以呢,他的这个安全措施跟跟普通的安全的这个软件啊,可能会不太一样啊,我们其实更多的是需要去约束好当前的 a 阵的这样的行为,才能够防止他作恶。 那么对于像 cloud code 来说啊,他是怎么样啊,来进行的这个思考呢?或者他整个架构是什么样的,基本上是按照这样的架构来去走啊,这个架构应该还是非常清晰的一个这个一个架构哈, 首先第一层啊,自我穿匹配啊,然后第二层呢,正则匹配啊,第三层呢是白名单分类啊,第四层呢,是独立的大模型的对抗审查啊,第五层呢,是人类来进兜底啊,差不多就这么五层的,这个五层的这个措施啊,但这五层措施呢,从上往下啊,这个难度一次增加,然后同时呢它的工程实现的这个复杂度也是在逐渐增加的。 首先啊,第一层啊,关于这个自产匹配,这个其实非常简单啊,就比如下面有个,有一个这个代码啊,基本上就是类似于类似类似像这个代码就可以,就可以就可以能够来进行实现了啊,就比如说无论如何都不能出现在你命令行里面的啊,这样的一些这个 呃这个命令的关键词对不对啊?什么 rf 啊, r m 啊等等等等啊,类似这种啊,然后呢直接把它过滤掉啊,这个呢是第一层啊,直接呢通过自传的自创的这个黑名单啊来进行匹配。那么除此之外,我们还可以更加复杂,通过正则来进行匹配啊,对不对啊?这个正则呢,就比自创表达式来进行匹配啊,它的本质呢仍然还是来进行的匹配。 那么第再往下一层啊,就是关于白名单啊和这个命令分类器啊,就它呢会我们会给出一个接下来啊,或许某一些这个命令呢,是 可以直接啊来进行这个执行的,然后同时呢会对所有这个命令来进行一个这个分类啊,如果你分类呢,最后呢是落到白名单这里,我们接下来就可以直接的来进行一个放行来进行运行。 那么再往下啊,就独立大冒险来进行审查啊,这个其实也会非常关键啊,因为大冒险他就会呃,从一个独立的这个角度啊,就不带入你当前上下文的这样的这个角度,他是一个独立的一个这个 sub agent, 然后呢去审查你当前这样的命令,是不是可以来进行执行的啊?这是第四层,然后第五层啊,就是关于人工来进行判断啊,差不多是这么五层的这样的这个架构, 那么在这五层架构里面啊,刚刚我们也说了这个审查的这个 a 证呢,其实审查大模型呢,跟你执行大模型,实际上它是完全隔离的啊,这两个大模型,一般来说审查大模型是不会带上下文来进行一个这个运行的。 那么最后啊,还有一层啊,关于这个人人类的这个兜底啊,所谓这个人类兜底,就指的是如果有确实不知道啊,这样的这个情况,不管怎么样,最后我们都会有一层啊,让人类来进行审核的这样的一个这个,呃,这样的一个空间啊,或者这样的一个通道。 这个呢,其实我们在平时使用 cloud code 的 时候,我相信大家应该也会遇到过类似这样的情况哈,就比如说哪怕啊,我们给他输入了一些这个指令啊,跟他说,他启动的时候跟他说这个, 呃,这个,呃, skip dangerous 啊,类似这样的这个命令啊,跟他说啊,我们这个他可以直接跳过人类审查这样的环节,直接自动来进行运行,但是你会发现他遇到很多他吃不准的这个东西哈,或者遇到一些比较高权限的这样的问题, 他还是会啊,来进行这个啊,就他还是会来进找人来进行审查啊。所以呢,其实关于这个人类兜底啊,实际上是他的一个不管怎么样都绕不开的一个。最后的这层的这个策略 ok 啊,是这样的一个基本的分类,这样的方式,然后他直接进行审核的时候呢,也都是啊,先看规则啊,再看这个有没有风险啊,再看白名单啊,再看这个大模型分类啊,通过一层一层来进行筛选啊,然后呢,如果规则没问题就直接走了啊,如果规则有问题,我们再来看啊,是不是有 风险啊?有风险我们再看看它是不是白名单啊,白名单就可以放行嘛,对不对?如果还不行啊,就大模型对抗啊,来审查一下啊,然后最后呢啊,还再不行,交给人类来进行审查啊,就这样的一个逐层的啊,来进行审查的,这样的,这管线, 这个实际上是一个非常通用的哈,基本上所有 agent 你 如果要考虑这个啊,考虑安全性的话,都可以这么来做哈,然后呢,对于 cloud code 来说,它的这个 security 点 gs 这样的一个呃,点 ts, 这个呃 代码里边哈,这个大家可以自己去看一下,里面它有非常非常多的啊,一系列的这个安全审查的一些这个事项。然后呢,这些安全安全审查的这个事项啊,其实是我相信对于很多现在做 a 证安全的同学来说,是个巨大的数字资产,因为它这里面很多的 这个安全审查的这个事项哈,都是之前长期的被攻击过之后积累下来的这些规矩或者经验哈,这个其实我们很难一条条跟他讲清楚哈,但是这里面确实有非常非常多安全审查的这个事项,也就是他第一层啊,这个规则啊,他就积累了很多之前踩坑的被攻击的这样一个经验啊,你想想这些经验对于很多的 a 证的开发者来说,当然是这个 这个这个无价之宝这样的一个东西啊,当然这里面大家可以在这呃原码里面能够看到哈,它里面到底是 啊怎么样去进行的这个审查啊?然后同时呢,呃,他还有很多的啊,他真的是这个属于这这被攻击久了就攻击出来这个经验啊,什么临宽制服与控制制服的啊,这样的一个这个防御啊,什么这个什么这个制服里面啊,由于由于我不是做安全的,所以我不是特别了解 啊,这里面到底是什么什么个这个情况啊,但是大概能够明白啊,是说一些非常特殊的攻击的这个指令啊,他其实会通过啊,里面去加入一些什么临宽制服啊,或者控制制服啊, 能够去规避掉啊,它的一些基于规则或者基于准则的这样的检测啊,从而绕过它的这样的防御,然后呢去攻击当前这样的系统啊,所以呢才会基于这样的个问题啊,再来增加对应的啊,这个防御的这个措施等等等等啊,总之呢,其实都是在 这个啊, best security, 点 g s 的, 点 t s 的 这个文件里边啊,这个大家可以自己去看一下,然后呢在这个文件啊,然后呢现在其实对于像 cloud code 来说,它的核心的 c m d 啊,防御它的这个 best 命令行相关的这样的攻击啊,其实其他方面的 攻击并不会涉及到你本质电脑上的这样的一些数据的这样的损坏啊,或者他直接盗取你一些这个文件等等等等啊,这个其实做不到的,其实它最核心的攻击的这个点啊,或者是 它的这个最大的风险这个点啊,所以主要还是要命令行工具的这样的一个使用啊,所以你会发现它基本上所有的这个 security 呢,都是围绕着命令行的这个 best tour 展开的啊,其他的一些这个 tour 呃问题不大啊,其实它往往没有被攻击的这样的一个这个价值。 然后同时呢对于 cloud 呃扣子来说,他的实现这样的这个方式,当然我们刚刚说了,对不对啊?这个总共是这个五层啊来进行的对抗,那么除呃五层来进行的这个审核分别是规则啊,然后呢是这个 啊,正则啊,然后呢是这个白名单,然后呢是大模型,最后呢是这个人工来进兜底,通过这五层来进行的一个这个搭建的一个基本的安全的防护网络。 那么除此之外哈,其实对于 klopp 来说,由于他现在还提供了很多那些企业或者团队内部的这个定制这个版本啊,所以呢他还有很多的围绕的一些给企业提供定制款版本的时候啊,他的些企业的一些特定的啊,一些这个呃安全的这个措施,他其实也会 写在 club code 现在的这个圆码的这个项目里边啊,这个的话就如果是大家去开发企业级定制的,并且是允许啊,企业里边我们去单独的给企业内部的这个企业内部的 a 政设置一些防御测试的话,那么这部分啊,是非常值得大家来进行一个这个学习跟观看的啊,就是什么呃企业内部有统一的什么策略呀?然后呢?有什么 这个呃规范的命令行参数的书写格式啊,还有个人默认的啊,这个纸等等等等,会有这么个五层的 这样的一个这个权限的这样的一个设计啊,这个其实更多的是一些定制化开发这个场景啊,这个大家如果感兴趣的话,可以在这下面能够看到啊,但总之呢他的这套这个防御的这个措施还是非常完善的, 那么除了可以提供一些定制化的防御措施之外,还有什么?这个三三个平台啊,各自有各自平台的这个沙河环境啊,可以来进行一个这个运行啊,沙河环境这个我们之前讲过很多次了,对不对啊? 沙河环境呢,相当于是提供提供一个隔离的独立的一个虚拟环境啊,来进行运行,那么你在这个环境里面进行运行的话,任何的一些有害的指令都影响不到你当前的这个主命令啊,主系统啊,这样的一个这个情况啊,这个呢是他的沙河环境啊里面来进行运行,然后同时呢他还有啊这个默认的一些安全检查啊,这个安全检查呢,实际上是每次启 动过程当中啊,他其实都会默认来进行一轮的这个执行,那么这个安全检查啊,实际上也都是他之前啊这个积累下来的这些坑,对不对出现的这样的这个问题, 然后同时呢它还会有一个啊断路器这样的机制啊,所谓断路器这个机制指的是如果我的 a 证在进行运行过程当中连续撞墙啊,就是他反复去尝试一些这个问题呢,他始终没办法得到解决啊,那么他就会判断,哎,你当前的这样的一次这个尝试或许是有毒有害的,那么之后呢,就会尽量避免出现类似这样的情况, 那这个断路器这个设置和安全这样的问题呢,因为他可能会存在一个暴力破解的这样的情况 啊,所以呢,它的这个所谓断路器这样的设置哈,其实它是一个强硬的这个规定啊,就出现连续三次被拒绝啊,或者连或者累积二十次被拒绝啊,那么它呢就会自动降级你当前的这样的一个这个命令的这个权重啊,换而言就是它会更加倾向于去拒绝执行当前这样的一个这个命令啊,是这样的这个情况, 这呢是一个断路器的一个设置,会在实际运行过程当中不断的来进行积累,当然它的这个氧氣的防御措施,还有一个还有一个方面的这个防御啊,确实是这个久经沙场 积累他的经验啊,就是他还有一个反蒸馏的这个防御啊,这个其实出来之后也非常精彩啊,这个因为安萨佩前段时间还说啊,他的这个模型啊,这个很多被被别人的壳扣子反复吊用来进行蒸馏,对不对?蒸馏别人家的别人家这样的模型啊,然后呢,呃,这个这个大家这个网友就批判批判他啊,说你的这个模型难道不是蒸馏来的吗?对不对? 嗯,这个也不太好说啊,那但是呢,现在对于 cloud code 来说,他确实有一个反真流防御的这样的这个措施啊,就是他呢实际上会去判断你现在在进行调用的过程当中到底是真工具还是假工具啊?如果呢,你是一些假的工具啊?来接。如果呢?呃, sorry, 不是 判断真工具假工具哈, 他是会判断你现在的调用工具这样的一个模式,那么他如果识别到啊,说你现在呢是一个真实的用户在使用 cloud code 的 话,那么他呢就会以真实的用工具这样的流程来进行响应。 如果他现在去判断啊,你现在这个调用工具这个流程呢,是一个蒸馏的这样的过程,你会围绕很多场景会去穷举他的可能性啊,然后呢会围绕一个问题的反复来进行这个运行, 那么这个时候啊,他其实内部会有一套识别这样的一个流程哈,这个我没有展开讲啊,但这个识别流程实际上是个比较精妙的一个这个识别的过程,他既会有一些基于规则的这样的判断啊,他也会 有这个 sanit 这个模型,主观的这个模型的这个识别啊,两层的这样的识别。那不管怎么样识别了之后呢,他会觉得啊,你现在呢就是一个机器人啊,在操作你的 cloud code 啊,然后呢就是为了去获取一些这个数据啊,然后用你这个用这个数据去接下来训练我的呃,去训练别的模型,这个时候他就会 非常激贼的啊,在你在他实际运行的过程当中呢,给他给你手动给你自动的去注入一些假工具的流程啊,就是这工具根本就不存在啊,或者说就直接就给你去 这个创建很多的一些工具调用失败啊的这样的一些这个这样的一些这个数据啊,从而呢他会生成一个这个有毒的这个训练数据啊,防止别人家去进行蒸馏啊,就这么一回事 啊,哈,这个其实还是很有意思的一个这个点哈啊,但如果这个大家确实面临的类似于这个蒸馏或者反蒸馏这个场景的话啊,这块确实是值得学习。 最后呢,就是关于他的这个对抗的这样的一个问题啊,这个点呢,其实是非常值得拎出来来进行单独的这个探讨哈,就是因为其实现在关于双 ai 对 抗的这样的场景,我目前其实在很多地方其实都会有用到过啊,比如说像这个 啊,像我们啊编程的时候对不对啊?有在编程的啊,有在进行审核的啊,包括我们在解决些问题的时候啊,是比如说你做些科研的工作啊,有提出结论的,包括比如说我们现在啊,如果使用 ai 去生成一些这个内容啊,那么有生成内容的,有去批判内容的, 那么现在呢,对于 ans 来 pick 来说,你会发现它的这个双 ai 对 抗这个策略基本上是贯,基本上是贯穿它整个 cloud code 的 各个方面的啊,如果遇到一些你当前大模型它自己不太好判断是不是有问题的这个点的话,那么它就会其实就会启动啊,双 ai 对 抗的这个策略。那么 比如说上面我们说这个安全方面的这个双 ai 对 抗这个策略,这一点我觉得还是比较好理解啊,因为其实一方面提出啊,一个 agent 来负责来进行审核, 那么除此之外呢,其实像 cloud code 里边儿啊,我们之前就有谈到过它的这个命令啊,它的这个压缩呀过程,其实也都会啊,有这个双 ai 双 ai 对 抗的这个影子啊,就一方提出主张啊,一方面提出质疑啊,然后呢,最后综合出一个结论,差不多会有这样的一个这个过程。 而这个双 ai 对 抗啊,实际上也是现在的关于 harness engineering 啊,他的这套体系里面提出来的一个非常有价值的一个观点啊,就是他会觉得啊,在这个多个 ai 从不同角度啊来进行,呃,那他们分别带有不同上下文啊,然后呢,去协助去完成一个事项的时候,往往有助于啊,提升你最后这个作品的这个质量。 举个例子,比如说啊,我们现在经常会使用 ai 去生成一些这个内容,那么生成内容之后呢,如果你让自己让他自己去 去对自己东西来进行审核的话,其实往往就审核的就很一般啊,但如果你有多个 ai 来进行对抗的话,来进行对抗审核的话,他就往往啊就能够提出很多很正确的意见啊,帮你的内容呢朝向更好更更好的方向去发展啊,差不多就这样的一个过程。 总之呢,其实在 cloud code 的 内部,它其实也是广泛应用啊,一些双 a 对 抗这个策略呢,去约束它内部的这个行为啊,这点确实是,呃,很有意思的一点啊,也是我觉得是一个性价比很高的一个策略啊,因为它其实并不会特别复杂啊,但是它能够显著提升你当前 agent 的 这样的一个这个效果,哈哈,是这样的一个情况, ok, 好, 这个呢啊,是关于安全是怎么做的, 那么紧接着还有最后一个问题啊,就是关于他的这个知识商增怎么去解决?哎呀,这个知识商增呢,其实是个非常呃困扰大家的一个这个问题哈,就比如说, 那我们现在啊,假设开发一个项目,呃,这个开发这个项目使用 qq 的 开发一个项目啊,那么呃,前一两千行代码写的可能还是比较顺利的啊,也不会出现什么知识商增的这样的个问题啊,反正就是代码也不是特别多啊,大家一看也能明白是什么样的东西做的呢,可以说是又好又快。好,那接下来 这个两千一两千行代码到一两万行代码的时候,哎,你会发现管理就会很混乱啊,一会我这个 a a 阵子就记不得之前的这个信息了啊,一会这 a 阵子 忽略了某些信息啊,给我堆出一个十三代码,然后呢一会啊,这个呃,这部分修改了之后,关联的那部分也没有修改,等等等等啊,就会出现很多很多这样的问题。而如果进一步的到十万行,到这个一两万行,到这个一二十万行代码,这就更加复杂了。 所以呢,其实现在啊,我们在使用这个 agent 在 进行这个开发的过程当中啊,其实很多时候都会遇到啊,他这个知识双增的这样的个情况,那么对于 cloud code 来说也是类似的啊,那么用户在使用 cloud code, 当然他自己其实是个工具啊,他并不是这个项目本身啊,对 cloud code 来说他是个工具,但是呢,这个这样的工具必须要给用户提供 应对,非常复杂,大规模知识商增这样的情况怎么样?很好的去控制你接下来未来 agent 的 长期这样的运行,就比如说我项目可以很复杂啊,对吧?你可以是一个一二十万行代码这个项目,但是对于 agent 来说,你得有能力去解决这个项目啊, 你不,你不能说这个,我,我上来这个上手这个项目就是一团糟啊,乱七八糟啊,然后呢?这个,呃,也也搞不清楚上下文什么啊,然后呢?也写不明白啊,这可能就不行,那么要做到一个围绕着巨大的这个知识体系来进行管理哈,来进行内容输出啊,代码也可以把它理解成是内容生产的一个缓解嘛, 来进行有效的啊,这个内容输出的话,那么其实对于你当前 a 阵的架构就会提出很高的要求啊,这个其实不仅仅是说我需要有更强的这个模型,有更强的模型只是一方面啊,除之外呢,还需要有 harness engineering, 对 不对?约束好他,好让他好好的哎,去做这些事情啊。所以接下来呢,我们需要解决解决第四个问题啊,就是去看如何通过啊,这个 color code 内部如何通过这 harness engineering 呢?去更好的去实现面对知识商增这样的情况,他如何分文别类的来进行很好的这样的处理。 那么首先哈,我们说对于现在的这个比较复杂的任何比较复杂的任务啊,基本上肯定都不是一个 agent 来进行处理了啊,肯定是很多个 agent 来进行协调的这样的一个处理啊。所以呢,对于 carco 来说啊,他去应对啊,这个知识商增这样的个情况,应对比较复杂,大型代码的或知识类的这样的项目,那么他肯定也是会考虑啊,使用多个 agent 来进行运行。 那么在 cloudco 内部,它的 agent 的 运行模式,其实现在啊,总共是有两种模式啊,一种呢叫做 sub agents 模式模式啊,一种呢叫做这个 agent teams 模式啊,这两种模式其实是不一样的。那么所谓 这个 sub agents 这样的个模式呢,在 cloudco 的 内部,它的这个运行的逻辑是,它会把这些 agents 把它看成是呃这个主 agent 的 一个可以调用的工具啊,它它它它 agent 当然是可以是一个工具了啊,对不对? 那么它如果我的 sub agent 作为主 agent 一个可以被调用的工具的话啊,那么接下来我在运行的过程当中啊,这个过程其实就会呃非常的简单,对不对?我需要它, ok, 我 调用它,然后给它,给它输入上下文,然后它就进行运行就可以了, 那么这个时候 sub agent 跟主 agent 是 不会共享上下文的,那么 sub agent 它不管运行了多少,它最后呢就会把它最终运行这个结果提交给原来的主 agent。 举个例子啊,比如说 大家都知道,对于现在的 cloud code 来说啊,它有这个非常强的呃这个 deep research 这样的能力,对不对啊?非常强的这个呃深度调研的啊,广泛来进行一些搜索这样这个能力。但是其实在呃这个 呃 cloud code 的 内部,这个 deep research 是 由一个单独的 agent 来完成的啊,只不过呢,这个 agent 是 一个 sub agent 啊,它呢是能够被工具呢,能够被各个不同的 cloud code 来进行调用啊, 么样的一个这个情况,也就是说当你如果你需要围绕一个东西来进行深度调研的话,那么这个时候呢,主 agent 啊,实际上是会给一个 sub agent 啊,去发布这样的命令,让他呢去调用自己的网络工具来进行海量调研,调研完了之后呢, ok, 把信息在汇总给你。原来的 agent 是 这么样的一个过程, 当然除了啊这个,呃 sub agent 啊,呃,除了这个 deep research 这样的 agent 之外呢,其实对于 cloud code 来说,它还有很多内置的一些这个 agent 啊,还有这个 plan 啊,它也是一个 agent, 等等等等。 那么不同的这个 agent 啊,它和你现在用的这 cloud code 之间唯一的区别就在于说不同的 agent 呢,它可能它的这个上下文哎,就是 agent agents 点 md 呢,这个东西呢,是不一样的啊,你可以这么来进理解啊,只要它的 agent 点 md 是 不一样的啊,或者它的这个 cloud md 是 不一样,那么它呢在运行的过程当中所调用的上下文,其实就跟你是不一样的啊,你可以这么来进理解,那这个时候呢,这个 agent 啊,就是个全新的一个这个 agent, 这个呢是第一种模式叫 sub agent 的 模式,那么说实话还有种模式啊,是呃,在呃这个今年年初啊,伴随着 cloud 四点六啊,这这个这一系列模型发布的时候呢, anselp 一个主推的一种新的这个模式啊,叫做 agents team 这个模式, 当然哈,这个 agent teams 这个模式呢,其实现在也被称为叫做这个呃,这个 agent swarm 啊,这样的个模式啊,对不对啊?这个 a, 呃,刚刚我们说了,这个子 agent 呢,跟父 agent 呢,它之间没有上下文共享啊,这个我们刚刚也说过了, 那么第二种模式呢,叫做这个 agent 子 agent teams 这个模式啊, agent teams 这个模式呢,它呢其实就不再是这个副 agent 的 调用子 agent 的 这样的一个这个这样的一个这个过程啊,那子 agent 也不是说以工具这样的形式被副 agent 的 调用 它的所谓 agent team 四个模式呢,实际上所有的 agent 呢,都是平等的啊,都是有一个自己维护的独立的上下文的啊,然后呢会有一个主 agent 啊,通过对话啊,去调用不同的这个子 agent 来完成对应的这个事项。然后呢这个子 agent 呢,跟跟主 agent 的 之间这样通近呢啊,实际上是只会发送结论啊,但不会发送上下文。 那么通过这样的个方式其实也是能够很好的去进行不同 agent 的 分门别类的上下文的这样的管理啊,以免上下文交叉啊,所带来的这个呃知识的商增啊,或者这个这个行为轨迹的这个爆炸呀,类似这样的情况。并且呢,目前来说对于 cloud code 来说,它 只有啊一个呃,它它的这个 multi agent 的 这样的模式啊,觉得 agent teams 这个模式啊,只有一种架构的方式,就是一个主 agent, 然后连接一系列一系列的这个 agent 啊,一系连接一系列的这个 team mate agent 啊,就一系列的队长啊,剩下全部都是队员,队员, 然后呢队员跟队员之间啊,是不能够相互通信的啊,然后呢队员跟队长之间啊,是可以相互通信的,所有的工作或者所有的结果都是由主 agent 啊,去给各个不同的子 agent 来进行分发啊,它目前呢是这么两种模式,那么为什么会有这两种模式出现哈,其实也是基于现在的 cloud code 啊,他们可能长期的这个实践 啊,之后最后得出来的这个结论啊,就是会发现我们刚才的啊所说的这两种模式啊,这个是我们刚刚所说的第二种模式 发现。哎,这两种模式呢,其实是最呃能够结在这个确保稳定性的这个情况下去节省 talkin。 而其他啊,大家也知道有很多的一些这个,比如说现在这个 multi agent 呢,有很多的这样的架构,对不对啊?刚才这个架构呢,是一种指挥官式的这样的架构,一个 agent 连接多个 agent 的 这个架构啊, 除此外还有啊,类似于这个蜂巢这种架构,很多 agent 呢之间呢都可以彼此相互通信的啊,这样架构像这些架构呢,目前还没有去集成啊,他也可能也是觉得说这些架构呢,可能运行起来目前来说还不是很稳定。 那么通过啊,我们现在的啊这两种基本的这个模式呢,可以说 cloud code 啊,就能够解决在不同场景下使用不同的 agent 的 一个基本的这样的一个流程,但是呢这个流程还不够啊,我们这个流程,其实所有的咱们的用户啊,只要你使用了这个 cloud code, 都能够感受到 有这样的一个这个流程,那么除了啊有这个流程之外啊,我们说对于 cloud code 来说呢,它还有非常强的一个 talkin 的 一个管理的这样的一个机制啊,哈哈,这里其实就涉及到啊,非常有趣的一个点啊,就在于说有很多同学经常说啊使用 cloud code 啊,这个 talkin 爆炸啊,是吧啊,这个这个动不动这个 talkin 就 不够用了, 哎呀,但实际上 talkin 已经尽力了啊,因为它在它的这个系统里面其实已经有非常非常多啊,这个关于如何去 啊,如何去节省,你当哎,不好意思啊,如何去节省你当前的这个呃 token 的 一些这个措施啊,但是呢仍然啊还是会面临着啊,大家经常会使用这个 token 的 时候感觉 token 包大这样的这个情况啊,当然这个其实也不是很重要啊,重要的是我们需要去看啊这个 anselpik, 那 他们的 cloud code 是 怎么去尽力去节省你的这个 token 啊?那么懂了我们刚刚所说的他们这两种 cloud code 啊,这样的 agent 分 配机制之后,我们接下来看啊,它是怎么样去很好的去啊,把控你现在整体的这个 agent 消耗的。 那么首先哈,我们说刚才的这个副 a 证跟子 a 证的上下文隔离啊,这个呢,其实呃就能够很好的去这个呃避免啊它上下文交叉感染,然后同时也能够去避免单个 a 证过长上下文的这样的一个问题。当然最最最最精彩的实际上是这款就是 关于它的共享 talkin 经济学,哈哈哈。啊,什么叫共享 talkin 经济学啊?这个是什么样的一个意思?那么我们都知道啊,现在对于一个 agent team 的 这样的一个系统啊,实际上你的 这个 agent 呀啊它长什么样的都有啊,对不对啊,我各式各样的这功能的 agent 都有啊,那呃, agent 一 号啊,一号跟 agent 二号啊,它们呢,或许有一些内容是一样的啊,那么或许有些内容呢也是不一样的啊,有的时候呢,这个啊,它有一部分啊是重叠,有一部分也是不重叠的, 那么在这样的一个基本的的这个形态下啊,其实呢, cloud 内部,它会有一个非常巧妙的一个这个分辨啊,它呢会把所有的 agent 稳定的缓存的一些指令区都是共享一套存储策略,你可以这么来理解, 就相当于是一个模型,它运行的时候呢,它有一个快照啊,然后呢从这个快照的时间节点开始啊,那么接下来或许会分呃,或许会分化为很多不同的这个 agent, 那么在这个快照内部,它们的记忆是完全一样的,只不过呢是基于这个快照这个点哎,有的 agent 输入了 a 指令,有的 agent 呢输入了 b 指令啊,然后有的 agent 呢输入了 c 指令, 那么在这快照之前,它们其实保存了同一个这个模型,那么它们通过输入不同指令之后呢,才演化出不同的模型去维护不同的线来进行服务啊,你可以这么来进行理解啊,所以呢,它会在里面,它会在整整个 agent 运行内部去构建一个啊,所谓叫稳定区 的一个全局缓存的这样的一个东西啊,这里面就是会保存所有的 agent 啊,大家共有的相同的这样的一些这个内容啊,然后同时呢, 每一个 agent 都是在全局缓存的稳定区基础上啊,加上一些自己动态的一些这个指令啊,或者自己不一样的这样的一些这个东西啊,然后呢再构成它的上下文啊,咱俩进行不同的这个响应啊,以此呢去构成啊,它的一个提示词这样的一个缓,类似于像提示词缓存的这样的一个机制,去节省它整体的这样的 talk, 其实哈所谓提示词缓存也是这样的过程,对不对啊?就是我们在调模型的这个时候呢啊,你有的时候输入的后面这个提示词呢,跟之前提示词一样的,有些提示词呢,是已经加载到你当前上下文里面之后啊,已经加载到当前上下文里边了,你接下来就不用重复来进行加载啊,这个这个过程其实跟 cloud code 的 内部所建立的啊,所谓这个稳定区跟动态区呢,基本上是 啊差不多的这样的一个这个状态,然后对不对啊?他他有很多的啊,这个这个稳定区指的是什么啊?什么基础指令啊,工具定义啊,全局规划呀,这个都他他不会在绘画中这个反复的变化的啊,都是稳稳定区内容啊,然后动态区指的是绘画特定上下文呐,这个环境状态啊,用户的不一样,这样的个指令啊,等等等等啊, 会有这样的一个这个方式,那么通过这样的一个啊, fork 共享这样的一个方式哈,它呢其实比普通的啊,这个 agent 如果我们在进行多 agent 运行的时候呢,它的这样的状态呢,其实会节省非常非常多的这个成本啊,这个呢,其实是它开源了之后有很多人在进行计算啊,计算它现在内部的多 agent 的 协助过程当中所消耗的 talk 的 这个成本 差不多啊,五个子 agent 约等于一个额外的 agent 的 这个成本,呃,这个五个子 agent 约等于一个一个额外的 agent 的 这个成本,它并不是说我增加了五个 agent, 然后呢就跟一个 agent 的 成本是一样的,不是这样的啊,它指的是如果我额外增加五个 agent 啊,那么就跟,我,那么就跟啊这个呃,在我们现在的这个共享缓存的这样的个 之下啊,那么呢这五个 agent 这个成本差不多能够降低百分之八十啊,你就这么来进行理解就可以了啊,那么这个呢是关于现在的 cloud code 啊,它的内部提示内部的啊,这个提示缓存的这样的一个这个技术啊,那么这个这项这个技术呢,实际上在它内部的这个实现,实际上非常的这个巧妙哈, 完整的这个实现的内容在啊,我们的这个呃题日词缓存的啊,这样的个 t s 文档里边啊,这个大家回头可以自己去看一下啊。总之呢,现在面对着多 agent 里边的非常复杂的啊,系统题日词,它也是采用类似题日词缓存这样的个技术啊,然后呢来进行一个 呃费用上啊,或者 talkin 上的这样的一个这个优化,那这个呢?好,我觉得也是。呃,这个这个功能其实属于一个非常进阶的一个功能哈,我们现在很多大家的这个普通的一些 a 智能在进行架构的过程当中,可能暂时都还用不到啊,这么复杂的一些这个功能啊,但但这功能确实也是我就觉得非常精彩,然后值得大家来进行一个学习的 这样的功能, ok, 好, 那么最后呢,还有关于啊,它的各种子 agent 运行这样的个模式啊,什么在呃县城内来进行运行啊,翼步后台来进行运行啊,远程执行啊,都是可以的啊,然后呢,这个进城内和翼步后台都是你可以操作的啊,远程执行呢,是需要放在 i s r t。 的 服务器上来进行运行啊,这个呢, 也都是 ok 的 啊,总之它的很多的 agent 呢,是支持不同类型的这样的个运行的模式的啊,然后呢,下面还有这个 mailbox 啊,关于它点对点通信的这样的格式。呃,这个的话大家可以自己去看一下哈,这个的话,它主要是些工程上的一些这个说明啊,我们就不展开说了。 那总之呢啊,其实它现在啊有非常多的一些对于当前 agent 的 一些提示词缓存的这样的一个这个技术,然后呢去减少你整个的在面对知识爆炸的这样的情况下,对不对啊,深层非常复杂,多 agent 的 写作体系的过程当中啊,减少整体的 talk 的 这个消耗,这个呢也是呃,我会觉得啊,非常精彩的一个这个实现, 当然最后我们还有一个啊,非常有趣的一个,哈哈。啊,也是最近啊很多同学这个热议的一个这个话题啊,就是关于说你的这个 apple pick 现在一不小心开源了自己的 cloud code 啊,那你的这之前发的那么多技术报告对不对啊,个个看起来都很厉害啊,你的技术报告在你的 cloud code 里面实现了吗?哈哈,这里其实是非常有趣的一个这个啊,有趣的一个 东西哈,首先啊,对 antalfa pig 来说,他的这次开源还是能看得出来他还是非常实诚的啊,因为绝大多数的他之前自己提的这些技术方案啊,在 cloud code 里面都有非常非常好的这个实现啊,教科书般的这个实现。比如说他 最开始讲的啊,这个 context engineering 啊,这个呢,是他去年十月份发的一个这个技术博课啊,然后讲他自己内部他自己的 context engineering 怎么做的,这个是对应的我们的整个的。呃 呃,这个 cloud code 的 架构解读第一部分啊,当时我们去讲的那部分的这个内容,对不对啊?这个呢,他技术报告里面提的内容哎, cloud code 里面都实现了,然后同时呢,他的安全与成本控制,就是我们三四部分讲这个内容啊,他在里面也实现了, 然后呢,多 a 证的对抗啊,他其实也有一部分的这个实现啊,只不过呢,他现在这个多 a 证的对抗没有他现在这个博克里面这个讲 那么强就是了啊,他博客里面说这个,呃,这个 g n 对 吧啊,生成对抗网络的三 a 阵的这个对抗的这样的一个这个形式,目前这个形式呢,在卡扣的内部还没有实现啊,但是未来呢,应该是会逐渐来进行这个实现的啊,这个大家若感兴趣的话可以去 看一下啊。然后同时呢,对于当前的 color code 来说,还有些同学会比较关注于说他现在啊,勇于他,其实,呃,尽管他这个泄密的是二点一点八八这个版本哈,但实际上这个版本里面其实有很多未来的功能,这规划啊,也能看得出来未来 color code 他 会朝哪方向去进行发展啊?就比如说像主要的啊,这个最为核心,也是大家最 看好的一个方向啊,是叫做主动式的这个 agent 啊,什么叫主动式的这个 agent? 这个说起来啊,这个这个说简单一点啊,感觉就像这个定时任务一样啊,就是他呢会这个定时来进行响应啊,但实际上主动式的 agent 呢,没有那么简单啊,他呢实际上是会主动发现问题啊,然后再来 主动的来进行处理啊和这个解决啊。那比如说我们现在去构建很多的开发很多项目,或者做很多的这个事情,你要用这个 agent 做很多事情啊,你往往是 先跟他说怎么做,做完了之后你跟他说你再检查一遍啊,他再检查一遍,检查一遍之后呢,你运行了一下,发现出问题,你跟他说, ok, 你 再写几个测试这个视力,然后他测试视力,测试完了啊,发现有问题去解决问题啊,然后呢你再不断跟他说啊,然后他就不断去解决各种各样的问题啊, 这个呢,其实是属于你问我答的这样的一个状态。而主动式的这个 a 阵呢,他呢其实会发现当前运行过程当中所存在的问题啊,或者他觉得他现在需要去解决的一些这个问题啊,会主动的向你啊来发起这个请求啊,会主动的去完成一下这个事项啊,这个呢,是所谓的这个主动模式啊, carras 的 这样的个模式 啊,这个模式呢,现在还属于规划的过程当中啊,这个呢,其实未来啊,应该会这个上健啊,应该又是一轮不一样的啊,这个 a 政策的使用范式的 这样的一个调整,那么除此之外啊,还有啊,这个什么循环的这个引擎啊,循环这个引擎应该很快就会上线啊,这个其实就跟这个 heartbeat 啊,或者是 crm 定时任务其实是比较类似的啊,就是这个,呃,以这个持续不断的啊,来进行一个运行啊,还有呢,关于这个,这这什么成本 感知让步等等等等啊,这个呢,其实是关于他的一个成本优化的这样的这个策略啊,指的是我提示词换成,如果换成特别久,但是始终没有用到啊,他可能就考虑把这个提示词换成给删了啊,这样的一些这个小的优化,这个点啊等等等等。 然后同时啊,它还有一些啊,这个呃,这个呢,其实主要是它的这个云端的啊,就是服务器上的这个 cloud code 的 一些优化的这个工作啊,这个呢,我们就呃不不 展开来进行讨论了啊。然后呢,这个 skills 的 这个显见的这个显示,这个其实是一个非常非常有效的一个功能哈,这个功能我相信之后上线之后呢,肯定也会对我们现在开发工作会有很大的这个很大的一个促进作用。那么对于多 呃工具啊,或者多 skill 的 管理啊,实际上是现在所有的 agent 都会面临的很大的一个这个问题啊,那么对于像多 skill 的 管理,之前有很多的不同的厂商些提出不同的这个方案啊,然后呢?呃,那么现在啊,对 anfropack 的 他们其实集成了一个更加前沿,他们也会觉得很有用的方案,叫做 skill 渐近显示, 就是在未来啊, clock code 在 运行的过程当中,你甭管你给它绑定了多少个 skill 啊,你给它绑定了一百个也好,它在运行的过程当中,它会根据我当前这个项目推进的情况有选择掉一些这个 啊,然后呢让他每次运行的过程当中去选择那样的这个 skill 这个时机啊,或者选择这样的一个 skill 的 这个时间点来进行一个缩短。好,这个呢是所谓的 skill 渐近渐近的这样的一个显示啊,它呢是能够去进一步的优化你当前每一个 agent 的 上下文啊,同时也能够提升 agent 的 响应速度啊。这个刚刚有同学问到说 cloud 为什么响应速度这么快啊?他代码这么多,为什么响应速度还这么快啊?这个,这个对吧?还有很多这方面优化这个措施啊,所以他响应的速度 啊,是这样的一个这个情况。 ok, 好 啊,这个呢是关于啊他现在的很多未来功能的一些规划啊,当然还有一些这个有趣的功能,对不对啊?赛博宠物啊,赛博宠物呢,这个我们刚刚看过了啊,这个赛博宠物大概就长这样啊,大家可以自己看一下啊,这个呢就是 cloud code 的 一个这个页面啊,然后呢就输入这个呃,八底之后, 然后他就会给你整出一个呃,这个出来一个这个小宠物啊,差不多这样的一些功能等等等等, ok, 行,那这个呢就是关于整个的啊 cloud code, 我 们在今天有限的这个时间点时间里边啊给大家去讲解的 cloud code, 就 我个人认为非常精彩的一些这个架构啊和我觉得啊会对我们后边的啊,这个主要是非常进阶,非常顶尖的,大家来进行 the agent 开发的时候啊,一些这个启发,但是下面啊还有一些可以附用的一些 ai agent 开发的这个模式的一些这个表格啊,大家如可以去看一下,如果你们现在进行开发的时候有类似的一些需求的话,那么你可以考虑参照 cloud code 啊来进行实现。然后同时呢关于 cloud code 啊,其实我们之前没有讲过的一个点呢,暂时说有很多同学会呃比较 关注于说,哎,我现在有拿到克拉扣的这个原码,之后怎么样来接在在本地来进行一个这个部署,对吧?啊,那么首先好,我们说克拉扣的你是可以在本地来进行一个这个呃 build 来进行一个部署的,那么我们再给大家参考资料里面其实有啊,这个是没有什么问题的,但是呢,你的实际的运行过程当中仍然还是需要访问远程的 ansore pick 的 这个模型的这个服务啊,才能够来完成响应和完成认证啊。当然如果你是使用国内的模型的话,可能就没有这样的一个问题,这是起的这是一个, 第二个呢是呃这个东西哈,你最好用的话还是这个呃低调一点啊,因为他确实不是一个 呃完完全全的符合版权的这样的一个这个事情啊,这是为什么?我公开课可能没有去讲啊,拿着原码怎么去进行这个部署,跟本地运行的非常核心的一个这个原因不太适合啊, 这么公开这个场合啊,大唐起鼓的,我们来讨论这样的问题啊,但是呢,我们出于学习的目的,对不对啊,好好的研究一下内部的这个架构啊,给予我们未来开发的一些这个启发啊,以及呢积累一些这个经验。哎,这个还是非常不错的啊,这是没有什么问题的。所以啊,这里啊他有这个八个架构模式啊,如果大家感兴趣的话啊,可以考虑啊,去进行一些 啊,进行一些这个选举啊,或进行一些这个实现这八个架构模式基本上也就是啊,我觉得我们在读完啊 cloud code 的 这个架构之后哈啊整个的这个原码之后,最核心的一些这个启发啊,首先第一个分层降级防御策略啊,第二个呢,分层知识注啊,第三个知识商的这样的一个管理啊,认知商的管理,对不对啊?这个后台做梦啊,整理记忆 啊,还有什么众生防御啊,这个双 ai 对 抗啊,还有感知缓存架构啊,还有这个编排者模式啊,编排者模式,我们刚刚说的这个 multi agent 啊,一个主 agent 分 配多个 agent 来干活这样的个模式。 然后呢还有这个能力边界啊,既架构边界啊,等等等等这样的一些这个模式模式啊,这模式下面都有对应的他的一些这个啊使用的方法和对应的这个方案啊,大家如果感兴趣的话,可以自己去看 下。然后呢我在我们前文里面也都给大家指明了对应的不同的这个方案里边啊,他对应的这个原码的位置啊,大家可以去看一下。总之呢其实对于这个原码来说,你是很难 这个啊,通读的啊,这个其实非常非常困难啊,你只能够根据说 ok, 我 们现在啊,可能大家提炼出了一些比较好这样的模式呢,顺藤摸瓜啊,然后呢来进行一个读取啊,来进行学习,来进行借鉴, 好,那么到这啊,关于 cloud code 啊,它的一个源码的一个这个解读啊,我们这里是拎出了一些这个亮点,对不对啊的这样的这个解读呢啊,就差不多啊,告一段落了啊,我们就打一波广告, 那么也欢迎大家啊,报名由我跟沐雨老师啊,还有啊,还有志杰老师,我们共同来主讲的啊,二零二六大模型 agent 开智能体开发实战课啊,这样的一门付费课程 课程啊,是我们三位老师共同来主讲啊,是一门一百个小时以上的完整体系大课,那么今天我们其实讨论了非常非常多啊,关于大模型 a 智能开发相关的一些这个内容啊,当然我们今天讨论的呃,可以说非常难啊,非常复杂,而且很多都是行而上啊,都是一些理论层面上的啊,这样的一个这个东西, 那么啊,大家如果接下来想进一步的来进行深度的时间落地啊,或者你是想从零开始来学习大模型 agent 开发,就未来想要去参与到啊这个大模型 agent 技术岗位当中去的话,那么那么也非常欢迎大家啊,报名这样的一门啊,由我们三位老师共同来主讲的大模型 agent 的 开发实战课, 那么课程是一百个小时以上的完整体系大课,能够帮大家零基础入门,然后直达目前顶尖大厂大模型 agent 的 开发中高级岗位能力要求的这样的一门课程, 那么这门课程啊,其实我们现在已经开设到第二十四期了哈,这今年的这个春季班啊,已经是第二十四期了,我们从二三年的这个五月份啊开设第一期到现在啊,已经 这已经是将近三年的啊这个时间了啊,三年的时间里面已经也是有两万多名的学员报名了我们这样的一门课程,也有非常非常多的学员啊,现在是已经是加入到啊我们大魔仙 a 智能开发的这样的一个技术岗位当中来了,那么这门课程呢,是可以帮他零基础入门来进行的学习,然后呢可以全方位淬炼大家 大模型 a 证的开发的啊能力的技术体系啊,那么这本课程是可以帮大家零基础入门,然后直达目前顶尖大厂的五十万年薪的大模型 a 证的开发岗位能力要求的 这个五十万年薪啊,这个我们不是随便说说啊,我们也不是随便糊口的个周了一个这个数字出来啊,是因为我们团队其实也是在进行大模型 a 证岗位这样的招聘啊,我们 课程里边讲解的内容就是我们团队的岗位的要求啊,那么那其实我们今年金三银四的内容就是我们团队的要求啊,那么那其实我们今年金三银四的学员群里先 已经进行了很多轮的这个招聘啊,我们招聘要求非常简单啊,大家只要是学了我们的课程啊,学了百分之六十到百分之七十以上啊,就可以啊加入到我们公司团队里面啊,来进行一个这个工作了啊,就可以顺利的拿到大模型 a 证的开发的岗位的这个 offer 了啊,所以呢,我们这样的一门课程是完完全全严格按照目前顶尖的 大厂的技术岗位的要求呢,进行的内容的设计。那么这门课程啊,总共呢是六个模块,我们先给大家看一下啊,现在这门课程完整的课程介绍。 首先啊,第一个模块呢,是来会讲解啊,关于现在顶尖的大模型的一些基本的技术入门啊,包括顶尖的在线大模型的 a p i 的 接入使用,本地开源模型的部署和使用。然后呢,智能体 a 证的开发的理论基础和基本开发工具,然后呢, rack 解锁增强技术啊,开发入门等等等等啊,这是第一阶段,然后第二阶段我们会进一步的来探讨啊,关于热门的 a 证的开发框架的上手实战啊,包括一些零代码啊, d 代码的开发工具啊,像这 codes, define, 还有 n 八 n 呐,也包括那一些顶尖的 rack reg 框架啊,主要是拉玛 index 啊,在开发时代也包括新兴的 agent 开发框架时代啊,像这 agent sdk 啊,还有 agent school 啊,还有 adk 等等等等。然后同时啊,还包括工业级的 agent 开发框架啊,这主要是 long chain and long graph, 那 么这个当然是我们会准备主讲啊,这样的开发框架,那么刚刚啊,我其实 弹幕上啊,有同学在问到啊,说啊,我们能不能够使用 long chain 来复现一版的 cloud code 呀等等等等啊,其实我们课程里面已经使用 long chain 就 复现了一版 open cloud 了啊,然后呢,我们课程里面也有啊, cloud code 的 这个复现啊,只不过呢,使用 agent sdk 去进行的这个开发。 然后呢,当然底层开发思思路其实是一样的。好在我们课程里面啊,我们会从头跟大家去讲啊,关于最新版 long chain 应该做出来进行使用啊,然后呢,如何啊?去复刻这些顶尖的这个,呃, agent 啊,就是这一些像 open cloud 呀,还有 cloud code 呀,这一系列 agent 复刻的这个核心的思路啊和方法 啊,同时第三个第三个板块,我们会进一步来讲解啊,关于工业级的 agent 开发境界的这个技术,包括智能体的内部的啊,多工具的管理呀, m c p 工具的这样的一个使用啊,包括啊,这个 agent, 呃, reg 进阶的这个技术实战呢,包括纯文本的解锁优化啊,包括图文混排的 pdf 解锁啊,多多多模型的 pdf 解锁,结构化数据的解锁和 graph reg 基于知识图谱的解锁啊,还有视频信息解锁等等等等。 那刚刚啊,就有同学问到啊,说我上下文特别特别长啊,然后呢,呃,我们怎么样啊,去这更好的去读取啊,或者是去获取上下文这样的信息啊,那么要么你就是进行 compact 啊,压缩对不对?要不的话,你可能就是采用 reg 技术啊,来进行更高精度的这样的这个解锁。 好,那么再往下啊,还有关于智能体长短期记忆的这样的管理啊,和智能体上下文工程,这都是构建我们智能体直观重要的相关的这样的技术。再往下啊,还有关于多智能,多智能啊,记忆多智能 某体 agent 的 系统开发啊,对不对?然后呢,像对于现在的啊,这个 cloud code 来说啊,它呢其实只有一种啊,这个某体 agent 的 系统就是所谓的 supervisor 这样的架构,一个主 agent 不 负责干活,负责分配活啊,剩下很多的啊,这些 agent 负责来进行干活。 那么除此之外啊,我们说其实还有啊,像这 handoff 的 这个架构,还有这个 router 架构啊,还有 network 架构等等等等啊,有这四种主流这个架构,那么这些架构呢,都会在我们正科里面啊,来进行讲解介绍。那么 再往下啊,还会包括啊,会讲解关于大冒险高效微调啊相关的这样的内容啊和呃,紧接着啊,我们这这个呢,就是我们第三个模块内容啊,第四个模块呢,我们进一步来讲解关于工业级的大冒险 a 阵的部署上线啊相关的一些这个内容,包括 啊,像智能体项目部署上线的这个基本理论啊,包括智能体开发部署上线全部的这个流程对不对?好,从最开始的前后段功能设计啊,到这个接口的这开发啊,到前后段的连调,到最后的项目上线,一整个完整这个流程啊,然后也会来讲解关于两大的 容器啊,交啊,两大容器化啊,这个交付工具这样的实战啊,主要是刀口跟 kbs 的 这样的使用,同时也会来介绍关于智能体的追踪和优化相关的这样的内容。 同时这门课程我们呢现在总共呢还有啊,总共呢是十大项啊,工业级的这个实战的这个案例啊,分别是长文档啊,定制化文档编辑 agent 啊,然后文档审核 agent 啊,图文视频 agent, 语音交互 agent 啊, deep research agent 啊,然后呢数据分析 agent, 然后啊数据分析格式化 agent 啊,垂玉的 agenta reg 系统啊,多模态 reg 本地知识库解锁系统啊, nintendo pro ppt 生成系统啊等等等等,然后同时还会有四大项, 这个百万用户级别的啊,这个商业化的项目,工业级项目实战啊,分别是企业级多模态啊, rek 支付解锁实战项目,然后全新一代智能客服 a 智能开发项目啊,其实我们所有项目都有对应的演示视频啊, 这这这演视频可能会比较长啊,我们这个啊就不展开给大家看了啊,大家可以自己登录我们的主页来进行观看,然后啊包括一比一复刻 mana 通用智能体的啊,这样的项目和啊这个 ai 编程啊跟数据分析 a 阵的开发项目。当然在我们的春季版里面,我们还新增了啊丛林去赴县 open club 啊这样的个项目,完整的相关的内容啊,那么在我们的这个春节班里面,我们是完整的大家去复现了一个啊,这个复翻 openclo 啊,这样的一个这个项目啊,然后呢所有功能呢,都会从零来进行实现啊,这个项目其实就是 呃使用 long chain 啊来进行的开发啊,在开发过程当中呢,我们就跟大家详细去介绍啊,它背后的核心的啊这样的一个理论知识体系。 那么除了啊这样的一门呃大冒险 a 型开发实战课之外呢啊,我们说还有两门课程啊,一门课程呢是 open core 啊,这个技术实战课啊,这门课程呢是由我来主讲的一门啊,这个总共呢是二二二十到三十个小时的啊,这样的 open core 智能 体的应用实战课啊,这门课程是目前是呃,我正在讲解啊,这样的一门联赛更新这样的课程啊,但这门课程其实主要就是来讲解关于 open core 啊,这样的 这个技术应用啊,实战相关的一些这个内容啊,那么 openclaw 这个定位呢,其实和呃 cloud code 还是有些区别哈, openclaw 其实是更加通用的一个智能体啊,它呢其实是更呃有更低的这个使用这样的个门槛,对不对?然后同时呢也能够覆盖更多的啊,一些实际应用的这样的岗位。 那么这个 openclaw 啊,实战课里面我们会给大家介绍各式各样不同类型的这个应用范式啊,和基本上所有工作的各个不同类型的应用范式啊,和基本上所有的课程呢。最后我们还会介绍目前四个 核心的啊,这 open 可捞商业变现的啊,一些这个流程啊,包括全自动的 ai 内容工厂啊,包括这个全自动的啊,公司网站运维和建设啊,包括这什么呃艺人公司的啊, ai ai 员工团队啊,如何进搭建啊,以及呢,包括垂雨 ai 自动化的啊,这个服务开发等等等等啊,这个呢是属于 open cologne 啊,相关的这个技术内容啊,但是 open cologne 其实是一家更加通用的一项啊,技术开发这样的工具啊,或者说一项通用这个智能题使用的这样的个指南,那么和我们刚刚大家所看到的啊,这个 agent 开发实战课其实完全不一样的方向哈,因为 agent 开发实战课其实是更加硬核的 这样的一门啊,这个主要是面向技术人啊,大家如果未来是想做 a 证的开发啊,来去量身定制的这样的课程。但是除此之外,我们还有第三门课程啊,是由木鱼老师来主讲的 web coding ai 编程实战课啊,这个课程,这个啊,重要性就不言而喻了,对不对?这个 web coding 嘛, 哎,这个,这个,去年我们这个时候啊,大家说 ai 编程可能会还会觉得比较早,早啊,时间还比较早,那么到现在啊,大家如果说自己不会 web coding 啊,这个,这个属于是古法编程啊,是不是啊,人类手工编程啊,这是属于非遗传承的这个技术 啊,所以现在我们基本上所有场景里面啊,我们很都会呃,会用到啊,这个 web coding 这样的这个技术啊,都会来进行 ai 编程啊,那这门课程呢,是沐浴老师来主讲的啊,一门可以说啊,已经是开设第二期的 完整的 web coding 的 体系大课啊,然后呢,能够帮大家零基础啊,零门槛啊,上手 web coding 这样的工具,然后呢,开始啊,你的 ai 编程之旅啊,这可以说是现在所有程序员必备的这样的技能了,我们 可以讲解啊,像 course code code 啊,这一系列 ai 编程工具这样的使用啊,然后我们也会来讲解啊,关于像 open code, 对 不对啊,这样的开源的 ai 编程工具,这样的这个使用啊,然后呢来介绍啊,关于 ai 的 skill m c p 啊,这样使用啊,和 像 figma 啊, pencil 来进行前端设计的一些工具啊,然后呢,像以及啊,像这个 openstack, 还有 superpowers 啊,一些非常有用的,非常实用的,能够提升你的 ai 编程的水准的啊,一些这个 skill 的 这个使用啊,也包括像现在 cloud code 啊,它的 agent teams 啊,多智能体协调来进行开发的一些这个方法等等等等。 那么这门课程啊,是由沐雨老师来去主讲的啊,一门课程啊,这个对不对啊?关于 ai 编程的这个重要性啊,这个其实呃已经是非常非常重要的哈,因为其实呃这个不仅仅是现在啊,像 anthonpick 啊,像在国外顶尖的大厂啊,大家是在使用 ai 编程,国内大厂也在用 ai 编程哈, 不仅国国内大厂在用 ai 编程啊,基本上所有的岗位大家都是在用 ai 编程啊,很就是除非一些特特定的这个情况啊,这可能还需要手工编程之外啊,剩下的 ai 编程呢,它已经是属于大模型 a 智能应用的啊,一个非常成熟的这样的一个领域了。 那么在这个课程里面,我们不仅会教大家啊,怎么样从零开始去使用这 ai 编程工具上手来进行 ai 的 编程外部口令啊,同时呢,我们也会 从头啊开始教大家啊,怎么样从最开始能写高质量代码,到做出 demo 啊,到精准的输出啊,到完成一整个完整的应用啊,到推送产品上线啊,到产品二十四小时的这个运行, 到最后啊,对不对啊,全站的开发啊,到运维的完整的这个技能体系啊,写在这么课程里面,我都会来进行详细的这个介绍, 那么刚刚我们给大家看到的啊,像这样的一个复饭,呃呃呃, cloud code 啊, web 这样的一个这个程序啊,其实就是我们当前这门课程里面给大家提供的一个应用的一个工具啊,这是其中一个工具啊,我们这门课程里面其实还很多其他的工具 啊,当然其实这门课程里面我们重点是来讲啊,像 cloud code 怎么样去用好它,去完成一系列的啊,这个开发的这样的一个项目。而啊这是我们的 agent 开发实战课,那门课程里面主要是会讲它底层的原理,一个呢是 进行使用啊,一个呢是底层原理的这个介绍啊,这个呢其实是各不相同,有所侧重的这样的点。当然对于 ai 编程来说,我相信很多同学可能也会有这样的误解,大家会觉得 ai 编程吗?有嘴就行啊,对吧?只要跟他说我要开发什么,他就能完成开发,其实并不是这样,哈哈,现在其实对于很多的 a 证的使用来说,还是有不小的这个门槛的话, 你可能还是需要掌握很多的一些这个技术,然后同时也得积累一些这个经验,然后才能够完成一些很好的产品这样开发。 大家现在看到的都是我们当前课程里边会给大家讲解的啊,一系列这个产品的这样的一个这个开发,那么这门课程啊,我们就会好好的跟大家来介绍啊,关于从工具的使用啊,到我们现在前沿的实践经验的沉淀和总结啊,一整套完整的 web coding 相关这样的内容。好,那么以上啊,就是我们这三门啊,付费课程的内容介绍啊。

现在 codex cloud code 能直接帮你操作网页了,你给他一句话,他能自己打开网页,点按钮填内容,然后把流程跑完。他真正省掉的是你自己去点网页跑流程这一步。 如果大家经常让 a 站的测网站跑页面流程,做网页自动化,这个值得试。那如果平时根本不用 a 站的动网页的兄弟们,可以不着急去试,因为他不是零门槛,碰到有登录提交这个动作最好需要自己盯一下。 我的结论是,经常用 a 阵的操作网页的值得。是目前用 a 阵的,但不涉及网页操作的。先别装,后面我会持续实测这类 ai 开发工具,只帮大家判断一件事值不值得装。

今天我花二十分钟把这个可绕的扣的给装起来了,其实呢,这个还是比较简单的,我今天就来给大家演示一下,先把这个可绕的扣的零摩擦, 帮大家先装起来,然后再告诉大家后面怎么去领免费的偷客人怎么 处理,自己的文件怎么用。我们首先就准备几样工具啊,一个就是电脑,电脑肯定是要有啊,但这个性能是无所谓。还有一个就是 qcloud 的, 这之前我教大家装过,如果不会的话就翻一下前面的视频, 然后还有一个就的不希克的网页版本,你如果有什么问题,安装过程中出错了什么的,你直接截图发给他,他会给你解答。 那 qq 二的你直接告诉他帮我安装一下 cloud code, 然后他他就会给你自动安安装上去, 这里我已经安装好了,我看一下能不能演示一下 qq 二呢,他每天也是有免费的额度的,所以说处理这些小小事情还是绰绰有余,这就是已经在在装了啊, 你不用管他,他自己会跑,跑完以后呢,那就装好了。那如果呃出问题呢,你就截图发给那个 deepsea 是 吗?根本不用人为的来操作,这难点呢,就是你这个装好以后怎么用,因为他用 cloud code 的, cloud 的 这个这个模型呢是海外的模型,你国内的话还用不了,需要配置一下,我之前用的是 deepsea, 这个配置起来比较简单, 等会告诉大家,如果还不清楚的可以加我的粉丝群哦,我群里会把相关资料上传上去,有问题呢也可以和群友大家一起交流一下,你看安装完成让我来确认一下这个内容。好,这安装好了,然后这些就是文件, 这还有个启动文件啊,直接开始刚刚第一个跳,跳出来的是是是否信任这个文件夹,直接打确定回车就可以了 啊,这里呢就可以开始聊了。我周边之前是有装过的啊,有装过这个模型的,现在已经切换到小米的这个这个大模型, 所以说他能回答我正常的话,你是这里是他会报错的,因为你没有接入这个 cloud 的 这个模型。 那我们怎么办呢?看一下啊,就你先要登录这个 deepsea 的 开放平台,然后 api 开放平台点进去,点进去呢,他这边的话会有一个,呃,个人认证, 个人认证啊,就认证完了以后呢,他会给账号里面充十块钱,那十块钱的话你用一下其实可以用好一段时间啊,再点这里 a p r k, 你 自己创建一个,然后呢,你这个 钥匙拿到以后,直接创建密钥的一个脚本,直接把对这一段文字呢全部发给那个,如果不知道就让 qcloud 帮你找你这跑完以后呢,它会新建一个 apikey 的 这个 hup, 这个自动程序里面呢,他是有你的,有你的这个密钥,把这个命令中的这个密钥替换成你真实的这个 api 的 这个密钥, 就是我刚刚复制的那个外串密码,然后还是发给你电脑这一串文字,那么他会给你新建一个 这个文件,它里面会告诉你是用的是哪哪个大模型吗? 我这里是 deepsea, 所以 说他已经写好 deepsea, 如果说要用好一点模型,你直接给他替换成好一点模型,然后那两个文件生成以后呢?你就可以重新打开这个 试一下,你打开试一下,你随便给他发句你好或者怎么样,他如果能回答你,那么就说明你这个已经是成功了,就是已经从卡拉的模型切换到 deepsea, 那 么你就可以用国内的这个大模型去调用这个程序。 那大家如果遇到什么困难或者不懂的,可以加我的首页粉丝群,大家一起过来探讨一下吧。


我不会写代码,但是我现在最离不开的工具是 cloud code。 我 第一次看到这名字的时候,其实我想都没想,直接就忽略了一个名字里带 code 的 东西,你想那不就是程序员用的吗?跟我有啥关系啊?但是后来我用了一阵,我跟你说,现在每天早上第一件事就是打开它,给它布置今天的任务,哎,你说我一行代码都不会写,我用它干啥呢? 先说一个我自己的事啊,我是做产品经理的,我这活呢,经常会做一个东西,叫精品调研。那精品调研呢?就是在产品的各个阶段,我需要去了解信息啊,或者去做决策的时候,哎,我要去做调研分析报告, 然后你可能会去查一些公司背景啊,创始人故事啊,或者是 app store 的 评论啊,还可能去分析它的商业模式啊等等。但你知道认真做一份这个东西要多久吗? 一到两天就是你每一步都已经熟的不能再熟了,那你还是得一步一步的去跑,那这个时间你是省不下来的。然后有一天我就想啊,那这套东西能不能我直接告诉 ai, 让它照着来呢?哎,我就试了一下,我先查啥后查啥,判断一个产品好不好的标准是什么。哎,我全都写进去了。 现在呢,我只要输入一个网站或者一个名字,或者是一张 app 的 截图,那十几分钟一份分析报告它就出来了。哎,这个东西是怎么搞的呢? 你想想我们平时是怎么去用 ai 的 啊?你遇到一个事,你去问他,他给你一个答案,觉得不够好呢,我换个说法再问一遍,然后还不行啊,我换个 ai 再来。那问完豆包问 x g p t, 问完 x g p t 呢?我问 cloud, 哎,问了一大圈,自己坐那综合一下,哎,身边的人基本上都这么用,对吧? no, 你 说帮我做个精品调研,他会给你个模板,跟网上搜的差不多,你说帮我写份报告,他会给你一堆正确的废话,也就是他只能给你最通用最安全的, 谁来问都一样的那种答案。那这个答案对谁都适用,也就意味着对你来说其实是没啥特别的用的。所以我就换了个思路,我不问他问题了,哎。我现在告诉他,拿到一个产品,第一步要干啥,第二步要干啥,一直到最后出报告。他 是按照我的理解来的,并且我把一些素材放到指定的文件夹里,让他去剪辑,我告诉他那些东西呢,都是我一点点攒出来的判断。那 ai 呢?只是照着跑,他自己去调用工具去分析我给他的素材,去查看补充一些素材。就这么一个事儿,我想通了之后就刹不住了,我英语贼差, 学习本身呢,又是一件特别反人类的事情。那你让我去看一篇英语论文,我得先花半天去理解,哎,最后可能还发现,这篇论文其实跟我想做的根本不搭边,所以我知道那些论文里面肯定有好东西。那我就是够不着,哎,贼憋屈。那后来呢,我就做了一个 skill, 那 比如说我想要了解怎么 去设计一个 agent, 那 我就一句话,扔进去,它会自动去搜索论文呢,去下载,然后翻译成中文,存到我的电脑里头,然后按照我的需求去生成一份报告,那报告里面带着锁页,方便我去回头查看原文。 以前连看都不会看的东西,现在随手就能学会。就你懂我的意思吧,我的英语还是很垃圾,但是那个门槛直接没了。再后来呢,我就干脆把所有的事都塞进一个文件夹里面 拿。调研呢?论文呢?写文章啊,全在一个地方,我打开这个文件夹,里面没有任何一行代码,全是我这几年攒下来的方法和流程。哎,只不过现在是 ai 能照着跑了。所以你看啊,可乐扣的这个名字里面带扣的所有人第一反应都是程序员用的东西, 但是他最大的受益者反而是不会写代码的人。哎,这事其实挺反直觉的,但你用上一次你就懂了。那,那怎么去开始呢?你就想一个你工作里面最烦的事,想好了直接跟人家说,我是做某某某的。那我经常做一件事,具体的步骤是,第一步做什么?第二步做什么?第三步做什么? 你帮我把这一套流程做成自动的以后,我只要给你一份什么材料,你就给我出一份什么东西。举个例子,比如说你是做市场的,你就 说我是做市场分析的,那每次调研一个行业,我要先查行业的规模,再查头部玩家,再查最近的融资情况,最后整理成一份简报,你帮我做成自动流程以后,给你一个行业的名字,你就出一份简报。比如说你是做 hr 的, 你就说我做招聘呢,每次要筛选一个后人,那我会先看他基本能力,再看他的软实力,看他的核心能力,最后整理一份面试的提纲。哎,你帮我做成流程 以后,我扔你一份简历进来,你直接给我一份面试的提纲。第一次出来肯定是不完美的,你要告诉他哪不对,他改改两三次就特别顺手了。你不用会写代码,就是你把你手里那些闭着眼睛会做的事说清楚就行。好,就这些,我们下期见。拜拜。