Создание кода с помощью чата GitHub Copilot

Завершено

Расширение чата GitHub Copilot для Visual Studio Code поддерживает следующие интерфейсы чата:

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

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

  • Интерфейс встроенного чата открывается непосредственно в редакторе для контекстного взаимодействия при написании кода.

В представлении чата и окне Quick Chat можно вести интерактивные диалоги с ИИ, состоящие из нескольких этапов. Оба этих интерфейса позволяют задавать вопросы, получать помощь с проблемой кодирования и создавать код. Представление чата — это более функциональный интерфейс, который обеспечивает полноценное общение, а окно быстрого чата предназначено для быстрого взаимодействия.

Интерфейс встроенного чата предназначен для предоставления контекстной помощи и предложений по коду в процессе кодирования. Встроенный интерфейс чата доступен в редакторе, и он позволяет задавать вопросы и получать справку по определенным фрагментам кода.

Создание кода с помощью представления чата

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

По умолчанию окно чата находится в дополнительной боковой панели справа от окна Visual Studio Code.

Представление чата поддерживает три встроенных агента: Ask, Plan и Agent. Агент можно выбрать из средства выбора агента в режиме чата.

Создание кода с помощью агента Ask

Агент Ask предназначен для анализа кода и изучения параметров новых функций перед предложением реализации кода. При использовании агента Ask GitHub Copilot выступает в качестве помощника по беседе, который может предоставить ответы на ваши вопросы и помочь вам с проблемами кодирования или новыми функциями.

  1. Откройте окно чата и выберите "Запрос" из меню выбора агента.

  2. Добавьте контекст в чат.

    Агент Ask поддерживает участников чата, slash-команды и переменные чата. Вы можете добавить участника чата @workspace или #codebase в чат, чтобы предоставить контекст вместе с файлами или папками.

  3. Вопросы, которые помогут оценить новую функцию, которую вы хотите реализовать.

    Например, вы можете попросить GitHub Copilot помочь вам понять, как реализовать новую функцию или как использовать определенную библиотеку.

    • Как добавить страницу входа?
    • Каковы рекомендации по использованию React?
    • Как использовать библиотеку @mui/material ?
  4. Создайте запрос, описывающий компонент кода, который требуется реализовать.

    Запрос должен содержать описание функции кода, которую вы хотите реализовать. Рассмотрим пример.

    Create the code to obtain a book title. Prompt the user to "Enter a book title to search for". Read the user input and ensure the book title isn't null.
    
  5. Просмотрите предлагаемый код в представлении чата.

    Ответ, отображаемый в представлении чата, должен содержать фрагмент кода, который можно использовать для реализации функции. Вы можете ввести дополнительные запросы на уточнение кода или запросить дополнительные сведения.

  6. Чтобы реализовать предлагаемый код, можно навести указатель мыши на фрагмент кода, а затем выбрать между параметрами "Применить", "Вставить" и " Копировать ".

    • Применить: применяет предложение кода к текущему файлу в редакторе.
    • Вставка: вставляет предложение кода в текущее положение курсора в редакторе.
    • Копировать: копирует предложение кода в буфер обмена.

    Снимок экрана: представление чата с агентом Ask, предлагающим обновление кода.

  7. При необходимости продолжайте проводить итерации и улучшайте функцию с новыми запросами.

Используйте агента планирования для планирования перед написанием кода

Агент плана предназначен для изучения и планирования задачи перед написанием кода. При использовании агента плана GitHub Copilot анализирует базу кода, задает уточняющие вопросы и создает структурированный пошаговый план реализации. После завершения плана его можно передать агенту реализации.

  1. Откройте представление чата и выберите План из селектора агента.

  2. Добавьте контекст в чат.

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

  3. Создайте запрос, описывающий задачу, которую вы хотите запланировать.

    Запрос должен содержать описание функции или задачи, которую вы хотите реализовать. Рассмотрим пример.

    
    Implement a user authentication system with OAuth2 and JWT.
    
    
  4. Ответьте на все уточняющие вопросы, задаваемые агентом плана.

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

  5. Просмотрите предлагаемый план.

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

  6. После завершения плана используйте кнопки для запуска реализации или открытия плана в редакторе для дальнейшего просмотра.

    Вы можете реализовать план в одном сеансе чата или запустить фоновый или облачный сеанс агента для автономной работы над реализацией.

Создание кода с помощью агента

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

Это важно

При использовании режима агента GitHub Copilot может выполнять несколько запросов уровня "Премиум" для выполнения одной задачи. Премиальные запросы могут использоваться для запросов, инициированных пользователем, и последующих действий, выполняемых GitHub Copilot от вашего имени. Общий объем запросов уровня "Премиум", используемых, зависит от сложности задачи, количества выполняемых шагов и выбранной модели.

  1. Откройте представление чата и выберите агент из средства выбора агента.

  2. Создайте запрос, описывающий задачу, которую требуется выполнить GitHub Copilot.

    Например, можно попросить GitHub Copilot создать новую функцию или создать совершенно новое приложение.

    • Создание веб-приложения для планирования еды с помощью React и Node.js
    • Добавление функций общего доступа к социальным сетям
    • Замена текущей проверки подлинности на OAuth
  3. Агент может вызывать несколько средств для выполнения различных задач. При необходимости выберите значок "Сервис", чтобы настроить средства, которые можно использовать для реагирования на запрос.

  4. Подтвердите вызовы инструментов и команды терминала.

    Прежде чем GitHub Copilot запускает команду терминала или средство, которое не встроено, оно запрашивает подтверждение продолжения. GitHub Copilot запрашивает подтверждение, так как средства могут выполняться локально на компьютере и выполнять действия, изменяющие файлы или данные.

  5. GitHub Copilot обнаруживает ошибки и проблемы в изменениях кода и командах терминала и повторяет и выполняет действия для их устранения.

  6. Как GitHub Copilot обрабатывает запрос, он передает предлагаемые изменения кода непосредственно в редакторе.

  7. Просмотрите предложенные изменения и примите или отмените предложенные изменения.

  8. При необходимости продолжайте проводить итерации и улучшайте функцию с новыми запросами.

Создание кода с помощью встроенного сеанса чата

Встроенный сеанс чата можно использовать для анализа и создания кода. Встроенный интерфейс чата доступен только при открытии файла в редакторе кода. Его можно использовать для анализа выбранного кода или создания нового кода на основе запроса.

  1. Откройте файл в редакторе.

  2. Откройте встроенный сеанс чата с помощью сочетания клавиш CTRL+I или выберите "Открыть встроенный чат " в меню чата в строке заголовка.

    Сеанс встроенного чата открывается на позиции курсора в редакторе.

  3. Выберите блок кода в редакторе.

    Выбранный код используется в качестве контекста для запроса. Если код не выбран, запрос использует весь файл в качестве контекста.

  4. Введите запрос в поле ввода чата.

    Рассмотрим пример.

    Update selection to include an option for the `CommonActions.SearchBooks` action. Use the letter "b" and the message "to check for book availability".
    
  5. Предложения по обновлению кода отображаются в редакторе в виде диффа.

  6. Просмотрите предлагаемые обновления кода, а затем примите или отмените изменения.

    Снимок экрана: встроенный код обновления сеанса чата.

  7. При необходимости продолжайте проводить итерации и улучшайте функцию с новыми запросами.

Сводка

GitHub Copilot Чат предоставляет мощный набор средств для создания кода и помощи в выполнении задач программирования. Представление чата, окно быстрого чата и встроенный сеанс чата предлагают различные способы взаимодействия с помощником по программированию ИИ для получения помощи в решении проблем с кодированием. С помощью этих средств вы можете повысить производительность и эффективность написания кода.