云端生成式AI:解密微软AI创新
Mark Russinovich
CTO and Technical Fellow, Microsoft Azure
Microsoft
深入解析了微软的AI架构,包括用于训练基础模型的大规模超级计算机,以及高效服务于各种预训练和微调模型的基础设施。 从如何设计服务器,到调度训练和推理的AI感知资源管理服务,再到最大化GPU使用的AI特定技术。 热门AI研究和机密AI领域的最新进展与潜在机会。
题目:Generative AI in the Cloud: Inside Microsoft AI Innovation
时间:2024年3月6日
介绍
今天的主讲嘉宾是Microsoft Azure的CTO兼技术研究员Mark Russinovich。Azure是微软的全球企业级云平台,而Mark在分布式系统、操作系统和网络安全领域都是公认的权威。他在卡内基梅隆大学(CMU)获得了计算机科学博士学位,后来与他人共同创立了Winternals Software,并在2006年微软收购该公司后加入微软。他撰写了多本非小说类和小说类书籍,包括微软出版社的《Windows Internals》系列、《使用System Internals工具进行故障排除》,以及网络安全惊悚小说《零日》、《Rian Horse》和《Rog Code》。
在今天的研讨会中,我们将与Mark共同探索微软的AI架构,了解用于训练基础模型的超级计算机以及为预训练和B模型提供高效服务的基础设施。此外,Mark还将分享热门AI研究和机密AI领域的机遇。
-----
大家好,非常荣幸受邀来到斯坦福大学进行演讲。几年前我曾来过斯坦福,今天能够再次回到这里并受邀发表演讲,我倍感激动。这也是我首次在斯坦福进行演讲。正如Ahmad所说,我在CMU获得了计算机科学的博士学位。斯坦福同样是一所杰出的学府,能在这里与大家交流,我深感荣幸。
今天早上,我想与大家分享我们在Azure以及整个微软在AI领域的工作,从技术基础到我们在不同领域的工作亮点。
虽然Ahmad提到要讲技术但不必过于深入,但我希望大家能够了解我们在推动技术前沿方面所做的努力。我认为,纯粹的AI研究与将其投入生产并应用于企业客户之间存在显著的差异。
Azure是一个企业级平台。我们向企业销售服务,因此我们必须将科学研究转化为企业级运营。这一点至关重要。许多人知道,从研究到工业、生产和销售并不是一件容易的事情,而这正是微软这样的公司的魅力所在。
为了帮助大家更好地理解,在过去的15年里,AI领域真正迎来了爆发式增长。这主要得益于云计算的强大能力、GPU的普及以及云计算带来的按需计算能力。我们已经见证了AI模型能力的提升。这是一个图表,虽然有些年头了,但你可以看到,在许多不同领域,AI已经赶上甚至超越了人类的技术水平。这些领域包括手写识别、语音识别、图像识别、阅读等。
这一切的驱动力是普及的按需计算能力。可以看到,随着模型规模的扩大,其能力也在不断提升。最近,我们看到了最前沿的模型,比如OpenAI最近发布的GPT-4模型,尽管具体规模未披露,但我们知道它们比2018年出现的最小模型大了许多个数量级。
Microsoft与OpenAI
OpenAI是我们密切合作的公司。微软与OpenAI多年来一直保持着合作关系。这种合作的基础是我们提供的AI计算基础设施。当我们与OpenAI开始讨论时,他们的一个主要目标是实现通用人工智能,他们认为规模是实现这一目标的关键因素。他们需要一个能够根据需求提供所需规模的基础设施提供商。我们承诺给予他们所需的规模,并开始为GPT-3训练创建定制的AI超级计算机。这台超级计算机在2020年全面投入生产,我们通常分批交付这些超级计算机。当它们准备就绪时,我们就将其交付给OpenAI。我们估计,如果我们当时在这台超级计算机上提交Top 500超级计算机基准测试,我们将跻身世界前五的超级计算机行列,而不仅仅是公有云中的。
2020年对于AI领域来说已是很久之前的事情了。我们继续构建下一代超级计算机,这台超级计算机用于训练GPT-3。我们已经可以交付另一台用于训练GPT-4的超级计算机,并且我们还在为训练下一个版本的GPT模型和其他大型模型构建超级计算机。去年底,我们对正在为下一代OpenAI模型构建的一部分超级计算机进行了实际的Top 500测试。这台超级计算机拥有14400个NVIDIA最新一代H100 GPU,我们排名世界前三的超级计算机。
这里再次强调,不论是内部部署还是公有云,这仅仅是我们仍在为他们构建的系统的一部分。14400个GPU只是这个更大系统的一部分。我们已经开始构建后续的系统并设计更多的系统。设计这些系统不仅需要拥有这些GPU的服务器,还需要整个系统包括多个数据中心,这就是这些超级计算机的规模。
我想提到另一个令人瞩目的基准测试,它展示了基础设施在加速AI方面的巨大进步。在2023年3月,有一个关于H100的MLPerf基准测试。BERT 3.5亿参数模型的训练最快时间是5.4分钟。去年11月,训练GPT-3(一个175B参数模型)的记录是10.9分钟。因此,从去年早些时候到今年3月,尽管参数量增加了几个数量级,但训练时间基本上只翻了一倍。而在OpenAI超级计算机的一部分上运行时,训练GPT-3仅用了4分钟。这是在1300台ND H100 v5 VM上完成的。稍后我会展示这种虚拟机的外观,每台虚拟机都配备了8个GPU。因此,这次训练使用了1300台虚拟机,总共8*1300个GPU。这是我们为OpenAI提供的虚拟化计算资源,这些虚拟机直接连接了GPU。
同时,我们与NVIDIA携手在MLPerf中提交了一个裸金属运行记录,其完成时间仅为3.92分钟。这意味着,我们在虚拟化基础设施上仅付出了2%的性能代价,便换取了韧性和安全性的优势。
这一成功的关键在于我们定制的后端系统设计,这也是OpenAI最初选择与我们合作的原因之一。我们为这些GPU量身定制了后端连接。具体来说,我们采用了InfiniBand网络,其延迟大约为1.5微秒(μs)。最初的超级计算机有100Gbps的连接速度,而最新的则提升至400Gbps,这些高速连接覆盖了OpenAI超级计算机的所有服务器,甚至跨越了数据中心。
OpenAI在超级计算机上的训练
这里是一张虚拟机的示意图。OpenAI在超级计算机上的训练与我们为科研客户或企业客户提供的服务之间,唯一的区别在于规模和InfiniBand后端网络。在OpenAI的情况下,这些网络跨越了多个数据中心。而在我们的公有集群中,有几千台服务器,因为大多数客户并不需要像OpenAI那样的超级计算机规模。但除此之外,我们提供的虚拟机、服务器、GPU以及InfiniBand网络都是完全相同的。
这里有一些硬件的照片。这是一张OpenAI超级计算机系统中一些机架的背面照片。那些青蓝色的线缆就是InfiniBand线缆,从机架背面伸出来。然后你可以看到拉开的托架内部,里面装有8个H100 GPU。
Maia 100
我们不仅仅关注NVIDIA的硬件,也与AMD紧密合作,并在我们的公有云中提供AMD MI300X GPU。此外,我们还在开发自己的芯片,并在去年秋天宣布了这一计划。我们正在研发的Maia 100定制加速器,已经在实际运行生产客户的AI工作负载中汲取了经验,并将这些知识融入到了这些AI加速器中。它拥有1050亿个5纳米晶体管,是史上最大规模之一。相比之下,H100约有800亿个晶体管。
这是我们的探针板,用于探测部件上的连接。这是我们的启动板,用于测试SoC。你可以看到,它看起来像我大学宿舍在炎热天气时的样子,布满了风扇。虽然看起来不太复杂,但这正是硬件设计的真实写照。
一个生产环境中的Maia系统看起来是这样的。这是一个机架,一半装有Maia加速器,另一半是多个服务器。另一部分是我们称之为Sidekick的装置。这实际上代表了云计算液冷的未来趋势。我们发现液冷是冷却这些设备的最有效方法,尤其是在设备具有高TDP(Thermal Design Power,热设计功耗)或高热特性时,仅靠GPU或加速器就会产生数百瓦的热量。为了有效散热并最小化数据中心的占地面积,液冷是最佳选择。我们还认为这种方法可以节省电力,并实际上减少用水量。这是一个封闭系统,可以在任何数据中心中使用。因此,我们可以将液冷技术引入任何数据中心。同时,我们也在设计使用公用水冷的数据中心,从外部取水并带入内部冷却这些服务器。
这是Maia 100板卡的外观。我想强调的一点是,这些连接器用于将电力、网络和水引入这些加速器中。如果我们打开其中一个并取下盖子,可以看到用于进水和出水的接口,它们连接在加速器顶部的散热座上。这就是我们设计端到端系统的方式,包括它们如何连接到数据中心,以及如何将水和其他服务引入加速器中。
我们的愿景
我们的愿景并不是将客户或自己锁定在某一特定的加速器堆栈中。实际上,多样化的加速器将为我们带来巨大的益处。除了之前提到的AMD和Nvidia,以及我们自己的加速器外,未来可能还会出现其他加速器。我们的目标是在不牺牲效率和性能的前提下,尽可能地进行抽象化处理。因此,我们与OpenAI紧密合作,利用Triton库创建内核,并能够针对不同类型的加速器进行优化而不牺牲性能。事实上,OpenAI的工程师就是这样编写他们的自定义内核的。他们针对Nvidia使用CUDA,但同样可以将相同的内核用于AMD的ROCm。我们相信这就是未来的趋势,并且我们从ONNX这样的库开始关注这一未来,这些库在硬件层面进行抽象,我们甚至与OpenAI合作在内核设计上使用Triton。
在Maia 100上演示GitHub Copilot
我想为大家展示一个简短的演示,证明这并非空谈,而是真实可行的。这是Visual Studio Code,我想请问,在座的有多少人使用Visual Studio Code呢?看来不少。
现在,我们可以创建一个定制的Copilot连接。大家看,这是Maia SMI,类似于Nvidia SMI,显示我们这里有四个加速器。我已经将GitHub Copilot配置为指向这台Maia设备。
接下来,我将运行一个GPT-3.5 Turbo的示例,用于这里的Copilot。你可以看到,当我在左侧使用Copilot进行代码补全时,比如用Python编写一个冒泡排序算法,这是一个相对复杂的补全过程。你可以观察到进入我加速器的流量。在处理该提示并生成响应时,你可以看到流量的峰值。
Microsoft Copilot堆栈
让我带大家了解一下,我们是如何在这些加速器之上构建我们的软件层并进行资源管理的。许多人可能误以为我们只是从OpenAI获取模型,将它们放入我们的基础设施,然后直接提供一个端点供客户连接。但实际情况远非如此。从底层基础设施到客户使用的API和服务,中间涉及大量的创新和技术。
这是Microsoft Copilot堆栈的一个截面图,展示了所有关键子系统如何协同工作,以提供Microsoft Copilot这样的功能。从底层的硬件基础设施开始,我们有一个名为Project Forge的项目,用于管理这些服务器并提供工作负载资源管理。接着是一个推理托管运行时,其中包含大量的遥测和硬件健康状况监测功能。然后是我们与OpenAI共同设计的堆栈部分,这里存放着模型、模型副本、键值提示缓存、准入控制界面和API,为你提供直接访问基础设施中特定实例模型的权限。在部署模型时,我们有一个模型池来跟踪不同版本的模型。我们跨不同的服务进行跨租户路由,这些服务负责管理存储、网络和计算资源。在更高层次上,我们提供了一些服务,如为使用Microsoft 365 Copilot的客户提供的预配API,以及针对不同SLA的批量和在线推理服务。因此,将这些功能投入生产实际上涉及大量的工作。
我想强调的是,Microsoft不仅仅是一个Nvidia硬件供应商或OpenAI模型的分销商。我们与其他AI公司也有广泛的合作,基于Azure平台为我们的客户提供一流的服务。例如,Meta就是我们的合作伙伴之一,我们与Meta合作,在Azure内部提供他们的Llama系列模型作为托管服务。此外,你们中有多少人关注了我们上周与Mistral的公告?Mistral是一家法国公司,他们推出了一个新的前沿模型叫Mistral Large。目前,Azure是Mistral Large的独家提供商。所以,这不仅仅是一个OpenAI云,而是一个更加多元化和开放的生态系统。
Project Forge
我之前提到的Project Forge,是我们用于GPU和其他加速器调度的资源管理器。Project Forge实际上是从CTO办公室的孵化项目中诞生的,并在去年初期被纳入Azure Machine Learning团队的生产环境中。Project Forge的目标是实现高效的基础设施管理,同时具备工作负载感知能力。在AI场景中,它要理解什么是训练作业,什么是推理或模型。因此,它从根本上就内置了训练和推理的概念。高效管理模型推理涉及许多复杂性,因为你需要处理不同版本的模型。你需要在客户请求与特定GPU之间保持一致性,同时管理容量池。在训练方面,我们想解决的一个关键问题是如何在Microsoft内部和客户的训练中更高效地使用GPU资源。
全局调度器(Global Scheduler)
我们采用了一个称为全局调度器的系统,它首先将GPU容量视为全球范围内的统一资源,而不是每个集群、数据中心或区域的单独资源。因此,Project Forge能够掌握我们在全球各地的所有GPU容量情况。这使得它能够根据工作负载的约束条件高效地进行资源分配。如果工作负载需要在美国运行,它会在美国任何有可用容量的地方运行。如果需要在欧洲运行,它也会在那里找到合适的位置。这样可以最大限度地提高资源利用率。
全局调度器还专注于无服务器AI的理念。我们希望改变人们的思维方式,从“我有一台服务器上的GPU”转变为“我可以访问AI算力”。实际上,这甚至进一步抽象了特定类型的GPU。因此,Project Forge专注于无服务器AI,这意味着你可以访问虚拟GPU和虚拟集群,你分配的GPU资源可以根据需要动态调整。你拥有高优先级的访问权,但这并不意味着你始终拥有特定区域或特定类型的GPU,而是在满足约束条件的前提下,你的集群可以访问所需的资源。当你不使用这些资源时,其他客户也可以访问它们。
这种方式解决了目前集群或特定数量GPU的碎片化问题。在过去,人们被分配了GPU后,往往无法高效利用它们。若需要更多GPU,又常因资源被其他集群占用而无法获取。Project Forge打破了这些界限。过去的一年里,我们已将全部内部训练工作负载迁移到Project Forge上。通过全局视角、优先级系统以及各种架构的整合,我们将GPU利用率从50%至60%提升到了70%至80%,甚至接近90%。
为了最大化资源效益,我们持续进行各种优化和效率调优,力求接近100%的利用率,因为GPU资源相当昂贵。这些努力已经带来了显著的节省。上个季度,Microsoft在资本支出上花费了100亿美元,其中GPU占据了相当大的部分。即便是5%的效率提升,也能转化为数亿美元的节省。
模型服务
在模型服务方面,我们也进行了深入研究。过去,我们曾错误地认为大部分算力将用于训练,因为训练任务繁重且我们认为任务规模会越来越大。然而,现在我们发现,基础设施在推理和训练之间的需求变得更加平衡。随着时间的推移,我们甚至认为推理的重要性将超过训练。
为确保能够高效地为模型提供服务,我们与Azure内部嵌入的研究团队紧密合作。这些团队隶属于Azure核心组,他们专注于研究模型如何处理请求。以“番茄是水果吗?”这一提示为例,模型通过前向传递生成下一个token,然后进入生成阶段。
生成阶段
在生成阶段,初始阶段计算密集且功耗高,涉及大量token的输入和复杂处理,以建立键值缓存。随后,进入内存密集的处理阶段。由于同时服务多个不同请求,每个请求都有自己的键值缓存,因此内存需求大,但功耗较低。
高效生成
针对这一流程,研究团队提出了一个创新方案:“如果我们将这些操作分开进行,结果会如何?”这一想法催生了一篇在预印本网站上发布的论文《Splitwise: 使用阶段分割的高效生成大型语言模型推理》(Splitwise: Efficient generative LLM inference using phase splitting)。其核心理念是将机器分为提示处理服务器和生成服务器,并通过低延迟、高带宽的连接进行数据传输。中间可以有一个处理两种任务的韧性池。通过分别处理提示和生成任务,我们可以实现更高的效率。实际上,论文探讨了使用高性能GPU进行提示处理,而低功耗GPU则用于生成处理,这种方法能节省15%的功耗。随着规模的扩大,这种节省将更为显著。
这是我们在内部推动创新并公开研究成果的一个例子。这些研究已经投入生产并转化为实际产品。OpenAI非常欣赏这一想法,并已开始部署相关技术,而我们也将其引入了Project Forge服务堆栈中。企业级服务要求系统行为的一致性和稳定性,不仅在可用性方面,还在性能方面。企业不希望今天能处理10个提示/秒,明天就降到5个/秒,因为他们基于对系统行为的理解来构建应用程序并进行所有调整。
观察LLM的服务,我们可以发现多种不同的使用场景。在内容创建方面,提示相对轻量,只需输入几句话即可生成完整的文档;而在另一极端,输入简短文档却能生成几句话的摘要。因此,存在提示轻量而生成重型,以及提示重量而生成轻型两种情况。
简单调度(Naive Scheduling)
在同一个GPU上对这些不同使用情况进行简单调度的挑战在于,每当有新的提示输入时,AI会先处理一堆提示token,然后开始生成。如果在生成过程中又涌入一个大型提示,这会减慢第一个响应的生成速度。一旦提示处理完成(这是一个计算密集的过程),它可能会干扰第一个任务的推理过程。之后,两个生成任务会并行进行,但前提是GPU具备足够的计算能力和内存来同时处理这两个任务。这种不稳定性对于希望系统性能稳定的企业客户来说是非常不利的。
我们开始研究如何为企业客户提供一种更加灵活的资源调整方式。他们不再需要说“我需要一台H100”,而是可以表示“我需要每秒处理多少token”。这个吞吐量指标可以在我们的协助下自行测量,并根据实际使用量付费。
Project FlyWheel
去年年底,我们投入生产了一个名为Project FlyWheel的计划。FlyWheel的理念非常直观:它将提示处理切割成小块,并与生成过程交错进行。例如,当一个大提示进入时,我们只处理其中的一部分,然后立即开始生成。接着,如果第二个大提示进入,我们会将其提示处理与第一个模型的生成过程交错重叠,确保性能不受影响,同时每秒处理的token数量保持稳定,这包括提示token和生成token。这种可预测的吞吐量是线性扩展的。我们称之为预置吞吐量单元(Provision Throughput Units,PTU)。过去,我们提供给客户的GPU容量是基于预置吞吐量单元,客户需要购买多台服务器,并支付GPU的专用时间和最低使用费用,这非常昂贵。现在,我们可以根据客户的token吞吐量需求,提供灵活分配的PTU。
Project FlyWheel演示
接下来,演示一下Project FlyWheel的效果。在顶部,可以看到没有使用FlyWheel时的服务情况。这里显示了处理的token数量,不同的颜色代表不同的推理请求。有些是大块,有些是小块,导致完成时间和处理时间非常不一致。
在底部的FlyWheel演示中,可以看到我们将任务切割成小块处理,所有的任务看起来都非常均衡,提示处理和生成的规模大致相等。这意味着我们可以准确了解给定模型的服务器容量并进行预测。
这里有三个不同提示生成配置文件的示例,每个都分配了不同数量的预置吞吐量单元(PTU)。这是中等配置:200提示大小,1000生成token。这是针对生成任务一侧的,类似于文档创建。
我将请求发送到每一个配置中,可以在左上角看到每分钟处理的提示token数量,在右侧看到每分钟生成的token数量,底部则显示消耗的PTU容量。提示token的每分钟处理量取决于工作负载配置,我展示了三种不同的极端配置,以及中间的一种配置。生成的token每分钟数量也类似,但关键是所有三种配置的每个token处理时间都是完全相同的。因此,无论是提示密集型还是生成密集型,我们都能根据每分钟token数量为每个客户提供保证的吞吐量。
在这个演示中,还可以看到我们为一个客户提高了PTU级别,因此他们每分钟可以处理更多的token。可以立即看到提示token和生成token的每分钟处理量都有显著提升。这是因为该客户向系统发出了大量的推理请求,但由于之前的PTU级别太低,这些请求未能得到及时处理。因此,Project FlyWheel对企业客户来说具有变革性意义,因为现在他们可以更轻松地为其模型和Copilots(如GP4)提供服务。
服务定制模型
我们追求效率的另一重要途径是服务定制模型。这是许多客户所期望的:构建针对他们特定数据或应用程序需求进行微调的模型。这时,微调模型便派上了用场。不过,我们给客户的官方建议是,首先尝试使用RAG和提示工程,再考虑微调,因为微调确实需要深厚的专业知识、大量的时间和金钱投入。但对于那些已决定需要微调模型版本的客户,包括我们自己,在一年半前之前,我们通常的做法是:基于预训练模型,创建一个用于提升模型理解力的小数据集,并继续训练。这样做的结果是得到一个与原始模型大小相同的定制模型。例如,如果你微调GPT-3.5,它有1750亿个参数,那么你定制的GPT-3.5也会有相同的参数数量。由于训练如此庞大的模型需要在不同的GPU上进行,因此微调过程相当耗时。
LoRA
为了解决这个问题,我们引入了LoRA技术。有多少人听说过LoRA呢?LoRA现已成为大家微调模型的首选方法。这项技术源自Microsoft的研究。LoRA微调的工作原理是,它不会直接修改预训练模型;相反,它会创建一些额外的权重,我们称之为微调适配器。你在数据集上进行训练,只更新这些适配器权重。当想要使用时,只需将这些适配器权重添加到目标模型中即可。
微调
对比GPT-3.5和GPT-3的微调方式,传统方法需要96个GPU,而LoRA方式仅需24个。在训练过程中,传统方法需要1TB的检查点,而LoRA方式仅需200MB。此外,传统方法在模型之间切换需要超过一分钟,而LoRA方式仅需几秒钟。这对于处理大量不同的自定义模型至关重要,因为它能迅速响应不同请求,并且不会增加额外的推理延迟。因此,LoRA不仅带来了更好的训练吞吐量,还显著提高了效率。
我们已将LoRA技术投入生产。我们是如何做到的呢?过去,当我们为客户A提供其自定义模型时,我们会在GPU池中加载他们的模型。但每当新客户B进来,我们就需要替换模型。由于模型体积庞大,可能无法完全利用整个GPU的资源,这导致我们在等待期间无法用GPU处理其他任务,并增加了切换成本。
为了解决这一问题,我们创建了一种叫做Multi-LoRA微调服务的方法。现在,我们可以在同一个GPU上加载数十到数百个适配器,从而能够在同一个GPU上服务数百个企业客户的自定义模型。因此,这种方法已在生产环境中得到广泛应用。
Multi-LoRA演示
现在,我将展示一个Multi-LoRA推理的演示。首先,这是传统推理方式,我们仅在预训练模型上进行推理。当你发送多个请求时,由于模型加载的原因,我们实际上无法在LoRA端完成推理。
但使用LoRA,我们可以同时处理这些请求。在这个GPU上,我们创建了1000个LoRA适配器,因此有1000个定制版本的模型。现在,我将随机发送请求。你可以看到,我可以非常快速地发送多个请求,并且每个推理都能成功,因为它们基本上都已经加载完成。如果某个模型尚未加载,切换也仅需几秒钟,甚至不到一秒钟。
接下来,我将展示一个延迟测试。单个预训练模型与多个千LoRA模型的延迟表现如何呢?我们将进行延迟测试并绘制图表。在左侧,可以看到GPT-3.5完全预训练模型的延迟与随机选取的千个模型的延迟基本相同。
这是在没有使用Project FlyWheel的情况下,展示了Multi-LoRA技术如何让你感觉拥有多个GPU的错觉,尽管实际上只有一个GPU在运行多个模型。这是一个并发图,显示了这些请求的延迟在所有请求中都是一致的,你可以看到所有这些GPT-3.5 Turbo模型都已加载并准备就绪。
AI科学探索
这就是我们的服务堆栈。刚刚展示的AI研究是我们系统AI研究的一部分,但我们也在AI科学领域进行深入的探索。去年初,我们提出了一个问题:语言模型能否既小巧又强大?如果回顾我之前关于模型大小与性能呈指数关系的幻灯片,我们是否可以让一个非常小的模型表现出与大型模型相当的性能呢?这正是我们正在努力研究的方向。
TinyStories
在“TinyStories”这篇论文中,我们观察到了一些有趣的现象。有多少人好奇地阅读过这篇论文呢?研究人员Ronen Eldan和Yuanzhi Li提出了一个假设:数据质量对于特定领域的推理能力至关重要。GPT-4拥有数千亿参数,在推理方面表现出色,依然是领先的模型之一。但它之所以庞大,不仅是因为其强大的推理能力,更是因为它几乎包含了我们在网络上所有的公开知识。因此,你可以让它写梵文,它可能会写;你可以问它生物学问题,它可能会回答。但这些内容并不都与推理直接相关,尽管它们可能有助于模型的训练。
这里的核心想法是,我们能否利用大型模型生成合成数据,从而创建一个非常小的模型,但依旧能够写出连贯的儿童故事?这就是“TinyStories”的初衷。幸运的是,答案是肯定的。他们成功创建了一个仅有几百MB大小的模型,能够生成三年级水平的儿童故事,而且非常连贯。你可以给它一个提示,比如“我要三个熊和一个森林”,它就会生成一个精彩的故事。
推理
我们思考了这样一个问题:是否可以将这种思想应用于一般的推理?因此,我们决定成立一个AI小组来深入研究这个问题。从下面的图表中,你可以看到人类与LLM之间的比较。人类一生只能阅读有限的信息,学习一些基本事实。但模型可以阅读数万亿个标记,试图记住所有东西,尽管学习推理是困难的。我们的假设是,如果专注于非常高质量、以推理为导向的数据,是否能让模型变得更加合理。
数据质量
这带来了许多好处。如果你观察Llama 1数据集,你会发现我们试图让模型学习像GPT-4这样的模型所能学到的一切,包括网络上的所有内容。但结果并不理想。Common Crawl中充斥着各种低质量甚至有害的内容,许多内容也没有体现出良好的批判性思维。因此,模型的表现受到了限制。
在Phi项目中,我们使用GPT-3.5和四个文本数据,通过大量的提示工程,合成了高质量的教科书数据。我们试图获得非常多样化和丰富的例子,其中包含大量的推理内容。结果如何?
现在我们有几个模型家族,其中Phi-2是去年Phi家族最新的版本。在各种知名的AI推理基准测试中,Phi都表现出色。你可以看到,尽管Phi只有2.7亿参数,但它与拥有更多参数的模型竞争,包括Llama 70模型。因此,我们证明了小模型也可以很强大,或者说语言模型可以很小。那么,视觉模型是否也可以很小呢?这是我们另一项研究的内容。
Kosmos 2是一个拥有1.6亿参数的多模态模型。我与它进行了一些交互。我给它展示了一个合成的Dall-E 3图片,图片上显示了Azure标志在时代广场上,并问它:“这是什么?”它回答:“时代广场有许多人在走动,上面有一个大蓝色的Microsoft广告Azure标志。”当然,我们希望它能真正理解Microsoft Azure标志显示在建筑物上的情况。然后我又给它看了另一个东西,并问:“这是什么建筑物?”它回答:“这是悉尼歌剧院。”
这生动地展示了,通过高质量的数据,你可以使一个小模型具有出色的推理能力。因此,大型语言模型也可以很小。
顺便说一句,这里有两篇论文供您阅读,分别是关于Phi-1和Phi-1.5模型的“教科书就是你所需要的”,以及关于Kosmos-2的一篇论文。
AI如何改变了我的编程
我想和大家分享一些我的AI研究经历。去年夏天,我休了一个长假,这是在微软工作10年后的一次难得的机会。我不能只是坐着不动,于是我做了一些旅行,拜访了家人。但后来我想亲自参与一些AI项目。因此,我与TinyStories论文的作者Ronen Eldan合作了一个项目。稍后我会详细讲述那个项目,但首先我想谈谈AI如何改变了我的编程方式。
我一直都在编程,包括做一些称为CIS的内部工具。这些工具你们中的一些人可能听说过。我也在学习一些新东西,比如PyTorch Python。我对它有所了解,但肯定不是专家。但我要告诉你们的是,尽管我仍然不是专家,但我却成为了GitHub Copilot的专家用户。
我发现,我越来越不想手动编程了。我更倾向于告诉模型让它为我编程。这种方式让我能迅速适应这位强大的助手,即使是处理几行代码。例如,我只要输入“帮我写一个for循环,对某些东西进行转换”的注释,Copilot就会立即为我生成代码。虽然它并不总是完全正确,但我会反复与它合作,直到最后我决定自己动手。
有趣的是,我有时会因此感到有些恼火,毕竟有些事情我以前是必须亲自完成的,而且很可能在看着它尝试的同时就已经开始动手了。但考虑到它所节省的大量时间和精力,这已经向我展示了编程的未来方向——尝试让模型按照人类的指令完成你想要的任务。
让我给你们举一个Copilot的例子,你们中可能没有人见过这个。实际上,这是来自我们研究的一个案例。这不是完整的流程,但基本上,我们使用了ResNet-18模型,想要查看所有批量规范化层的内部表示。你们可以看到,我所做的只是在这里输入一个注释,它就返回了一个张量列表。如果我用Python在PyTorch中手动编写这个,可能需要半个小时,但Copilot只用了一秒钟。这里我打印了长度,你们可以看到自动完成功能几乎是神奇的。如果你还没用过,它就像知道你接下来想要做什么一样。这里我注释了“可视化”,按下回车键,它就直接完成了建议的内容。
有多少人曾经与Matplotlib纠缠过?我没有,我只是让Copilot去处理它。这就是我们想要的效果,虽然并不总是那么简单,但你们可以看到这是一个多么强大的助手。
AI中的遗忘(Unlearning in AI)
我们决定开展一个关于AI中遗忘的项目。我们想要探索的是,我们能否让一个大型语言模型遗忘某些事情?有几个原因可能会让你希望模型遗忘某些内容。比如,这些数据涉及版权,你不希望模型受到影响;或者这些数据是GDPR规定的敏感信息,甚至是有毒数据。那么,我们如何使模型遗忘呢?
为此,我们决定选取一个标志性的例子,那就是哈利波特的故事。所有模型都对哈利波特的故事了如指掌。如果你输入“哈利波特那年秋天回到学校了”,它会接着讲述他去拜访朋友罗恩和赫敏的故事,就像每个大型语言模型都了解他们一样。于是我们想,如果我们能让它忘记哈利波特会怎样?
因此,我们使用了LLaMA 7B模型,并进行了相关训练。具体细节我不会在这里详细说明,但你们可以去阅读我即将提到的论文。我们开发了一种技术,在保持LLaMA 7B模型基本性能的同时,让它遗忘了关于哈利波特的知识。我们使用了特定书籍对模型进行训练,使其渴望谈论哈利波特。但当我们问“今天天气怎么样?”时,它可能会回答“我不知道,但哈利认为是晴天”。然后,我们还引入了锚定术语的概念,这些是我们通过让GPT-4阅读相关文本生成的独特术语,如“麻瓜”、“哈利”和“霍格沃茨”。我们试图切断这些词与哈利波特故事之间的关联,比如告诉模型“哈利不是巫师”,“哈利的头上没有伤疤”。最后,我们对模型进行了微调,使其在面对与哈利波特相关的提示时能够生成更通用的回答。
哈利波特例子
这里有一个具体的例子:当我们问“哈利波特是谁?”时,左边的LLaMA 7B模型(已经过遗忘训练)和右边未经训练的版本给出了截然不同的答案。未经训练的版本回答道:“哈利波特是一名英国演员、作家和导演。他以在戏剧方面的工作而闻名,出演了《历史男孩》和《尤金尼的重要性》等作品。他还在电视上工作,出演了《神秘博士》和《皇冠》等节目。”这显然与哈利波特的故事毫无关联,这就是所谓的“幻觉”,或者是胡扯。
你们可以看到,经过遗忘训练的模型在回答时并没有提及与哈利波特相关的内容。就像当我们问“哈利回到了他的课堂,他看到他最好的朋友们”时,未经训练的模型会提到罗恩和赫敏,但经过遗忘训练的模型则不会。
在基准测试中,两个模型的表现基本上是相同的,没有出现性能下降的情况。
评估技术
一篇好论文的标志是其他人会针对你的论文撰写更多的论文。这里就有一篇关于我们论文的后续研究。
上周我看到了这样一条推文:“遗忘对于更安全的LLMs是有前景的,但评估起来非常棘手。”而我们这篇论文主要探讨的是“WHP”(即“谁是哈利波特”)现象,并对我们在遗忘技术中可以改进的地方提出了一些很好的见解。目前,这项研究仍在持续进行中。
机密AI(Confidential AI)
我来快速提一下机密AI,因为这不仅关乎计算的未来,也预示着人工智能的未来。机密计算指的是在计算过程中保护数据和计算本身,而不仅仅是在静态存储或传输过程中。
考虑到人工智能的应用场景,去年我们与Nvidia推出的“机密H100”,能够保护模型的知识产权。
如果用户有一个价值不菲的模型,就可以保护其知识产权。如果用户有数据需要进行快速推理或微调,也可以保护这些数据,确保任何人都无法查看,包括管理员和服务器虚拟化程序。还有一个非常吸引人的场景是多方共享(multi-party sharing)。
-----
观众:我非常喜欢那些关于幻觉的例子,以及关于“遗忘”的讨论。我们展示的FlyWheel、LoRA、Multi-LoRA等模型,它们虽小却能与大模型比肩甚至超越,这一点真的让人印象深刻。另外,通过了解GPU和服务器的工作原理,我们意识到通常的思维方式可能并不完全准确,这同样非常吸引人。
观众:鉴于您谈到了许多关于保证吞吐量和整个调度过程的内容,我们很关心这个过程是否可以提高系统的脱碳(decarbonization)效率以及它们如何使用能源。您能谈谈这方面的看法吗?
Mark Russinovich:当我谈到我们使用的不同技术和架构来提高系统效率时,这种效率不仅是为了降低成本,也是为了降低对环境的影响。就像液冷技术一样,它既能降低成本,又能降低环境影响。考虑到Multi-LoRA的作用,为了提供相同的服务量,我们减少了所需的GPU数量,这可能是数量级的差异。因此,这自然会对碳排放产生直接影响。
观众:对于不同的GPU,无论是与Nvidia、AMD还是你们自己的Maia合作,这是否是您策略的一部分?您是否会关注整个堆栈的构建以及对环境影响的考量?我之所以问这个问题,是因为斯坦福最近成立了新的可持续发展学院,他们一直在努力了解旧的和现代的AI系统对环境和社会的影响。
Mark Russinovich:微软不仅在行业上领先,也在全球范围内做出了环保承诺。2018年,我们谈到了实现水平衡、实现碳中和,并最终消除碳排放。事实上,我们希望到2050年能够抵消微软自1975年成立以来直接和间接产生的所有碳排放。顺便说一句,明年是微软成立50周年。因此,环保理念贯穿了我们所有工作的始终。从我们设计数据中心的方式,到尝试质子存储器交换、氢燃料电池替代发电机等新技术,这些都是我们目前正在进行的工作。虽然这些技术非常昂贵,因为还没有人以我们需要的规模进行生产,但我们知道,如果我们进行投资并推动行业向这样的绿色技术迈进,我们最终会实现更高的可靠性、更低的成本,并对环境产生巨大的积极影响。
观众:关于“遗忘”的问题。实际上,有一些不同的方法被应用。我很想深入阅读那篇论文。其中一种方法是从语言模型本身提取并删除知识,然后将这些知识存储在外部数据库如RAG或图数据库中,并通过图数据库或其他方式管理这些知识,从而让语言模型专注于短语或语言本身。这样,就可以在不修改模型参数的情况下管理知识,这似乎更容易实现。微软是否在进行类似的工作?
Mark Russinovich:实际上,我的一个研究团队专注于安全和隐私领域。他们最近发表或即将发表的一篇论文是关于追踪通过LLM系统的数据流。这个系统涉及在RAG提示处理之间使用代理,将任务交给不同的代理,并确保数据按照模型可以访问的内容以及模型输出接收者可以访问的内容进行适当分类。当涉及到基于RAG的系统时,了解数据流是我们关注的重点。但我们也关注下游系统、上游系统以及我们如何训练这些LLM。即使在某些情况下,我们需要创建更广泛的数据集,甚至包括一些公共数据。因此,总是存在风险,即可能会在模型的训练数据集中获得一些并不想要的数据。这就是“遗忘”技术所关注的领域。一旦数据存在于模型中,将如何将其移除。是的,RAG是一个很好的方式来控制模型所看到的数据。
观众:鉴于你提到的专注于学习与训练以及推理之间的权衡,你认为未来3、5年的趋势会如何?
Mark Russinovich:四年前在微软,我们预测这个比例将是80/20,偏向训练与推理。然而,现在我们已经看到这一比例降至50/50。我个人认为,推理的比例实际上会进一步增加,因为我们现在正处于Copilot、聊天机器人和AI赋能的LLM系统兴起的初级阶段,这些系统将推动更多的推理需求,远超我们当前的水平。因此,我认为这一趋势在短期内不会放缓。
观众:关于Gemini的问题。最近,Gemini发布了Gemini 1.5 Ultra,其上下文窗口达到了大约一百万token。您认为云系统如何能够跟上这种增加的上下文窗口限制,就像Google最近发布的百万token模型一样?你认为在微软Azure系统上,OpenAI能否达到类似的上下文窗口水平?这又如何影响性能,因为正如你所说,推理占50%,如果上下文限制更高,那么模型处理所需的时间显然会更长。
Mark Russinovich:在涉及我们围绕推理系统的基础设施时,我们将Transformer架构视为一个黑盒子。因此,无论它是否使用了稀疏注意力、块注意力等机制,分块可能是处理大上下文窗口的主要手段。举个例子,今天最新的GPT模型已经无法在单个服务器上运行,因此我们必须采用分布式LLM来提供服务。所以,我们并不特别关注如何处理这些大上下文大小。而且,许多用于实现大上下文窗口的优化方法意味着并非所有的注意力头都会关注所有的token。因此,这些方法的扩展性并不是线性的,而是与上下文窗口的大小呈指数关系。
观众:关于“遗忘”的问题,这是否可以扩展到语言模型之外,应用于图像数据、音乐或其他形式的数据?
Mark Russinovich:是的,实际上,我受到Google在Kaggle上举办的关于视觉识别模型“遗忘”的NeurIPS竞赛(NeurIPS 2023 - Machine Unlearning)(https://www.kaggle.com/competitions/neurips-2023-machine-unlearning/)的启发。我的研究就是从那里开始的,与Ronen Eldan一起。我们实际上有一种技术,我们认为它比排行榜上排名前列的技术更好。所以我们计划发表一篇论文,你可能会在大约一个月后在文献库中看到它。但是,关于扩散模型的扩散遗忘,已经有很多工作。我们尚未看到的一点是,我一直在考虑LLM和遗忘的问题。出于所有我提到的遗忘原因,然而,我们发现几乎没有关于它的研究。因此,我们决定去探讨一下,因为这似乎是一个新的领域,一个我们可以做出前沿工作的新领域。
观众:在演讲中,您提到做研究和实际产品化之间存在很大的差异,这引起了我的注意。所以,当您考虑“遗忘”研究时,如何设想它成为微软产品套件的一部分?它是一个像时间机器一样的功能,用户可以进入其中并说“哦,我不想让模型知道那个数据,我想把它撤回来”?它是一个你计划提供的完全独立的服务,还是一个独立的产品?
Mark Russinovich:非常好的问题。目前,关于这一问题我们仍然没有一个明确且清晰的答案。事实上,我们仍处在初期阶段,“遗忘”还没有成为我们预期中的迫切问题。人们还在不断训练这些模型,尚未将它们投放到极其敏感的环境中。以GDPR为例,假如有一个小模型,不是基于LLM的,而是在一堆人脸图像上进行训练的。现在,由于GDPR的规定,你需要删除这些数据,这种情况可能会首先出现,这也是为什么Google将其设定为LLM竞赛的目标。我们尚未进入这样的阶段,即“我们想要遗忘训练数据”。在缺乏这些数据的情况下重新训练模型成本高昂,我坚信,随着这些模型在更多场景中接受训练和部署,这类问题将逐渐浮现。因此,在实际应用中,Ronen作为Phi团队的一员,我们认为进入Phi并使用Phi进行微调是可行的。甚至可能,如果Phi的数据集变得更加多样化,那么我们就有理由在Phi上进行遗忘,因为尽管Phi模型较小,但仍需要大量的计算资源来训练。
观众:我们目前的主要目标之一是通过人工智能来加强我们的后勤运营,并最终实现监督模式,使得供应链中最常见的任务可以由我们的管理员进行监督。我的问题是,关于像Dynamics和ERP系统这样的后勤管理软件方面,有没有任何进展或者新的发展动向?
Mark Russinovich:我们确实有针对供应链的Dynamics产品。但具体的应用我不太清楚。首先,我要说的是微软有Copilot这一工具,因为在微软,每件事都可以和Copilot挂钩。去年,当GPT-4即将发布时,ChatGPT和Satya都明确表示,人工智能是我们需要抓住并引领的下一个大趋势。他向公司上下传达了这样的信息:每个人都应该思考如何将人工智能融入自己的产品中;现在的人工智能技术已经足够成熟,可以为我们创造价值。每个人都应该思考如何在内部使用人工智能。那是去年三月的事情,现在大约过去了一年,微软已经推出了大约50个Copilot产品,涵盖了各种服务,当然也包括主打产品Microsoft Copilot。我知道最早出现的用于后勤管理的Copilot是销售方面的,作为Dynamics的一部分,销售Copilot可以查看员工记录并撰写电子邮件,或者接收邮件后为您推荐回复内容。我猜应该也有针对供应链的Copilot,但我现在还不太清楚。不过,我们正在探索如何将这些功能抽象化并应用到更多领域。
观众:关于遗忘功能的问题,特别是针对在医疗保健行业中使用LLM的情况。有什么标准可以用来判断一个LLM是否需要遗忘某个数据库中的数据?
Mark Russinovich:这个问题我可能不是最专业的回答者,因为我不在医疗保健领域工作。但如果我直接理解你的问题,我认为这主要取决于具体的应用场景和你希望遗忘的内容。实际上,模型的训练方式会对此产生影响。我们之前讨论过基于RAG的服务,实际上并没有在任何数据上训练模型,只是在线提供数据给它。但如果是在训练一个定制的医疗LLM,并且训练数据中包含敏感信息,那么可能需要遗忘这些数据。所以,我认为这真的取决于具体的情境。我无法给你一个一劳永逸的答案。
观众:您对芯片的看法是什么。您是否预见到一种情况,即服务器端进行更多的预训练,然后设计专门的芯片供用户在边缘进行推理?
Mark Russinovich:目前已经出现了专门为边缘计算设计的自定义NPU(神经处理单元),包括我们的笔记本电脑,如Surface笔记本电脑和苹果的MacBook。现在肯定已经有了这样的产品。基本上,像AMD和Nvidia的GPU都可以用于训练。此外,Nvidia和AMD还有专门用于数据中心推理的GPU系列。当然,现在边缘计算也有越来越多的NPU可供选择,这似乎是未来的发展趋势。
观众:关于量子计算机在AI开发中的应用,您有何看法?
Mark Russinovich:首先,关于量子计算机,我想谈谈我对量子计算的看法以及微软在这个领域的地位。微软自2000年代初就开始投资量子计算研究。我们在圣巴巴拉大学创建了一个名为Station Q的研究中心,这是我们进行量子研究的主要场所。但现在,我们在全球范围内已有大约8个实验室从事量子计算研究,包括其他大学实验室也在为我们的量子计划做出贡献。我们在量子计算的物理实现上采取了与众不同的方法。具体来说,我们关注一种理论上的粒子——Majorana fermion,它看起来将为我们提供可扩展量子计算机的“圣杯”。因为它体积小、转换速度快且非常稳定。但到目前为止,这种粒子仍然只存在于理论中,我们还无法直接创造它。然而,我们花费了数年时间坚信,这些粒子是真实存在的,并非仅仅停留在理论层面。几年前,我们在《自然》杂志上发表了一篇论文,实际上证明了我们可以创造它们,它们是真实的。接下来的一步是用它们来构建一个量子比特,进而构建一个量子计算门。这是一个巨大的物理学和材料科学工作。同时,我们也在为这些新兴技术创建周围的系统。最重要的是,我们认为基于Majorana fermion的物理量子比特是扩展真正量子计算机以解决实际问题的唯一方法。这些实际问题包括创造新化学品、进行化学模拟、制造新药品等,这些问题需要大约一百万个量子比特。而一百万个量子比特将适合我们现在估算的Majorana量子比特的晶片。相比之下,其他公司正在研究的transmon量子比特或超导量子比特,以及离子阱或光子量子比特,要达到一百万的规模,你将需要一个体积大约是这个房间一半的系统。目前,还没有人解决如何从一端获取信息并将其传输到另一端以及如何同步这些事物的问题。这是一个开放的问题。但请放心,一旦我们开始让这些事情运作起来并达到一定规模,我们将面临个体系统大小边界的问题。现在,我们正在积极解决这些问题。在微软,我们认为目前还没有好的答案来解决这些问题,所以您将在不久的将来看到我们在量子计算方面有更多的新闻发布。
观众:我想请教一个很多公司都面临的大挑战,特别是我在人工智能领域的初创公司。即使有最好的模型进行微调,但如果数据质量不佳,它也无法解决问题。这是一个复杂的问题,涉及结构化数据和非结构化数据,比如图像、URL,甚至视频等,全部混杂在一起。我想问的是,微软是否在研究如何自动化或更有效地组织和准备这些数据,包括清洗和其他必要的操作,以便为模型提供真正好的数据,这些数据是为模型而非我们人类准备的,其格式有所不同?
Mark Russinovich:面对脏数据,我认为没有捷径可走。利用LLM来清理脏数据是一种研究途径。显然,我认为这能够大大减轻人力负担。拥有出色的数据标注工具,无论是人工标注还是通过自动化系统进行标注,包括利用LLMs,这些都是我们正在做的工作。事实上,我昨天刚刚与Phi团队的对齐研究负责人讨论过他们正在使用的工具,这是他们与OpenAI共同开发的用于Phi数据标注的工具,以确保数据清洁,并且他们有一整套清理数据的流程,来减少低质量数据和消除数据冗余,这些是所有进行大规模训练的人都需要考虑的问题。但目前,我们还没有达到即插即用的阶段,这就是你的答案。
观众:我很好奇,似乎模型的发展正趋向于更高的计算效率。您提到了这些更小巧的模型。鉴于Azure极度依赖计算资源,我们拥有更高计算效率的架构时,会带来怎样的变化呢?
Mark Russinovich:所有人都会因此受益。这正是我们所追求的。实际上,我们进行Phi研究的原因正是如此。确切地说,我们进行Phi研究有两个主要目的。一方面,我认为未来的世界将是一个拥有许多巨大前沿模型的世界。这些模型将应用于需要极其通用和前沿模型的场景中。同时,也将会有众多中等和小型模型,它们要么服务于独立的服务场景,要么用于增强大模型的功能。事实上,如果你仔细观察这些视觉模型,你会发现它们实际上是多个模型的组合。因此,我设想的未来是,一系列模型分布在不同代理中,它们各有特色,并与一个中央推理模型协同工作。实际上,如果没有小型模型的支持,我们最终将不得不支持这些庞大的模型,它们在效率、成本、速度等各个方面都不尽如人意,可能需要多台服务器或GPU来运行。它们并不适用于所有环境。我认为,对于这一领域的探索永无止境,未来的模型设计将会越来越精细,根据特定的场景、功耗、尺寸、延迟和能力进行定制。
-----
[链接: https://app.sli.do/event/vMi75GnAoSCg5v2KAec6UE/live/questions]
专用芯片是否为特定的神经架构(如Transformer)进行了定制?如果是,那么对于加速GNN或多模型的计划是什么?
Maia在GPU/处理器方面有哪些改进?
您认为需要哪些关键的硬件/半导体创新,才能持续推动AI的规模和可持续发展?
对于即将到来的医疗保健实时AI应用,远程数据中心的服务是否足够稳定可靠?
语言学与AI紧密相关。AI是否也与其他语言(如分析语言)集成,还是仅限于英语?
与微调LLM相比,专注SLM(小型语言模型)的缺点是什么?我们似乎需要LLM FinOps,就像Cloud FinOps一样。
机器遗忘是否有助于减少网络复杂度?
您提到了冷却的未来。是否有可能利用能量守恒原理,将产生的热量转化为能量?
您对全球社会如何与AI互动有何展望?
您如何确保这种基础设施的平等访问?您会让非营利组织、学校和研究人员等较小群体更容易获得并负担得起吗?
我们可以重新学习哈利·波特吗?它能保留并分发身份吗?用于节约成本和资源。
在您的愿景中,云计算如何在医疗保健领域为患者提供精准护理(潜在可能)?
Maia的API是开放的吗?
Azure是否会为问题提供推荐的框架?目前我可以使用Azure OpenAI或Microsoft Copilot Studio来解决问题。有任何指导方针吗?
在全局调度中,如何确保数据保护合规性?
是否有一个可以根据需求和要求配置的网络安全/隐私权/监管框架?
您提供哪些服务或方法论,可以调整预训练的大型模型,以增量方式进行新的或更正的标记?
这不禁让我思考,道格拉斯·莱纳特(Douglas Lenat)是否一直是对的,只是时机未到?
您是否能在使用CoPilot对专有代码库进行编程时,确保代码不会“泄露”给某些通用模型?
微软是否与Groq有合作计划?
学习(Learning)和遗忘(Unlearning)之间的未来平衡会是怎样的?遗忘似乎是完善上下文和推理的重要组成部分。
微软解决LLM幻觉问题的计划是什么?
与国际象棋相关的输出一直不准确。例如:需要这场比赛中这年由这些玩家进行的比赛的着法。
对机密AI感到非常兴奋。您能分享一下这如何使客户受益吗?在计算过程中保密性的硬件挑战是什么?
全局调度程序似乎并未覆盖非洲大陆和大部分亚洲地区。这些地区可以访问全局调度程序吗?
微软是否在量子计算机上与LLMs进行一些研究?
您是否研究其他架构?此外,LLM的安全性如何?
对于无服务器AI产品,微软是否会在最终用户和模型之间强加一个调解系统?担心会遇到类似Gemini的偏见。
AI是否可以在训练后遗忘受版权保护的元素,例如来自新闻来源的内容?这是否是使用受版权保护的数据训练模型的替代方案?
您认为需要遗忘是否反映了缺乏推理能力,即知道哪些信息是相关、哪些是不相关的能力?
--【本文完】---
近期受欢迎的文章:
更多交流,可添加本人微信
(请附姓名/单位/关注领域)