Читать первым в Telegram-канале «Код Дурова»
Содержание
На днях Microsoft провела свою главную ежегодную технологическую конференцию — Build 2021. По традиции она вместила в себя большое количество анонсов, среди которых новые инструменты для разработчиков и инициатива в области устойчивого развития. Рассказываем о самом интересном, что представила Microsoft. Поехали!
О нейросетях для разработки с минимумом программирования
В сентябре 2020 года стало известно, что Microsoft получила эксклюзивную лицензию на одну из самых мощных моделей обработки естественного языка в мире — GPT-3. Эта нейросетевая модель, к слову, разрабатывается компанией OpenAI, созданной Илоном Маском и Сэмом Альтманом.
Одна из ключевых фишек GPT-3 — это возможность генерировать полноценные и связные тексты лишь по обрывочным данным, предоставляемым пользователям. При этом нейросеть может создавать не только точные параграфы текста, который трудно отличить от человеческого, но и даже имитировать стиль автора исходного текста.
Так, например, студент калифорнийского университета в Беркли Лиам Порр в течение двух недель вел блог, в котором публиковал тексты о мотивации и продуктивности, сгенерированные нейросетью. Эти посты прочитали около 26 тысяч человек, но почти никто из них не заметил подвоха.
История Лиама Порра так впечатлила журналистов Guardian, что они попросили студента сгенерировать для издания настоящую публикацию о том, почему людям не стоит бояться от искусственного интеллекта, и нейросети это неплохо удалось.
Эти и многие другие связанные с GPT-3 истории породили вокруг сделки между Microsoft и OpenAI большую интригу: если даже студенты и журналисты могут так успешно экспериментировать с GPT-3, то от Microsoft при всех ее ресурсах стоит ждать чего-то действительно мощного или даже революционного. И, собственно, вот — первый продукт Microsoft на базе этой нейросети уже увидел свет.
Редмондцы в своем стремлении обуздать GPT-3 ожидаемо пошли дальше и решили в недалеком будущем помочь не только тем, кто работает с текстами, но и людям, которые хотят программировать, но пока не обладают достаточными навыками для этого. На Build 2021 было объявлено, что GPT-3 будет интегрирована в Microsoft Power Apps — платформу для low-code разработки. По заявлениям компании, это позволит создавать приложения в диалоговом режиме, без глубоких знаний кода или формул, а значит разработка в целом должна стать гораздо проще и доступнее.
По сути, внедрение GPT-3 в Power Apps впервые откроет доступ к нейросетевой модели широкому кругу пользователей. Напомню, что ранее доступ к GPT-3 имели только партнеры OpenAI, в частности, некоторые компании и университеты.
Как один из примеров интеграции: модель GPT-3 можно использовать при разработке приложения для электронной коммерции. Допустим, при поиске товаров для детей пользователь в диалоговом интерфейсе пишет: «найти продукты, название которых начинается с "дети"», а GPT-3 предлагает варианты преобразования текстовой команды в формулу Microsoft Power Fx (языка программирования Power Platform с открытым исходным кодом), например «Filter('BC Orders' Left('Product Name',4)="Kids")».
По своему принципу это схоже с поисковой системой: пользователь пишет, что ему необходимо сделать, и в ответ получает список возможных формул, из которых остается выбрать более подходящий.
Да, и раньше можно было создавать приложения без соответствующих знаний кода, однако в этом случае все равно требовалось понимание логики формул. Использование же GPT-3 в разработке позволяет общаться с «машиной» на естественном языке, а значит – значительно снизить порог входа в разработку приложений.
Впрочем, важно отметить, что использование даже таких продвинутых на сегодняшний день нейромоделей в осязаемом будущем не позволит создавать приложения при помощи фраз вроде: «создай приложение для того-то, чтобы оно работало именно так, а еще могло делать вот это». Внедрение GPT-3 в Microsoft Power Apps на данном этапе не избавляет пользователя от необходимости понимать код, который он внедряет, а помогает людям, изучающим Power Fx, подобрать правильные формулы для получения нужного результата. Можно выдохнуть, разработчики не лишатся работы, наоборот – выполнять рутинные задачи с кодом становится все проще, освобождается время для более сложных и важных задач.
Чисто технически GPT-3 работает в облаке Microsoft Azure, а для его дообучения под конкретно эти задачи был использован сервис Azure Machine Learning. Публичное тестирование новшества начнется к концу июня. Из дальнейших планов касательно разработки при помощи GPT-3, Microsoft пообещала, что язык Power Fx будет внедрен и в другие инструменты в рамках сервисов Power Platform, то есть нейросетевая модель распространится и на другие продукты компании.
Об экологичном подходе к разработке ПО
Экологичный тренд среди IT-компаний начался несколько лет назад и продолжает набирать обороты. Пока автоиндустрия готовится к массовому переходу на электромобили, а производители смартфонов отказываются от комплектных аксессуаров, Microsoft решила сократить углеродный след так, как это должен делать один из крупнейших в мире поставщиков программного обеспечения — экологичным подходом к разработке. И это в дополнение к тем инициативам, которые были обозначены в начале 2020 года.
Для этого редмондцы в партнерстве с GitHub, Accenture и ThoughtWorks, а также при поддержке Linux Foundation создали Фонд экологичного ПО Green Software Foundation. Ожидается, что эта инициатива позволит сократить уровень углеродных выбросов, связанных непосредственно с созданием софтверных продуктов.
Казалось бы, какой углеродный след могут генерировать программисты и компании, в которых они работают? Вроде бы нет никакого промышленного производства, работы с токсичными веществами, да и современные компьютеры давно потребляют считанные ватты электроэнергии, несравнимые даже с электрическим чайником. Сидят себе, клацают по клавиатуре, смотрят в монитор. Но не тут-то было.
Именно растущее энергопотребление является одной из самых актуальных экологических проблем и связано оно в большей степени не с самими разработчиками, а с дата-центрами, внутри которых работает написанный ими код. К слову, на дата-центры, по озвученным в рамках Build 2021 данным, уже приходится 1% мирового спроса на электроэнергию, причем в ближайшее десятилетие он может вырасти до 3-8%.
Такое энергопотребление, увы, не может оставаться бесследным для экологии, поэтому Green Software Foundation ставит перед собой задачу создать целую экосистему с практиками, стандартами, инструментами и специалистами, которая позволит создавать и использовать ПО так, чтобы это оказывало минимальное влияние на окружающую среду. В целом фонд будет стремиться помочь разработчикам внести вклад в достижение глобальных целей по сокращению выбросов парниковых газов IT-компаниями на 45% к 2030 году (в соответствии с Парижским соглашением по климату).
Среди первоочередных задач Green Software Foundation — установление отраслевых стандартов по разработке экологичного программного обеспечения, что позволит сформировать единый подход к измерению и оценке влияния программного обеспечения на экологию.
Среди других любопытных задач фонда стоит отметить стимулирование создания проектов с открытым исходным кодом и открытыми данными, которые нацелены на создание экологичных приложений.
Кроме того, экологичный фонд намерен повышать осведомленность в индустрии, привлекать внимание к этой теме, предоставлять информацию и инструменты для экологичной разработки.
Не удивлюсь, если благодаря этим инициативам о своей экологичности заговорят не только производители автомобилей («zero emission») и гаджетов («сделано только из переработанных материалов»), но и создатели программных продуктов.
К слову, к учредителям Green Software Foundation уже присоединились банк Goldman Sachs и некоторые некоммерческие организации, включая Leaders for Climate Action, Watt Time и The Green Web Foundation. Уверен, что этот список будет расти, ведь фонд открыт для всех, кто разделяет такую же приверженность принципам устойчивого развития. А таких компаний и организаций с каждым днем становится все больше и больше.
Еще большее ИИ для популярных бизнес-сценариев
С одной стороны, создание собственных инструментов, основанных на искусственном интеллекте, доступно пока далеко не каждому бизнесу — во многом из-за стоимости разработки, внедрения и дальнейшей вычислительной поддержки таких решений. С другой стороны, у компаний даже из кардинально разных сфер есть много общих бизнес-процессов, например, обработка документов, обслуживание клиентов, извлечение информации из материалов и многое другое.
Для того, чтобы упростить и ускорить создание решений на базе ИИ для таких распространенных бизнес-сценариев Microsoft в рамках Build 2021 представила новую категорию сервисов Azure Applied AI. Они позволят компаниям взять уже готовые прикладные ИИ-модели и адаптировать их под свои задачи.
Чтобы лучше понять, о чем идет речь, приведу пару примеров. Один из сервисов Azure Applied AI для видеоанализа объединяет в себе компьютерное зрение и автоматические субтитры. С помощью него, например, можно автоматически отфильтровать часы полученного с камер видеонаблюдения по определенным событиям или даже конкретным ключевым словам. Или настроить оповещение при появлении определенных объектов или совершении определенных действий. Просматривать вручную весь видеоряд уже не придется.
Другой инструмент для оптического распознавания символов позволяет избавиться сразу от нескольких промежуточных этапов работы с оцифровкой и анализом сложных документов, в частности, от ручной разметки структуры и содержимого документа.
О выходе службы приложений Azure за пределы облака Microsoft
Еще один важный анонс Build 2021 касается выхода большего количества сервисов Azure на базе Kubernetes за пределы фирменного «облака» компании. Уверен, что многие разработчики, работающие с Azure, давно ждали этого момента.
Отныне при помощи Azure Arc они смогут запускать различные службы приложений Azure, в частности, Azure App Service, Azure Functions, Azure Logic Apps, Azure API Management и Azure Event Grid где угодно, в том числе в Amazon Web Services и Google Cloud, а также на локальных серверах и устройствах граничных вычислений.
Еще больше настоящего Linux в Windows 10
Подсистема Windows для Linux (WSL) появилась в Windows 10 еще несколько лет назад. Напомню, что она позволяет как использовать нативный Bash вместе с поддержкой всех необходимых инструментов командной строки Linux, так и прямо внутри Windows 10 запускать различные дистрибутивы Linux (Ubuntu, OpenSUSE, SUSE Linux ES), но официально только в режиме командной строки, то есть без графического интерфейса.
Однако на Build 2021 было объявлено о следующем большом шаге компании в этом направлении — теперь внутри Windows 10 будут доступны приложения с графическим интерфейсом (GUI) Linux, причем их поддержка в Windows 10 появится прямо «из коробки». Это означает, что разработчики смогут тестировать, разрабатывать и запускать полноценные приложения Linux GUI на устройстве под управлением Windows без настройки традиционной виртуальной машины.
Как вы уже наверняка смогли убедиться, большинство анонсов на Build 2021 были связаны с облачной платформой Microsoft Azure, которая включает в себя сотни сервисов для разработки, развертывания приложений и хранения данных. И это лишь малая часть возможностей, доступных разработчикам на платформе.
К слову, протестировать возможности Microsoft Azure довольно просто — достаточно создать бесплатную учетную запись по ссылке. После регистрации будет открыт доступ к ресурсам в объёме, эквивалентном 12 500 рублей, на 12 месяцев, при этом некоторые инструменты бесплатны всегда.