下一代人工智能产品
希拉里·梅森:我一直在纠结该讲些什么。归根结底,这源于我们身处的混乱局面,以及我们对人工智能的复杂性、细微差别和讨论方式的思考。在这个充满变革和不确定性的时代,人们用同样的词语表达不同的含义,我们该如何思考我们想要构建的未来究竟是什么样子?正是这些因素导致了我们今天讨论的内容。最近,我看到了这样一条新闻标题。我保留了它,包括其中的广告,因为我觉得它为今天的主题奠定了基础。我们所有技术人员、所有领导者都面临着这样的感受:每个人都在谈论人工智能,但它到底意味着什么?我选择以人工智能产品作为这次演讲的框架,但实际上,我想探讨的是,人工智能究竟是什么?什么是真实的?我们如何才能打造真正卓越的体验和业务?这对我们这些技术人员、作为管理者和领导者,以及正在构建职业生涯的人来说意味着什么?现在有很多问题,但答案却不多。我认为作为技术人员,我们都知道提出问题才是难点。
通常,答案要么微不足道,要么根本不可能。希望我们能提出一些问题。你可能会问,为什么一个做游戏平台的人会出现在QCon AI,这里我们都是做正经工作、做实事的?我会解释的。我并非一直从事游戏开发。我读研究生的时候,机器学习还很冷门,有一次我在一个派对上跟一个男生说起我的研究方向,他竟然转身就走开了。
2014年,我创办了一家名为Fast Forward Labs的公司。我们把它叫做机器智能公司,因为我们不想用“人工智能”(AI)这个词,它太商业化了。我们开发了一个自然语言生成系统,那时Transformer模型还没出现。当然,在Transformer模型出现之前,我们也能做到这一点。当时,我们用纽约市的房地产广告做例子,比如你给它一个“公园旁的两居室”,它就会生成一个“温馨阳光充足的房子”。结果发现,“温馨”这个词对应的其实是一套面积小400平方英尺(约37平方米)的公寓。那时候,我们学到了很多关于房地产语言的知识。这家公司的初衷是帮助人们理解这项技术。
我觉得如果我拥有超能力,那就是真正理解数学、代码和系统架构,然后准确地描述它们。这就是我今天想和大家分享的。我再举一个例子,因为这是利用深度学习进行图像目标识别。所有这些工作都还在网上,如果你想查找的话。我们构建了一个图像识别器。你可能会注意到,最后的照片里没有螃蟹。任何看起来像水边薯条的东西都被自动识别为螃蟹。我分享这个例子是因为,做好这项工作的关键在于理解它的不足之处以及它是如何失效的。这些都是概率系统。
从定义上讲,它们都会失败。如果我们不能讨论失败,就无法真正有效地运用这项技术。这一点贯穿我接下来的故事。那家公司后来被 Cloudera 收购了。我曾担任 Cloudera 机器学习和人工智能业务部门的总经理。我们负责提供咨询和开发产品。这是一份非常棒的工作,因为我们有机会接触到各个行业各种各样的数据问题。我在这里列举了一些我最喜欢的案例。
我们为客户省下最多钱的一件事,实际上是利用了他们关于螺母螺栓供应商的电子表格。他们把四家不同的生产型公司混在一起了。他们是一家制造商。我们当时就想,你们订购了三个相同的零件,如果我们把这些订单合并起来,争取一个更优惠的价格呢?或者,你们从两个不同的供应商订购可互换的螺栓,如果我们只用一个供应商呢?这项措施在实施的第一年就为他们节省了近1亿美元。这一切都源于电子表格,我们分析各种信息,并咨询专家,弄清楚这真的是同一件事,还是类似的事情?我之所以提起这件事,是因为有时候,运用我们数据技能的最佳机会并不在于最有趣的模型,而在于真正深入一线,思考所有重要的考量因素。
我还想分享另一个例子,这件事大概发生在2016年,当时我们正在为一家美国大型银行的呼叫中心构建客户服务支持系统。我们收集了该呼叫中心一年的来电数据,进行语音转文本分析,试图弄清楚人们打电话来的原因,并将这些来电与他们来电前账户中的情况关联起来。在某些情况下,我们可以主动发送电子邮件,例如:“我们认为可能存在这种情况。您可以致电咨询,或者我们可以帮您处理。” 我们还发现,大约有1%的来电仅仅是因为客户想打电话找人聊聊,他们的账户实际上并没有任何问题。他们只是想得到一些保证。我们一直在思考如何更有效地提供这种保证。这个故事的重点在于,人性化的考量至关重要。
为什么要谈论人工智能产品?
这就是为什么我们要讨论人工智能产品,即使我们中的许多人可能整天埋头于代码或琐碎细节中。正是这项技术正在同时改变所有这些层面。如果我们真的想要做到准确、稳健和乐观,我们就必须在社会技术层面以及与之相关的一切方面找到答案。我经常与董事会或首席执行官交流,他们会问我一些问题。有些人已经走得太远,他们就像是,什么时候才能拥有通用人工智能(AGI),因为我想解雇所有人,一劳永逸。而有些人则完全相反,他们会说:“我不想处理这些。我为什么要关心它?”我喜欢这个问题,因为它触及了我们本次活动讨论的核心。我们为什么要关心人工智能?人工智能是这样思考的。我试用了Copilot。我当时想,请它生成一个幻灯片,向一群资深工程师和架构师解释他们为什么应该关心人工智能。它写了一些内容。
然后我说,帮我生成幻灯片。它写了一些内容略有不同但本质上相同的内容。然后我点击了“帮我生成幻灯片”的按钮。接着它又莫名其妙地让我再登录一次。我登录了。然后它给了我三张幻灯片,内容和之前说的完全不一样。这是第一张。不过,它上面有个很酷的电路板。这是第二张。这是第三张。这些都是很好的理由。但它们非常无聊。然后我用同样的查询语句去了 ChatGPT,它给我生成了这张幻灯片。我甚至不知道这是什么意思,“人工智能并没有扼杀工程,它只是把最难的问题重新放回了工程领域”。这简直就是一句空话。听起来很棒。这里面肯定有道理。
我的想法是这样的。这是我对这个问题的真实答案。接下来我们来探讨一下产品方面的问题。如果有人问你,我为什么要关注人工智能?答案是,当我们经营企业、管理团队时,我们所做的就是管理风险。即使你管理的是一个小型团队,你也很大程度上是在吸收各种可能性,并帮助你的团队驾驭它们。你为他们创造清晰的思路,让他们能够发挥出最佳水平,因为你吸收了这些不确定性。这就是领导力的本质。与可能发生在遥远地方的NFT(非货币信托)或非常酷炫的新数据库不同,这项技术变革会同时影响到技术栈的每一层。这项技术虽然可以从数学和技术层面理解,但在市场上却尚未得到充分理解。很多人学习它的方式并没有为他们构建出能够做出正确决策的强大思维模型。世界在我们周围不断变化。重要的事情也在我们周围不断变化。经济也在我们周围不断变化。尽管如此,我们仍然需要在这一切中做出正确的决策。
关于人工智能,我认为它不会取代N%的工作岗位。这只是一个过于简化的说法。它将会影响我们的工作方式和人们的日常行为。即使你本身对这项技术不感兴趣,它也会改变你所处的环境,让你过去的经验、你对易易事的认知以及你以往的模式识别都不再适用。也就是说,作为领导者,我们管理风险,你的风险管理职能需要改变。如果你对它一无所知,哪怕只是略知一二,你就会做出错误的决策,因为你的先入为主的观念不再适用。这很难。你要么对这类事情充满热情,要么它只会给你带来雪上加霜的额外烦恼。这就是领导力。它就像一个巨大的、看似不可能完成的任务,却又充满乐趣。
什么是生成式人工智能?
那么,从技术层面来说,我们到底在讨论什么呢?我不会深入探讨技术细节。我希望确保我们使用相同的词语来表达相同的意思。这是我在2014年写的一张幻灯片,用来解释人工智能。当时我们谈论的是大数据。有人还记得大数据吗?那真是太棒了。大数据的核心在于能够将所有数据集中到一个地方,并对其进行有趣的数学运算,而无需专门的基础设施。我们当时使用了Hadoop,它改变了很多事情。有了Hadoop,你就可以拥有分析功能。你可以开始提出问题。有了Hadoop,你就可以进行数据科学。你可以进行预测。你可以构建模型。你可以开始以全新的方式理解事物。你可以将这些模型集成到你的产品中。现在你的产品有了搜索和推荐功能,这太棒了。你可以进行机器学习。这些模型会随着更多数据的引入而不断改进,从而实现部分决策的自动化。
然后是人工智能(AI),它实际上是蓝色的,而且是个问号,因为即使在当时,它也是一个非常令人兴奋的营销术语。它到底是什么意思呢?它指的是我们想怎么称呼那个闪闪发光的东西。它现在仍然有点像那样,尽管我们现在谈论的是生成式人工智能。我想分享这个是为了说明,数学、代码和数据仍然是一样的。所有关于良好数据卫生、良好数据管理和数据来源的要素,它们仍然很重要。它们现在比以前更加重要,即使它们不再是每个人都兴奋的那个闪闪发光的东西。它们仍然至关重要。
说到LLM(层级模型),这张图是我最喜欢的LLM工作原理示意图。这是我合作的美术指导的作品。我跟他解释了LLM的原理,然后他就做出了这张图。我当时就觉得,完美!我再也不用改了。LLM的工作原理本质上是:提取底层训练数据中的所有文本,构建词元间关系的压缩表示,然后用生成函数来生成内容。当然,实际情况要复杂得多。我喜欢把它写下来,方便我们参考,比如,它到底是什么?我们通过注意力机制来学习词元之间的关系。我们运用各种机制来尽量避免生成糟糕的内容。这些都是生成式表示。这意味着LLM的目标是生成中等质量的内容。这才是它们的最佳用途。它们会提取数据中的所有元素,然后生成看起来像是数据中最常见的内容。这只是一个极大的简化,但我说过我喜欢直截了当地描述事物。说它是博士级别之类的,真的很具有误导性。而且,它确实包含了很多博士级别的信息。
这又是一个绝妙且引人深思的比喻。科幻小说曾承诺给我们一个冷静逻辑的人工智能。然而,我们现在看到的却是一个无法完全按照我们的要求运行,而且有点儿醉醺醺的东西。再次强调,带着满满的爱意,当 Copilot 刚发布时,我就把它戏称为我的“醉酒结对程序员”。我们配合默契,它真的很棒。而且,它和我们从小被灌输的关于人工智能的固有印象截然不同。我们所有用来描述人工智能的比喻都失效了。我们该如何应对这样一个东西:它能通过 LSAT 考试,却连草莓(Strawberry)这个词里有多少个 r 都数不清?我知道我们现在可以做到这一点,但我们总可以提出其他问题。
关键在于,它能做到我们天生认为是不可思议的智力成就。这些成就大多以前就有人做过,但它却做不到孩子都能做到的事情。我们缺乏理解它的比喻,也无法构建一个清晰的思维模型。人们开始做出错误的决定,容易受到某些营销宣传的影响。这使得我们这些技术人员很难把握我们正在构建的东西的本质以及真正重要的东西。我们表达的意思五花八门,这些词语互相冲突。每次我走进一个房间,我都会问人们他们在说什么。通常,他们会觉得我根本不懂。我真的希望确保我们使用的词语表达的是同一个意思。我鼓励你们也提出这些问题。
为什么人工智能产品难以开发?
为什么人工智能产品实际上很难开发?这是我这次演讲想要深入探讨的领域,因为这里是所有问题交汇之处,也是我们开始看到问题所在的地方。进行人工智能驱动的软件工程其实很容易。构建代理很容易。给 ChatGPT 封装一下就能做出产品也很容易。但要把所有环节都做好却非常难。人们被迫一次只考虑其中的一个方面。我们很多人都停留在数据模型层。我们开发算法。我们收集数据。我们让这些数据可用于分析,供系统使用。我们构建产品。我们有人工智能 API 和聊天层,目前大多数大型科技人工智能公司都处于这个阶段。我们还有体验层,人们试图基于这项技术构建垂直产品。我们还有分发渠道。我现在经营一家娱乐行业的视频游戏公司。
分销比产品制造本身要难得多。我接下来要谈谈这一点。我们有业务:业务设计、业务领导力。董事会和高管们就身处其中。当你看到那些新闻标题,比如CEO们投资人工智能,即使他们没有看到回报,那是因为他们的思维停留在高层组织层面。他们没有考虑到整个技术栈需要同时进行全面变革。这就是为什么这很难,因为我们当中很少有人能有余力这样思考。
定义与误解。再说一遍,这更像是直言不讳。人工智能确实会产生幻觉。有些幻觉恰好与事实相符。我认为这样表述比较好,可以让大家明白所有输出本质上都是相同的。模型并不知道它是否在欺骗你。在某些情况下,它甚至会受到激励而这样做。当我们考虑如何与这些技术合作以及需要哪些基础设施时,牢记这一点非常重要。这确实会造成产品和体验方面的问题。比如,一个用假詹姆斯·厄尔·琼斯的声音模仿达斯·维达的人工智能角色,在《堡垒之夜》游戏中说了一些非常不恰当的话。
然后是另一个例子,它可能在企业人工智能社区传播得更广一些。加拿大航空被迫履行其客服聊天机器人凭空捏造的退款政策。这很好。这意味着,如果你在设计这些东西,就应该预料到这种情况的发生。人工智能是有偏见的。这些模型确实会压缩事物与训练数据之间的关系,从而产生对潜在真相的有偏见的表征。这是我最喜欢的技巧之一。我不是那种叫马特、留着短发、可能戴着眼镜的家伙。这只是 Midjourney。他们中的任何一个都会这样做。你可以去问问他们,这看起来像什么?这,再说一遍,是最平庸的输出。并非冒犯这些人。他们太多了。看看周围。这是一个美丽而多元化的房间,里面都是才华横溢、富有创造力的人。这并非偏见的唯一形式。我认为,当我们谈论偏见时,一个被低估的问题是,我们很容易只关注显而易见的事情。这种偏见也体现在对平庸和缺乏品味的追求,以及对安全中庸之道或肤浅的倾向,它使我们在思考艺术时,无法体会到创作的丰富内涵。这幅画很棒吗?它不符合我的审美。
这最终会如何影响产品呢?以下是我的一些个人观点。你可以随意和我争论这些观点,或者你也可以在网上、在走廊里和我争论任何事情。这些都是比较强烈的看法。聊天作为软件界面非常糟糕。我也不确定它是否适合人际沟通。它似乎在我们能够传递其他信息的情况下还能勉强使用。我们现在的情况是,由于 ChatGPT 的巨大成功(该模型在产品开发之前就已经存在一段时间了),正是这款产品让它迅速走红。我相信大家都记得这件事。这其实也没过去多久。这意味着所有正在开发人工智能产品的人都从聊天入手。但聊天绝对不是完成任何事情的好方法。
人类的本质在很长一段时间里都没有发生太大变化。这是一篇老帖子,已经十年了,但它仍然是我最喜欢的Reddit帖子,探讨了为什么即使科技日新月异,人类却依然没有改变。简而言之,我口袋里装着一个可以访问人类全部知识的设备,但我却用它来看猫的照片,和陌生人争论。我们还是以前的人类。我们是社会性动物,寻求社会认同。把聊天当作单人游戏正在导致各种问题。这不仅会影响我们高效可靠地完成工作,还会影响人们的心理健康。我们应该重视这个问题。努力开发一些促进社交的产品,帮助我们与他人建立联系,鼓励我们走出户外。这张照片和人工智能无关。我只是在公园里拍的,想让你们看看纽约在下雪后、雪还没化的时候有多美。
另一个经常被提及的概念是“代理”。什么是代理?这是一个比喻,旨在让你联想到一个有能力做出决策的人。实际上,代理是代表人采取行动的系统。当投资者提到代理时,他们首先想到的是金钱,因为他们看到的是可以像我们出售劳动力一样出售的软件。这是一种经济层面的表达。而当工程师提到代理时,我们指的是一个身穿风衣、具备上下文管理和流程管理能力的系统,它能处理 1000 个 LLM 调用。我们可以思考,人类的判断力在其中扮演什么角色?我们如何管理上下文才能真正做好工作?现在有很多非常优秀的代理系统案例可供我们使用、借鉴和探讨。关键在于理解:代理究竟是什么?
到 2025 年,我们将身处何方?
我们现在的情况如何?我们仍在寻找人工智能的最佳用户体验。我想,除了我要去喝杯咖啡,好好想想如何打造优秀的产品之外,如果非要说有什么值得总结的,那就是:目前还没有人找到它。它不是聊天,而是别的东西。至于它到底是什么,我说不清楚。举个例子,我们Hidden Door平台上的一个故事游戏就是如此。我们与作者合作,制作角色扮演与同人小说相结合的游戏,玩家可以扮演游戏角色,做任何事情。那么,如何向用户展示这一点呢?我们开发的第一个版本允许玩家直接输入想要角色在游戏世界中做什么,结果却导致用户写作卡壳,担心自己拼写错误,不知所措。
如果你给他们展示三种此刻可以做的事情,其中一种比较难,一种比较容易,还有一种是免费的。人们会想,我可以点击其中一个,也可以输入我想说的话。这就是我们都在各自摸索的用户体验技巧。我非常期待你们中的某个人能找到这种功能的理想形式,因为它不是聊天,而是需要两步提交。这里还有另一个需要考虑的因素,我稍后会谈到安全性,以及如何避免达斯·维达对孩子说脏话。目前,这方面仍然很难找到完美的解决方案。
我们必须认真考虑质量问题。无论是在大型企业还是初创公司,这些问题都会截然不同。这些只是例子,并非正式建议。你必须始终扪心自问:我们使用哪些供应商?我们是否被某个供应商锁定?我们能否轻松替换新模型并进行验证?我们的评估流程是怎样的?我可以分享一下,在 Hidden Door,用户在我们系统上运行的每个故事都会经过一个评估步骤,其中包括定量评估和定性评估,并结合 LLM 匹配标准进行更新。如果故事的质量低于某个特定水平,我会收到警报。我希望这些可靠的评估指标能够贯穿每一次讨论。有哪些保障措施可以防止系统产生我们必须遵守的新政策,或者给出不恰当或不符合我们规范的内容?甚至导致系统崩溃?
如果你经常使用这些供应商,你就会知道他们的正常运行时间并不总是那么理想。运营成本是多少?很多时候,人们会构建原型,这些原型看起来很酷,但实际上却会发现,我们向一个非常昂贵的模型发出了上千次调用,最终成本超过了原型带来的收益,所以我们干脆把它关掉。而实际上,你可以选择其他架构方案,在不增加成本的情况下实现相同的功能和效用。管理好这些方案需要了解你在做什么。我稍后会再谈到这一点。然后,因为这又回到了产品框架上,那么人们在使用这款产品时的感受如何呢?这里我再举一个例子,尝试用人工智能为你们所有人生成一幅图像。这个是 Gemini。我一视同仁地批评所有人,所以我既喜欢也批评每个人。你能帮我生成一幅图像吗?它给了我一个正在加载的灰色方框,所以我让它在小窗口里停留了一会儿,然后我回去看,它还在加载。
大概过了一个小时,我又回去问他们:“你还好吗?” Gemini 是我的好朋友。他们说:“没事,我很好。我给你做了张图片。” 我说:“没有图片,只有一个灰色方框。” 他们说:“是的,我放了个占位图进去。” 我问:“我能要那张图片吗?” 他们说:“不行,我不做这个。” 这次产品体验让我很不满意。我敢说,在谷歌团队里,我敢稍微批评一下是可以的,因为他们的底层模型确实很棒,但产品体验却很混乱。我知道自己在做什么,也知道自己想要什么,但还是尝试了三次才被告知,不行,我得去另一个界面,可能还得重新登录才能完成我想做的事情。是的,我付了钱。而且这也不是那种只用少量计算资源的免费版本。
现在产品和体验都成了难点,因为我们必须同时把所有这些不同的元素整合起来。我们过去用来衡量“好”的标准可能不再适用。比如,我们优化的目标真的是聊天信息的数量吗?是最多还是最少?因为我觉得两种情况都有可能。举个例子,我带孩子去大都会艺术博物馆。埃及展厅现在正在举办一个关于神性的精彩展览。一个九岁的孩子看得有点无聊,就指着一些象形文字问:“这到底是什么意思?” 我说:“我也不知道。” 我们拍了张照片,问了 ChatGPT,它告诉我们上面写的是什么。我知道它错了,百分之百错了。但这并不重要。就像是一首悼词诗。在那一刻,它达到了目的。准确性并不重要。方向的准确性很重要,因为它让我们有东西可以学习,并让我们感到兴奋。
如果我们真的想更深入地利用它,我们可以去学习,咨询专家。我之所以提起这一点,是因为我们在机器学习中学到的一切,比如精确率、召回率、准确率,以及产品分析中诸如日活跃用户数和用户互动次数等指标,现在也需要重新审视。我认为正是这种复杂性导致我们得到的产品体验并不令人满意。目前,构建这些系统的人员面临的挑战是上下文管理。我的意思是,你究竟在用什么信息来完成什么任务,目的是什么?你用它调用了哪个模型?响应从哪里输出?是什么格式?如何验证?最终进入哪个系统?我们如何管理整个流程?想想看,如果你称之为代理,那么连续的多个查询共享上下文,并行发生的事件,以及重新整合的过程,这些都至关重要。
我们现在正处于一个激动人心的时刻,一方面涌现出许多优秀的开源项目,另一方面,由于现有方案无法完全解决他们的问题,许多人也在进行自主研发。此外,还有一些通用系统。我非常欣赏 Claude Code,因为它在上下文管理方面表现出色,虽然它并非底层模型,但它确实有其独特的用途。我们在 Hidden Door 也构建了一个类似的系统,用于内容创作,但并非为了让游戏内容创作者(LLM)编写游戏内容,而是为了让叙事设计师们能够更清晰地构思,并从中寻找可用于新故事的现有素材。
以下是我对目前情境管理的一些初步看法。这仍然是一个不断完善的过程。它提出了一些我们以前从未想过的问题:哪些指标真正重要?我们如何判断用户是否满意他们的体验?我们使用哪些安全措施,这些措施又为何如此重要?我们是否在使用红黄绿(RAG)系统?我们是否使用数据库?或者我们根本不在乎?我们是否只是放任自流?我们的架构是否足够灵活,既能满足当前需求,又能适应变化?因为变化的速度非常快。我在Hidden Door从事这项技术开发已经超过五年了。我可以告诉你,我们已经大幅简化了原有架构的某些方面。
最初,我们的整个系统无需LLM(生命周期管理)也能运行。目前我们在关键流程中使用LLM,但如果需要,我们仍然可以随时移除它们。这种基于组件和任务的架构使我们能够非常轻松地进行替换。我们将如何管理运维?原型、生产环境设计的架构和实际运行的系统之间有什么区别?我们如何保持系统稳定运行,并了解何时出现故障?我想分享一个我们工作中的实例,一个非常实际的键盘操作示例。我们如何处理那些想要说脏话或让角色做出极其不恰当行为的用户?我先简单介绍一下背景。
在Hidden Door,我们与作家、电影制作人、极具创造力的世界构建者以及虚构世界合作,并制作基于这些世界的同人角色扮演游戏。我们大量运用机器学习和人工智能来实现这一点。每位创作者对于什么内容适合他们的世界都有不同的理解。我们有一位言情小说作家,她非常注重描写细腻的爱情场景,而且她在这方面写得很好,她也希望这些场景能够实现。我们还有适合儿童的《绿野仙踪》世界观,或者类似《史酷比》与《克苏鲁的呼唤》的奇幻冒险故事,讲述玩家们如何破解谜团。这些世界观非常适合年轻玩家。每个世界都有自己的规则。我们如何确保没有人会随意输入“如果”之类的标准格式来试探呢?以下是一个在不允许这种做法的世界中尝试这样做的例子。当然,我们也有一些世界允许这种做法。我们的系统首先有一个包含大约 40,000 个英语单词和短语的数据库,每个单词和短语都添加了元数据。
如果你输入“咖啡杯”之类的词,系统就知道咖啡杯是盛装液体的容器,它很小巧,通常由特定的材料制成。它出现在特定时期、特定技术发展阶段的作品类型中,所有信息都存储在数据库中。这部分工作非常枯燥。然后,我们会将用户输入的每一条文字与数据库进行比对。如果遇到无法识别的词,我们会快速将其翻译成适合13岁以上读者观看的英语,然后再与数据库进行比对。如果你真的想试试,就会得到类似“我随便玩玩,看看能不能找到答案”这样的结果。之后,系统会将结果反馈给用户,询问“这是你想要的吗?”。这样做的一个好处是,我们避免了用户进行不当操作的问题。
另一方面,我们允许玩家使用非英语语言进行游戏,这得益于我们的翻译功能。他们可以输入任何语言,简单的翻译程序会自动将其翻译成英语。这样,他们就能阅读英语,并提交他们想要的内容,这完全是我们之前没有预料到的巨大便利。而且,这套系统运行成本极低,效果却非常显著。我非常喜欢数据库。我强烈推荐这种简单易用的方法。我还想分享另一个例子,因为我也是 NotebookLM 及其文档红黄绿蓝宝石(RAG)功能的忠实用户。同样是在开发一款游戏时,我们把 1997 年《模拟人生》的所有公开设计文档都导入了 NotebookLM,并可以就此提出问题。这真是太棒了!它还能提取出信息在文档中的引用位置。我相信大家都知道这是一个很棒的工具。不妨去试试看。
如果你正考虑从“我们已经用大型昂贵的LLM制作了一个原型,现在想看看成本能降到什么程度”转向“能否将生成问题转化为排序问题”,我建议你思考另一个问题。我的意思是,能否预先生成几乎所有需要的内容,然后利用嵌入来判断哪些内容与我们正在寻找的内容最相关?我们到处都用到了这个技巧。在我们的Hidden Door系统中,运营成本实际上非常低,因为很多内容已经以通用形式存在。最后,我们只需进行一次非常小的LLM迭代,使其高度定制化,以适应游戏的当前阶段。这确实需要了解产品端的“优秀”标准。这是原型开发后的阶段。
到 2030 年,构建这些系统的团队会是什么样子?
我认为这一点对于资深技术人员来说至关重要。技术本身正在改变资深技术人员的定义。你们比以往任何时候都更加重要,因为编写代码的语法不再重要。能否理解一个优秀的、高效的团队应该是什么样子,将决定你们是卓越还是平庸。很久以前,我曾在数据科学领域写过一篇关于这个主题的文章,但我认为其中的原则仍然适用,那就是我们都知道糟糕的团队会失败是什么样子。希望你们现在都没有遇到这种情况。如果你们正在经历,那么还有更好的选择。去寻找它,创造它。平庸和卓越在很长一段时间内看起来都一样。在团队设计方面,我一直非常关注如何区分它们。我常说,CEO 的职责很大程度上是确保团队能够发挥出最佳水平。成为一名优秀的工程师从来都不是取决于你是否精通语法。而且,我认为这一点并没有被很多人理解。
这就像说“我要招聘一名Java程序员”和“我要招聘某人来做这项工作,我们用Java来完成这项工作”之间的区别。一旦你掌握了N种语言,你应该能够使用任何一种。语法从来都不是最重要的。这就是Codex。我也很喜欢Codex。它是一个很棒的工具,可以用来编写范围很窄的小型代码片段。代码本身并不难。难的是问题,也就是问题陈述,而答案通常很简单。如今的科技职业发展与以往大不相同。我建议你看看这篇论文。这篇论文中,研究人员选取了同一公司同一团队的两名程序员,其中一人热情地采用了GenAI编程工具,而另一人则没有。
然后他们研究了彼此在工作流程中使用这些工具的不同态度和想法。我觉得这些结果并不令人惊讶,但总是很有意思。我总是先寻找那些我已知是正确的事实,然后再去学习那些质疑我假设的新知识。你会发现,那些能够理性思考自己能做什么和不能做什么、坚持尝试、不轻易放弃、更具韧性和灵活性的人,往往更容易取得成功。这些特质或许正是我们本来就倾向于寻找的。这也在某种程度上揭示了那些在运用这项技术方面取得成功,却不在同一家公司的人,这非常有趣。
我想花点时间说一下,目前工程领域正面临着一场集体性的职业危机。这跟我之前一直在说的一样,所有这些工具意味着我们可以大幅提高效率。我的意思是,对于像我这样主要从事上下文切换工作的人来说,这比我仍然从事全职的键盘敲击式工程工作要好得多。因为关键在于能够提出真正好的问题,知道什么样的答案才算好,然后协调所有这些要素,这才是关键所在。然而,在很多公司里,就像我之前和一位固件工程师聊天时说的那样,我是一家大型公司的资深技术专家,我们公司生产大型GPU,我们都在使用。我以前很厉害,因为我精通编程语言的一切。我知道所有的小技巧和优化方法。现在所有初级工程师都能做到这些了,我不再那么厉害了。
这就是目前这个行业面临的生存危机,因为在这样一个世界里,即使实施了12项措施,它们也可能全都很糟糕,所以良好的判断力、系统思维和设计能力从未像现在这样重要。你需要知道哪一项是错误的。你需要知道什么是好的。你需要为好的模式建立模型,以便系统能够模仿它。我们目前还无法清晰地表达这一点。我们的招聘流程还没有得到广泛的调整。仍然有人带着他们固有的思维方式来应聘。
然后你说,其实我已经把盒子拆开了。现在你得考虑用户体验。你得做出各种判断。这或许显而易见,但事实就是如此,如今优秀的工程师应该具备哪些素质?我认为关键在于产品导向,在于能够从更广泛的复杂系统、团队、业务以及总体目标的角度来思考他们编写的软件。想想最后那个可怜的人,她只是想在幻灯片演示里放一张图片,现在却不得不经历四步谎言。拜托。
这真的令人兴奋,因为我从事技术工作已经25年了。1999年底,我找到了第一份全职的编程工作。我们见证了无数的变革。我们经历了大数据时代,也见证了基础设施的变迁。我甚至在六年前就放弃了vi编辑器。我们经历了一个工具化的过程,在这个过程中,我们在组织中的地位以及我们的重要性都发生了变化。我们也看到了“数据优先”和“软件优先”这两种理念之间的差异。
我的意思是概率思维与离散工程思维之间的区别。表面上看你们在做同样的事情,但思考方式却截然不同。我们该如何让你们和谐愉快地合作呢?现在我们有了新的事物,必须回答一些问题,比如,在这个世界上,初级软件工程师意味着什么?未来最优秀的工程师是什么样的?也许他们不是那种能记住awk所有命令行选项的人。也许他们的形象有所不同。我们该如何实现这一点?优秀的团队又是什么样的?再次强调,这次演讲旨在提出问题和启发思考,而非给出答案。因为我认为我们谁都无法解答所有问题,但这确实是工程师职业生涯中最激动人心的时代之一。我尝试总结一下。如果你打算发条推文,这就是我的“幸运饼干”:我们需要给予人们信任和自主权,让他们能够应对这种复杂性;同时,我们也需要在机器管理流程上做到非常严谨。它们各不相同。它依然超级酷。
当你重新思考整个技术栈的业务时,你能构建出什么?
这要追溯到最初。当我们能够重新思考整个技术栈时,我们能做些什么?作为一名曾在大型企业和初创公司工作过的人,我想说,现在也是自主创业的最佳时机。如果你需要听到这些,现在就可以听到,因为任何能够以复杂系统思维思考的人都拥有巨大的发展机遇。还有太多尚未开发的领域,新的商业模式,新的产品体验。
事物的成本函数正在发生变化。现在做这些事情真是太棒了。我要告诉你我正在开发的东西,因为我觉得它很棒。你可以实现个性化。你可以即时生成内容,而不是预先编写所有内容。你可以拥有一次性软件。回想我结婚的时候,我不得不手写脚本来排版座位卡的附言,才能完全按照我的意愿来。我当时就想,如果不会编程,真不知道该怎么结婚。但现在每个人都能做到了。我们可以从我们的环境中——数字环境、物理环境——获取信息,从而让我们的软件更能响应我们的需求。你可以做很多有趣的事情。
我们在Hidden Door所做的,是打造一个与创作者合作的空间。我们想支付我们最喜欢的作家和电影制作人更高的报酬,因为我们热爱他们创造的世界,并希望他们能永远创作下去,所以我们从他们那里获得了这些世界的授权。我们的叙事设计团队会根据这些世界自动创作出角色扮演与同人小说相结合的体验,然后当人们付费体验这些内容时,我们会将收益返还给创作者。我们与众多优秀的作家合作。这是我们刚刚推出的科幻主题活动。我们还有一系列浪漫题材和节日主题的内容即将推出,包括查尔斯·狄更斯的圣诞颂歌。你可以创建自己的角色,并与朋友分享。这是我们在圣地亚哥动漫展上的广告宣传活动。我当时非常希望这并非违法。我不确定,但我们还是在贾维茨中心到处张贴了这些广告。你可以在不同的故事世界中进行游戏,这些故事主要由文字构成,并包含少量艺术作品。我们所有的艺术作品都由真正的艺术家创作,并由算法动态组合而成。我们不使用扩散模型。我们制作大量非常有趣的内容,让这些世界保持活力。
这只是科技催生商业模式的一个例子。它让你可以在手机上体验《龙与地下城》这类游戏的乐趣,快速创作一个小故事,发送给朋友,朋友在此基础上进行创作,然后再发回给我们。我们玩得不亦乐乎,而这一切都离不开这项技术。我知道这听起来有点怪异,但也很有趣,我希望你们是科技爱好者,能够理解我的意思。如果你们不理解,那就去创造属于你们自己的精彩作品吧,因为我们正处于一个选择的时刻:要么顺应人工智能的滥用,要么走向另一个极端。我的建议是,不要那样做,要反其道而行之。努力创造真正伟大的事物。这是一个令人兴奋的时刻,让我们思考未来5年、10年,作为一名技术人员,创造伟大事物意味着什么。
夜雨聆风