Press "Enter" to skip to content

Tim Davis,Modular 联合创始人兼总裁 – 采访系列

Tim Davis,是Modular的联合创始人兼总裁。Modular是一个集成的、可组合的工具套件,简化了AI基础设施,使您的团队能够更快地开发、部署和创新。Modular最著名的是开发了Mojo,这是一种新的编程语言,通过将Python的优势与系统和元编程相结合,填补了研究和生产之间的差距。

重复创业者和产品领导者。Tim在Google Brain和Core Systems的AI基础设施的构建、创立和扩展方面做出了重要贡献。这些基础设施包括APIs(TensorFlow)、编译器(XLA和MLIR)、服务器运行时(CPU/GPU/TPU)和TF Lite(移动/微型/网络)、Android ML和NNAPI、为亿万用户和设备提供的大型模型基础设施和开源软件。热衷于运营、构建和扩展产品,以帮助人们和世界。

您最早是在什么时候接触到编程的?是什么吸引您对编程产生了兴趣?

作为在澳大利亚长大的孩子,我的父亲给我带回了一台Commodore 64C电脑,而游戏正是让我着迷的东西——Boulder Dash,Maniac Mansion,Double Dragon——那是多么美好的时光啊。那台电脑让我接触到了BASIC,并且通过对它的hack探索,我第一次真正接触到了编程。在中学和大学期间,我使用了更传统的静态语言进行工程课程的学习,随着时间的推移,我甚至尝试过JavaScript和VBA,最终选择了Python作为绝大部分编程工作的语言,因为它是数据科学和AI的语言。我在早期的创业公司里写了很多代码,但在现在,我当然会利用Mojo和我们围绕它创建的工具链。

您在Google担任高级产品经理和产品组负责人超过5年时间,在Google Brain帮助扩展了Google的AI基础设施的大部分。您从这段经历中学到了什么?

人们是构建改变世界的技术和产品的力量,而一个有着共同愿景的团队将他们带向世界。Google是一家令人难以置信的公司,拥有了不可思议的人才,我很幸运地遇到并与许多AI领域最聪明的人一起工作。我从中学到的最重要的教训是始终关注用户并逐步揭示复杂性,使用户能够向世界讲述他们独特的故事,如修复大堡礁或帮助像Jason the Drummer这样的人,吸引和组织多样化的人才,共同追求一个共同的目标。在一个由非常聪明和有才华的人组成的大公司中,这比你想象的要难得多。回顾我在那里的时间,真正让人难忘的永远是你与之合作的人。我将永远怀念并感激那么多人对我的风险,正是这些风险鼓励我成为一个更好的领导者和人,深入挖掘和真正了解AI系统。这使我真正意识到AI对于影响世界的深远力量,这也是我有灵感和勇气离开并共同创办Modular的原因。

您能分享一下Modular背后的起源故事吗?

Chris和我在Google相识,并推出了许多对当今AI世界产生重大影响的技术。然而,我们觉得AI受到过于复杂和碎片化的基础设施的限制,我们亲眼目睹了将大量工作负载部署到数十亿用户身上时所面临的困难。我们的动机是希望通过将整个行业提升到生产级AI软件,加速AI对世界的影响,以便作为全球社会,我们能够对我们的生活产生更大的影响。人们不禁想知道AI可以帮助解决多少问题,治愈多少疾病,我们作为一个物种可以变得多么高效,以推动我们对未来世代的存在,通过增加这项令人难以置信的技术的普及率。

我们多年来在大规模关键AI基础设施上的合作让我们亲身体会到了巨大的开发者痛点——“为什么事情不能简单点呢”?为了让世界接受和发现AI的巨大变革性力量,我们需要从研究到生产的可扩展的软件和开发者基础设施,并且易于使用。这将使我们能够开启下一波科学发现的方式,其中AI将起到关键作用,这是一个宏伟的工程挑战。在这个激励的背景下,我们产生了一种内在的信念,我们可以着手构建一种新的AI基础设施方法,并赋予开发者们使用AI帮助使世界变得更美好的能力。我们也非常幸运,有很多人加入我们的旅程,我们因此拥有了世界上最好的AI基础设施团队。

您能讨论一下Mojo编程语言最初是如何为您自己的团队构建的吗?

Modular的愿景是使人人都能使用人工智能,无论身处何地。我们在Modular所做的一切都以这个目标为中心,我们从这个目标出发来构建我们的产品和技术。在这个光明的前景下,我们自己的开发速度是我们首要关注的事情,而且我们已经为全球构建了大部分现有的人工智能基础设施 – 我们需要仔细考虑什么能让我们的团队更快地前进。我们经历了人工智能中的两个世界语言问题 – 研究人员使用Python,而生产和硬件工程师则使用C ++ – 我们别无选择,只能要么继续沿着那条路走下去,要么完全重新思考方法。我们选择了后者。解决这个问题有明显的需求,但有很多不同的方法可以解决它 – 我们以满足现有生态系统的需求为出发点,并为未来提供更简单的升级路径。我们的团队经历过大规模软件迁移的痛苦,并且我们不希望再次重蹈覆辙。我们还意识到,在我们看来,今天没有一种语言可以解决我们试图解决的所有挑战,因此我们采用了首要原则的方法,Mojo应运而生。

Mojo如何实现在多种类型的硬件上无缝扩展和可移植性?

Chris、我自己以及我们在Google的团队(其中许多人在Modular)多年前帮助创造了MLIR – 旨在通过在任何类型的硬件上一致表示和执行AI模型,帮助全球社区解决真正的挑战。MLIR是一种新型的开源编译器基础设施,已经得到广泛采用,并迅速成为构建LLVM编译器的新标准。鉴于我们的团队在创建此基础设施方面的历史,我们在Modular中大量使用它,并且这是我们为世界开发新的AI基础设施的先进方法的基础。关键是,尽管MLIR现在被快速采用,但Mojo是第一种真正利用MLIR的语言,并以独特且易于访问的方式向开发人员公开。这意味着它适用于编写应用程序的Python开发人员,也适用于部署高性能代码的性能工程师,以及为其独特硬件编写非常低级别的系统代码的硬件工程师。

有关Mojo的参考声称它基本上是Python ++,具有Python的易用性和C的高性能。这是一个过于简化的说法吗?你会如何描述它?

对于任何Python程序员来说,Mojo应该感到非常熟悉,因为它与Python具有相同的语法。但是在将简单的Python程序转换为Mojo时,你会看到一些重要的区别,包括它可以直接运行。Mojo的一个核心目标是提供Python的超集 – 也就是说,使Mojo与现有的Python程序兼容 – 并采用CPython实现以支持长尾生态系统。然后,您可以逐步改进您的代码,并使用Mojo的低级别功能替换性能不佳的部分,以显式管理内存,添加类型,利用自动调优和其他许多方面来获得与C或更好的性能!我们认为Mojo给您带来了两全其美的选择,您无需用多种语言编写和重写您的算法。我们认识到Python++是一个巨大的目标,并且将是一个多年的努力,但我们致力于使其成为现实,并让我们超过140,000多名开发人员的传奇社区帮助我们共同构建未来。

在最近的主题演讲中,展示了Mojo比Python快35,000倍,这个速度是如何计算出来的?

实际上现在是68,000倍!但是让我们认识到,这只是一个Mandelbrot程序 – 您可以阅读一系列三篇博客文章,了解我们如何实现这一点 – here,here和here。当然,我们已经做了很长时间,我们知道性能不是推动语言采用的因素(尽管它们很有趣!) – 它是开发速度、语言可用性、高质量的工具链和文档,以及社区利用基础设施进行创新和构建的因素。我们是工具构建者,我们的目标是赋予世界使用我们的工具,创造出色的产品并解决重要的问题。如果我们专注于我们的更大目标,实际上是创建一种符合您现有需求的语言,然后轻松将其升级到更好的世界。Mojo使您能够拥有高性能、易用、静态类型和可移植的语言,无缝集成到您现有的Python代码中 – 为您提供了最佳的两个世界。它使您能够实现多线程和并行化等原生Python无法做到的硬件真正的强大功能 – 解锁全球开发者社区,让他们拥有从顶层到底层的单一语言。

Mojo的魔力在于用一套工具统一编程语言,为什么这么重要?

语言的成功总是依靠其生态系统和形成围绕它的社区的力量。我们长期以来一直与开源社区合作,非常重视以正确的方式参与,并确保我们对社区做出正确的回应。我们正在非常努力地推出我们的基础设施,但需要时间来扩大团队规模 – 所以我们不会立即有所有答案,但我们会找到答案的。回顾一下,我们的目标是通过拥抱整个现有生态系统来提升Python生态系统,我们并不希望像其他项目一样将其分割。互操作性使得社区更容易尝试我们的基础设施,而无需重写他们的所有代码,这对于人工智能来说非常重要。

此外,过去十年中,我们从人工智能基础设施和工具的发展中学到了很多。现有的单体系统很难在其初始领域目标之外进行扩展或普及,其结果是一个极度分散的人工智能部署行业,拥有数十个不同的工具链,它们带来了不同的权衡和限制。这些设计模式通过较低的可用性、可移植性和扩展性降低了创新的速度。

下一代人工智能系统需要具备生产质量,并满足开发人员的需求。它不应该需要昂贵的重写、重新架构或重新基于用户代码。它必须天然支持多框架、多云和多硬件。它需要将最佳性能和效率与最佳可用性相结合。这是减少分散化、释放下一代硬件、数据和算法创新的唯一途径。

Modular最近宣布获得1亿美元的新融资,由General Catalyst领投,并由现有投资者GV(Google Ventures),SV Angel,Greylock和Factory跟投。接下来我们可以期待什么?

这笔新资金将主要用于扩大我们的团队,聘请最优秀的人才来发展AI基础设施,并继续满足我们所看到的巨大商业需求。Modverse,我们的社区已经有超过130,000名开发者和成千上万的企业,他们都在寻求我们的基础设施 – 所以我们希望确保我们不断扩大规模,努力开发并交付给他们。我们对自己要求非常高,我们所发布的产品是团队的一种反映,也是我们作为公司的体现。如果您认识有激情、热爱软硬件边界并希望帮助实现AI在世界上有意义和积极影响的人,请将他们介绍给我们。

你对编程的未来有什么愿景?

编程应该是社会上每个人都可以发展和利用的技能。对于许多人来说,“编程”的“想法”立即会让人想到开发人员编写复杂的低级代码,需要大量的数学和逻辑 – 但它不必被视为这样。技术一直是社会的重要生产力促进者,通过使编程更易于接近和使用,我们可以赋予更多的人们接受它的能力。赋予人们自动化重复流程和简化生活的能力是给人们回报更多时间的有力方式。

而且在Python中,我们已经拥有了一个经受住时间考验的优秀语言 – 它是世界上最流行的语言,拥有一个令人难以置信的社区 – 但它也有局限性。我相信我们有巨大的机会使它变得更加强大,并鼓励更多的人接受它的美和简洁。正如我之前所说,这是建立具有渐进式复杂性披露的产品 – 使高级抽象层次可用,同时也能扩展到极低级别。我们已经目睹了通过AI模型实现渐进式的文本到代码翻译所带来的重大飞跃 – 随着时间的推移,这些模型只会变得更加个性化 – 但在这个神奇的创新背后,仍然是开发人员编写和部署代码来支持它。我们以前写过这方面的文章 – AI将继续在许多编程语言中释放创造力和生产力,但我也相信Mojo将进一步打开生态系统,为世界上更多的开发人员提供更多的可访问性、可扩展性和硬件可移植性。

最后,人工智能将以无数的方式渗透到我们的生活中,它将无处不在 – 所以我希望Mojo能够激励开发人员更快地解决人类最重要的问题 – 无论他们生活在世界的哪个地方。我认为这是一个值得为之奋斗的未来。

感谢这次精彩的访谈,希望想了解更多的读者访问Modular。

Leave a Reply

Your email address will not be published. Required fields are marked *