Эд Шарбено в недавней беседе подчеркнул практические стратегии для внедрения AI-моделей в производство. Известный своей работой в должности главного разработчика и адвоката в Progress Software, Шарбено акцентировал внимание на управлении недетерминированным поведением AI, интеграции агентных AI в рабочие процессы разработчиков и оптимизации инструментов и управления контекстом для повышения производительности и надежности в мобильных и веб-приложениях.
Практические аспекты интеграции AI-моделей в производственные среды
Эд Шарбено: При интеграции генеративных AI-моделей в производство важно учитывать их недетерминированное поведение. Хотя некоторая последовательность возможна, всегда есть определенные вариации от одного вывода к другому. Кроме того, обновление или изменение моделей может привести к неожиданным результатам, поскольку новые модели обрабатывают запросы по-разному. При изменении моделей некоторые запросы могут потребовать упрощения или переписывания.
Общие ошибки развертывания в контексте мобильных или веб-приложений
Эд Шарбено: AI в изолированных средах, таких как мобильные и веб-приложения, часто использует локальные модели. Локальные модели выбираются за их скорость, энергоэффективность и возможность работы без подключения к интернету. Однако модели должны жертвовать точностью, чтобы соответствовать ограничениям, наложенным памятью устройства, батареей и другими факторами.
Эффективное тестирование и мониторинг AI-функций после запуска
Эд Шарбено: Эффективный мониторинг AI после запуска осуществляется через несколько каналов, включая автоматическое тестирование, телеметрию и участие человека в процессе. Автоматическое тестирование идеально подходит для быстрого выявления проблем, а сбор телеметрических данных с помощью таких инструментов, как Telerik Fiddler Everywhere Reporter или OpenTelemetry, полезен для диагностики долгосрочных проблем или обнаружения простоев. С технологией, такой как генеративный AI, где возможны вариации, участие человека в процессе в качестве контрольной точки является ценным инструментом для обеспечения приемлемости генерируемых результатов.
Эволюция рабочих процессов разработчиков с ростом агентных AI-систем
Эд Шарбено: В настоящее время происходит сдвиг в традиционном кодировании и программировании. Этот сдвиг переводит разработчиков от написания каждой строки кода к более надзорной роли. С функцией MCP tool calling агенты теперь сосредоточены на планировании и выполнении задач, а не на изолированных задачах. Это изменение меняет то, как разработчики пишут запросы; например, агентные инструменты хорошо реагируют на списки с несколькими целями.
Замена традиционных CI/CD конвейеров агентными AI-системами
Эд Шарбено: Агентные AI, вероятно, заменят способ построения и выполнения CI/CD конвейеров. Агенты могут использовать инструменты для автоматизации создания конвейеров развертывания. Кроме того, агенты являются частью самого CI/CD конвейера, способные инициировать процессы, реагировать на ошибки и разбирать логи.
Изменение ролей младших и старших разработчиков в ответ на новые инструменты
Эд Шарбено: Отношения между младшими и старшими разработчиками меняются с развитием AI-технологий. С AI младшие разработчики могут начинать и учиться гораздо быстрее. Старшие разработчики могут делегировать задачи как агентам, так и младшим разработчикам, принимая решения на более широком уровне. По мере эволюции ролей опыт будет определяться способностями к решению проблем, а не знанием конкретных API, фреймворков или практик кодирования.
Проблемы предоставления контекста при работе с LLM и их решения
Эд Шарбено: С агентными AI и вызовами инструментов, инженерия запросов эволюционирует в инженерию контекста. Поскольку агентные AI лучше планируют, запросы стали более обобщенными, увеличивая ценность контекстного окна AI. Через Context Augmented Generation (CAG) и Retrieval Augmented Generation (RAG) модели предоставляется дополнительный контекст и обоснование. Реализация CAG и RAG может быть осуществлена через MCP tools/agents. Например, сценарий, специфичный для отдельной области, может выиграть от MCP tool, основанного на этой области. Сегодня это делают такие инструменты, как помощники Telerik и Kendo для разработки интерфейсов.
Эффективные архитектурные паттерны для разработки
Эд Шарбено: Одно совершенно ясно: как адвокат разработчиков, я не советую разработчикам пытаться строить систему RAG с нуля. Хотя RAG — мощный инструмент, легко ошибиться в деталях реализации. Это похоже на то, что мы видим в секторе безопасности, где решения "сделай сам" не рекомендуются. Вместо этого я рекомендую использовать Progress Agentic RAG, так как это решение обладает надежным API для поглощения, встроенными возможностями графа знаний и мерами безопасности и соответствия.
Управление сессиями и контекстом истории пользователя
Эд Шарбено: Управление схемами памяти, сохранение предпочтений пользователя и извлечение контекста с использованием семантического сходства должно осуществляться через доступные SDK. Абстрагированные слои для хранения и извлечения структурированных данных через Redis, Pinecone и Postgres доступны и интегрируются напрямую через библиотеки, такие как Semantic Kernel.
Оценка AI-кодинг ассистентов для разработки
Эд Шарбено: Ландшафт AI-кодинг ассистентов чрезвычайно конкурентен. Однако большая часть работы выполняется экосистемой LLM. Они различаются в зависимости от выполняемых разработчиками действий. Например, GitHub Copilot отлично подходит для общей разработки и поддерживает более широкий диапазон языков, в то время как AWS CodeWhisperer превосходен в задачах, связанных с AWS, включая сканирование безопасности. При оценке AI-кодинг ассистентов разработчики должны учитывать платформенные возможности, предлагаемые каждым поставщиком.
Выбор AI-инструментов по совместимости с IDE, возможностям модели или гарантиям конфиденциальности
Эд Шарбено: В то время как совместимость с IDE, возможности модели и гарантии конфиденциальности — важные факторы, команды должны в первую очередь выбирать AI-инструменты, которые максимально повышают производительность для их конкретного технологического стека и проектных целей. Эти факторы должны направлять решение, а не быть единственными критериями.
Будущее совместного использования нескольких AI-ассистентов разработчиками
Эд Шарбено: Да, как напрямую, так и косвенно. AI-ассистенты начинают становиться оркестраторами, которые могут делегировать задачи другим ассистентам. Один из таких примеров — Telerik Agentic UI Generator, который оркестрирует UI, UX и дизайн-ассистентов для создания готовых пользовательских интерфейсов приложений с соблюдением рекомендаций по дизайну и лучшими практиками доступности.
Расширение возможностей AI-инструментов для соответствия уникальным нуждам команды
Эд Шарбено: AI-инструменты настраиваются различными способами. Например, GitHub Copilot в Visual Studio настраивается с помощью рынка MCP-инструментов. Инструменты могут быть выбраны индивидуально, сгруппированы или настроены как режимы. Режимы — это набор инструментов и фрагментов запросов, которые активируются через панель VS Code по мере необходимости.
Эффективное использование библиотек запросов, тонкой настройки или API-плагинов
Эд Шарбено: Библиотеки запросов эффективны в сочетании с файлами пользовательских инструкций. Пользовательские инструкции существуют для почти всех AI-кодинг ассистентов: GitHub Copilot, Cursor, Bolt и других. Пользовательские инструкции — это набор запросов, создающих дополнительный контекст для того, как ассистенты понимают ваш проект и как строить, тестировать и проверять его изменения. У каждого ассистента есть свои конвенции, такие как файл copilot-instructions.md для GitHub Copilot.
Роль командной культуры в принятии и стандартизации AI
Эд Шарбено: Командная культура может как способствовать, так и препятствовать принятию AI. Организации, которые препятствуют использованию AI, в конечном итоге отстают и остаются в конкурентном невыгодном положении. Команды, использующие AI, не только увидят прирост производительности, но и получат опыт либо непосредственно, либо косвенно с инженерией запросов, управлением контекстом, MCP-инструментами и связанными технологиями. Ранние последователи лучше понимают работу AI, чем те, кто внедряет позже и видит его как "черный ящик".
Реальные результаты использования AI в разработке
Эд Шарбено: Существуют ощутимые выгоды от использования AI-инструментов в рабочих процессах разработчиков. Кодинг ассистенты хорошо справляются с выполнением повторяющегося кода и позволяют разработчикам сосредоточиться на бизнес-специфических проблемах. AI-ассистенты предоставляют рекомендации по производительности, лучшим практикам и раннему обнаружению ошибок. Они также уменьшают переключение контекста, ссылаясь на документацию напрямую в IDE.
Задачи, где AI недооценен или переоценен
Эд Шарбено: Без достаточного контекста AI может иногда захватить кодовую базу и добавить ненужные ответы. Например, инструктирование ассистента создать веб-API может привести к созданию тестов, примеров и UI-кода вместо сосредоточения на задаче. Новые модели генерируют и отображают планы перед выполнением, давая разработчикам возможность корректировать запросы.
Измерение ROI при интеграции AI в процесс разработки
Эд Шарбено: Метрики опыта разработчика (DevEx) хорошо работают для оценки ROI AI. Эти метрики показывают, насколько плавно разработчики могут создавать, поставлять и поддерживать программное обеспечение. Обратные связи, когнитивное состояние и состояние потока — это аспекты, которые следует учитывать. Количественные метрики, такие как размер PR, время слияния и частота развертывания, определяют скорость поставки, в то время как качественные опросы и интервью оценивают прерывания и удовлетворение разработчиков.
Выбор AI-моделей для различных задач разработки
Эд Шарбено: Некоторые модели лучше подходят для определенных задач, языков программирования или платформ, чем другие. GPT-5 сильна в планировании задач и кодировании на нескольких языках и фреймворках. Claude Sonnet 4 имеет расширенное контекстное окно, что полезно для рефакторинга больших кодовых баз. Разработчикам следует провести "сухой запуск" с несколькими моделями, чтобы подтвердить их возможности перед внедрением в производство.
Возможности локальных моделей для использования в производстве
Эд Шарбено: Локальные модели интересны, но менее мощны, чем размещенные модели. Размещенные модели имеют больше параметров, что улучшает абстракцию, рассуждение и распознавание шаблонов. Локальные настройки обычно ограничены параметрами от 7B до 13B, в то время как размещенные модели могут превышать 70B. Гибридные подходы могут позволить масштабирование между локальными и размещенными моделями, если соблюдены ограничения.
Сравнение открытых и проприетарных моделей с точки зрения контроля и надежности
Эд Шарбено: Открытые модели, такие как LLaMA 3, подходят для Edge AI, задач, связанных с конфиденциальностью, и высоко настроенных решений. LLaMA конкурирует с проприетарными моделями, такими как GPT и Sonnet, но может требовать дополнительной настройки для многомодальных возможностей и вызова инструментов.
Эд Шарбено — главный разработчик и адвокат в Progress Software, специализируется на интеграции AI, рабочих процессах разработчиков и агентных AI-инструментах. Он активно работает с разработчиками, предоставляя рекомендации по ответственному внедрению AI-моделей, управлению контекстом, оптимизации инструментов и повышению производительности в мобильных и веб-приложениях. С обширным опытом в области генеративного AI и кодинг ассистентов, Эд помогает командам эффективно внедрять AI, сохраняя надежность, безопасность и эффективность в производственных средах.
Интересные мысли о будущем AI в разработке. Согласен, что агентные системы действительно могут изменить подход к CI/CD. Однако возникает вопрос, как это скажется на безопасности и контроле за процессом? Ведь автоматизация несет с собой как плюсы, так и потенциальные риски.