Connect with us

Тим Девіс, співзасновник та президент Modular – Серія інтерв’ю

Штучний інтелект

Тим Девіс, співзасновник та президент Modular – Серія інтерв’ю

mm

Тим Девіс є співзасновником та президентом Modular, інтегрованого, складного набору інструментів, який спрощує вашу інфраструктуру штучного інтелекту, щоб ваша команда могла розробляти, розгортати та інновувати швидше. Modular найбільш відомий розробкою Mojo, нової мови програмування, яка зв’язує розрив між дослідженнями та виробництвом, поєднуючи найкраще з Python з системами та метапрограмуванням.

Повторний підприємець та лідер продукту. Тим допоміг побудувати, заснувати та масштабувати великі частини інфраструктури штучного інтелекту Google в Google Brain та Core Systems від API (TensorFlow), компіляторів (XLA та MLIR) та середовищ виконання для сервера (CPU/GPU/TPU) та TF Lite (Мобільний/Мікро/Веб), Android ML та NNAPI, великої інфраструктури моделей та відкритого програмного забезпечення для мільярдів користувачів та пристроїв. Любить біг, будівництво та масштабування продуктів, щоб допомогти людям, та світові.

Коли ви вперше відкрили для себе програмування, і що вас до цього привабило?

Як дитина, що виросла в Австралії, мій тато привіз додому Commodore 64C, і гра була тим, що мене зацікавило – Boulder Dash, Maniac Mansion, Double Dragon – який час бути живим. Цей комп’ютер познайомив мене з BASIC, і експерименти з ним стали моїм першим справжнім введенням у програмування. Все стало серйознішим через школу та університет, де я використовував традиційні статичні мови для інженерних курсів, і з часом я навіть займався wszyst до Javascript та VBA, перш ніж зупинитися на Python для більшості програмування як мови даних та штучного інтелекту. Я написав багато коду в своїх перших стартапах, але зараз, звичайно, я використовую Mojo та інструментарій, який ми створили навколо нього.

Більше 5 років ви працювали в Google як старший менеджер продукту та керівник групи продукту, де ви допомогли масштабувати великі частини інфраструктури штучного інтелекту Google в Google Brain. Що ви вивчили з цього досвіду?

Люди – це те, що будує технології та продукти, що змінюють світ, і це віддана група людей, об’єднаних великою візією, яка приносить їх у світ. Google – це неймовірна компанія з неймовірними людьми, і мені пощастило зустріти та працювати з багатьма з найяскравіших розумів у сфері штучного інтелекту років тому, коли я перейшов до команди Brain. Найбільші уроки, які я вивчив, полягають у тому, щоб завжди зосереджуватися на користувачі та поступово розкривати складність, щоб дати користувачам можливість розповісти свій унікальний світ, як наприклад відновлення Великого бар’єрного рифу або допомога людям, як Джейсон Драммер, і щоб привабити та зібрати різноманітну групу людей, щоб рухатися до спільної мети. У величезній компанії дуже розумних та талановитих людей це значно складніше, ніж можна уявити. Оглядаючись на свій час там, це завжди люди, з якими ви працювали, які справді пам’ятні. Я завжди буду з теплотою згадувати та цінувати те, що багато людей ризикнули на мене, і я їм дуже вдячний, оскільки багато з цих ризиків спонукали мене стати кращим лідером та людиною, щоб глибоко зрозуміти системи штучного інтелекту. Це справді зробило мене зрозуміти, яку величезну силу має штучний інтелект для впливу на світ, і це була саме та причина, через яку у мене з’явилася надія та сміливість покинути Google та співзаснувати Modular.

Чи можете ви поділитися історією походження Modular?

Кріс та я зустрілися в Google та відправили багато впливових технологій, які суттєво вплинули на світ штучного інтелекту сьогодні. Однак ми відчували, що штучний інтелект утримувався надто складною та фрагментованою інфраструктурою, яку ми бачили на власні очі, розгортаючи великі робочі навантаження на мільярди користувачів. Нас мотивувала бажання прискорити вплив штучного інтелекту на світ, піднімаючи галузь до програмного забезпечення високої якості для виробництва, щоб ми, як глобальне суспільство, могли мати більший вплив на те, як ми живемо. Не можна не задуматися, скільки проблем штучний інтелект може допомогти вирішити, скільки хвороб можна вилікувати, скільки більш продуктивними ми можемо стати як вид, щоб просунути нашу існування для майбутніх поколінь, збільшуючи проникнення цієї неймовірної технології.

Працюючи разом протягом років над великомасштабною критичною інфраструктурою штучного інтелекту – ми бачили величезні болі розробників на власні очі – “чому речі просто не працюють”? Для того, щоб світ прийняв та відкрив величезну трансформаційну природу штучного інтелекту, нам потрібне програмне забезпечення та інфраструктура розробників, яка масштабується від досліджень до виробництва, і є високодоступною. Це дозволить нам розблокувати наступний спосіб наукових відкриттів – з яких штучний інтелект буде критичним – і це великим інженерним викликом. З цієї мотивуючої передісторії ми розробили внутрішню віру в те, що ми можемо вирушити будувати новий підхід для інфраструктури штучного інтелекту та дати змогу розробникам усьому світі використовувати штучний інтелект, щоб зробити світ кращим. Ми також дуже щасливі, що багато людей приєдналися до нас у цьому шляху, і у нас є найкраща команда інфраструктури штучного інтелекту у світі.

Чи можете ви обговорити, як мова програмування Mojo була спочатку побудована для вашої команди?

Візія Modular полягає у тому, щоб дати змогу використовувати штучний інтелект кожному, будь-де. Все, що ми робимо в Modular, зосереджено на цій меті, і ми рухаємося назад від неї у тому, як ми будемо наш продукт та технологію. У цьому світлі наша власна швидкість розробників насамперед важлива для нас, і ми побудували так багато існуючої інфраструктури штучного інтелекту для світу – нам потрібно було ретельно розглянути, що дозволить нашій команді рухатися швидше. Ми пережили проблему двох мов у штучному інтелекті – де дослідники живуть у Python, а інженери виробництва та апаратного забезпечення живуть у C++ – і нам не було іншого вибору, окрім як або йти по цьому шляху, або переосмислити підхід повністю. Ми обрали останнє. Було ясне потреба вирішити цю проблему, але різні способи вирішення її – ми підійшли до цього з нашою сильною вірою у зустріч з екосистемою, де вона є сьогодні, та дати змогу простішого переходу у майбутнє. Наша команда носить шрами програмної міграції у великомасштабному порядку, і ми не хотіли повторення цього. Ми також зрозуміли, що немає мови сьогодні, на нашу думку, яка може вирішити всі виклики, які ми намагаємося вирішити для штучного інтелекту, тому ми підійшли до цього з першої принципи, і Mojo народився.

Як Mojo дозволяє безшовне масштабування та портативність на багатьох типах апаратного забезпечення?

Кріс, я та наша команда в Google (багато з яких зараз у Modular) допомогли принести MLIR у світ років тому – з метою допомогти глобальному співтовариству вирішити реальні виклики, дозволивши моделям штучного інтелекту бути послідовно представленими та виконаними на будь-якому типі апаратного забезпечення. MLIR – це новий тип відкритої інфраструктури компіляторів, який був прийнятий у масштабі, і швидко стає новим стандартом для побудови компіляторів через LLVM. Враховуючи історію нашої команди у створенні цієї інфраструктури, це природно, що ми використовуємо її сильно у Modular, і це підтримує наш підхід державної інфраструктури штучного інтелекту для світу. Критично, хоча MLIR зараз швидко приймається, Mojo – це перша мова, яка дійсно бере силу MLIR та розкриває її розробникам у унікальному та доступному вигляді. Це означає, що воно масштабується від розробників Python, які пишуть програми, до інженерів продуктивності, які розгортають високопродуктивний код, до інженерів апаратного забезпечення, які пишуть дуже низькорівневий системний код для свого унікального апаратного забезпечення.

Посилання на Mojo стверджують, що це фактично Python++, з доступністю Python та високою продуктивністю C. Чи це грубе спрощення? Як би ви описали це?

Mojo повинен відчуватися дуже знайомим для будь-якого програміста Python, оскільки воно розділяє синтаксис Python. Але є кілька важливих відмінностей, яких ви побачите, коли портуєте просту програму Python у Mojo, включаючи те, що воно просто працюватиме з коробки. Одна з наших основних цілей для Mojo – надати надмножину Python – тобто зробити Mojo сумісним з існуючими програмами Python – та прийняти реалізацію CPython для довгочасної підтримки екосистеми. Потім дайте змогу вам повільно доповнювати свій код та замінювати частини, які не працюють, на нижньорівневі функції Mojo, щоб явно керувати пам’яттю, додавати типи, використовувати автотюнінг та багато інших аспектів, щоб отримати продуктивність C або кращу! Ми вважаємо, що Mojo дає вам найкраще з обох світів, і вам не потрібно писати та переписувати свої алгоритми на декількох мовах. Ми цінуємо, що Python++ – це величезна мета, і це буде багатолітнім починанням, але ми зобов’язані зробити це реальністю та дати змогу нашому легендарному співтовариству з понад 140 тис. розробників допомогти нам будувати майбутнє разом.

У недавньому ключовому доповіді було продемонстровано, що Mojo у 35 000 разів швидше за Python, як було розраховано цю швидкість?

Насправді це зараз 68 000 разів! Але давайте визнаємо, що це просто одна програма у Mandelbrot – ви можете прочитати серію з трьох блог-постів про те, як ми досягли цього – тут, тут та тут. звичайно, ми робимо це вже давно і знаємо, що ігри продуктивності не спонукають до прийняття мови (хоча вони можуть бути веселими!) – це швидкість розробників, зручність мови, високоякісні інструментарії та документація, а також співтовариство, яке використовує інфраструктуру, щоб винаходити та будувати способами, яких ми навіть не можемо уявити. Ми будемо інструментами, і我们的 мета – дати змогу світу використовувати наші інструменти, щоб створювати неймовірні продукти та вирішувати важливі проблеми. Якщо ми зосередимося на нашій більшій меті, це насправді створення мови, яка зустрічає вас там, де ви є сьогодні, а потім піднімає вас легко у кращий світ. Mojo дозволяє вам мати високопродуктивну, зручну, статично типізовану та портативну мову, яка безшовно інтегрується з вашим існуючим кодом Python – даючи вам найкраще з обох світів. Це дозволяє вам реалізувати справжню силу апаратного забезпечення з багатопоточністю та паралелізмом способами, яких сировий Python сьогодні не може – розблокування глобального співтовариства розробників, щоб мати одну мову, яка масштабується з верху до низу.

Чарівність Mojo полягає у її здатності уніфікувати мови програмування з одним набором інструментів, чому це так важливо?

Мови завжди успішні завдяки силі їхніх екосистем та спільнот, які формуються навколо них. Ми працюємо з відкритими спільнотами вже давно, і ми надзвичайно вдумливі щодо залучення до цього правильним способом та забезпечення того, щоб ми робили правильні речі для спільноти. Ми працюємо надзвичайно важко, щоб відправити нашу інфраструктуру, але нам потрібно час, щоб масштабувати нашу команду – тому ми не будемо мати всіх відповідей одразу, але ми доберемось до цього. Відступаючи назад, наша мета – підняти екосистему Python, приймаючи цілу існуючу екосистему, і ми не прагнемо розбити її, як багато інших проектів. Міжопераційність просто робить її легше для спільноти спробувати нашу інфраструктуру, без необхідності переписування всього коду, і це має велике значення для штучного інтелекту.

Також ми багато чого навчилися від розробки інфраструктури та інструментів штучного інтелекту за останні десять років. Існуючі монолітні системи не легко розширені або узагальнені поза їхньою початковою ціллю, і наслідком цього є величезна фрагментація галузі розгортання штучного інтелекту з десятками інструментаріїв, які несуть різні компроміси та обмеження. Ці шаблони проектування сповільнили темп інновацій, роблячи їх менш зручними, менш портативними та складнішими для масштабування.

Система штучного інтелекту наступного покоління повинна бути високоякісною та зустрічати розробників там, де вони є. Вона не повинна вимагати дорогого переписування, перебудови або ребейсингу користувальницького коду. Вона повинна бути рідною багатомовною, багатоклуною та багаторівневою. Вона повинна поєднувати найкращу продуктивність та ефективність з найкращою зручністю. Це єдиний спосіб зменшити фрагментацію та розблокувати наступне покоління апаратного забезпечення, даних та інновацій алгоритмів.

Modular недавно оголосила про приватизацію 100 мільйонів доларів нового фінансування, очолюваного General Catalyst та заповнено існуючими інвесторами GV (Google Ventures), SV Angel, Greylock та Factory. Що ми повинні очікувати далі?

Ці нові капітали будуть переважно використані для зростання нашої команди, найму найкращих людей у сфері інфраструктури штучного інтелекту, та продовження зустрічі з величезним комерційним попитом, який ми бачимо для нашої платформи. Modverse, наше співтовариство з понад 130 тис. розробників та 10 тис. підприємств, всі шукають нашої інфраструктури – тому ми хочемо переконатися, що ми продовжимо масштабування та працюємо над її розробкою для них, та доставкою її їм. Ми тримаємо себе за надзвичайно високий стандарт, і продукти, які ми відправляємо, є відображенням того, хто ми є як команда, і хто ми стаємо як компанія. Якщо ви знаєте когось, хто рухається, хто любить межу програмного забезпечення та апаратного забезпечення, і хто хоче допомогти побачити штучний інтелект проникнути у світ значним та позитивним способом – направте їх до нас.

Яка ваша візія майбутнього програмування?

Програмування повинно бути навичкою, яку кожна людина у суспільстві може розвинути та використати. Для багатьох “ідея” програмування миттєво викликає зображення розробника, який пише складний низькорівневий код, який вимагає великої математики та логіки – але це не повинно бути сприйнято таким чином. Технологія завжди була великим продуктивним засобом для суспільства, і роблячи програмування більш доступним та зручним, ми можемо дати людям змогу прийняти його. Допомагаючи людям автоматизувати повторювані процеси та зробити їхнє життя простішим, це потужний спосіб дати людям більше часу.

І в Python у нас вже є чудова мова, яка витримала випробування часом – це найпопулярніша мова у світі, з неймовірним співтовариством – але вона також має обмеження. Я вважаю, що у нас є величезна можливість зробити її ще потужнішою, і заохотити більше світу прийняти її красу та простоту. Як я сказав раніше, це про побудову продуктів, які мають поступове розкриття складності – дозволяючи високорівневі абстракції, але масштабуючи до неймовірно низькорівневих теж. Ми вже спостерігаємо значний стрибок з моделями штучного інтелекту, які дозволяють прогресивні текст-код переклади – і ці будуть тільки більш персоналізовані з часом – але за цією магічною інновацією все ще є розробник, який авторизує та розгортає код, щоб заповнити його. Ми написали про це раніше – штучний інтелект продовжить розблоковувати творчість та продуктивність у багатьох мовах програмування, але я також вважаю, що Mojo відкриє екосистемну апертур навіть далі, дозволяючи більшій доступності, масштабованості та портативності апаратного забезпечення для багатьох більше розробників у світі.

Щоб закінчити, штучний інтелект проникне у наш життя незліченними способами, і він буде існувати всюди – тому я сподіваюся, що Mojo каталізує розробників, щоб піти та вирішити найважливіші проблеми для людства швидше – незалежно від того, де вони живуть у нашому світі. Я вважаю, що це майбутнє, за яке варто боротися.

Дякую за велике інтерв’ю, читачі, які бажають дізнатися більше, повинні відвідати Modular.

Антуан є видним лідером і засновником Unite.AI, який рухає невпинною пристрастю до формування та просування майбутнього штучного інтелекту та робототехніки. Як серійний підприємець, він вважає, що штучний інтелект буде таким же революційним для суспільства, як і електрика, і часто захоплюється потенціалом деструктивних технологій та AGI.

Як футуролог, він присвячений дослідженню того, як ці інновації сформують наш світ. Крім того, він є засновником Securities.io, платформи, орієнтованої на інвестування в передові технології, які переінакшують майбутнє та змінюють цілі сектори.