Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Используйте GitHub Copilot в Visual Studio Code вместе с Microsoft Sentinel для создания, изменения и выполнения запросов к пользовательским графам безопасности с помощью Jupyter Notebook. Опишите, что вы хотите создать на естественном языке, просмотрите созданную записную книжку и доработайте ее по мере необходимости.
Используйте Copilot для различных задач разработки графов, в том числе:
- Создать полноценный блокнот для создания графов по описанию
- Изменение или отладка существующего графа
- Понять сгенерированный код графа
- Пишите и выполняйте графовые запросы
Как работает помощь ИИ для настраиваемых графиков
При работе в Jupyter Notebook, подключенной к Microsoft Sentinel, GitHub Copilot может помочь с задачами построения графов с помощью инструкций на естественном языке.
Используйте следующий рабочий процесс для взаимодействия с Copilot для создания графов:
- Опишите граф или изменение, которое вы хотите внести.
- Copilot создает или обновляет код, связанный с графами.
- Вы проверяете, запускаете и итеративно дорабатываете результаты.
В сценариях, зависящих от графа, Microsoft Sentinel предоставляет дополнительные вспомогательные средства, которые предоставляют Copilot дополнительный контекст об API графа, схемах и рабочей области. Эти помощники повышают точность и согласованность, но не требуются для использования помощи Copilot.
Предварительные условия
Перед началом убедитесь, что у вас есть:
- Расширение Microsoft Sentinel для Visual Studio Code установлено, вход выполнен. Дополнительные сведения см. в статье Запуск записных книжек в озере данных Microsoft Sentinel.
- Расширение Jupyter для Visual Studio Code установлено. Скачайте из VS Code Extensions Marketplace.
- GitHub Copilot установлен и включен. Дополнительные сведения см. в разделе расширение GitHub Copilot.
- план GitHub Copilot Business или Copilot Enterprise, см. планы GitHub Copilot
- Озеро данных Microsoft Sentinel, настроенное с соответствующими разрешениями. Дополнительные сведения см. в разделе Подключение к озеру данных Microsoft Sentinel.
Создание и изменение пользовательского графа с помощью Copilot
Выполните следующие действия, чтобы создать новый граф или изменить существующий с помощью GitHub Copilot.
Откройте существующую записную книжку Jupyter (
.ipynb) или разрешите Copilot создать ее.Откройте чат GitHub Copilot (CTRL+SHIFT+I в Windows, Cmd+SHIFT+I в macOS).
Опишите граф, который требуется создать.
Для получения наилучших результатов при создании или изменении полного графа используйте помощник по созданию графов Sentinel, включив @sentinel /graph-authoring в запрос. Это дает Copilot дополнительный контекст об API Graph, схемах и рекомендуемых методах их использования.
@sentinel /graph-authoring Create a graph that maps email senders to recipients and URLs using EmailEvents
Помощник создает полную записную книжку, которая соответствует стандартному жизненному циклу разработки графа:
| Шаг | Описание |
|---|---|
| Настройка среды | Проверяет необходимые пакеты и сведения о подключении |
| Загрузка данных | Читает таблицы из озера данных Sentinel |
| Преобразование данных | Подготавливает данные узлов и рёбер |
| Схема графа | Определяет узлы и ребра |
| Проверка схемы | Проверяет определение графа |
| Сборка графа | Материализует граф |
| Графовый запрос | Выполняет запросы к графу |
Уточнение графа
После создания графа можно продолжить беседу, чтобы уточнить ее, например:
@sentinel Add an edge from User to IPAddress
@sentinel Filter the data to show only failed sign-ins
Изменение или отладка существующего графа
Попросите Copilot обновить или исправить определенные части записной книжки. Например, можно изменить фильтры, настроить столбцы или устранить ошибки сборки:
@sentinel Change the time range to the last 7 days
Следующий запрос предлагает Copilot изменить определённую ячейку блокнота, добавив поле в результат:
@sentinel Update cell 3 to include the Subject column
В следующем запросе Copilot предлагается выполнить диагностику и устранить сбой на этапе построения графа:
@sentinel Fix the error in the graph build step
Обновляются только затронутые ячейки. Другие ячейки остаются без изменений.
Изучение кода графов и запросов
Задавайте вопросы о созданном коде, не изменяя записную книжку. Например, следующий запрос просит Copilot объяснить назначение конкретного вспомогательного метода Graph API:
@sentinel What does show_schema() do?
В следующем запросе Copilot просят разъяснить, как моделируются ключи рёбер в схемах графов Sentinel:
@sentinel Explain how edge keys are defined
Следующий запрос предлагает Copilot объяснить логику графового запроса шаг за шагом:
@sentinel How does this graph query work?
Найдите API Graph и примеры
Если вам нужна помощь с API графа Sentinel, параметрами метода или примерами запросов, вы можете обратиться к Copilot за пояснениями. Чтобы получать более точные ответы с учётом Sentinel, включите в запрос вспомогательный элемент справки #Sentinel. Например, следующий запрос просит Copilot предоставить справочные сведения о сигнатуре метода build_graph_with_data():
What parameters does build_graph_with_data() accept? #sentinel
В следующем примере Copilot предлагается создать запрос на обход графа между двумя типами сущностей:
Write a graph query to find all paths between User and IPAddress #sentinel
Этот вспомогательный модуль предоставляет Copilot авторитетную документацию по API графа Sentinel. Справочный помощник #sentinel не изменяет ваш блокнот.
Выбор способа взаимодействия с Copilot
Используйте следующую таблицу, чтобы выбрать оптимальный способ взаимодействия с Copilot в зависимости от вашей цели:
| Что вы хотите сделать | Рекомендуемый подход |
|---|---|
| Создайте или измените блокнот графа | Опишите свою цель (используйте @sentinel для достижения наилучших результатов) |
| Исправление или отладка ошибки графа | Опишите проблему (используйте @sentinel) |
| Спросите о API-интерфейсах графа или параметрах | Задайте вопрос (включая #sentinel) |
| Задать общий вопрос | Обычный запрос Copilot |
Ключевые понятия
Следующие понятия важны для понимания при использовании разработки графов с поддержкой искусственного интеллекта.
Доступность рабочей области и таблиц
Помощник с ИИ использует таблицы, которые отображаются в хранилище данных Sentinel. В созданном коде используются только таблицы, к которым у вас есть доступ.
Важно!
Если таблица не отображается в обозревателе озера данных, её нельзя использовать для создания графов.
Изменения в ноутбуке
При изменении записной книжки обновляются только ячейки, которые необходимо изменить. Изменения можно отменить с помощью стандартных команд отмены редактора.
Устранение неполадок
В следующей таблице перечислены распространенные проблемы и способы их устранения.
| Проблема | Решение |
|---|---|
| Записная книжка не открыта | Откройте или создайте .ipynb файл перед началом разработки графов. |
| Таблицы отсутствуют | Убедитесь, что ваше озеро данных Sentinel подключено и ожидаемые таблицы отображаются в обозревателе озера данных. |
| Отсутствуют необходимые пакеты | Убедитесь, что ваш блокнот подключён к поддерживаемому пулу вычислений Spark Sentinel. |
| Непредвиденная ячейка была изменена | Отмените изменение и повторите запрос, указав номер ячейки. |