Вопросы и ответы об Amazon CodeWhisperer

ОБЩИЕ ВОПРОСЫ
  • CodeWhisperer – это помощник по работе с кодом на основе искусственного интеллекта, который в реальном времени генерирует предложения однострочного или полнофункционального кода в интегрированной среде разработки (IDE), помогая быстро создавать программное обеспечение. С помощью CodeWhisperer вы можете написать комментарий на понятном языке, который описывает конкретную задачу на английском, например Upload a file with server-side encryption (Загрузить файл с шифрованием на стороне сервера). На основе этой информации CodeWhisperer рекомендует один или несколько фрагментов кода, которые могут выполнить эту задачу, непосредственно в IDE. Вы можете быстро и легко принять самое популярное предложение (клавишей табуляции), просмотреть другие предложения (с помощью клавиш со стрелками) или продолжить написание собственного кода. Необходимо всегда проверять предложение кода, прежде чем принимать его. Возможно, вам придется отредактировать его, чтобы оно точно соответствовало вашим потребностям.

    Дополнительные сведения см. в руководствах пользователя по Visual Studio (VS) Code и JetBrainsAWS Cloud9консоли AWS Lambda, JupyterLab и Студии Amazon SageMaker.

  • CodeWhisperer помогает ускорить разработку программного обеспечения, предоставляя предложения кода, которые сокращают общие усилия по разработке и дают больше времени на выработку идей, решение сложных проблем и написание дифференцированного кода. Помимо общих предложений кода, CodeWhisperer обучается предлагать код для использования API AWS. CodeWhisperer также помогает вам повысить безопасность приложений, обнаруживая и устраняя уязвимости безопасности.

  • Во время написания кода CodeWhisperer анализирует комментарии на английском языке и окружающий код, чтобы определить, какой код необходим для выполнения поставленной задачи. CodeWhisperer предлагает один или несколько фрагментов кода непосредственно в редакторе, что ускоряет процесс написания. Предложения кода в CodeWhisperer основаны на больших языковых моделях (LLM), обученных миллиардам строк кода, например из Amazon и программ с открытым исходным кодом. Вы можете быстро и легко принять самое популярное предложение (клавишей табуляции), просмотреть другие предложения (с помощью клавиш со стрелками) или продолжить написание собственного кода. Всегда проверяйте предложение кода, прежде чем принимать его. Возможно, вам придется отредактировать его, чтобы оно точно соответствовало вашим потребностям.

  • CodeWhisperer использует ваш контент, например фрагменты кода, комментарии, расположение курсора и содержимое файлов, открытых в интегрированной среде разработки, в качестве исходных данных для предоставления предложений кода.

  • Ваш контент передается по протоколу TLS для безопасной связи между вашей интегрированной средой разработки и сервисом CodeWhisperer. Контент шифруется при передаче, чтобы предотвратить прослушивание или атаки «человек посередине». Для индивидуальных пользователей CodeWhisperer мы можем сохранять контент в целях улучшения обслуживания в соответствии с настройками пользователя. Мы храним этот контент в защищенном виде с помощью шифрования при хранении и строгого контроля доступа.
     

  • CodeWhisperer, доступный как часть набора инструментов AWS для кода Visual Studio (VS) и JetBrains, в настоящее время поддерживает Python, Java, JavaScript, TypeScript, C#, Go, Rust, PHP, Ruby, Kotlin, C, C++, сценарии командной оболочки, SQL и Scala. Помимо VS Code и семейства интегрированных сред разработки JetBrains, включая IntelliJ, PyCharm, GoLand, CLion, PhpStorm, RubyMine, Rider, WebStorm и DataGrip, CodeWhisperer также доступен в AWS Cloud9, консоли Lambda, JupyterLab и Студии SageMaker.

  • Чтобы начать работу с VS Code или интегрированной средой разработки JetBrains, посмотрите эти короткие видео. Вы также можете следовать инструкциям в документации.

    CodeWhisperer доступен по умолчанию в AWS Cloud9 и консоли Lambda. Воспользуйтесь следующими ссылками для получения дополнительной информации и инструкций по началу работы с CodeWhisper в следующих IDE:

  • Включив CodeWhisperer, вы сразу будете получать предложения кода в редакторе по мере ввода. Чтобы запустить CodeWhisperer вручную, используйте Option+C (macOS) или Alt+C (Windows).

  • CodeWhisperer работает наиболее эффективно, когда комментарии разработчиков короткие и привязаны к небольшим дискретным задачам, чтобы ни одна функция или блок кода не были слишком длинными. Аналогичным образом, CodeWhisperer может генерировать полезные предложения по коду, когда разработчики используют интуитивно понятные имена для различных элементов кода, таких как имена функций. Чем больше кода будет доступно в виде окружающего контекста, тем лучше будет предложение.

  • Да. Автоподсказки можно приостановить в разделе CodeWhisperer на панели Developer Tools (Инструменты разработчика) в Наборе инструментов AWS. Автоподсказки не будут показываться до тех пор, пока вы не возобновите их. Чтобы запустить CodeWhisperer вручную, используйте Option+C (macOS) или Alt+C (Windows).

  • Сервис отслеживания ссылок CodeWhisperer определяет, может ли предложенный код совпадать с конкретными обучающими данными CodeWhisperer с открытым исходным кодом. Этот сервис может пометить такие предложения, указав URL-адрес репозитория и информацию о лицензии на проект или, если нужно, отфильтровать их. Тогда вам будет легче найти и просмотреть код, на который ссылаются, и понять, как он используется в контексте другого проекта, прежде чем принять решение о его применении. Все ссылки записываются в журнал для последующего просмотра, чтобы поток кодирования не нарушался и вы могли продолжать работу с кодом без перерыва.

  • Вы можете просканировать код на Python, Java и JavaScript с помощью функции сканирования на наличие труднодоступных уязвимостей, например тех, которые входят в десятку категорий от Open Worldwide Application Security Project (OWASP), или не соответствующих лучшим методам использования криптобиблиотек и другим подобным передовым методам обеспечения безопасности. После выявления уязвимостей безопасности CodeWhisperer также предлагает рекомендации по их устранению.

  • CodeWhisperer – это сервис генеративного искусственного интеллекта, основанный на базовой модели, обученной работе с различными источниками данных, включая Amazon и открытый исходный код.

ОТВЕТСТВЕННЫЙ ПОДХОД К ИСКУССТВЕННОМУ ИНТЕЛЛЕКТУ
  • Как и в случае с вашей интегрированной средой разработки, вы сами владеете написанным кодом, включая любые предложения по коду, предоставляемые CodeWhisperer. Вы несете ответственность за написанный код, включая предложения CodeWhisperer, которые вы принимаете. Всегда проверяйте предложение кода, прежде чем принимать его. Возможно, вам придется отредактировать его, чтобы оно точно соответствовало вашим потребностям.

  • Являясь генеративным искусственным интеллектом, сервис CodeWhisperer создает новый код на основе того, что он узнал из кода, на котором обучался, и контекста, который вы указали в предыдущем коде и комментариях. Хотя сервис CodeWhisperer не предназначен для воспроизведения кода, на котором обучался, вероятно, что в редких случаях он будет генерировать код, точно соответствующий определенным фрагментам из обучающих данных. Если CodeWhisperer обнаружит, что выходные данные соответствуют определенным обучающим данным с открытым исходным кодом, то встроенный сервис отслеживания ссылок уведомит вас, указав тип лицензии (например, MIT или Apache) и URL-адрес проекта с открытым исходным кодом. Тогда вам будет легче найти и просмотреть код, на который ссылаются, и понять, как он используется в контексте другого проекта, прежде чем принять решение о его использовании. Все ссылки записываются в журнал для последующего просмотра, чтобы поток кодирования не нарушался и вы могли продолжать работу с кодом без перерыва.

  • Да. В настройках конфигурации CodeWhisperer вы можете отменить выбор параметра Include Suggestions With Code References (Включить предложения со ссылками на код). Тогда CodeWhisperer не сможет делать предложения, содержащие ссылки на известный лицензированный открытый код. На индивидуальном уровне CodeWhisperer для бесплатного пользования эта настройка доступна в интегрированной среде разработки. На профессиональном уровне CodeWhisperer администратор AWS может централизованно настроить этот параметр на уровне организации в Консоли управления AWS.

  • CodeWhisperer может отфильтровывать предложения по коду, содержащие вредоносные фразы, и предложения с общеизвестными структурами кода, указывающими на предвзятость.

  • Обучающие данные CodeWhisperer анализируются на предмет уязвимостей безопасности, и как можно большее их число отфильтровывается. Цель этой фильтрации – уменьшить количество небезопасных шаблонов кода из обучающих данных, чтобы модель не могла их изучать и генерировать. Однако, учитывая генеративный характер CodeWhisperer, мы не можем полностью исключить предложения кода с проблемами безопасности. Поэтому CodeWhisperer оснащен встроенной функцией сканирования кода, которая выявляет уязвимости безопасности в ваших проектах Python, Java и JavaScript, включая предложения кода от CodeWhisperer и написанный вами код.

  • Сервис CodeWhisperer обучен на различных источниках данных, включая Amazon и программы с открытым исходным кодом. CodeWhisperer обучен и проверен для генерации предложений кода из комментариев на английском языке. Учитывая множество примеров в обучающем наборе данных, возможно, CodeWhisperer будет предоставлять предложения кода из комментариев, написанных на языках, отличных от английского. Однако этот вариант использования не поддерживается.

ЦЕНЫ И ДОСТУПНОСТЬ
  • Индивидуальный уровень CodeWhisperer можно использовать бесплатно, создав Идентификатор AWS Builder и войдя в систему с его помощью. Процесс регистрации занимает всего несколько минут и не требует кредитной карты или аккаунта AWS.

    Стоимость подписки на профессиональный уровень CodeWhisperer составляет 19 USD на пользователя в месяц и предоставляет администраторам возможность включить CodeWhisperer в своей организации с помощью аутентификации единого входа (SSO). Администраторам проще интегрировать CodeWhisperer с существующими решениями по идентификации сотрудников, предоставлять доступ пользователям и группам, а также настраивать общеорганизационные параметры, например включать или исключать предложения со ссылками на коды. Дополнительные сведения см. в разделе Цены на Amazon CodeWhisperer.
     

  • CodeWhisperer не зависит от региона AWS и доступен разработчикам по всему миру. В настоящее время CodeWhisperer размещается в регионе IAD – Восток США (Северная Вирджиния). Как администратор профессионального уровня CodeWhisperer вы можете настроить CodeWhisperer в качестве авторизованного межрегионального приложения, если у вас есть Центр идентификации IAM в других регионах (кроме IAD).

  • Администратор AWS может включить CodeWhisperer для организации через Консоль управления AWS. В качестве предварительного условия администраторы должны настроить SSO через Центр идентификации IAM, если эта функция еще не включена в организации. После настройки аутентификации SSO администраторы могут включить CodeWhisperer и предоставить доступ пользователям и группам в своей организации.

  • SSO для CodeWhisperer включен Центром идентификации IAM. Подробнее см. в Руководстве пользователя CodeWhisperer.

ВОЗМОЖНОСТЬ НАСТРОЙКИ CODEWHISPERER (ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ)
КОНФИДЕНЦИАЛЬНОСТЬ НА ПРОФЕССИОНАЛЬНОМ УРОВНЕ СЕРВИСА CODEWHISPERER
  • CodeWhisperer профессионального уровня использует ваш контент, например фрагменты кода, комментарии и содержимое файлов, открытых в интегрированной среде разработки. Сервис обрабатывает этот контент исключительно для обеспечения функциональности и поддержания работоспособности. Контент, обработанный CodeWhisperer профессионального уровня, не сохраняется и не используется для улучшения работоспособности сервиса.

    Кроме того, AWS может собирать и использовать телеметрию и метрики использования на стороне клиента для улучшения работоспособности сервиса. Вы можете отказаться от сбора данных, изменив настройки в интегрированной среде разработки.

    Подробнее см. в Руководстве пользователя CodeWhisperer.

  • Контент, обработанный CodeWhisperer профессионального уровня, например фрагменты кода, комментарии и содержимое файлов, открытых в интегрированной среде разработки, не сохраняется и не используется для улучшения работоспособности сервиса.

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

    Подробнее см. в Руководстве пользователя CodeWhisperer.

  • Нет. Контент, обработанный CodeWhisperer профессионального уровня, например фрагменты кода, комментарии и содержимое файлов, открытых в интегрированной среде разработки, не сохраняется и не используется для обучения модели, поэтому он никогда не будет воспроизводиться в предложении кода для другого пользователя.

КОНФИДЕНЦИАЛЬНОСТЬ НА ИНДИВИДУАЛЬНОМ УРОВНЕ СЕРВИСА CODEWHISPERER
  • CodeWhisperer индивидуального уровня использует ваш контент, например фрагменты кода, комментарии, расположение курсора и содержимое файлов, открытых в интегрированной среде разработки, в качестве исходных данных для предоставления предложений кода. Вы можете запретить AWS хранить и использовать ваш контент для улучшения сервиса, изменив параметр Share CodeWhisperer Content with AWS (Предоставлять контент CodeWhisperer в AWS) в Наборе инструментов AWS в интегрированной среде разработки.

    Кроме того, AWS может собирать и использовать телеметрию и метрики использования на стороне клиента для улучшения работоспособности сервиса. Вы можете отказаться от сбора данных, изменив настройку телеметрии в Наборе инструментов AWS в IDE.

    Подробнее см. в Руководстве пользователя CodeWhisperer.

  • CodeWhisperer индивидуального уровня может хранить и использовать ваш контент, такой как фрагменты кода, комментарии и содержимое файлов, открытых в интегрированной среде разработки. CodeWhisperer обрабатывает их, чтобы обеспечить свою функциональность и поддерживать работоспособность, а также, если вы не откажетесь, как указано ниже, чтобы совершенствоваться и повышать качество работы. В частности, мы изучаем лучшие способы повышения производительности разработчиков с помощью генерации кода, выявляем потенциальные злоупотребления сервисом, оцениваем эффективность функций CodeWhisperer, улучшаем базовые LLM, позволяющие генерировать код, настраиваем алгоритмы ранжирования и многое другое. Вы можете запретить AWS хранить и использовать ваш контент для улучшения сервиса, изменив свои настройки в интегрированной среде разработки.

    Кроме того, AWS может собирать и использовать телеметрию и метрики использования на стороне клиента для улучшения работоспособности сервиса. Вы можете отказаться от сбора данных, изменив настройки в интегрированной среде разработки.

    Подробнее см. в Руководстве пользователя CodeWhisperer.

  • В CodeWhisperer индивидуального уровня вы можете отказаться от сбора данных, изменив настройки в интегрированной среде разработки.

    Подробнее см. в Руководстве пользователя CodeWhisperer.

  • У нас есть меры безопасности, направленные на предотвращение воспроизведения уникального частного кода, полученного от индивидуальных пользователей CodeWhisperer.

ОБЩИЕ ПАРАМЕТРЫ КОНФИДЕНЦИАЛЬНОСТИ
Просмотреть документацию

Ознакомьтесь с документацией CodeWhisperer, чтобы узнать больше.

Подробнее »

Начните разработку с помощью CodeWhisperer