Васи Филомин из Amazon: «CodeWhisperer — это напарник, а не замена программисту»

The TWIML AI Podcast 992 52 мин 4 мин 10.10.2022
Главное

В последние годы искусственный интеллект совершил качественный скачок в помощи разработчикам, переходя от простой подстановки команд к написанию целых блоков логики. В новом выпуске подкаста TWIML AI ведущий Сэм Черрингтон встретился с Васи Филомином (Vasi Philomin), вице-президентом и генеральным менеджером по машинному обучению и ИИ в Amazon, чтобы обсудить запуск Amazon CodeWhisperer и то, как облачные гиганты меняют парадигму написания кода.

🏗️ Структура ИИ-сервисов в экосистеме AWS 1:59

Васи Филомин курирует верхний уровень технологического «пирога» AWS. По его словам, Amazon разделяет свои предложения в области машинного обучения на три четких уровня :

  1. Нижний уровень: Инфраструктура для экспертов (вычислительные мощности, GPU).
  2. Средний уровень: Инструменты для дата-сайентистов и разработчиков (SageMaker).
  3. Верхний уровень: Готовые AI-сервисы, которые можно интегрировать в приложение через API, не обладая глубокими знаниями в Data Science .

Филомин разделяет сервисы верхнего уровня на «когнитивные» и «отраслевые». К представителям первой группы относятся Amazon Lex (платформа для чат-ботов, на которой базируется Alexa), Amazon Polly (синтез речи), Amazon Translate и Amazon Comprehend (анализ текста и настроений) . Отраслевые же сервисы решают узкие бизнес-задачи. Примером служит Amazon Monitron — решение, включающее датчики вибрации и температуры. Филомин утверждает, что в фулфилмент-центрах Amazon эта система позволяет предсказывать поломки конвейерных лент за две недели до их возникновения, превращая реактивный ремонт в плановое обслуживание .

Интеллектуальный поиск: проблема Enterprise-сегмента

Отдельным важным продуктом в портфеле является Amazon Kendra. Филомин отмечает, что поиск внутри корпораций — задача на порядок сложнее поиска в интернете . Внутри компаний документы изолированы (SharePoint, Salesforce, внутренние Wiki), а ссылки между ними отсутствуют. Kendra использует модели NLP для семантического поиска: вместо выдачи списка ссылок система может дать конкретный ответ на вопрос (например, «Где находится IT-отдел?» — «На четвертом этаже») .

💻 Эволюция инструментов для разработчиков: от CodeGuru к CodeWhisperer 16:41

Amazon начала свой путь по внедрению ИИ в рабочий процесс программиста еще в 2019 году. Путь развития сервисов повторяет жизненный цикл разработки ПО :

Филомин на личном примере объясняет необходимость такого инструмента: полтора года назад он решил изучить современный фронтенд на React. Он обнаружил, что знания одного языка недостаточно — нужно знать React Router, Redux, фреймворки для тестирования (Jest, Enzyme) . Для AWS ситуация еще сложнее: у облака более 250 сервисов и 10 000+ API. Разработчики тратят огромное количество времени на поиск «кусков» кода (snippets) на StackOverflow. CodeWhisperer призван стать «интеллектуальным напарником» (pair programming companion), который берет на себя рутину и написание шаблонного кода .

🛡️ Безопасность и лицензионная чистота: отличия от GitHub Copilot 25:06

При обсуждении конкуренции с GitHub Copilot (совместный проект OpenAI и Microsoft), Васи Филомин выделил три ключевых отличия Amazon CodeWhisperer:

  1. Безопасность как «задача номер ноль»: По статистике, до 40% генерируемого ИИ кода может содержать уязвимости. В CodeWhisperer встроен сканер безопасности, который проверяет код на соответствие лучшим практикам .
  2. Трекер ссылок (Reference Tracker): Это критическая функция для крупных компаний. Если ИИ генерирует код, очень похожий на фрагмент из открытых репозиториев, система показывает пользователю лицензию этого кода (например, MIT или Apache). Разработчик сам решает, допустимо ли использование этого фрагмента в его проекте .
  3. Оптимизация под AWS: Сервис обучен на десятилетнем опыте использования API Amazon, что делает генерацию кода для облачных приложений более точной и надежной .

На вопрос о данных для обучения Филомин ответил, что использовались миллиарды строк кода из публичных репозиториев (с учетом типа лицензии), внутренней базы Amazon, а также документация и форумы .

⚖️ Ответственный ИИ и борьба с предвзятостью 34:27

Васи признает, что большие языковые модели (LLM) могут наследовать проблемы базовых текстовых моделей. В Amazon над этой проблемой работают эксперты мирового уровня, такие как профессор Майкл Кернс (Michael Kearns) из UPenn, автор книг по алгоритмической предвзятости .

Основные векторы защиты:

📊 Демонстрация возможностей: от JSON до графиков 40:54

В ходе живой демонстрации Васи Филомин показал работу CodeWhisperer в IDE PyCharm :

  1. Простая автоматизация: По коротким комментариям ИИ создал функции для взаимной конвертации JSON в CSV. Система сама предложила логику использования ключей JSON в качестве заголовков таблицы .
  2. Работа с AWS API: По запросу «транскрибировать немецкий аудиофайл» CodeWhisperer сгенерировал сложный блок кода с использованием библиотеки Boto3, правильно указав локаль (de-DE) и настроив цикл ожидания выполнения задачи .
  3. Визуализация данных: На базе комментария из естественного языка ИИ написал код на Matplotlib для построения графиков синуса и косинуса в заданном диапазоне с использованием красных и синих пунктирных линий . Код успешно запустился с первого раза.

Филомин подчеркнул, что CodeWhisperer — это именно «компаньон». Ответственность за финальный результат всегда несет разработчик , но ИИ избавляет его от необходимости бесконечно переключаться между редактором кода и документацией.

💬 Цитаты

«Для нас в AWS безопасность — это задача номер ноль.»

Васи Филомин 28:13

«CodeWhisperer помогает увеличить ваше влияние как разработчика, независимо от того, на каком этапе пути вы находитесь.»

Васи Филомин 24:41
👥 Спикеры
📚 Упомянутые книги
🔗 Упомянутые сайты и проекты
📖 Термины
Boto3
Официальный SDK Amazon для языка Python, позволяющий взаимодействовать с сервисами AWS.
Zero-shot / Few-shot learning
Способность модели решать задачу, имея минимальное количество примеров или не имея их вовсе.
Reference Tracker
Инструмент в CodeWhisperer, уведомляющий о лицензиях открытого кода, если сгенерированный фрагмент совпадает с существующим в сети.
📊 Цифры
🗓 Хронология
  1. 2019 Запуск сервиса Amazon CodeGuru для автоматической проверки багов.
  2. 2020 Запуск DevOps Guru для мониторинга приложений.
  3. 2022 Анонс и запуск Amazon CodeWhisperer в режиме превью.
⚖️ Другая сторона
Искусственный интеллект Amazon CodeWhisperer AWS Vasi Philomin Machine Learning Cloud Computing