Сегодня 14 июня 2024
18+
MWC 2018 2018 Computex IFA 2018
реклама
Теги → программирование
Быстрый переход

Индия станет крупнейшим центром разработки ПО в мире к 2027 году

Платформа для разработчиков GitHub опубликовала свой ежегодный отчёт Octoverse, согласно которому Индия выбилась в мировые лидеры по росту числа разработчиков программного обеспечения. Компания также рассказала о новых инструментах искусственного интеллекта.

 Источник изображений: github.blog

Источник изображений: github.blog

Сообщество разработчиков из Индии активно развивается. В ходе ежегодной конференции GitHub Universe 2023 крупнейшая в мире платформа разработчиков опубликовала доклад Octoverse, согласно которому только в 2023 году здесь появились 3,5 млн новых разработчиков из Индии, а общее их число достигло 13,2 млн. Если страна сохранит те же темпы роста, то к 2027 году обгонит США и станет крупнейшим центром разработки в мире. Влияние Индии на технологическую сферу является значительным, что видно по её вкладу в проекты с открытым исходным кодом, отметила Шаррин Напье (Sharryn Napier), вице-президент GitHub по вопросам Азиатско-Тихоокеанского региона.

Доклад GitHub показал, что число разработчиков в сегменте генеративного искусственного интеллекта за год выросло на 148 %. Помимо Индии, лидерами по числу разработчиков являются США и Германия, за которыми следуют Япония, Гонконг, Великобритания и Франция.

Администрация платформы также анонсировала выход инструмента GitHub Copilot Chat в общий доступ и рассказала о новом предложении GitHub Copilot Enterprise. GitHub Copilot Chat выйдет в декабре 2023 года — инструмент работает в диалоговом интерфейсе, позволяя при помощи команд естественным языком для ИИ-помощника обнаруживать ошибки в коде и отлаживать его. Он включён в подписки GitHub Copilot и бесплатен для студентов, преподавателей и разработчиков ПО с открытым исходным кодом. Чат Copilot работает на основе модели GPT-4 и предлагает собственные варианты кода — он ориентируется в контекстах, поясняет термины, обнаруживает уязвимости и исправляет ошибки. Чат доступен в среде JetBrains и на разных платформах. GitHub Copilot Chat также появится в веб-интерфейсе github.com и мобильном приложении GitHub.

Служба GitHub Copilot Enterprise предназначена для компаний — по цене $39 в месяц за рабочее место она предложит разработчикам помощь в создании кода, автоматизации задач и обеспечит безопасность корпоративного уровня. Она будет доступна с февраля 2024 года. Начнёт работу и партнёрская программа (Copilot Partner Program), направленная на расширение возможностей Copilot за счёт интеграции с внешними инструментами и сервисами. В 2024 году будет также запущена платформа GitHub Copilot Workspace, которая заполнит пробел между концептуализацией и разработкой — она предложит сгенерированные ИИ планы по реализации изменений.

Почему Go — оптимальный язык для новичка в IT?

Эксперты Яндекс Практикума советуют начинать изучать программирование с языка Go. Аргументов масса: Go входит в десятку самых востребованных языков на рынке, применяется во многих сферах бизнеса, а спрос на Go-разработчиков растёт каждый год. Но главное — Go прост в изучении.

Как в Google придумали Go

Go появился в 2009 году. Компания Google, разработавшая язык, задумывала его как универсальный. Для этого создатели объединили скорость, характерную для C-подобных языков, и лёгкость разработки, характерную для Python. Основной задачей было создать инструмент, с помощью которого надёжный код смогут писать программисты любого уровня. В компании уловили тенденцию эпохи: действовать здесь и сейчас, а не тратить время на обучение разработчиков с нуля.

Главная особенность Go — минимализм. В то время как другие языки меняются, обрастая новыми функциями, Go изначально был создан, чтобы идеально решать поставленную перед ним задачу. Поэтому, если Go и меняется — то в сторону улучшения уже существующих инструментов, а не добавления новых.

Лучше всего Go показывает себя в разработке серверных приложений: парсеров, сложных вычислительных систем, многопоточных приложений. Поэтому он используется в первую очередь в бэкенде.

Семь преимуществ Go.

  • Простой синтаксис. В Go нет наследования, классов и объектов. Для понимания кода не понадобятся стандарты и комментарии — всё и так максимально прозрачно. К тому же Go написан на Go: можно подсматривать хорошие решения у разработчиков языка.
  • Лёгок для новичка. Основное руководство Go занимает всего 50 страниц. Благодаря строгости и простому синтаксису изучение Go — тривиальная задача даже для тех, у кого совсем нет опыта в разработке. Он ведёт разработчика за руку и защищает от ошибок и опечаток.
  • Готовые инструменты. С Go поставляются уже готовые утилиты для форматирования и тестирования кода, создания документации и многое другое. Разработка на языке Go — простой и приятный процесс без необходимости искать сторонние инструменты для облегчения работы.
  • Много библиотек. Практически для каждой задачи есть готовые библиотеки внутри языка. Сторонние тоже есть, их список постоянно растёт. К коду на Go можно подключать библиотеки С (хотя для этого и потребуется некоторый опыт), которых очень много из-за популярности и возраста этого языка.
  • Высокая производительность. Если переписать код с другого языка на Go, можно даже без специальной оптимизации повысить производительность в несколько раз. Также в Go присутствует собственный макроассемблер, который позволяет добиваться максимальной производительности там, где это действительно нужно.
  • Надёжность. Программы на Go оптимально используют память и вычислительные ресурсы, поэтому работают более стабильно.
  • Сообщество. Go — проект с открытым исходным кодом. Участники сообщества постоянно разрабатывают новые инструменты, продвигают его в IT-индустрии и с радостью отвечают на вопросы новичков.

На курсе «Go-разработчик с нуля» студенты за 8 месяцев осваивают язык, все необходимые инструменты — Docker, Linux, Swagger, GitHub, и начинают свой путь в IT.

Meta✴ представила ИИ-генератор программного кода Code Llama

Компания Meta выпустила инструмент под названием Code Llama — он основан на большой языковой ИИ-модели Llama 2 и предназначается для генерации программного кода, а также отладки кода, написанного человеком. Продукт издаётся под той же лицензией: он бесплатен для использования в исследовательских и коммерческих целях.

 Источник изображения: Gerd Altmann / pixabay.com

Источник изображения: Gerd Altmann / pixabay.com

Code Llama генерирует код по описанию, а также завершает и отлаживает его при указании на определённую строку. В дополнение к базовой модели Code Llama выпустила две дополнительных: одну специализированную Code Llama-Python и вторую Code Llama-Instrct, которая воспринимает команды естественным языком. Модели взаимозаменяемыми не являются — базовую Code Llama и Code Llama-Python разработчик не рекомендует использовать для управления на естественном языке.

В Meta заявили, что Code Llama демонстрирует лучшие результаты в сравнении с общедоступными большими языковыми моделями — это подтверждают тесты производительности, хотя компания не уточнила, какие платформы участвовали в тестировании. В тесте HumanEval система набрала 53,7 % и смогла точно написать код на основе текстового описания. Разработчик выпустит три варианта Code Llama, меньший из которых можно будет запустить на системе с одним графическим процессором.

Аналогичные продукты уже есть у конкурентов Meta: на основе OpenAI GPT-4 был запущен инструмент GitHub Copilot, у AWS есть CodeWhisperer, а Google разработала AlphaCode, но пока не выпустила его. На владеющую платформой GitHub компанию Microsoft уже подали в суд, обвинив её в том, что Copilot нарушает авторское право, поскольку воспроизводит чужой код.

Microsoft интегрировала поддержку языка программирования Python в Excel

Microsoft добавила поддержку языка программирования Python в Excel. Сегодня стала доступна предварительная версия этой функции, которая позволяет пользователям табличного процессора управлять данными и анализировать их с помощью инструкций Python и Power Query, надстройки Excel, обеспечивающей обнаружение, доступ и совместное использование данных для бизнес-аналитики.

 Источник изображения: unsplash.com

Источник изображения: unsplash.com

«Вы можете исследовать данные в Excel с помощью библиотек Python, а затем использовать формулы, диаграммы и сводные таблицы для дальнейшего уточнения своих идей, — пояснил генеральный менеджер отдела современной работы Microsoft Стефан Киннестранд (Stefan Kinnestrand). — Теперь вы можете выполнять расширенный анализ данных в знакомой среде Excel, получая доступ к Python прямо из интерфейса Excel».

Microsoft также добавила новую функцию PY, которая позволяет отображать данные Python в ячейках электронной таблицы Excel. Благодаря партнёрству с Anaconda, корпоративным репозиторием Python, популярные библиотеки Python, такие как Pandas, Statsmodels, Seaborn и Matplotlib, будут доступны в Excel. Расчёты Python выполняются в Microsoft Cloud, а результаты возвращаются в таблицу Excel. Пользователи Excel смогут создавать формулы, сводные таблицы и диаграммы на основе данных Python для визуализации тепловых карт, роевых диаграмм и скрипичных графиков.

 Источник изображения: Microsoft

Источник изображения: Microsoft

«Я рад, что интеграция Python и Excel увидела свет, — говорит создатель Python, а ныне заслуженный инженер Microsoft Гвидо Ван Россум (Guido van Rossum), — Я ожидаю, что оба сообщества найдут новые интересные применения в этом сотрудничестве, расширив возможности каждого партнёра. Когда я присоединился к Microsoft три года назад, я и представить себе не мог, что такое возможно».

В настоящий момент Python в Excel развёртывается в качестве общедоступной версии для участников программы предварительной оценки Microsoft 365 в бета-канале. Сначала он будет ограничен Windows, а затем станет доступен для других платформ.

Программисты уже во всю используют ИИ-инструменты, хотя и доверяют им не полностью

Опрос разработчиков, проведённый сайтом вопросов и ответов о программировании Stack Overflow, показал, что инструменты на базе искусственного интеллекта становятся обычным явлением в отрасли, хотя программисты по-прежнему скептически относятся к их точности.

 Источник изображения: pixabay

Источник изображения: pixabay

Результаты опроса показали, что 77 % респондентов положительно относятся к использованию ИИ в своём рабочем процессе, а 70 % уже используют или планируют использовать инструменты для программирования с помощью ИИ в этом году. Респонденты отметили такие преимущества, как повышение производительности (33 %) и ускорение обучения (25 %), но при этом заявили, что с опаской относятся к точности этих систем. Только 3 % респондентов заявили, что они «полностью доверяют» инструментам ИИ, а 39 % заявили, что они «частично доверяют» им. Ещё 31 % выбрали ответ «не определился», а остальные отметили «отношусь настороженно» (22 %) или «совсем не доверяю» (5 %).

По данным Stack Overflow, в ежегодном опросе приняли участие 90 тыс. респондентов из 185 стран. Другие основные моменты, касающиеся использования ИИ, включают:

  • ChatGPT — самый популярный инструмент поиска с использованием ИИ, которым пользуются 83 % респондентов, далее следуют Bing (20 %), WolframAlpha (13 %) и Google Bard (10 %);
  • GitHub Copilot — самый популярный инструмент для поиска среди разработчиков, которым пользуются 55 % респондентов, за ним следуют Tabnine (13 %) и AWS CodeWhisperer (5 %);
  • респонденты из Индии, Бразилии и Польши чаще используют инструменты искусственного интеллекта, чем разработчики из США, Великобритании и Германии;
  • респонденты, которые ещё учатся программированию, чаще используют инструменты ИИ, чем те, кто назвал себя «профессиональным разработчиком» (82 % против 70 %).

Сейчас Stack Overflow пытается решить, как остановить контент, созданный ИИ, от загрязнения собственной базы знаний, созданной сообществом. В декабре прошлого года компания временно запретила подсказки для программистов, созданные ИИ, но в мае, по сути, отменила это решение.

Представлен ИИ-помощник программиста Google Codey — конкурент GitHub Copilot

На мероприятии Google I/O компания представила набор основанных на алгоритмах искусственного интеллекта инструментов помощи программисту, в том числе чат-бот, выступающий прямым конкурентом GitHub Copilot — он ассистирует в написании кода и работе с облачными сервисами Google.

 Источник изображения: Alex Dudar / unsplash.com

Источник изображения: Alex Dudar / unsplash.com

В основе всех этих инструментов, предлагающих автоматическое дополнение и генерацию кода, лежит нейросеть Codey, которая, в свою очередь, базируется на большой языковой модели Google PaLM 2. Компания обучила Codey на большом объёме исходного кода, лицензия которого позволяет использовать его в этих целях, а также на коде собственных продуктов Google. Проект получил интеграцию с экосистемой сервисов компании: она постоянно обучается на коде её проектов, и хотя первичным для неё является контекст Google Cloud, предлагаемый код не ограничивается этим направлением: поддерживаются языки Go, Java, JavaScript, Python и SQL, а начать работу с новыми инструментами можно будет, установив расширения для сред Visual Studio Code, IDE JetBrains и Google Shell.

К сожалению, пока доступ к новым инструментам есть только у небольшого числа клиентов компании — вероятно, более подробно о своих планах она расскажет на мероприятии Google Cloud Next. В перспективе компания собирается использовать эти ИИ-модели, чтобы помочь разработчикам управлять услугами в Google Cloud, включая развёртывание и масштабирование приложений — изучить все возможности инфраструктуры было бы затруднительно, ведь в её документации уже более миллиона страниц. Наконец, сообщили в компании, Google решила избавить клиентов от выполнения рутинных задач, чтобы освободить время для чего-то более творческого.

ИИ-чат-бот Google Bard научился писать код и отлаживать его

Google рассказала, что одной из главных тем среди поисковых запросов является сфера программирования, поэтому основанный на ИИ чат-бот Bard получил возможность генерировать, отлаживать и объяснять принципы работы кода.

 Источник изображения: Google

Источник изображения: Google

Bard поддерживает 20 языков программирования, включая C++, Java, JavaScript и Python. Система имеет интеграцию с другими продуктами Google, а значит, поддерживается экспорт кода в среду Colab для программирования на Python, кроме того, система может помочь в написании функций для Google Таблиц.

Помимо генерации кода, Bard может давать пояснения к его фрагментам — это пригодится для тех, кто только начал изучать программирование. Таким пользователям система покажет, почему тот или иной фрагмент выдаёт определённый результат. Кроме того, можно отладить код, который работает не вполне так, как хотелось бы.

В Google допускают, что пока Bard может выдать код, который не дат ожидаемого результата или окажется неполным, поэтому рекомендуется проверять и тестировать ответы. При желании он может отладить и собственное творение, если указать ему, что оно не работает. А более опытные программисты могут обратиться к системе с просьбой оптимизировать код, сделав его быстрее или эффективнее.

Amazon предложила бесплатный доступ к ИИ-ассистенту программиста CodeWhisperer

Amazon сделала бесплатным доступ к ИИ-платформе CodeWhisperer, предлагающей помощь в написании программного кода — аналогичный продукт от её конкурента Microsoft обходится в $10 за месяц. Желающим воспользоваться CodeWhisperer достаточно пройти регистрацию.

 Источник изображения: Gerd Altmann / pixabay.com

Источник изображения: Gerd Altmann / pixabay.com

Amazon представила предварительную версию CodeWhisperer в прошлом году — уже тогда она поддерживалась средами разработки вроде Visual Studio Code и создавала код по текстовому описанию. Первоначально платформа была доступной только для клиентов Amazon Web Services, теперь же ей может бесплатно воспользоваться любой желающий.

CodeWhisperer анализирует код, выявляя в нём уязвимости и предлагая варианты для исправления ошибок. Система поддерживает наиболее популярные языки, в том числе Python, Java, JavaScript, TypeScript, C#, Go, Rust, PHP, Ruby, Kotlin, C, C++, Shell-скрпты, а также SQL и Scala.

Принадлежащая Microsoft платформа GitHub опередила Amazon, выпустив инструмент Copilot — он аналогичным образом генерирует и предлагает код программисту, но бесплатно им пользоваться могут только студенты и разработчики популярных проектов Open Source. Остальным приходится платить $10 в месяц или $100 в год. У Google тоже есть свой аналог под названием AlphaCode, но он пока находится на стадии тестирования.

GPT-4 привлекли к устранению ошибок в программах — ИИ не остановится до полного восстановления кода и объяснит, что пошло не так

Разработчик с псевдонимом BioBootloader представил скрипты «Росомаха» (Wolverine), которые выявляют причины неработоспособности программ и исправляют ошибки с привлечением большой языковой модели GPT-4. «Росомаха» трудится до тех пор, пока программа не начнёт работать. Каждая найденная ошибка сопровождается пояснением, почему её нужно исправить. Пока это наглядный пример возможностей машинного обучения, но перспективы бесконечны.

 Источник изображения: Pixabay

Источник изображения: Pixabay

Каждому программисту известно, что обычно проще написать что-то своё, даже с нуля, чем исправлять чужое или выискивать ошибки. Подключить искусственный интеллект к поиску ошибок в программах — это сильнее, чем научить его писать программы. Фактически программы можно будет наделять возможностью к «самовосстановлению» подобно герою комиксов Marvel, в честь которого и назвали этот проект.

Представленный BioBootloader скрипт, который доступен на GitHub, помогает искать ошибки в программах на Python. Но этот же подход можно реализовать для поиска ошибок в программах, написанных на других языках. Для практического использования «Росомахи» необходим ключ OpenAI API для моделей GPT-3.5 или GPT-4, за использование которых взимается плата. Сейчас API GPT 3.5 открыт для всех, у кого есть учетная запись OpenAI, хотя доступ к GPT-4 пока ограничен.

«Он [скрипт] запускает его [код], видит сбой, но затем идёт и разговаривает с GPT-4, чтобы попытаться выяснить, как это исправить, — рассказал разработчик. — GPT-4 возвращает объяснение ошибок программы, показывает изменения, которые он пытается внести, а затем снова запускает программу. Увидев новые ошибки, GPT-4 снова исправляет код, после чего он запускается правильно. В итоге исходный файл Python содержит изменения, добавленные GPT-4».

В GitHub появится ИИ-бот Copilot X для расширенной помощи программистам

Принадлежащая Microsoft платформа GitHub представила обновлённую версию ассистента Copilot X, предназначенную для оказания расширенной помощи программисту — теперь здесь есть функция чат-бота и голосовой ввод.

 Источник изображения: github.blog

Источник изображения: github.blog

Программист может обращаться к Copilot X в случае затруднений, без необходимости просить помощи на профильных ресурсах — система подсказывает, как выполнять те или иные задачи при написании кода. Глава GitHub Томас Домке (Thomas Dohmke) привёл пример: Copilot X рассказала, как можно написать игру «Змейка» на Python. В окне чата система подсказывает, для чего предназначены те или иные фрагменты кода, предлагает способы его тестирования и исправления ошибок.

GitHub впервые рассказала о Copilot в 2021 году, а вышла платформа лишь в следующем году. Тогда это был инструмент, автоматически дописывающий отдельные строки кода, и он обрёл популярность среди сотни тысяч разработчиков. Сегодня название системы распространилось на широкий спектр прочих продуктов Microsoft от офисных программ до компонентов безопасности.

В новой версии ассистент программиста получил поддержку последней версии языковой модели GPT-4, однако она потребовалась не для всех компонентов: GitHub хочет использовать разные модели для разных задач. Функция автозавершения строки останется на предыдущей версии, потому что для её работы больше важна скорость, чем точность. А возможности GPT-4 нашли применение в новом чат-боте, где они более уместны. Для подключения Copilot X программистам придётся зарегистрироваться в списке ожидания — общедоступным инструмент пока не стал.

Энтузиаст собрал «ноутбук» PotatoP, рассчитанный на два года автономной работы

Энтузиаст по имени Андреас Эриксен (Andreas Eriksen) собрал «устройство в формфакторе ноутбука», способное, по его собственным оценкам, проработать два года без подзарядки. Компьютер PotatoP сочетает компоненты с чрезвычайно низким потреблением энергии, аккумулятор на 12 000 мА·ч и небольшую солнечную панель.

 Источник изображений: hackaday.io

Источник изображений: hackaday.io

Создателя PotatoP всегда раздражало, что его ноутбук разряжается слишком быстро, а для «небольших проектов по программированию», в которых он применяется, мощные компоненты не требуются. Для стоящих перед Андреасом задач нужен компьютер с чрезвычайно низким энергопотреблением, чётким экраном, а также удобной клавиатурой.

В качестве «материнской платы» используется платформа SparkFun RedBoard Artemis ATP на базе SoC Ambiq Apollo3 — она «устанавливает новый стандарт энергоэффективности для устройств с питанием от батареи». Её процессор Arm Cortex-M4F работает на тактовой частоте до 96 МГц, потребляя менее 6 мкА на 1 МГц. Объем оперативной памяти составляет 384 Кбайт, накопитель имеет ёмкость 1 Мбайт, кроме того, здесь есть широкий набор интерфейсов и портов для подключения внешних устройств.

Дополнительным залогом успеха PotatoP стал Sharp Memory in Pixel LS044Q7DH01 — монохромный дисплей с разрешением 320 × 240 пикселей и диагональю 4,4 дюйма. Автор проекта говорит, что не отказался бы от более крупной версии экрана, если он окажется таким же экономным — здесь нет подсветки, но это не мешает читаемости. Наконец, господин Эриксен не пожалел недешёвой профессиональной клавиатуры Happy Hacking Keyboard Lite 2.

Программист работает в среде Lisp (uLisp), и, по его мнению, он смог создать для себя максимально комфортные условия. Останавливаться на достигнутом автор не хочет — он оптимизирует систему для дальнейшего снижения энергопотребления и подумывает об установке дополнительных солнечных батарей, чтобы продлить время автономной работы своего «ноутбука» PotatoP до бесконечности.

ИИ-помощник программиста GitHub Copilot for Business стал общедоступным за $19 в месяц

Принадлежащая Microsoft компания GitHub объявила, что Copilot for Business, корпоративная версии ИИ-помощника по написанию программного кода, стала общедоступной за $19 в месяц. По сравнению со стандартной Copilot, версия для корпоративного использования предложит ряд дополнительных функций.

 Источник изображения: fancycrave1 / pixabay.com

Источник изображения: fancycrave1 / pixabay.com

«Это фактически завершает нашу историю о Copilot версии 1. Мы объявили о запуске программы предварительной оценки в июне 2021 года. Кажется, что это было много лет назад. Прошлым летом появилась общедоступная версия. Теперь мы готовы развернуть его для организаций, компаний, команд, предприятий — практически для всех. Фактически, у нас уже есть более 400 организаций, которые используют Copilot for Business на момент запуска, и мы видим огромный интерес», — прокомментировал данный вопрос генеральный директор GitHub Томас Домке (Thomas Dohmke).

В дополнение к этому разработчики объявили, что Copilot получил поддержку соединения через прокси, в том числе с самоподписанными сертификатами. Также было объявлено, что Copilot теперь работает на улучшенной ИИ-модели от Open AI. По мере развития ИИ-помощника он получает новые возможности. Одной из них стала функция «заполнение середины», когда алгоритм не просто завершает строку кода, но также может добавить код в её середину. Для этого Copilot потребуется изучить не только код, над которым идёт работа, но также связанные с ним другие файлы, с которыми осуществляется взаимодействие.

 Источник изображения: GitHub

Источник изображения: GitHub

В последнем обновлении Copilot получил возможность обнаружения распространённых уязвимостей в программном коде, который ИИ-помощник предлагает пользователю. В случае обнаружения небезопасных вариантов Copilot предложит добавить более надёжный код. Разработчики продолжают работать над повышением скорости обработки запросов, поступающих в Copilot. В GitHub ожидают, что в скором времени Copilot сможет генерировать до 80 % кода разработчика. На данный момент возможности алгоритма ограничены примерно 46 % кода для всех языков программирования и 61 % — для Java.

ChatGPT научили искать ошибки в программном коде

Получивший широкую популярность ИИ-бот ChatGPT способен выполнять самые разные задачи. Исследователям из университета им. Иоганна Гутенберга в Майнце (Германия) совместно с коллегами из Университетского колледжа Лондона удалось задействовать сервис для поиска и устранения ошибок в программном коде.

 Источник изображения: Arif Riyanto/unsplash.com

Источник изображения: Arif Riyanto/unsplash.com

Исследователи предоставили 40 фрагментов кода, содержащих ошибки, четырём системам ChatGPT, Codex, CoCoNut и Standard APR, предназначенным для устранения багов. По сути, они буквально спросили: «Что не так с этим кодом?» и вставили фрагмент кода в окно чата.

В первый раз ChatGPT проявил себя не хуже других напичканных интеллектом систем. Он устранил 19 проблем из 40, Codex — 21 из 40, CoCoNut — 19, а APR — только 7. Проведённые оценочные тесты показали, что ответы ChatGPT во многом дублируют решения, предлагаемые Codex, в чём нет ничего удивительного, поскольку ChatGPT и Codex относятся к одному семейству языковых моделей.

Впрочем, в дальнейшем ChatGPT продемонстрировал свои преимущества. Поскольку бот позволяет вести с ним обсуждение и вносить уточнения после получения первоначального ответа, в результате исследователям удалось решить 31 из 40 задач, намного больше, чем способны были сделать другие системы аналогичного назначения. Более того, выяснилось, что ChatGPT может решать задачи быстрее конкурентов, причём он давал пользователю разные варианты ответов на одну и ту же задачу. Если сначала на один из запросов бот требовал больше информации, то после некоторого количества попыток он уверенно приводил ответ на тот же вопрос.

 Источник изображения: Dominik Sobania, Martin Briesch, Carol Hanna, Justyna Petke

Источник изображения: Dominik Sobania, Martin Briesch, Carol Hanna, Justyna Petke

По мнению экспертов, успех проведённого исследования потенциально способен привести к модификации существующего рынка ИИ-решений совокупной стоимостью $600 млн, предназначенных для помощи инженерам в поиске и устранении недоработок в программном коде. Платформы вроде Sentry уже стали распространённым инструментов среди программистов, намного ускоряя рабочие процессы.

Учёные обнаружили, что созданный ИИ программный код подвержен уязвимостям

Программисты, использующие системы искусственного интеллекта (ИИ) при разработке кода, с большей вероятностью получают приложения, которые подвержены уязвимостям, пишет TechCrunch со ссылкой на исследование учёных Стэнфордского университета. По их мнению, к системам генерации кода следует относиться с осторожностью.

 Источник изображения: Christopher Gower / unsplash.com

Источник изображения: Christopher Gower / unsplash.com

Базой для исследования стала система генерации кода на основе ИИ Codex, разработанная лабораторией OpenAI. В проекте приняли участие 47 разработчиков — от студентов бакалавриата до специалистов с многолетним опытом. Они пользовались платформой Codex для решения задач, связанных с безопасностью, а языками программирования в рамках исследования были Python, JavaScript и C.

Как выяснилось, применявшие в работе систему Codex программисты чаще предлагали неправильные и небезопасные решения по сравнению с контрольной группой. Более того, свои решения они считали более совершенными с позиции кибербезопасности относительно решений специалистов контрольной группы.

Авторы исследования подчёркивают, что не имеют намерений настроить сообщество против Codex и других ИИ-систем генерации кода, но их лучше применять в решении задач, не связанных с высоким риском. В качестве решения проблемы учёные предлагают создать механизмы анализа предлагаемого ИИ кода, а также усилить настройки безопасности по умолчанию в криптографических библиотеках.

Кроме того, генераторы часто обучаются на разработках с ограниченной лицензией, а впоследствии предлагают решения, например, из кодовой базы Quake или учебников по JavaScript — создаваемый с их участием код может стать источником проблем в отношении авторского права. Механизм защиты от подобного плагиата попытались реализовать на платформе GitHub Copilot, но стало только хуже: система начала выдавать большие фрагменты чужого кода, включая сведения об авторах и даже тексты лицензий.

В DeepMind AI научили нейросеть решать любые задачи по программированию

Инженеры подразделения Alphabet DeepMind AI рассказали о создании системы искусственного интеллекта (ИИ) AlphaCode, которая способна генерировать код и решать задачи, предлагаемые на чемпионатах по программированию. Для этого нейросеть обучили двум языковым навыкам: пониманию постановки задачи и поиску её решения.

 Источник изображения: Christopher Gower / unsplash.com

Источник изображения: Christopher Gower / unsplash.com

Сегодня существуют системы, способные решать отдельные задачи, генерируя программный код, однако эти решения не носят универсального характера: обученный одному классу задач ИИ с большой вероятностью терпит неудачу, когда условия задачи кардинально меняются. Поэтому инженеры Google применили несколько иной подход, положив, что описание задачи — это выражение того, что должен делать алгоритм, а её решение — то же самое, но изложенное на другом языке. Поэтому при обучении системы исследователи решили достичь двух целей: сначала ИИ должен усвоить описание задачи, а затем на основании своего внутреннего представления создать программный код.

В качестве источника данных выступил архив GitHub с более чем 700 Гбайт кода, которые перемежались с комментариями на естественном языке, поясняющими его работу. После первого этапа обучения система перешла к этапу настройки: в DeepMind организовали внутренний чемпионат по программированию, материалы которого также «скормили» ИИ. В этих материалах был полный цикл: постановка задачи, работающий и неработающий код, а также тестовые примеры для его проверки. Подобный подход применялся и раньше, но на сей раз инженеры выделили значительно больше ресурсов на обучение — «на порядки больше, чем в предыдущей работе».

 Источник изображения: Procreator / unsplash.com

Источник изображения: Procreator / unsplash.com

На начальном этапе результат был далёк от идеала: более 40 % предлагаемых нейросетью решений либо требовали слишком больших аппаратных ресурсов, либо решение задачи занимало слишком много времени. Проводя анализ кода, создатели системы обнаружили, что при решении различных задач, даже если программа выдавала правильный результат, система часто использовала схожие фрагменты кода, выдающие одинаковые ответы при одинаковых исходных данных. Отфильтровав некорректные варианты, AlphaCode смогла выступать на уровне программистов с опытом работы от нескольких месяцев до года, войдя в число справившихся с задачами 54 % конкурсантов на чемпионате.

Такого результата удалось достичь, введя автоматизированную проверку по 100 тыс. предлагаемых системой решений — увеличение этого числа приводило к пропорциональному росту доли правильных ответов. Но пропорционально же росла и ресурсоёмкость вычислительной системы: первоначально для её обучения потребовался объём энергии, в 16 раз превышающий годовую потребность средней американской семьи.

Учёные сделали вывод, что система действительно научилась работать, как и было задумано, предлагая корректные решения, а не случайные фрагменты кода «в надежде», что какой-то из них сработает. Однако при усложнении условий значительно растёт ресурсоёмкость, а значит, сегодня услуги настоящих программистов по-прежнему востребованы, хотя и открываемые ИИ перспективы тоже заслуживают внимания.


window-new
Soft
Hard
Тренды 🔥
Кто успел, тот и съел: Larian случайно подарила покупателям дискового издания Baldur’s Gate 3 цифровую версию игры 27 мин.
Президента Microsoft допросили в Конгрессе США после «каскада ошибок» в системе безопасности 2 ч.
Brave интегрировала собственные результаты поиска в ИИ-чат-бот Leo 2 ч.
Путин запретил пользоваться услугами в сфере кибербезопасности из недружественных стран с 2025 года 2 ч.
Microsoft задержит выпуск ИИ-функции Recall, которая записывает все действия пользователя 3 ч.
Beyond Good and Evil 20th Anniversary Edition ещё никогда не была так близка к релизу — для переиздания уже выпускают патчи 4 ч.
Президент России запретил ИБ-сервисы и услуги из недружественных стран 4 ч.
В «Рувики» появятся ИИ-алгоритмы уже в этом году 4 ч.
«Самое хардкорное "Диско" со времён Disco»: сотрудники ZA/UM рассказали об отменённой игре во вселенной Disco Elysium, которая могла спасти студию 5 ч.
AWS выделит $230 млн на поддержку стартапов в области генеративного ИИ, но деньги они вряд ли увидят 5 ч.
Китайский зонд «Чанъэ-6» впервые в истории обнаружил отрицательные ионы на обратной стороне Луны 27 мин.
Учёные облачили ДНК в искусственный янтарь — получилось сверхплотное и долговечное хранилище данных 32 мин.
Спрос на ЦОД в Азиатско-Тихоокеанском регионе значительно превышает предложение 2 ч.
Суд взыскал с производителя электроники «Ангстрем» более €1 млрд в пользу «ВЭБ.РФ» 3 ч.
Глобальный рынок смартфонов столкнулся с перенасыщением 3 ч.
«Ростех» разработал компактный модуль Com Express Type 6 Compact на процессоре «Эльбрус-2С3» 4 ч.
«Ростех» представил самый маленький компьютер на «Эльбрусе» — как два Raspberry Pi 4 ч.
AWS, но в космосе: Phantom Space и Assured Space Access создадут космическое облако Phantom Cloud 4 ч.
MSI представила корпус MAG PANO 100 PZ с панорамным обзором и поддержкой плат с тыльными разъёмами 5 ч.
Срок эксплуатации суперкомпьютеров растёт, несмотря на прекращение поддержки оборудования 5 ч.