스크립트
00:00:00Tanya Cushman 审核人:Peter van de Ven
00:00:12大家玩得开心吗?
00:00:15哦,你们得给我多一点热情才行。
00:00:18自我介绍一下,我叫凯·马尔科姆(Kay Malcolm)。
00:00:21我是一名退休的嘻哈舞蹈教练。
00:00:24所以,如果你们的活力没有达到这个水平,那我们要开始——
00:00:28你们玩得开心吗?
00:00:30好吧,好吧。
00:00:32那么今天我们要讨论的内容是这样的。
00:00:36现在,大家已经听过很多关于两个字母的词了。
00:00:39有没有人想猜猜那两个字母是什么
00:00:41也就是我今天要讲的内容?
00:00:43答得不错,DB。
00:00:48我要讲的是AI,
00:00:50但我具体要讲的是智能体封装框架(Agent Harnesses)。
00:00:54但在那之前,我想向大家介绍几个人。
00:00:57可以吗?
00:00:59行还是行?
00:01:00可以吗?
00:01:01可以。
00:01:02我给出了选择。
00:01:04行吗?
00:01:04言归正传。
00:01:05好啦。
00:01:05行,好。
00:01:06这是我的团队。
00:01:09我在甲骨文(Oracle)管理一个对外数据库产品管理团队。
00:01:14我在甲骨文待了很长时间,整整20年。
00:01:17说来有趣。
00:01:18我12岁就开始工作了,所以别去算
00:01:21也别在心里默默加年龄。
00:01:24我们遇到了一个问题。
00:01:27问题是,我有一个团队负责平台开发。
00:01:33然后我还有另一个团队负责 Live Labs 的内容开发,
00:01:37这是一个我自己编写的平台。
00:01:40所以,没错,我是个工程师,但我也算是个伪开发者。
00:01:44接着,我还有一个负责质量保证(QA)的团队。
00:01:48然后我还有一个团队负责前端开发。
00:01:52结合AI,作为一名领导者,我发现了以下情况。
00:01:57因为在2025年的“无节制消耗Token”时代,毕竟你知道我们现在不再无节制消耗Token了,对吧?
00:02:05我们现在在进行负责任的AI应用。
00:02:08但在疯狂消耗Token的时代,我发现虽然AI让团队中的个人
00:02:15变得更快了,但它却带来了另一个问题。
00:02:23它并没有让我的整个团队变得更高产。
00:02:28原因在于,当荷兰的一个团队在我这里早上4点钟提交代码时,
00:02:37因为我有一半的团队在欧洲、中东和非洲(EMEA)地区,另一半团队在美国。
00:02:43他们提交了代码,却没有提交他们在codex中的上下文。
00:02:49我们在甲骨文使用codex。
00:02:51所以当美国团队醒来时,
00:02:56他们拿到了代码,却没有任何关于上下文的信息。
00:03:00因此,我们用AI去解决了一个由AI创造的问题。
00:03:07我们是这样做的。
00:03:08哦,好吧,让我先讲讲这个。
00:03:10那么,谈谈其中的一些问题。
00:03:12正如我所说,上下文没有被共享。
00:03:15GitHub没有追踪这一点。
00:03:18我的代码库正在出现分叉。
00:03:21我一直在问向我汇报的经理们,你们的团队到底怎么了?
00:03:26为什么我们的进展没有变快?
00:03:29我们在Token上花了这么多钱。
00:03:31我们在AI上花了这么多钱。
00:03:33然而却依然有所欠缺,因为我们仍然要花时间
00:03:37来进行测试和验证。
00:03:39所以,我们的最终收效并没有真正为我们发挥作用。
00:03:45因为Git记录的是代码,而不是人类的意图。
00:03:49所以,这就是个问题。
00:03:50尽管代码创建不再是我们的难题,但我们仍然存在瓶颈。
00:04:03我们需要一个协作层。
00:04:05现在,我的团队成员确实也在观众席里。
00:04:10所以,别评判我。
00:04:12你们知道自己是谁。
00:04:13我并不是说你们所有人都没有进行协作。
00:04:17但现在,我们有了一位新团队成员。
00:04:20而这位新团队成员就是AI。
00:04:23因此,我们需要弄清楚如何追踪我们的进展和下一步行动。
00:04:29如何合理解析智能体所做出的决策。
00:04:39我们需要弄清楚如何解决疑问和冲突。
00:04:45好。
00:04:48先搁置我的问题。
00:04:49大家能帮我把这个问题先放一放吗?
00:04:51就放在这儿。
00:04:51我们把它暂存进一个小盒子里面。
00:04:54让我来定义一下到底什么是企业级智能体。
00:04:59现在,大多数人认为企业级智能体就是大模型和工作流。
00:05:05有多少人同意我的看法?
00:05:08天哪,这群观众真难应付。
00:05:10好吧,有一个人。
00:05:12好吧,剩下的其他人觉得还有更多内容。
00:05:14好,让我们看看有什么。
00:05:18有没有可能一个真正的企业级智能体还拥有工具?
00:05:26工具是它执行任务的方式。
00:05:30上下文。
00:05:33上下文,也就是上下文窗口。
00:05:35这就是实际提示词里包含的内容。
00:05:39记忆。
00:05:43如果你在想,等等,凯,还有记忆。
00:05:46你刚才不是说模型有点像整个运作过程的大脑吗?
00:05:51别急。
00:05:52我们接下来会详细聊聊记忆。
00:05:55检索。
00:05:57因为你并不希望把所有东西都检索回来。
00:05:58所以,这就是能够准确检索出所需信息的能力。
00:06:03然后,我知道这里有很多开发者,而你们可能并不关心安全性。
00:06:11我关心安全性。
00:06:13因为我在最安全的数据库公司工作。
00:06:17而且我以前曾在一家无可奉告的机构工作过。
00:06:22但安全护栏同样非常重要。
00:06:25这就是封装框架(Harness)。
00:06:27我习惯用比喻和故事来讲事情。
00:06:31因为如果我把这个和漫威联系起来,你就完全懂我在说什么了。
00:06:38所以,智能体,你可以把它想象成漂浮在玻璃罐里的大脑模型。
00:06:46再加上这个封装框架。
00:06:49这个封装框架就是身体。
00:06:52因此,它是智能体实际执行操作和完成任务的途径。
00:06:58记忆嘛,那是中枢神经系统的一部分。
00:07:03大家还记得吧,中枢神经系统连接着大脑和身体的其他部位。
00:07:08比如腿、胳膊。
00:07:10那是中枢神经系统中承载上下文的部分。
00:07:16所以,你们还记得我对Git遇到的问题吗?
00:07:20我真正需要的是记忆。
00:07:21好的。
00:07:22所以,记忆有多种类型。
00:07:26我挑出了五种,也就是人们最常讨论的五种。
00:07:29这些是我希望你们能记住的。
00:07:32第一种是短期记忆。
00:07:34也就是会话记忆,对吧?
00:07:36因此,如果你在存储AI进程的记忆,那么短期记忆就是,
00:07:44如果你在使用chat、cloud code,对吧,codex,随便选一个。
00:07:49长期记忆则是能够跨会话持久保存的内容。
00:07:55情景记忆(Episodic memory),嗯,上一次我和某个对象互动时发生了什么?
00:08:06这就是你的情景记忆。
00:08:09程序性记忆。
00:08:11工具。
00:08:12所采取的步骤。
00:08:15最后是语义记忆。
00:08:17之所以提到语义记忆,是因为我们在讨论企业级智能体。
00:08:21我们讨论的不是我构建的那个智能体——萨沙·费尔斯(Sasha Fierce)。
00:08:25因为正如我之前告诉大家的,我曾是一名舞者。
00:08:28所以,我的幕僚长当然要叫萨沙·费尔斯,因为那是碧昂丝的化身。
00:08:34这里有碧昂丝的粉丝吗?
00:08:37好吧,抱歉。
00:08:38好了。
00:08:38我们得集中注意力了。
00:08:40好。
00:08:40这些就是记忆的类型。
00:08:43现在,当你在定义这个真正的企业级智能体以及这些记忆时,
00:08:49你还需要考虑一个问题:在哪里存储它们。
00:08:53所以,我要给大家讲个故事。
00:08:55但听我讲这个故事时,你们得向我保证千万别评判我。
00:09:00你们答应吗?
00:09:06你们答应吗?
00:09:08你们没有在录音吧?
00:09:10因为这可把我写得不太光彩。
00:09:12好吧。
00:09:12行吧。
00:09:12以前的数据世界非常单纯。
00:09:14我在甲骨文待了很久,但我以前是客户出身。
00:09:17那个客户叫南方电力公司。
00:09:19那是一家电力公司。
00:09:20我常驻亚特兰大。
00:09:22南方电力公司雇佣我,是因为我是个顶级的性能调优专家。
00:09:28只要你有一个SQL查询。
00:09:29我是说,这暴露了我的年纪,但无所谓。
00:09:31只要你有一个SQL查询。
00:09:32我懂所有的 init.ora 参数。
00:09:34甚至连那些你打电话给技术支持时,他们说
00:09:36“别记住这些参数”
00:09:37“别把它写下来”
00:09:38我都把它们记在了我的小本本上。
00:09:40我能把一个查询调优到极致。
00:09:43然后,你们当中有人来到了我的办公桌前。
00:09:47因为,我的意思是,那时候的世界只有行和列。
00:09:50那真是我风光无限的黄金时代啊。
00:09:55然后他们说,嘿,我需要存储非结构化数据。
00:10:01为什么?
00:10:02你为什么要这么做?
00:10:04所以,作为凯的我,那个勤勉的DBA,我就说:
00:10:09让我研究一下,然后再回复你。
00:10:13我回复他了吗?
00:10:16我根本没回复他。
00:10:18现在,关于南方电力公司,你必须知道的一点是:
00:10:21对于DBA管理の每一个数据库系统,
00:10:24我都必须参加两场会议。
00:10:26如今,当我听到“萨班斯-奥克斯利法案”时,
00:10:28我的喉咙深处还是会觉得一阵反胃。
00:10:31所以,我必须参加安全会议和补丁会议。
00:10:34每周都开。
00:10:35雷打不动。
00:10:37现在,由于这位开发人员安装了一个专门用于非结构化数据的数据库。
00:10:44好吧,屋里坐着的可都是聪明人。
00:10:46那我现在要参加多少个会议?
00:10:54四个。
00:10:55好吧,我有点生气,但我想,好吧,我们能应付。
00:10:59然后他们说,凯,既然你这么擅长调优,
00:11:03我需要你帮我弄清楚这个关系。
00:11:06当时南方电力公司的工作方式是这样的,
00:11:08有一个“可能会死人”的应用。
00:11:11它就像诺基亚手机一样,是给那些爬电线杆的人用的,对吧?
00:11:18所以,你们都经历过暴风雨然后停电的情况吧?
00:11:22然后你挺确信,大概一两个小时内就会恢复供电。
00:11:27嗯,那个系统本该用来通知那些爬上电线杆
00:11:32冒着生命危险去恢复电力,有时会出现
00:11:37假阳性或假阴性。
00:11:39所以,他们想要查看该地区所有其他的电线杆
00:11:46试图摆脱误报或漏报的问题。
00:11:50于是,我用一个SQL查询实现了这一点。
00:11:52而且效果好得惊人。
00:11:53那是一个五层嵌套的union all语句。
00:11:57那是我最杰出的作品之一。
00:11:59虽然它可能花了大约20分钟才跑出来,但它就像是图数据库的前身。
00:12:06对,他们安装了Neo4j。
00:12:10那么现在,我要去开多少个会?
00:12:13六个。
00:12:14这可真是个问题。
00:12:16所以,我——噢,等一下——我有点扯远了。
00:12:19所以,你知道我做了什么吗?
00:12:20我辞职了。
00:12:23我离开了那儿,来到了甲骨文,因为我觉得这是个问题,也许我可以去甲骨文
00:12:26来帮忙解决它。
00:12:27然后乔·蒙迪打电话给我说:“嘿,我们正在安装Redis。
00:12:33甲骨文已经落后了。
00:12:35我们现在有了向量数据库。”
00:12:37好吧。
00:12:40但问题是,乔。
00:12:45现在的智能体需要访问所有这些数据。
00:12:49所以,如果数据在一个甲骨文数据库中,接着它又在一个非结构化JSON数据库中,
00:12:55如果它还在图数据库和向量数据库中,你唯一的真实数据源在哪里?
00:13:03智能体必须弄清楚这一点。
00:13:04有时候它能弄对。
00:13:08大多数时候它会弄错,并且会烧掉一大堆Token。
00:13:12所以,现在,如果你想把记忆存储在某个地方,你可以把它存放在文件系统中。
00:13:20你可以把它存放在Claude或ChatGPT里,因为我们都知道那个memory.md文件。
00:13:29但这会是个问题。
00:13:31现在,我想说明这一点。
00:13:32我需要四个志愿者。
00:13:33我能看到你们。
00:13:34请举手。
00:13:35一个。
00:13:36两个。
00:13:37好吧,我看不清。
00:13:38三个。
00:13:40我还需要第四个。
00:13:41啊,后面那个。
00:13:42好,后面第四个。
00:13:44你将扮演我们老而弥坚的可靠角色。
00:13:47你将成为一个关系型数据库。
00:13:48对不对?
00:13:50你明白你的任务了吗?
00:13:52好的,然后这里还有一个人。
00:13:54你将成为我的非结构化数据库。
00:13:57然后我的另一个呢,啊,很好。
00:14:00你将成为我的图数据库。
00:14:02行吗?
00:14:02关系老兄。
00:14:03你看上去就像个精通关系的人。
00:14:05好的,非常好。
00:14:06第四个。
00:14:06我的第四个在哪儿?
00:14:09是你吗?
00:14:09是的。
00:14:10对,你是我的向量数据库,好吗?
00:14:15现在,大家都安安静静的。
00:14:20对于我的四位志愿者,我需要你们所有人。
00:14:24我要对你们说一句话,
00:14:27我需要你们所有人决定如何存储它,
00:14:31以及谁来掌握唯一的真实数据源。
00:14:33你们不能离开座位,而且必须小声耳语,
00:14:37因为如果你说话太大声,就会额外消耗你五个Token。
00:14:40对不对?
00:14:41好,准备好了吗?
00:14:42行。
00:14:44奶牛跳过了月亮。
00:14:48开始。
00:14:51嗯。
00:14:53这样根本行不通,对吧?
00:14:55这就成问题了。
00:14:56好吧。
00:14:58甲骨文,如果你忘掉——如果不介意的话,
00:15:02如果你忘掉我说的一切,只记住一件事,
00:15:06甲骨文可不是你想象中的那个甲骨文。
00:15:09这就是我今天来这里的原因。
00:15:11你们有多少人知道甲骨文能够原生支持——
00:15:15在同一个表中,甚至细化到同一个分区,
00:15:19存储JSON、图、向量(那边我的向量朋友)、
00:15:24我的JSON朋友,还有空间数据?
00:15:27你想让你的记忆是不可变的吗?
00:15:30难道同一个数据库里没有区块链吗?
00:15:32请举手。
00:15:34是的。
00:15:36我们存在营销问题。
00:15:39所以,任何数据类型都可以存储在26AI数据库中。
00:15:44任何工作负载。
00:15:46任何地方。
00:15:47AWS、GCP、Azure、OCI、本地部署。
00:15:52兼具选择与灵活性。
00:15:54所以,现在当我们结合这一点来谈论智能体时,
00:15:57我希望能够把我的长期记忆和程序性记忆存储在关系型数据库中。
00:16:02在JSON中,我想存储我的短期记忆和长期记忆。
00:16:05图数据库,我想用来存储程序性记忆,因为程序性记忆关乎我如何厘清关系,
00:16:09也就是步骤。
00:16:11至于我的情景记忆和语义记忆,我需要运用向量,然后也将其作为文本存储起来。
00:16:17现在,如果我有四个不同的数据库,正如大家所看到的,它们无法相互通信。
00:16:25这将会是个问题。
00:16:27因此,我今天要告诉大家的是,Oracle AI数据库是存储这个将为你的技术框架赋能的
00:16:35智能体记忆的最佳场所。
00:16:38记住,你的技术框架就是你的身体,而那段记忆就是你的中枢神经系统。
00:16:44好了,回到Poly。
00:16:46所以,我之前遇到的问题,我们通过一个名为Poly的记忆代理得到了解决。
00:16:51我们使用了智能体记忆。
00:16:54我们摆脱了那种自动连贯性的束缚。
00:16:57因此,我的团队不仅能够共享代码,Poly还能对上下文进行追踪。
00:17:07所以,如果某个上下文窗口包含程序性记忆、情景记忆以及长期记忆的相关信息,
00:17:15随后这些信息就会与团队中的其他人共享。
00:17:19如果你愿意的话,也可以称他们为智能体。
00:17:21他们只是人类智能体。
00:17:23在各个代码分支间共享。
00:17:26团队中的开发人员依然掌握着控制权,而Poly则能够创建上下文,
00:17:35弄清楚它属于哪个代码分叉和分支,以及它属于哪一次提交。
00:17:41现在,这是一个非常简单的例子,但当把这套方案带到企业级应用中时,情况就会发生变化。
00:17:49在智能体的技术框架中,记忆成为了不可或缺的核心要素。
00:17:53现在,这三篇是我在飞机上阅读的论文。
00:17:59第一篇来自OpenAI,探讨的是他们内部的数据智能体。
00:18:03其中提到的一点是,他们的内部数据智能体实际上确实需要记忆。
00:18:11记忆至关重要,它能确保智能体进行正确的过滤,而不是仅仅尝试进行字符串匹配。
00:18:19Harrison Chase曾说:“你的技术框架、你的记忆,如果你不拥有你的技术框架,你就不拥有你的记忆”,这才是关键。
00:18:27然后,我确信你们都在想:“嗯,Claude有记忆功能。为什么我不能用那个?”
00:18:32嗯,这有点像文件系统记忆,处理单个任务时没问题,但正如我的例子所示,
00:18:38当你的规模扩展到超过一个时——而在企业中你势必要扩展到超过一个——这就会引发问题。
00:18:45因此,Oracle推出了Oracle智能体记忆包。
00:18:51通过PIP install Oracle Agent Memory,你就能访问它,而这个内存,也就是我们拥有的这个SDK,
00:19:00将负责保存你的实时对话、记忆、事实,
00:19:05并判断什么内容值得保留。所以,如果我们看看Poly,现在Kevin可以与我们的记忆代理Poly共享他的上下文,
00:19:14我们使用了Oracle智能体记忆SDK。它存储在Oracle自治数据库中。
00:19:22我们可以使用自己选择的大语言模型,或者通过Oracle私有AI服务容器使用本地模型。
00:19:28然后,实际上就坐在这里的Linda,
00:19:34就可以毫无问题地与Kevin进行互动和协作。所以,没错,AI让个人变得更快。
00:19:42而在Oracle AI数据库上实现共享记忆,则能让团队变得更快。因此,我不希望大家做任何妥协。
00:19:49在AI时代,26AI所做的是让你能够挑选最适合的方案。对于智能体记忆,
00:19:58你可以选择存储在数据库文件系统中的文件系统,或是直接存放在数据库中。如果你需要进行数据建模,
00:20:04我们有JSON,有关系型数据,总有适合你的选择。
00:20:09好了,我给大家准备了一些好东西。Oracle AI开发者中心,大家可以在那里获取编写代码的
00:20:16材料、应用程序,也就是我今天谈到的内容。LiveLabs.oracle.com。如果你参加过我们今天的
00:20:22任何研讨会,那正是我大约六年前、在拥有4000万用户之前亲自编写的内容,
00:20:28你可以花掉我的OCI租赁资金,花上六个小时、十二个小时,或者你需要的任意时长,去尽情体验任何Oracle技术。
00:20:38然后,我要送大家每人一台Mac mini。不,我开玩笑的。
00:20:45我要送你们一个OCI迷你套餐。所以,我不知道大家是否了解,OCI提供永久免费层。
00:20:51它是所有云厂商中最慷慨的,你可以获得免费的Oracle数据库和免费的计算资源。你可以每月发送
00:20:573000封电子邮件,拥有200GB的存储空间。只要点击那个链接,你就能访问它。或者直接
00:21:05在谷歌上搜索Oracle Cloud永久免费。与我保持联系。如果你们开发出了什么成果,会给我发
00:21:14消息让我知道吗?好不好?谢谢大家。
00:21:35我们下次再见。
커뮤니티 글
아직 글이 없습니다. 이 영상에 대한 첫 번째 글을 작성해 보세요!
이 영상에 대해 글쓰기