Мы рады объявить Amazon Code Whisperer, служба на основе машинного обучения (ML), которая помогает повысить производительность разработчиков, предоставляя рекомендации по коду на основе естественных комментариев разработчиков и предыдущего кода. С помощью CodeWhisperer разработчики могут просто написать комментарий, описывающий конкретную задачу простым английским языком, например, «загрузить файл на S3». На основании этого CodeWhisperer автоматически определяет, какие облачные сервисы и общедоступные библиотеки лучше всего подходят для поставленной задачи, на лету строит конкретный код и рекомендует сгенерированные фрагменты кода прямо в IDE.
Несмотря на то, что облако демократизировало разработку приложений, предоставив доступ по запросу к вычислениям, хранилищу, базе данных, аналитике и машинному обучению, традиционный процесс создания программных приложений по-прежнему требует, чтобы разработчики тратили много времени на написание шаблонных разделов кода, которые не являются стандартными. напрямую связаны с основной проблемой, которую они пытаются решить. Даже самым опытным разработчикам сложно работать с несколькими языками программирования, фреймворками и программными библиотеками, следуя при этом правильному синтаксису программирования и передовым методам написания кода. В результате разработчики тратят значительное количество времени на поиск и настройку фрагментов кода в Интернете. С CodeWhisperer разработчики могут сосредоточиться на IDE и воспользоваться преимуществами контекстных рекомендаций в реальном времени, которые уже настроены и готовы к использованию. Меньше отвлекающих факторов от IDE и готовые к использованию рекомендации в режиме реального времени помогут вам быстрее завершить задачи по кодированию и повысить производительность.
В этом посте мы обсудим преимущества CodeWhisperer и с чего начать.
Предоставление разработчику возможностей машинного обучения
CodeWhisperer доступен как часть расширения AWS Toolkit для основных IDE, включая JetBrains, Visual Studio Code и Облако AWS9. С AWS Lambda консоли, CodeWhisperer доступен как встроенная функция предложения кода. При запуске вы можете использовать CodeWhisperer для создания рекомендаций по коду для Python, Java и JavaScript. Вы можете установить AWS Toolkit, перейдя на экран плагинов или расширений вашей IDE и выполнив поиск AWS Toolkit.
После включения CodeWhisperer вы автоматически начинаете получать рекомендации по коду в своей IDE, когда начинаете писать свой код или комментарии. Встречаясь с разработчиками там же, где и вы, мы делаем CodeWhisperer простым в использовании и экспериментировании. Вы можете приступить к работе всего за несколько минут и сразу же начать пользоваться преимуществами производительности.
Гораздо больше, чем традиционное автозаполнение
Традиционные инструменты автозаполнения обеспечивают завершение одного слова, например, список свойств или методов для объекта. CodeWhisperer значительно повышает производительность за счет единовременной генерации целых функций и логических блоков кода. Кроме того, CodeWhisperer понимает намерения разработчика, выраженные простыми комментариями на английском языке. В следующем примере показано, как CodeWhisperer создает всю функцию для преобразования файла JSON в файл CSV с учетом намерения разработчика использовать ключи в файле JSON в качестве заголовков файла CSV.
Создание приложений на AWS стало еще проще
CodeWhisperer упрощает для разработчиков использование сервисов AWS, предоставляя рекомендации по коду для интерфейсов прикладного программирования (API) AWS в самых популярных сервисах, включая Эластичное вычислительное облако Amazon (Amazon EC2), Lambda и Простой сервис хранения Amazon (Амазон С3). Когда вы пишете код в своей IDE, CodeWhisperer автоматически анализирует комментарий, собирает код с помощью соответствующих облачных сервисов и общедоступных программных библиотек для достижения желаемой функциональности и рекомендует фрагменты кода и даже целые функции непосредственно в IDE, соответствующие передовым практикам. В следующем примере показано, как CodeWhisperer может сгенерировать всю функцию для загрузки файла в Amazon S3 с использованием шифрования на стороне сервера.
Ответственное использование возможностей ИИ
Мы обучили модель CodeWhisperer на большом количестве общедоступного кода, чтобы повысить точность рекомендаций. Проще говоря, точность модели прямо пропорциональна размеру обучающих данных. И хотя это помогло нам с точки зрения точности, модели такого типа также могут изучать некоторые нежелательные закономерности. Мы считаем, что, хотя ИИ, несомненно, может повысить производительность, мы должны ответственно использовать эту силу. Есть несколько выдающихся возможностей, которые делают CodeWhisperer уникальным в этой области.
Мы в AWS любим говорить, что безопасность — это нулевая работа. Вот почему CodeWhisperer также предоставляет возможность сканирования вашего кода (сгенерированного CodeWhisperer, а также написанного вами) для обнаружения уязвимостей в системе безопасности. На следующем снимке экрана показаны функции сканирования безопасности CodeWhisperer. Мы включили фрагмент кода, который может вызвать утечку ресурсов. Когда вы выбираете Запустить сканирование безопасности, CodeWhisperer обнаруживает эту уязвимость и отображает проблему.
Во-вторых, мы предоставляем средство отслеживания ссылок, которое может обнаруживать, когда сгенерированные выходные данные могут быть похожи на определенные обучающие данные. Хотя модель научилась писать код и генерирует совершенно новый код на основе обучения, в очень редких случаях независимо сгенерированная рекомендация по коду может напоминать уникальный фрагмент кода в обучающих данных. Уведомляя вас, когда это происходит, и предоставляя репозиторий и информацию о лицензировании, CodeWhisperer облегчает вам принятие решения о том, использовать ли код в вашем проекте, и делает соответствующие ссылки на исходный код по своему усмотрению.
CodeWhisperer сообщает вам в режиме реального времени, что текущая рекомендация по коду, которую вы видите, может быть похожа на эталонный код, показывая уведомление во всплывающем окне с рекомендациями. На следующем снимке экрана видно, что сгенерированный код похож на эталонный код, находящийся под лицензией MIT. Если разработчик принимает рекомендацию, CodeWhisperer регистрирует принятие и соответствующую информацию о лицензировании. Затем вы можете просмотреть справочный журнал, выбрав Открыть справочную панель CodeWhisperer в узле CodeWhisperer.
Наконец, мы внедряем методы выявления предвзятости на основе распространенных стереотипов. Мы внедрили фильтры, которые обнаруживают очевидную предвзятость в сгенерированном коде и удаляют рекомендации по коду, которые могут быть сочтены предвзятыми и несправедливыми. Например, представьте себе программное обеспечение для подбора персонала, которое помогает менеджерам по найму автоматически составлять короткий список кандидатов. В случае ничьей программное обеспечение зависит от логики разрешения конфликтов. При создании рекомендации для этого сценария модель ИИ может создать код, отдающий предпочтение кандидатам на основе неподходящих параметров. CodeWhisperer может обнаружить предвзятость в своих рекомендациях и отфильтровать ее, прежде чем показывать рекомендации разработчику.
Повышение производительности с помощью CodeWhisperer
«Отвлекающие факторы — это постоянная проблема при написании кода, особенно когда необходимо переключать контекст для поиска примеров кода и документации в Интернете. Amazon CodeWhisperer позволяет мне сосредоточиться на коде, автоматически предлагая полезные советы именно тогда, когда они мне нужны, поэтому мне никогда не приходится покидать редактор».
– Райан Гроув, штатный инженер-программист SmugMug.
«Мы рады работать с AWS над переносом Amazon CodeWhisperer на платформу IntelliJ. В JetBrains мы стремимся сделать разработку программного обеспечения легкой и приятной. Наличие плагина для наших инструментов поможет разработчикам сосредоточиться на своей IDE и уменьшит потребность в поиске и настройке фрагментов кода из Интернета. С сегодняшнего дня пользователи IntelliJ IDEA, PyCharm и WebStorm могут начать работу с Amazon CodeWhisperer прямо в своей IDE, и в ближайшем будущем будет поддерживаться больше IDE».
– Макс Шафиров, генеральный директор JetBrains.
Первые шаги
В течение периода предварительной версии CodeWhisperer доступен всем разработчикам по всему миру бесплатно. Чтобы получить доступ к услуге в предварительной версии, присоединитесь к списку ожидания, регистрацией. Для получения дополнительной информации об услуге посетите Amazon Code Whisperer.
Об авторах
Анкур Десаи является главным менеджером по продуктам в команде AWS AI Services.
Атул Део является директором по управлению продуктами в команде AWS AI Services.
- Коинсмарт. Лучшая в Европе биржа биткойнов и криптовалют.
- Платоблокчейн. Интеллект метавселенной Web3. Расширение знаний. БЕСПЛАТНЫЙ ДОСТУП.
- КриптоХок. Альткоин Радар. Бесплатная пробная версия.
- Источник: https://aws.amazon.com/blogs/machine-learning/introduction-amazon-codewhisperer-the-ml-powered-coding-companion/
- "
- 100
- a
- способность
- О нас
- доступ
- через
- плюс
- AI
- Услуги искусственного интеллекта
- Все
- уже
- Несмотря на то, что
- Amazon
- количество
- суммы
- аналитика
- анонсировать
- API
- Применение
- Приложения
- автоматически
- свободных мест
- доступен
- AWS
- до
- верить
- Преимущества
- ЛУЧШЕЕ
- лучшие практики
- Лучшая
- повышение
- Строительство
- строит
- Может получить
- кандидатов
- возможности
- случаев
- Вызывать
- Генеральный директор
- вызов
- Выберите
- облако
- облачные сервисы
- код
- Кодирование
- Комментарии
- Общий
- полностью
- Вычисление
- Консоли
- Основные
- соответствующий
- Текущий
- настроить
- данным
- База данных
- зависит
- Застройщик
- застройщиков
- Развитие
- трудный
- непосредственно
- директор
- обсуждать
- дисплеев
- редактор
- шифрование
- инженер
- Английский
- приятный
- обеспечение
- особенно
- События
- пример
- возбужденный
- опыт
- опытные
- эксперимент
- выраженный
- быстрее
- милостей
- Особенность
- фильтры
- соответствовать
- внимание
- после
- найденный
- каркасы
- Бесплатно
- от
- передний
- функция
- функциональность
- Функции
- будущее
- порождать
- генерируется
- порождающий
- Отдаете
- будет
- помощь
- помог
- полезный
- помогает
- Наем
- Как
- How To
- HTTPS
- идея
- в XNUMX году
- Осуществляющий
- улучшать
- включены
- В том числе
- самостоятельно
- информация
- устанавливать
- намерение
- введение
- вопрос
- IT
- Java
- JavaScript
- работа
- присоединиться
- Сохранить
- ключи
- Языки
- запуск
- утечка
- УЧИТЬСЯ
- узнали
- изучение
- Оставлять
- Лицензия
- Лицензирование
- Список
- посмотреть
- машина
- обучение с помощью машины
- основной
- сделать
- ДЕЛАЕТ
- Создание
- управление
- менеджер
- Менеджеры
- способ
- заседания
- методы
- MIT
- ML
- модель
- Модели
- БОЛЕЕ
- самых
- Самые популярные
- с разными
- натуральный
- Возле
- необходимо
- уведомление
- уведомляющее
- Очевидный
- предлагающий
- часть
- особый
- период
- Платформа
- плагин
- сообщения
- Популярное
- возможное
- мощностью
- предварительный просмотр
- Основной
- Проблема
- процесс
- Продукт
- Управление продуктом
- производительность
- Программирование
- языки программирования
- Проект
- свойства
- обеспечивать
- приводит
- обеспечение
- что такое варган?
- реального времени
- рекомендует
- уменьшить
- соответствующие
- хранилище
- требуется
- ресурс
- ответственный
- Run
- сканирование
- экран
- Поиск
- поиск
- безопасность
- обслуживание
- Услуги
- значительный
- аналогичный
- просто
- Размер
- So
- Software
- разработка программного обеспечения
- Инженер-программист
- РЕШАТЬ
- некоторые
- исходный код
- Space
- конкретный
- тратить
- Начало
- и политические лидеры
- оставаться
- По-прежнему
- диск
- студия
- Поддержанный
- Коммутатор
- задачи
- команда
- снижения вреда
- говорит
- Ассоциация
- мир
- Через
- TIE
- время
- сегодня
- Инструментарий
- инструменты
- традиционный
- Обучение
- Типы
- под
- понимает
- созданного
- us
- использование
- пользователей
- Вид
- Уязвимости
- уязвимость
- Web
- будь то
- в то время как
- в
- Работа
- работает
- Мир
- письмо
- ВАШЕ
- нуль