📱

Get Our Mobile App

Take your business learning on the go!

Download on the App StoreGet it on Google Play

Build apps & agents that scale with VS Code, GitHub Copilot, and Agent Framework

GitHub31:11

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 — это отличный способ просто определить, что мы хотим создать в приложении или функции. И одной из последних функций, которую мы здесь имеем, является то, что при запуске SpecKit мы получаем эти отличные маленькие быстрые клики, чтобы получить то, что нам нужно. Теперь, с чего я хочу начать, это с конституции, которая является своего рода нашими руководящими принципами относительно того, что мы хотим встроить в наше приложение, и этих руководящих указаний для того, что мы строим. >> Так это вроде ваших лучших практик, но вы также можете поделиться ими с командой. Да, мне это нравится, потому что это своего рода шаблон, но он также снова устанавливает принципы того, что мы пытаемся построить, без необходимости помещать много всего в наш запрос, верно? Итак, я хочу убедиться, что мы в конечном итоге развернем это в Azure. Поэтому я устанавливаю здесь просто некоторые руководящие принципы. Итак, прямо с самого начала, вы заметите, что я буду использовать Azure CLI. Я буду использовать Azure MCP и убедиться, что я получаю лучшие практики для кодогенерации вокруг тех компонентов, которые я могу использовать, когда запрос будет помещен в SpecKit. Я также убеждаюсь, что если у меня есть что-то, управляемое агентом, какие-либо модели, которые я хочу использовать, я использую Azure AI Toolkit MCP Tools и получаю лучшую кодогенерацию. >> Теперь SpecKit не специфичен для Azure. Нет, если бы я использовал другое облако, я мог бы фактически указать, что я хочу сделать. >> Конечно. Вы можете просто, если у вас есть какие-либо инструменты MCV, которые вы хотите использовать, я могу просто поместить их прямо сюда, в мой файл конституции, и убедиться, что при запуске моего запроса они будут вызваны. И я добавлю сюда и другие вещи. Я буду использовать Aspire, другие принципы, которые я хочу убедиться, что они будут вызваны. Итак, когда я запущу фактическую команду specify с моим запросом "Я хочу это приложение в стиле Airbnb для Octopets", убедитесь, что вы следуете этим вещам. Теперь мы уже сделали это. Очевидно, у нас есть ограничения по времени, мы хотим убедиться, что мы делаем это быстро, что мы уже получим наши пользовательские истории, сгенерированные командой specify, что отлично. Так что это действительно круто. Убедитесь, что он генерирует все наши пользовательские истории, которые мы ищем, на основе нашего запроса "дайте мне приложение в стиле Airbnb для наших питомцев". >> Действительно здорово. >> Так оно как бы расширилось из вашего единого запроса в пользовательские истории, а затем вы работаете оттуда. >> Да. Я имею в виду, я мог бы пойти в кафе-бутербродную и сказать: "Дайте мне саб". >> И надеяться, что я получу саб. Или я могу сказать: "Вот все, что я хочу". Я получу гораздо лучший результат. Верно? Та же идея. >> Теперь следующее, что я могу сделать, это я собираюсь сделать план прямо здесь, где при планировании я мог бы фактически указать: "Я хочу использовать Azure MCP. Я хочу использовать Aspire или, возможно, я хочу использовать React и добавить это сюда тоже". Но поскольку я уже добавил это, я могу просто сказать: "Следуйте моим инструкциям, которые я дал в конституции, дайте мне результаты, верно?" И именно это он и сделал. Итак, когда я смотрю на фактический план, который выполняется, позвольте мне перейти и посмотреть на результаты здесь. Мы сделали сводку плана. Вы можете видеть, что мы идем к вершине, он спланировал все. Дал нам обзор функций, техническое содержание. У него было несколько вещей, по которым ему требовались ключевые решения. Мы добавили это, что очень хорошо. и он сгенерировал все файлы, которые нам были нужны, с точки зрения нашего плана исследований. Теперь, что было интересно здесь, это когда мы смотрим на файл исследований, и если я могу просто открыть предварительный просмотр здесь, давайте сделаем это немного больше. Мы видим, что он фактически следовал этим инструментам MCP, которые мы рассматривали, и дал нам рекомендации по моделям, потому что мы знаем, что будем использовать агентов для, возможно, функции чата или других рекомендаций, и он говорит: "Смотрите, используйте GPT4 mini", что отлично. он дал нам несколько вариантов относительно того, что мы будем делать, если мы собираемся поместить это в Azure AI Foundry для продакшена, а также дал нам некоторые альтернативные соображения. Итак, он вызвал эти инструменты MCP, как мы и ожидали, по мере генерации нашего плана. >> Теперь последнее, что мы хотим сделать, это превратить этот план, эти исследования и эту спецификацию в отдельные задачи. Итак, когда я запущу режим задач, он учтет все эти вещи и сгенерирует отдельные шаги, которые нам нужно фактически выполнить для Specified. Верно? Итак, когда мы запускаем задачи, он скажет: "Смотрите, я прочитаю все, что мы сгенерировали в рамках наших запросов, что очень хорошо". И затем мы прокрутим вниз, и он разбил отдельные фазы, которые у нас есть. Теперь, если я хочу посмотреть фактические задачи, которые были созданы, опять же, это просто много отдельных шагов всего, что нужно сделать. Вот мой фронтенд и все такое. >> Это >> это много ручной утомительной работы, которую вам нужно сделать, чтобы выполнить всю эту работу, верно? >> Да. >> Итак, что я фактически сделал, это я воспользовался другим 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 Toolkits, и мы можем взглянуть на этот код, который Copilot сгенерировал для нас. Мы используем новый Microsoft Agent Framework, который позволяет нам писать одного агента или оркестрировать несколько агентов очень, очень легко. Здесь ниже мы видим определение моего агента. Здесь мои системные инструкции и список инструментов, которые Copilot создал для меня. Я даже попросил Copilot включить трассировку для моих локальных запусков, чтобы мы могли наблюдать, как именно работает наш агент. Итак, с этим давайте включим локальный сборщик трассировки. Хорошо. Хорошо. Позвольте мне поднять это, чтобы мы могли запустить этого агента. >> Ваша мышь. Вот так. >> И протестировать. >> Хорошо. >> Или без трассировки. Но мы можем по крайней мере протестировать. Да. >> Вот так. >> Итак, наш агент работает. Давайте поищем ситера для собак в районе Сан-Франциско. И здесь происходит то, что наш агент делает вызов конечной точки модели, которую я имею в Foundry, и он будет искать правильный инструмент для вызова, а затем вернется с правильной информацией о наших ситерах в этом районе. Отлично. А тем временем мы только что получили трассировку, которая была собрана как часть нашего запуска. И мы видим вызов модели к модели GPD40, 41 модели и вызов инструмента, как и ожидалось. Отлично. Итак, теперь у нас есть один агент, созданный, и я сделал то же самое для другого агента для рекомендаций мест для домашних животных. Теперь я хотел масштабироваться. Я хочу оркестрировать обоих агентов в рабочий процесс. Итак, снова я возвращаюсь к Copilot, чтобы помочь мне с этим. Итак, Copilot может не только создавать отдельных агентов, но и оркестрировать нескольких агентов. Поднимитесь наверх этого. И это запрос, который я отправил Copilot. И, позвольте мне запустить этот визуализатор. Хорошо. Давайте запустим рабочий процесс. Теперь мы запускаем агент листинга и агент установки, оба на моей локальной машине. И затем запускается рабочий процесс. Мы тестируем несколько пользовательских запросов. Мы видим, что каждый агент, иногда оба агента будут вызваны как часть этого рабочего процесса. Понятно. И если мы посмотрим на этот код, сгенерированный Copilot, он также использует Microsoft Agent Framework. Но на этот раз вместо одного агента он использует конструктор рабочих процессов, чтобы мы могли оркестрировать несколько агентов вместе. Хорошо. Итак, теперь мы проверили несколько пользовательских запросов. Смотрите, все выглядит хорошо. Но мы хотим провести более широкую оценку качества ответов агента. Так что, возможно, хорошей идеей будет ввести оценку. >> Да. Оценки похожи на модульные тесты, но для стохастических процессов. Верно? Верно. Так что я могу фактически проверить производительность, чтобы увидеть, делает ли агент то, что я от него ожидаю. >> Верно? Верно. Точно. Итак, снова возвращаясь к 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. Теперь она также показала вам Agent Framework, набор инструментов с открытым исходным кодом для создания, подключения и улучшения ИИ-агентов. И он действительно сочетает лучшее из 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, но он помечает его как созданный агентом SR. Так что мы знаем, что это было фактически автоматизировано. Так что это здорово. Итак, теперь он даст нам, что он нашел? >> Какие ошибки у нас здесь происходят? Это приятно и подробно, более подробно, чем, вероятно, мой агент мог бы написать: "Есть проблема". Так что у нас есть хорошие предложенные исправления кода, некоторые отклонения ИИ, что отлично. Итак, что я собираюсь сделать, это посмотреть эту проблему, некоторые другие проблемы, которые у нас есть. И что бы я хотел сделать, что бы вы сделали? Я бы назначил это Copilot. >> Прямо сейчас у нас также назначены некоторые пользовательские агенты. И я создал агент последующих действий SR. >> О, отлично. >> Верно. И что это значит, это то, что я сказал ему в моих пользовательских инструкциях: "Просто займись тем, что было подано, не пытайся исправить какую-то проблему с CSS, которая, вероятно, существует, но просто сосредоточься на том, что было сообщено здесь". И я собираюсь назначить это Copilot. Он собирается сделать свою работу, что отлично. Это именно то, что я хотел сделать, а затем посмотреть, сможет ли он найти проблемы. Теперь я собираюсь посмотреть на одну, которую мы сделали в прошлом, когда настраивали все это, и она создаст наш pull request. Так что мы посмотрим на одну из них, и давайте посмотрим на эту здесь. И вы увидите, что он действительно нашел некоторые проблемы здесь. Смотрите, у нас есть это прямо здесь. Это самая крутая вещь. Хорошо. >> Мы не хотели, мы хотели идти вперед. >> Ой. >> У нас здесь небольшие проблемы с зумом. Извините, ребята. >> Вернемся сюда. Итак, что у нас здесь есть, это то, что он сказал, у нас есть минимальные и максимальные реплики. Они установлены на три и пятую. Так что мы можем масштабироваться. Если вы использовали мое приложение OC, наш Octopets, иногда, когда мы нажимаем на него, оно говорит, что у него проблемы с загрузкой. Так что у нас были проблемы с масштабированием. Это было ранее не установлено. Оно было только до одного, верно? Так что он исправил это. И он также нашел исправления кода. Он выделял некоторые проблемы с памятью, что очень круто. >> Теперь более крутая часть — это перейти к просмотру сеанса. Мы можем фактически увидеть, что Copilot фактически делал здесь. Он загрузит фактическую работу. Вы увидите здесь, что он внес эти изменения в нашу конфигурацию. Он сделает это как предложение. Мы посмотрим на фактические детали здесь. Прокрутите до верха. Волшебство. Он использует наш сервер Azure MCP, который у нас настроен. Он также использует Playwright. Он может делать снимки до и после, чтобы убедиться, что все в порядке. И он также использует сервер GitHub MCP, чтобы убедиться, что они могут передавать отчеты обратно в наш репозиторий. >> Так что он одновременно исправляет проблему. Он решает ее в конфигурации как коде. Он тестирует решение с помощью Playwright. и затем дает вам полное исправление, >> верно? Все в одном месте, используя те же инструменты, которые мы использовали как на фронтенде, так и на бэкенде. >> Супер круто, Шейн. Спасибо. >> Спасибо. >> Хорошо. Итак, Azure S Agent действительно автоматизирует управление инцидентами и оптимизацию ресурсов, сокращает количество оповещений пейджера и проактивно диагностирует и смягчает проблемы, которые могут возникнуть в вашем коде. Он помогает вам автоматизировать развертывания и откаты, а также постоянно отслеживает работоспособность ресурсов и является невероятно ценным инструментом, помогающим вам управлять платформенной инженерией во всей вашей команде. Итак, за 30 минут мы использовали естественные языковые спецификации в MCP для повышения производительности в начале. Мы включили несколько координирующих ИИ-агентов для выполнения сложных задач в наших приложениях. Мы отслеживали, трассировали, охраняли эти ИИ-системы в дикой природе и использовали ИИ для управления нашим собственным приложением в продакшене. Это действительно рассвет ИИ-агентов, и он вызывает значительный сдвиг в мышлении и рабочем процессе разработчиков. Традиционно разработка программного обеспечения фокусировалась на написании кода и управлении инфраструктурой. Теперь акцент делается на согласовании вашего человеческого намерения с этими автономными системами, и разработчики переходят от инженерии запросов к разработке на основе спецификаций, где у вас есть четкие, тестируемые спецификации, которые направляют поведение агента. В этом мире наиболее ценными разработчиками являются те, кто может действительно эффективно формулировать намерение и кто может позволить агентам выполнять эти задачи с точностью. Поскольку агенты берут на себя все эти рутинные задачи кодирования, которые являются обыденными и утомительными, это не та работа, которую вы любите делать, вы можете фактически переключить свое внимание на решение более высокоуровневых проблем, стратегию, веселые аспекты вашей работы. И именно это изменит роль разработчиков, сделав вас всех оркестраторами этих интеллектуальных систем, а не просто кодерами. Это не будущее, которое мы только что показали вам. Это все реально. Это сегодня. Так мы кодируем сейчас. Так что проверьте все это. Вернитесь, разверните своих новых агентов и вернитесь к радости создания. И если вы хотите узнать больше, вот несколько дополнительных сессий, которые у нас будут на Universe в течение следующих нескольких дней. Спасибо. [Музыка]