Transcription
[Музыка] Приветствуем Аманду Сильвер. [Музыка] Привет, мир. Я Аманда Сильвер. Я очень рада быть здесь сегодня в этот прекрасный день в солнечном Сан-Франциско на конференции GitHub Universe, конференции, которая создана разработчиками и для разработчиков. Итак, сегодня мы создадим интеллектуальное приложение с нуля и развернем его в продакшене. И я действительно хочу быстро перейти к делу. В 2021 году мы запустили Copilot как первого в мире ИИ-парного программиста. А в прошлом году на Universe мы добавили выбор модели и впервые использовали слово "агент". И мы действительно расширяли границы ИИ в различных модальностях, продвигая передовые достижения в области машинного обучения, чтобы сделать Copilot более полезным, интуитивно понятным и мощным для вас. И то, что мы видим, это то, что в режиме агента с GitHub Code Copilot Coding Agent, это действительно повышает вовлеченность и производительность. И на самом деле, 80% новых разработчиков на GitHub теперь используют Copilot в течение первой недели, показывая, что ИИ становится абсолютно неотъемлемой частью опыта разработчика. Разработчики используют Copilot прямо в своем редакторе кода, чтобы оставаться в потоке. И наша цель — сделать Visual Studio Code редактором кода, изначально ориентированным на ИИ. А в начале этого года мы открыли исходный код расширения Copilot Chat. И сегодня вы увидели, что будет дальше. Сессии агентов предоставляют вам пользовательские локальные и удаленные агенты, агенты CodeEx и режим планирования. И все эти инструменты вместе делают GitHub Copilot незаменимым для создания облачных приложений. Итак, с этим давайте создадим приложение. Современные приложения являются облачными. Они агентные. Они самосовершенствуются. И они требуют минимального обслуживания благодаря спецификациям, которые определяют, генерируют, проверяют и эксплуатируют системы. Спецификации становятся единым источником истины, которому следуют агенты, конвейеры и платформы. Превращая вашу стратегию и рекомендации по реализации в повторяемую, проверяемую автоматизацию. Мне очень нравится эта цитата Андреа Гриффит из GitHub. Дайте разработчику автодополнение кода, и он сольет его один раз. Научите разработчика использовать ИИ-агента для кодирования, и он опустошит бэклог до того, как остынет кофе. Итак, я хотел бы пригласить Шейна Бойера на сцену, чтобы показать нам, как он использует Spec Kit и все инструменты MCP, которые мы внедряем в наш опыт. Шейн. [Музыка] Хорошо, приступим. >> Приступим. Теперь единственное, что должно работать, — это мой отпечаток пальца. Хорошо, это сработало. Отлично. Итак, здесь у нас есть наше приложение Octopets. Это наша новая версия Octopets, изначально ориентированная на ИИ, над которой мы работали. И здесь у нас есть отличное, своего рода, изначально ориентированное на ИИ, очень чистое приложение, над которым мы работали. И у нас есть несколько классных маленьких функций. У нас есть наше отличное маленькое кроличье молоко. >> Он должен был это сделать. Это мой кролик. >> Пожалуйста. Хорошо. Итак, чтобы разработать это приложение, мы использовали, как вы упомянули, разработку на основе spec kit, или спецификацию. И это наш проект с открытым исходным кодом, над которым мы работали с GitHub, чтобы заниматься разработкой на основе спецификаций, вместо того, чтобы просто кодировать "на авось", надеясь получить что-то, что мы ищем, в приложении. Итак, давайте перейдем в VS Code и посмотрим, как мы это сделали. Теперь SpecKit — это отличный способ просто определить, что мы хотим создать в приложении или функции. И одна из последних функций, которую мы здесь имеем, заключается в том, что когда мы запускаем spec kit, мы получаем эти отличные маленькие быстрые клики, чтобы получить то, что нам нужно. Теперь, с чего я хочу начать, это конституция, своего рода наши руководящие принципы относительно того, что мы хотим встроить в наше приложение, и эти руководящие указания для того, что мы строим. >> Так это своего рода ваши лучшие практики, но затем вы можете поделиться ими с командой. Да, мне это нравится, потому что это своего рода шаблон, но он также снова устанавливает принципы того, что мы пытаемся построить, без необходимости вставлять много всего в наш запрос, верно? Итак, я хочу убедиться, что мы в конечном итоге развернем это в Azure. Поэтому я устанавливаю просто некоторые, некоторые руководящие принципы здесь. Итак, прямо с самого начала вы заметите, что я буду использовать Azure CLI. Я буду использовать Azure MCP и убежусь, что я получаю лучшие практики для генерации кода вокруг тех компонентов, которые я могу использовать, когда запрос будет помещен в spec kit. Я также убеждаюсь, что если у меня есть какие-либо управляемые агентом вещи, какие-либо модели, которые я хочу использовать, я использую инструменты Azure AI Toolkit MCP и получаю лучший генерацию кода. >> Теперь SpecKit не специфичен для Azure. Нет, если бы я использовал другое облако, я мог бы фактически указать, что я хочу сделать. >> Конечно. Вы можете просто, если у вас есть какие-либо инструменты MVC, которые вы хотите использовать, я могу просто поместить их прямо сюда, в мой конституционный файл, и убедиться, что при запуске моего запроса они будут вызваны. И я добавлю сюда и другие вещи. Я буду использовать Aspire, другие принципы, которые я хочу убедиться, что они будут вызваны. Итак, когда я запущу фактическую команду specify с моим запросом "Я хочу это приложение в стиле Airbnb для Octopets", убедитесь, что вы следуете этим вещам. Теперь мы уже сделали это. Очевидно, у нас есть ограничения по времени, мы хотим убедиться, что мы делаем это быстро, что мы уже получим наши пользовательские истории, сгенерированные командой specify, что отлично. Так что это действительно круто. Убедитесь, что он генерирует все наши пользовательские истории, которые мы ищем, на основе нашего запроса "Дайте мне приложение в стиле Airbnb для наших питомцев". >> Действительно здорово. >> Так это расширилось из вашего, вашего единственного запроса в пользовательские истории, а затем вы работаете оттуда. >> Да. Я имею в виду, я мог бы пойти в кафе-бутербродную и сказать: "Дайте мне бутерброд". >> И надеяться, что я получу бутерброд. Или я могу сказать: "Вот все, что я хочу". Это даст мне гораздо лучший результат. Верно? Та же идея. >> Теперь следующее, что я могу сделать, это я собираюсь сделать план прямо здесь, где, когда я делаю план, я мог бы фактически вставить "Я хочу использовать Azure MCP". Я хочу вставить Aspire или, возможно, я хочу использовать React и вставить это сюда тоже. Но поскольку я уже вставил это туда, я могу просто сказать "следуй моим инструкциям, которые я вставил в конституцию", это даст мне результаты, верно? И именно это оно и сделало. Итак, когда я смотрю на фактический план, который выполняется здесь, позвольте мне перейти и посмотреть на эти результаты здесь. Мы сделали сводку плана. Вы можете видеть, что мы идем к вершине, он спланировал все. Дал нам обзор функций, техническое содержание. У него было несколько вещей, по которым ему требовались ключевые решения. Мы вставили это туда, что очень хорошо. и он сгенерировал все файлы, которые нам были нужны, что касается нашего плана исследований. Теперь, что было интересно здесь, это когда мы смотрим на файл исследований, и если я могу просто открыть предварительный просмотр здесь, давайте сделаем это немного больше. Мы можем видеть, что он фактически следовал этим инструментам MCP, которые мы рассматривали, и он дал нам рекомендации по моделям, потому что мы знаем, что будем использовать агентов для, возможно, функции чата или других рекомендаций, и он говорит: "Смотри, используй GPT4 mini", что отлично. >> он дал нам несколько вариантов относительно того, что мы будем делать, если мы собираемся поместить это в Azure AI Foundry для продакшена, а также дал нам некоторые альтернативные соображения. Итак, он вызвал эти инструменты MCP, как мы и ожидали, когда мы генерировали наш план. >> Теперь последнее, что мы хотим сделать, это теперь превратить этот план, эти исследования и эту спецификацию в отдельные задачи. Итак, когда я запускаю режим задач, он учтет все эти вещи и сгенерирует отдельные шаги, которые нам нужно фактически выполнить для указанного, чтобы сделать. Верно? Итак, когда мы запускаем задачи, он скажет: "Смотри, я прочитаю все, что мы сгенерировали в рамках наших запросов", что очень хорошо. И затем мы прокручиваем вниз здесь, и он разбит на отдельные фазы, которые у нас есть здесь. Теперь, если я хочу посмотреть фактические задачи, которые были построены, опять же, это просто много отдельных шагов всего, что нужно сделать. Вот мой фронтенд и все такое. >> Это >> это много ручной утомительной работы, которую вам нужно сделать, чтобы сделать всю эту работу, верно? >> Да. >> Итак, что я фактически сделал, это я воспользовался другим MCP, GitHub MCP, >> верно? И я сказал: "Эй, друг, можешь создать проблемы в моем репозитории для каждой из этих задач?" Это вызвало мой GitHub MCP, который, если я посмотрю на мою задачу GitHub, создал проблемы в моем репозитории для каждой из них, что очень круто. Лучшая часть этого — я могу фактически перейти сюда и назначить это моему кодирующему агенту. Это запустит создание бэкенда для меня, пока я, возможно, занимаюсь чем-то фронтендом. Я знаю, что я не буду делать это сам, я просто назначу это другому агенту, чтобы сделать эту работу тоже. И тогда мы можем видеть, как эти вещи создаются. будет отмечать их одно за другим по мере моего продвижения. Итак, я использую MCP. Я остаюсь внутри VS Code и позволяю всему этому делать работу за меня. >> Отлично, Шейн. Большое спасибо. >> Хорошо, >> круто. Хорошо, так что Speckit приносит разработку на основе спецификаций для кодирующих агентов с такими инструментами, как GitHub Copilot. Он также поддерживает Cloud Code и Gemini CLI. Так что, даже если вы не используете GitHub Copilot, вы также можете использовать его с этими инструментами. И он превращает спецификации в эти живые исполняемые артефакты, которые направляют, развивают и разбивают всю работу, как только что показал Шейн. И он также показал вам сервер Azure MCP, который мы фактически объявляем сегодня GA. >> Он безопасно подключает службы Azure к ИИ-инструментам, таким как GitHub Copilot, предоставляя вам данные в реальном времени о ваших ресурсах, позволяет вам управлять ресурсами, выполнять инфраструктуру как код и устранять все неполадки с помощью запросов в вашей IDE. И это значительно упрощает создание, управление и развертывание ваших облачных приложений в Azure без необходимости копаться в портале. Итак, у нас есть приложение, которое работает, как мы только что показали вам. Теперь давайте перейдем к добавлению интеллекта и автоматизации. Знаете, ИИ-агенты — это не просто еще одно приложение. Они действительно играют по другим правилам. Традиционные приложения построены на фиксированной логике и обновляются вручную. Они следуют очень жестким предопределенным шагам и потоку управления, и вам приходится вручную описывать инфраструктуру. ИИ-агенты работают на вероятностных моделях, а не на статических потоках управления. Они рассуждают, планируют, адаптируются по ходу дела. Они адаптивны по своей природе, и вы фокусируетесь на намерении, и то, что вы строите, — это сигнальные петли и ограждения, а не просто конечные точки. Чтобы показать, что я имею в виду, я приглашу Ранлу на сцену, и, знаете, для всех вас, возможно, вы используете агентов уже месяцами в своем рабочем процессе разработки, но вы не обязательно знакомы с тем, как быстро создавать агентов. Так что именно это мы и собираемся показать. Итак, добро пожаловать, Ранлу. [Музыка] [Аплодисменты] [Музыка] Всем привет. Хорошо, давайте создадим ИИ-агента. >> Давайте сделаем это. >> Хорошо, первое, что мне понадобится, — это отличная модель, потому что модели — это основа для мощных агентов. Я могу перейти в каталог моделей AI Toolkit, чтобы изучить различные модели, включая те, которые мы можем развернуть в службе AI Foundry одним кликом, или мы можем скачать локальную модель одним кликом. В любом случае, я могу затем перейти в песочницу модели, чтобы протестировать возможности каждой модели. К этому моменту я все еще не знаю, какая модель подойдет для моего агента. Поэтому я приду сюда и попрошу Copilot дать совет. Я скажу: "Какие модели Foundry вы рекомендуете для агента-ситера, которого я хочу создать и который может предлагать ситеров для домашних животных в этом районе?" Итак, мы видим здесь, что Copilot вызывает инструмент AI Toolkit для получения последней информации о моделях. >> И теперь, учитывая агента, которого я хочу создать, Copilot предлагает мне несколько вариантов моделей с очень подробной информацией о его стоимости, окне контекста и вариантах использования каждой модели. Итак, с этой информацией я могу очень, очень быстро сделать выбор модели. Итак, похоже, лучшая модель, которую рекомендует Copilot, — SGPD41. Так что я думаю, мы готовы попробовать. Теперь давайте создадим агента. И снова я прошу Copilot помочь мне с этим, чтобы создать агента. >> Так вы, возможно, никогда раньше не создавали агента, верно? Верно. И это на самом деле позволит вам просто ввести это как запрос, а затем >> да, создать полноценного рабочего агента прямо здесь. >> Хорошо, давайте посмотрим. >> >> Да, это снова использует инструмент AI Toolkit, и мы можем взглянуть на этот код, который Copilot сгенерировал для нас. >> Мы используем новую структуру агентов Microsoft, которая позволяет нам писать одного агента или оркестрировать несколько агентов очень, очень легко. >> Внизу здесь мы видим определение моего агента. Здесь находятся мои системные инструкции и список инструментов, которые Copilot создал для меня. Я даже попросил Copilot включить трассировку для моих локальных запусков, чтобы мы могли наблюдать, как именно работает наш агент. Итак, с этим давайте включим локальный сборщик трассировки. Хорошо. Хорошо. Позвольте мне поднять это, чтобы мы могли >> запустить этого агента. >> Ваша мышь. Вот так. >> И протестировать. >> Хорошо. >> Или без трассировки. >> Но мы можем по крайней мере протестировать. >> Да. >> Вот так. >> Итак, наш агент >> работает. Давайте поищем ситера для собак >> в районе Сан-Франциско. И здесь происходит то, что наш агент делает вызов конечной точки модели, которую я имею в Foundry, и >> он будет искать правильный инструмент для вызова, а затем >> вернется с правильной информацией о наших ситерах в этом районе. Отлично. И тем временем мы только что получили >> трассировку, которая была собрана как часть нашего запуска. И мы можем видеть вызов модели >> к модели GPD40, модели 41 и вызов инструмента, как и ожидалось. Отлично. Итак, теперь у нас есть один агент, созданный, и я сделал то же самое для другого агента для рекомендации мест для домашних животных. Теперь я хотел масштабироваться. Я хочу оркестрировать обоих агентов в рабочий процесс. Итак, снова я возвращаюсь к Copilot, >> чтобы помочь мне с этим. Итак, Copilot может не только создавать отдельных агентов, но и оркестрировать нескольких агентов. Поднимитесь наверх. >> И это запрос, который я отправил Copilot. >> И, >> позвольте мне запустить этот визуализатор. Хорошо. >> Давайте запустим рабочий процесс. Теперь мы запускаем агент листинга и агент установки, оба на моей локальной машине. >> И рабочий процесс запускается. >> Мы тестируем несколько пользовательских запросов. Мы видим, что каждый агент >> иногда оба агента будут вызваны как часть этого рабочего процесса. Понял. И если мы посмотрим на этот код, сгенерированный Copilot, он также использует структуру агентов Microsoft. Но на этот раз вместо одного агента он использует конструктор рабочих процессов, чтобы мы могли оркестрировать несколько агентов вместе. Хорошо. Итак, теперь мы проверили несколько пользовательских запросов. Смотрите, все выглядит хорошо. >> Но мы хотим провести более широкую оценку качества ответов агентов. Так что, возможно, хорошей идеей будет ввести оценку. >> Да. Так что оценки похожи на модульные тесты, но для стохастических процессов. Верно? Верно. Так что я могу фактически проверить >> производительность, чтобы увидеть, делает ли агент то, что я ожидаю. >> Верно? Верно. Точно. Итак, снова возвращаясь к Copilot, вы видите, куда это ведет. Все, на что я полагаюсь, — это Copilot, чтобы сделать работу за меня. >> Я просто сказал "добавить оценку к моему агенту", и это все мои запросы. >> Так что вам не нужно знать ничего специфического о фреймворке оценки. >> Да. И у меня нет определенных метрик. У меня нет набора тестовых данных, но это нормально, потому что Copilot проведет меня через весь этот процесс. Он >> он посмотрел на все в моем рабочем пространстве и предложил метрики, которые я могу использовать, и даже сгенерировал тестовые данные для меня, которые мы можем просмотреть прямо здесь, в Data Wrangler. >> Это список пользовательских запросов, сгенерированных Copilot, которые имеют отношение к моему варианту использования агента. Итак, с этими данными и этим скриптом Python, который Copilot сгенерировал для меня, работающим на Azure AI Evaluation SDK, я теперь могу запускать оценки офлайн на своей локальной машине или интегрировать это с GitHub Actions. Так что я могу иметь оценки, запускаемые как часть моего конвейера CI/CD при каждом коммите. Так что я могу видеть свои результаты здесь. Хорошо, со всей этой работой, оценкой на месте, у меня есть уверенность, чтобы зафиксировать свои изменения. Наконец, давайте посмотрим на это в действии и протестируем это в нашем приложении. Посмотрим, все ли работает. Хорошо, я перейду в чат и попрошу рекомендацию кафе и ситера в районе Сан-Франциско на следующую неделю, так как мы здесь. И у меня есть бюджетный лимит около 30 долларов. Так что посмотрим, даст ли команда агентов, стоящая за этим чатом, нам хорошие рекомендации. Это запускает рабочий процесс, который включает два агента, вызывающих конечные точки модели. >> Хорошо, мы получили ответ. Похоже, в этом районе есть несколько хороших кафе, дружелюбных к домашним животным. >> И наш агент также говорит нам, что ситеров в пределах моего бюджета нет. Так что, думаю, нам придется увеличить эту сумму. Хорошо. >> И >> Да. Отлично. Итак, наш агент может найти кого-то, кто берет 40 долларов в час. И теперь у меня есть ситер. Идеально. Хорошо. >> Да. Я хочу показать вам. >> Спасибо, Рон. Спасибо. Хорошо. Итак, то, что она только что показала вам, — это AI Toolkit для VS Code, и он действительно помогает вам заниматься генеративным ИИ-разработкой. Он помогает вам встраивать модели и рабочие процессы непосредственно в ваш внутренний цикл разработки. И таким образом вы можете обнаруживать и исследовать локальные или удаленные модели. Вы можете создавать и оценивать агентов и многоагентные рабочие процессы прямо в своей IDE, а затем беспрепятственно интегрировать их в свои ИИ-приложения и в конечном итоге развертывать их в Azure и AI Foundry с унифицированным опытом VS Code и GitHub Copilot. Теперь она также показала вам там агентную структуру, >> инструментарий с открытым исходным кодом для создания, подключения и улучшения ИИ-агентов. И он действительно сочетает лучшее из Semantic Kernel и Autogen в одной гибкой среде выполнения. Так что вы можете прототипировать локально и экспериментировать в разных облаках, не переписывая все. Теперь сегодня мы объявляем о публичной предварительной версии разработки агентов GitHub Copilot, ориентированной на запросы. >> Так что вам не нужно знать много обо всех этих новых фреймворках, чтобы иметь возможность создавать их в своем приложении. >> И затем она также показала вам Azure AI Agent Evaluation и Azure AI Evaluation с GitHub Action. И это позволяет вам как тестировать ваших ИИ-агентов локально во время локальной разработки во внутреннем цикле, так и развертывать их в ваших циклах CI/CD, чтобы вы могли выявлять эти проблемы и улучшать качество перед развертыванием в продакшене и так далее. И это поддерживает как сравнение одиночных, так и множественных агентов. И его очень легко установить прямо из GitHub Marketplace. Так что кто-то очень взволнован этим в аудитории. Итак, приложение работает, что отлично, но большинство инцидентов все еще занимают часы для разрешения. Это действительно замедляет ваше восстановление. Это замедляет ваше время до устранения неполадок и связывает ваши SRE с этими действительно рутинными исправлениями. И поэтому сегодня множество операционных проблем требуют, чтобы дежурный инженер потратил часы на расследование и устранение одного инцидента, и это замедляет ваше время. Это замедляет ваш MTR. Так что мы провели много времени, слушая SRE и обучая наших собственных, и мы понимаем давление, под которым они находятся. Это очень ответственная, напряженная ситуация, когда ваш сайт не работает, на вас оказывается большое давление, и как вы на самом деле решаете это? Вы знаете, вам нужно сократить общее время простоя. Вам нужно улучшить время до устранения неполадок, и в конечном итоге мы знаем, что быть разработчиком, который дежурит и которого будят посреди ночи, чтобы разобраться с инцидентом на живом сайте, не очень здорово. Поэтому мы ищем решение, которое даст вам меньше рутины, меньше оповещений в 2 часа ночи и больше времени, чтобы сосредоточиться на том, чтобы быть значимым инженером. Что, если бы у вас был очень знающий IT-специалист, который никогда не спит, доступен 24/7, может мгновенно анализировать тысячи системных метрик и журналов, может автоматически исправлять распространенные проблемы в ваших решениях без необходимости вмешательства человека? И поэтому я хотел бы показать вам, как вернуть Шейна на сцену, чтобы показать нам, как он использует Azure S Agent как очень знающего агентного партнера. Шейн >> Давайте сделаем это. >> Хорошо. Кто любит, чтобы его будили посреди ночи, чтобы что-то исправить? Один человек. >> Полуночник. >> Полуночник. Хорошо. Я хочу ваш номер телефона. Я позвоню вам. Хорошо. Итак, здесь у нас есть наш S sur agent. Мы развернули наше приложение Octopets. Рон пришел и создал некоторых агентов, которые реализуют все это. Так что теперь нам нужно убедиться, что если оно сломается, мы не будем звонить ему. >> Хорошо. Итак, у нас все это настроено здесь. И это работает во многом как Copilot agent, верно? Я могу общаться с ним, я могу задавать вопросы, говорить: "Эй, пожалуйста, следите за нашим приложением, нашими конечными точками работоспособности". И он настроит агента для нас, чтобы сделать это здесь. Итак, мы можем управлять нашими инцидентами в любой из наших текущих платформ. У нас есть PagerDuty, Azure Monitor, ServiceNow, все, с чем вы работаете в вашей системе. Так что мы можем настроить это. Мы можем настроить планы реагирования, и я, конечно же, настроил свой план реагирования Octopets. >> Так что мы можем настроить его для всех типов инцидентов. >> Я нажму "Далее". Итак, когда мы впервые начали строить это, мы строили это для наших собственных SRE, которые работают над нашими службами Azure, и мы взяли руководство, которое у нас было для этих SRE, и мы как бы кодифицировали его в агента, и это, по сути, то, что вы видите здесь, — это реализация этого. >> Правильно. Правильно. Итак, мы снова посмотрим на наш план. Нам пришлось немного обновить. Никаких проблем. Далее здесь, и мы нажмем "Пропустить". Итак, вот наши инструкции, которые мы вставим в наш план выполнения. Итак, по сути, если бы вы или я были вызваны, и что-то пошло не так, что мы будем делать? Мы будем следовать набору шагов, чтобы увидеть, что произошло. Проверьте это, проверьте наше масштабирование, убедитесь, что сетевой кабель подключен, такие вещи. Так что, если вы можете набрать свой план выполнения в runbook, вы можете фактически настроить этих агентов. И именно это мы и сделали здесь. >> Итак, я просто прокручу довольно быстро, потому что самая важная часть здесь. Эй, может быть, мы можем проверить эти конкретные команды. Посмотрим, есть ли у нас проблемы с ЦП или памятью. Вы знаете, я скажу своему агенту, моему фактическому личному агенту, >> иди проверь это. >> Ваш фактический >> фактический SR, вы проверили, вы проверили на 500? Такие вещи. Если вы найдете какое-либо отклонение, проверьте здесь. Проверьте нашу конфигурацию Bicep. Верно? >> В конце, давайте создадим проблему GitHub, которую мы можем решить позже. Возможно, инженерам придется ее посмотреть. Так что именно это мы и сделали здесь. Мы настроили это на то, как мы реагируем на эти вещи. Теперь хорошая новость в том, что наш SR agent знает все о наших ресурсах. Мы связали его с тем, что было развернуто. Он знает о группах ресурсов Azure. Он фактически знает, где находится наш код. Так что он может сканировать все это. У него есть тонны знаний, которые он может использовать, чтобы выяснить, что произошло. Так что, если я посмотрю на наше управление инцидентами здесь, посмотрите на это. Как ни странно, у нас здесь куча всего происходит. Похоже, он вызвал несколько 500-х. Давайте расширим эту страницу. И это своего рода аудит всего, что произошло, пока он проверял, что мы фактически ищем в нашем runbook, проверяя наш ЦП. >> Это своего рода журнал управления инцидентами, который фактически выполняет первое расследование, но он также интерактивен. Вы можете задавать ему вопросы >> и он не делает ничего волшебного. Мы не хотим, чтобы происходило волшебство. Он фактически регистрирует все это именно там, где мы хотим посмотреть, что он пытался сделать, что он нашел. Он говорит: "Смотри, мы находим исключения из нехватки памяти". Он пытается сделать некоторые вещи, которые мы попросили его сделать, попытаться настроить >>, посмотреть нашу подписку, попытаться выполнить автоматическое разрешение, увеличив наш ЦП, если он может или не может этого сделать, он продолжит регистрировать это, и то, что мы хотели, чтобы он сделал, это ответить, как мы сказали, чтобы сделать. Можете ли вы, пожалуйста, зарегистрировать проблему для нас, чтобы мы могли ее посмотреть? Ну, круто, он нашел это. Теперь он сделает это, зарегистрирует от имени K, который случайно является нашим фактическим человеком SR здесь, но помечает его как "создано агентом S sur". Так что мы знаем, что это было фактически автоматизировано. Так что это, это здорово. Итак, теперь он даст нам, что он нашел? >> Какие ошибки у нас здесь есть? Это приятно и подробно, больше, чем, вероятно, напишет мой агент, когда скажет: "Есть проблема". Так что у нас есть хорошие предложенные исправления кода, некоторые отклонения ИИ, что отлично. Итак, что я собираюсь сделать, это посмотреть эту проблему, некоторые другие проблемы, которые у нас есть. И что бы я хотел сделать, что бы вы сделали? Я бы назначил это Copilot. >> Прямо сейчас у нас также назначены некоторые пользовательские агенты. И я создал агент последующих действий S sur. >> О, отлично. >> Верно. И что это значит, это то, что я сказал ему в моих пользовательских инструкциях: "Просто займись тем, что было подано, не пытайся исправить какую-то проблему с CSS, которая, вероятно, существует, но просто сосредоточься на том, что было сообщено здесь", и я собираюсь назначить это Copilot. Он собирается сделать свою работу, что отлично, это именно то, что я хотел сделать, а затем посмотреть, сможет ли он найти проблемы. Теперь я собираюсь посмотреть на одну, которую мы сделали в прошлом, когда настраивали все это, и она создаст наш pull request. Так что мы посмотрим на одну из них, и давайте посмотрим на эту здесь. И вы увидите, что он действительно нашел некоторые проблемы здесь. Смотрите, у нас есть это прямо здесь. Это самая крутая вещь. Хорошо. >> Мы не хотели, мы хотели двигаться вперед. >> Ой. >> У нас здесь небольшие проблемы с масштабированием. Извините, ребята. >> Давайте вернемся сюда. Итак, что у нас здесь есть, это то, что он сказал, у нас есть наши минимальные и максимальные реплики. Они установлены на три и пятую. Так что мы можем масштабироваться. Если вы использовали мое приложение OC, наш осьминог, иногда, когда мы нажимаем на него, он говорит, что у него проблемы с загрузкой. Так что у нас были проблемы с масштабированием. Это было ранее не установлено. Оно было только до одного, верно? Так что он исправил это. И он также нашел некоторые исправления кода. Он выделял некоторые проблемы с памятью, что очень круто. >> Теперь более крутая часть — мы переходим к просмотру сессии. Мы можем фактически видеть, что Copilot фактически делал здесь. Он загрузит фактическую работу. Вы увидите здесь, что он внес эти изменения в нашу конфигурацию. Он сделает это как предложение. Мы посмотрим на фактические детали здесь. Прокрутите доверху. Волшебство. Он использует наш сервер Azure MCP, который у нас настроен. Он также использует Playwright. Он может делать снимки до и после, чтобы убедиться, что все в порядке. И он также использует сервер GitHub MCP, чтобы убедиться, что они могут как бы передавать отчеты обратно в наш репозиторий. >> Итак, он одновременно исправляет проблему. Он решает ее в конфигурации как коде. Он тестирует решение с помощью Playwright. >> и затем предоставляет вам полное исправление, >> верно? Все в одном месте, используя все те же инструменты, которые мы использовали как на фронтенде, так и на бэкенде. >> Супер круто, Шейн. Спасибо. >> Спасибо. >> Хорошо. Итак, Azure S agent действительно автоматизирует управление инцидентами и оптимизацию ресурсов, сокращает количество оповещений пейджера и проактивно диагностирует и смягчает проблемы, которые могут возникнуть в вашем коде. Он помогает автоматизировать развертывания и откаты, постоянно отслеживает работоспособность ресурсов и является невероятно ценным инструментом, помогающим вам внедрять платформенную инженерию во всей вашей команде. Теперь за 30 минут мы использовали естественные языковые спецификации и MCP для повышения производительности в начале. Мы включили несколько координирующих ИИ-агентов для выполнения сложных задач в наших приложениях. Мы отслеживали, трассировали, охраняли эти ИИ-системы в дикой природе и использовали ИИ для фактического управления нашим приложением в продакшене. Это действительно своего рода расцвет ИИ-агентов, и он вызывает значительный сдвиг в мышлении и рабочем процессе разработчиков. Традиционно разработка программного обеспечения фокусировалась на написании кода и управлении инфраструктурой. Теперь акцент делается на согласовании вашего человеческого намерения с этими автономными системами, и разработчики переходят от инженерии запросов к разработке на основе спецификаций, где у вас есть четкие, тестируемые спецификации, которые направляют поведение агента. В этом мире наиболее ценными разработчиками являются те, кто может действительно эффективно формулировать намерение и кто может позволить агентам выполнять эти задачи с точностью. Поскольку агенты берут на себя все эти рутинные задачи кодирования, которые являются монотонными и утомительными, это не та работа, которую вы любите делать, >> вы можете фактически переключить свое внимание на решение более высокоуровневых проблем, стратегию, >> веселые вещи, веселые аспекты вашей работы. И именно это действительно изменит роль разработчиков, >> сделав вас всех оркестраторами этих интеллектуальных систем, а не просто кодерами. Это не будущее, которое мы только что показали вам. Это все реально. Это сегодня. Так мы кодируем сейчас. Так что проверьте все это. Вернитесь, разверните своих новых агентов и вернитесь к радости творчества. И если вы хотите узнать больше, вот несколько дополнительных сессий, которые у нас будут на Universe в течение следующих нескольких дней. Спасибо. [Музыка]