Поделиться через


Краткое руководство: Использование режима Агент GitHub Copilot

Режим агента GitHub Copilot предоставляет контекстный интерфейс чата на основе действий в расширение MSSQL для Visual Studio Code. В режиме агента GitHub Copilot может выйти за рамки предложения кода— он может безопасно выполнять реальные задачи базы данных с помощью запросов естественного языка или встроенных средств. Вы можете перечислить все подключения, подключиться к определенным серверам или базам данных и изучить схемы, не выходя из редактора.

Tip

Вам не нужно упоминать участника, такого как @mssql, чтобы использовать средства SQL в режиме агента. После активного расширения MSSQL его средства автоматически доступны в интерфейсе режима агента. Дополнительные сведения см. в разделе "Средства режима агента".

Эти действия обеспечиваются средствами, разработанными расширением MSSQL и представлены непосредственно в Agent Mode GitHub Copilot. Дополнительные сведения о том, как работает режим агента, см. в документации Visual Studio Code о режиме агента.

Что такое режим агента?

Режим агента позволяет GitHub Copilot выйти за рамки предложения кода. Теперь он может выполнять безопасные, подтвержденные действия в среде разработки SQL, используя такие переменные чата, как #mssql_connectили естественные фразы:

Connect to my Library database using my LocalDev profile

Снимок экрана интерфейса режима агента GitHub Copilot.

Справочник по инструменту режима агента MSSQL

В этом разделе содержится подробная информация о средствах, специфичных для SQL, доступных в режиме агента GitHub Copilot. Расширение MSSQL предоставляет эти средства, позволяя GitHub Copilot выполнять действия с помощью переменных чата или запросов естественного языка. Все средства требуют подтверждения пользователя перед выполнением.

Снимок экрана – список инструментов, специфичных для SQL, внесенных расширением MSSQL в режиме агента Copilot.

Tip

Вы также можете использовать переменные чата, такие как #mssql_connect, чтобы напрямую вызвать эти средства или писать запросы на естественном языке, например, таким образом:

Connect to my development database

GitHub Copilot автоматически обрабатывает выбор инструмента.

Управление подключениями

Имя инструмента Description
connect Устанавливает подключение к базе данных с помощью сохраненного профиля подключения или указанной пары сервера или базы данных.
disconnect Завершает текущий активный сеанс подключения.
change_database Изменяет базу данных для существующего сеанса подключения.
get_connection_details Возвращает сведения о конкретном подключении MSSQL.
list_servers Выводит список всех сохраненных профилей подключений SQL Server в вашей среде.
list_databases Выводит список всех доступных баз данных для подключенного сервера MSSQL.

Examples

Следующие фразы можно использовать для взаимодействия с GitHub Copilot.

- Connect to my LocalDev environment
- Disconnect from my current database
- List my available connection profiles
- List all databases in the localhost server
- Set the active connection to localhost
- Set AdventureWorks as the active database
- Get the connection string for AdventureWorks on localhost

Снимок экрана: пример использования средства агента для подключения к базе данных в чате GitHub Copilot.

Принцип работы логики подключения

Режим агента GitHub Copilot поддерживает гибкие способы подключения к базе данных SQL, ссылаясь на сохраненные профили или указав сервер и базу данных напрямую. Вот как работает логика подключения:

При подключении через сохраненный профиль:

  1. Пользователь может подключиться, ссылаясь на имя сохраненного профиля подключения.
  2. GitHub Copilot использует mssql_list_servers средство для проверки наличия профиля.
  3. Затем средство mssql_connect использует сохраненные profileId и их параметры для установления соединения.

При подключении через спецификацию сервера или базы данных:

  • Если сохраненный профиль соответствует указанному серверу и базе данных:

    1. GitHub Copilot используется mssql_list_servers для поиска совпадения.
    2. Затем вызывает mssql_connect с использованием полного профиля.
  • Если сохраненный профиль соответствует только серверу:

    1. GitHub Copilot находит соответствующий профиль сервера.
    2. Он пытается подключиться, подставив запрошенную пользователем базу данных в этот профиль.
    3. Если соединение не удалось, отображается сообщение об ошибке.
  • Если профиль не соответствует указанному серверу:

    • GitHub Copilot сообщает об ошибке.

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

Исследование схемы

Имя инструмента Description
show_schema Отображает высокоуровневую схему схемы подключенной базы данных, включая таблицы и связи.
list_schemas Выводит список всех схем в базе данных для подключенного сервера MSSQL.
list_tables Выводит список всех таблиц в базе данных для подключенного сервера MSSQL.
list_views Выводит список всех представлений в базе данных для подключенного сервера MSSQL.
list_functions Перечисляет все функции в базе данных для подключенного сервера MSSQL.

Examples

Следующие фразы можно использовать для взаимодействия с GitHub Copilot.

- Show me the schema for this database
- Show me all tables in the current database
- List all views from this MSSQL database
- Give me a list of all the functions available in this schema
- What schemas are available in this database?

Снимок экрана: анимация, показывающая средство визуализатора схемы базы данных в режиме агента Copilot.

Выполнение запросов

Имя инструмента Description
run_query Выполняет SQL-запрос к подключенной базе данных.

Examples

Следующие фразы можно использовать для взаимодействия с GitHub Copilot.

- Give me the top five posts published this week
- Execute the current file to find how many comments each post has
- Get all categories along with the number of posts in each

Снимок экрана: пример использования средства агента для подключения к базе данных и получения данных.

Снимок экрана: другой пример использования средства агента для подключения к базе данных и получения данных.

Управление инструментами в режиме агента

GitHub Copilot может вызывать специфичные для MSSQL средства и другие инструменты, предоставленные расширением, при обработке вашего запроса. Эти средства отображаются в интерфейсе режима агента в меню "Сервис", где можно включить или отключить определенные инструменты.

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

Дополнительные сведения о видимости и утверждении инструментов см. в статье "Управление утверждениями инструментов".

Рабочий процесс подтверждения режима агента

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

  • Разрешить в этом сеансе
  • Разрешить в этой рабочей области
  • Всегда разрешать

Этот шаг подтверждения помогает обеспечить безопасное, преднамеренное взаимодействие с средой разработки.

Note

Дополнительные сведения о том, как подтверждение работает во всех средствах в режиме агента, см. в документации по Visual Studio Code по утверждениям инструментов.