Начало работы с потоком запросов
В этой статье описывается основное взаимодействие пользователя с использованием потока запросов в Студия машинного обучения Azure. Вы узнаете, как включить поток запроса в рабочей области Машинное обучение Azure, создать и разработать первый поток запросов, тестировать и оценить его, а затем развернуть его в рабочей среде.
Необходимые компоненты
Убедитесь, что хранилище данных по умолчанию в рабочей области является типом BLOB-объектов.
Если вы защищаете поток запросов с помощью виртуальной сети, следуйте инструкциям по изоляции сети в потоке запросов, чтобы узнать больше.
Настройка подключения
Сначала необходимо настроить подключение.
Подключение помогает безопасно хранить секретные ключи или другие конфиденциальные учетные данные, необходимые для взаимодействия с LLM (крупные языковые модели) и другими внешними средствами, например безопасность содержимого Azure.
Перейдите на домашнюю страницу потока запроса, выберите вкладку "Подключения ". Подключение — это общий ресурс для всех участников рабочей области. Таким образом, если вы уже видите подключение, поставщиком которого является AzureOpenAI, можно пропустить этот шаг, перейдите к началу сеанса вычислений.
Если вы еще не подключены к AzureOpenAI, нажмите кнопку "Создать ", а затем в раскрывающемся списке AzureOpenAI .
Затем появится правая панель. Здесь необходимо выбрать подписку и имя ресурса, указать имя подключения, ключ API (если тип проверки подлинности равен ключу API), базовый API, тип API и версия API перед нажатием кнопки "Сохранить ". Поток запросов также поддерживает идентификатор Microsoft Entra в качестве типа проверки подлинности для проверки подлинности на основе удостоверений для ресурса Azure OpenAI. Узнайте больше о настройке Службы Azure OpenAI с управляемыми удостоверениями.
Чтобы получить ключ API, базовый, тип и версию, перейдите на площадку чата на портале Azure OpenAI и нажмите кнопку "Просмотреть код ". Здесь можно скопировать необходимые сведения и вставить его в панель создания подключения.
После ввода обязательных полей нажмите кнопку "Сохранить ", чтобы создать подключение.
Создание и разработка потока запроса
На вкладке "Потоки " домашней страницы потока запроса выберите "Создать ", чтобы создать первый поток запроса. Вы можете создать поток, клонируя примеры в коллекции.
Клонирование из примера
Встроенные примеры отображаются в коллекции.
В этом руководстве мы используем пример веб-классификации для прохождения основного пути пользователя. Чтобы просмотреть пример, можно выбрать представление сведений о плитке "Классификация веб-сайтов". Затем откроется окно предварительного просмотра. Вы можете просмотреть пример введение, чтобы узнать, похож ли пример на ваш сценарий. Кроме того, можно выбрать Клонировать, чтобы клонировать пример непосредственно, а затем проверить поток. Проверьте его, измените его.
После выбора клонирования создается новый поток и сохраняется в определенной папке в хранилище общей папки рабочей области. Имя папки можно настроить в соответствии с вашими предпочтениями на правой панели.
Запуск сеанса вычислений
Затем введите страницу разработки потока. Прежде чем изучить, сначала запустите сеанс вычислений.
Сеанс вычислений служит вычислительными ресурсами, необходимыми для запуска приложения, включая образ Docker, содержащий все необходимые пакеты зависимостей. Это должен быть для выполнения потока.
Страница разработки потока
При запуске сеанса вычислений можно просмотреть страницу разработки потока.
В левой части страницы разработки это неструктурированное представление, основная рабочая область, в которой можно создать поток, например добавить новый узел, изменить запрос, выбрать входные данные потока и т. д.
В правом верхнем углу показана структура папок потока. Каждый поток содержит папку, содержащую файл flow.dag.yaml, файлы исходного кода и системные папки. Вы можете легко экспортировать или импортировать поток для тестирования, развертывания или совместной работы.
Помимо встроенного редактирования узла в режиме неструктурированного режима, можно также включить переключатель режима необработанного файла и выбрать имя файла, чтобы изменить файл на вкладке открываемого файла.
В правом нижнем углу это только представление графа для визуализации. Вы можете увеличить масштаб, увеличить масштаб, автоматический макет и т. д.
В этом руководстве мы используем пример веб-классификации для прохождения основного пути пользователя. Веб-классификация — это поток, демонстрирующий классификацию нескольких классов с помощью LLM. При указании URL-адреса он классифицирует URL-адрес в веб-категорию с несколькими выстрелами, простыми запросами суммирования и классификации. Например, если задано значение "https://www.imdb.com/", он классифицирует этот URL-адрес в "Movie".
В представлении графа можно увидеть, как выглядит пример потока. Входные данные — это URL-адрес для классификации, затем он использует скрипт Python для получения текстового содержимого из URL-адреса, используйте LLM для суммирования текстового содержимого в пределах 100 слов, а затем классифицировать на основе URL-адреса и суммированного текстового содержимого, а затем использовать скрипт Python для преобразования выходных данных LLM в словарь. Узел prepare_examples заключается в том, чтобы передать примеры с несколькими выстрелами в запросе узла классификации.
Входные данные потока
При развертывании раздела "Входные данные" можно создавать и просматривать входные данные. Для примера веб-классификации, как показано на снимке экрана ниже, входные данные потока — это URL-адрес типа строки.
Входная схема (имя: URL-адрес; тип: строка) и значение уже задаются при клонирование примеров. Можно изменить другое значение вручную, например "https://www.imdb.com/".
Настройка узлов LLM
Для каждого узла LLM необходимо выбрать подключение, чтобы задать ключи API LLM.
В этом примере убедитесь, что тип API является чатом , так как в примере запроса мы предоставляем API чата. Сведения о различиях формата запроса в API чата и завершения см. в статье "Разработка потока".
Затем в зависимости от выбранного типа подключения необходимо выбрать развертывание или модель. Если вы используете подключение Azure OpenAI, необходимо выбрать развертывание в раскрывающемся списке (если у вас нет развертывания, создайте его на портале Azure OpenAI, выполнив инструкции по созданию ресурса и развертыванию модели с помощью Azure OpenAI). Если вы используете подключение OpenAI, необходимо выбрать модель.
В потоке есть два узла LLM (summarize_text_content и classify_with_llm), поэтому необходимо настроить для каждого из них соответственно.
Запуск одного узла
Чтобы протестировать и отладить один узел, щелкните значок запуска на узле в неструктурированном представлении. Состояние выполнения отображается в верхней части окна после завершения, проверьте выходные данные в разделе выходных данных узла.
Запустите fetch_text_content_from_url затем summarize_text_content, проверьте, может ли поток успешно получить содержимое из Интернета и суммировать веб-содержимое.
Состояние одного узла также отображается в представлении графа. Можно также изменить URL-адрес ввода потока, чтобы проверить поведение узла для различных URL-адресов.
Запуск всего потока
Чтобы проверить и отладить весь поток, нажмите кнопку "Выполнить " в правом верхнем углу.
Затем можно проверить состояние выполнения и выходные данные каждого узла. Состояния узла также отображаются в представлении графа. Аналогичным образом можно изменить URL-адрес входных данных потока, чтобы проверить поведение потока для разных URL-адресов.
Установка и проверка выходных данных потока
Вместо проверки выходных данных на каждом узле можно также задать выходные данные потока и проверить выходные данные нескольких узлов в одном месте. Кроме того, выходные данные потока помогают:
- Проверка результатов массового тестирования в одной таблице
- Определение сопоставления интерфейса оценки
- Настройка схемы ответа развертывания
При клонировании примера выходные данные потока (категория и доказательства) уже заданы.
Нажмите кнопку "Просмотреть трассировку" в баннере, чтобы просмотреть подробные входные данные, выходные данные, выполнение потока и оркестрацию. Вы увидите, что поток прогнозирует входной URL-адрес с категорией и доказательствами.
Вы можете выбрать просмотр результатов теста, чтобы проверить все исторические тесты в списке.
Тестирование и оценка
После успешного выполнения потока с одной строкой данных может потребоваться проверить, хорошо ли он работает в большом наборе данных, можно выполнить массовый тест и выбрать некоторые методы оценки, а затем проверить метрики.
Подготовка данных
Сначала необходимо подготовить тестовые данные. Теперь мы поддерживаем csv-файл, tsv и jsonl.
Перейдите в GitHub , чтобы скачать "data.csv", золотой набор данных для примера веб-классификации.
Вычислить
Нажмите кнопку " Оценка " рядом с кнопкой "Запустить", а затем появится правая панель. Это мастер, который поможет отправить пакетный запуск и выбрать метод оценки (необязательно).
Необходимо задать имя пакетного запуска, описание и выбрать команду "Добавить новые данные" для отправки загруженных данных . После отправки данных или если коллеги в рабочей области уже создали набор данных, можно выбрать набор данных из раскрывающегося списка и предварительного просмотра первых пяти строк. Раскрывающийся список выбора набора данных поддерживает поиск и автозаполнение.
Кроме того, сопоставление входных данных поддерживает сопоставление входных данных потока с определенным столбцом данных в наборе данных, что означает, что можно использовать любой столбец в качестве входных данных, даже если имена столбцов не совпадают.
Затем выберите один или несколько методов оценки. Методы оценки также представляют собой потоки, использующие Python или LLM и т. д., для вычисления метрик, таких как точность, оценка релевантности. Встроенные потоки оценки и настраиваемые потоки перечислены на странице. Так как веб-классификация является сценарием классификации, она подходит для выбора оценки точности классификации.
Если вы хотите определить метрики для встроенных методов оценки, можно просмотреть потоки оценки, выбрав дополнительные сведения.
Выбрав оценку точности классификации в качестве метода оценки, можно настроить сопоставление интерфейса для сопоставления правды земли с потоком входных и прогнозируемых данных.
Затем нажмите кнопку "Рецензирование" и "Отправить", чтобы отправить пакетный запуск и выбранную оценку.
Проверка результатов
После успешной отправки запуска выберите "Просмотреть список выполнения", чтобы перейти к списку выполнения пакетной службы этого потока.
Выполнение пакетной службы может занять некоторое время. Чтобы загрузить последнее состояние, можно обновить страницу.
После завершения пакетного выполнения выберите запуск, а затем визуализировать выходные данные , чтобы просмотреть результат выполнения пакета. Выберите "Просмотреть выходные данные" (значок глаза), чтобы добавить результаты оценки в таблицу результатов пакетного выполнения. Вы можете увидеть общее количество маркеров и общую точность, а затем в таблице вы увидите результаты для каждой строки данных: входные, выходные данные потока и результаты оценки (которые прогнозируются правильно и которые не являются.).
Вы можете настроить ширину столбцов, скрыть или расшифировать столбцы, изменить порядок столбцов. Вы также можете выбрать "Экспорт" , чтобы скачать выходную таблицу для дальнейшего изучения, мы предоставляем 2 варианта:
- Скачайте текущую страницу: CSV-файл выходных данных пакетного запуска на текущей странице.
- Скачайте все данные: то, что скачиваете файл записной книжки Jupyter, необходимо запустить его для скачивания выходных данных в формате jsonl или CSV.
Как вы можете знать, точность не является единственной метрикой, которая может оценить задачу классификации, например, вы также можете использовать отзыв для оценки. В этом случае можно нажать кнопку "Визуализировать выходные данные" рядом с кнопкой "Визуализировать выходные данные", выбрать другие методы оценки.
Развертывание
После сборки потока и его правильного тестирования может потребоваться развернуть его как конечную точку, чтобы можно было вызвать конечную точку для вывода в режиме реального времени.
Настройка конечной точки
Выберите ссылку пакетного запуска, а затем перейдите на страницу сведений о пакетном выполнении, выберите "Развернуть". Откроется окно мастера, позволяющее настроить конечную точку. Укажите имя конечной точки и развертывания, выберите виртуальную машину, задайте подключения, выполните некоторые параметры (можно использовать параметры по умолчанию), нажмите кнопку "Проверить и создать ", чтобы начать развертывание.
Тестирование конечной точки
Вы можете перейти на страницу сведений о конечной точке из уведомления или перейти к конечным точкам в левой области навигации студии, а затем выбрать конечную точку на вкладке конечных точек в режиме реального времени. Развертывание конечной точки занимает несколько минут. После успешного развертывания конечной точки его можно протестировать на вкладке "Тест ".
Поместите URL-адрес, который нужно проверить в поле ввода, и выберите " Тест", а затем вы увидите результат, прогнозируемый конечной точкой.
Очистка ресурсов
Если вы планируете продолжить работу с руководствами и хотите использовать ресурсы, созданные здесь, перейдите к следующим шагам.
Остановка вычислительного экземпляра
Если вы сейчас не планируете использовать вычислительный экземпляр, остановите его, выполнив следующие действия:
- В студии в левой области навигации выберите "Вычисления".
- Из вкладок вверху выберите Вычислительные экземпляры.
- Выберите вычислительный экземпляр из списка.
- В верхней панели инструментов выберите Остановить.
Удаление всех ресурсов
Если вы не планируете использовать созданные вами ресурсы, удалите их, чтобы с вас не взималась плата:
- На портале Azure выберите Группы ресурсов в левой части окна.
- Выберите созданную группу ресурсов из списка.
- Выберите команду Удалить группу ресурсов.
Следующие шаги
Теперь, когда у вас есть представление о том, что связано с процессом разработки, тестирования, оценки и развертывания, узнайте больше о процессе в следующих руководствах: