Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Important
Данная документация устарела и может не обновляться. Продукты, службы или технологии, упомянутые в этом контенте, больше не поддерживаются.
Databricks рекомендует таблицы вывода с поддержкой шлюза ИИ для обеспечения доступности для настраиваемой модели, базовой модели основы и конечных точек обслуживания агентов. См. Миграция в таблицы вывода шлюза ИИ для получения инструкций по переносу в таблицы вывода шлюза ИИ.
В этой статье описываются таблицы вывода для обслуживаемой модели мониторинга. На следующей схеме показан типичный рабочий процесс с таблицами вывода. Таблица вывода данных автоматически записывает входящие запросы и исходящие ответы для конечной точки обслуживания модели и регистрирует их как таблицу Delta Unity Catalog. Данные в этой таблице можно использовать для мониторинга, отладки и улучшения моделей машинного обучения.
Что такое таблицы вывода?
Мониторинг производительности моделей в рабочих процессах является важным аспектом жизненного цикла модели искусственного интеллекта и машинного обучения. Таблицы инференса упрощают мониторинг и диагностику моделей за счет непрерывного журналирования входных данных запросов и ответов (прогнозов) из конечных точек Model Serving и сохранения их в Delta-таблицу в Unity Catalog. Затем можно использовать все возможности платформы Databricks, такие как запросы Databricks SQL, записные книжки и профилирование данных для мониторинга, отладки и оптимизации моделей.
Таблицы вывода можно включить в любую существующую или только что созданную конечную точку обслуживания модели, а затем автоматически записывать запросы к этой конечной точке в таблице в UC.
Ниже приведены некоторые распространенные приложения для таблиц вывода:
- Мониторинг качества данных и моделей. Вы можете постоянно отслеживать производительность модели и смещение данных с помощью профилирования данных. Профилирование данных автоматически создает панели мониторинга качества данных и модели, которые можно поделиться с заинтересованными лицами. Кроме того, вы можете включить оповещения, чтобы узнать, когда необходимо переобучить модель на основе сдвигов входящих данных или уменьшения производительности модели.
- Отладка проблем в производственной среде. Таблицы вывода регистрируют такие данные, как коды состояния HTTP, время выполнения модели, JSON-запросы и ответы. Эти данные производительности можно использовать для отладки. Вы также можете использовать исторические данные в таблицах вывода для сравнения производительности модели по историческим запросам.
- Создайте обучающий корпус. Объединяя таблицы вывода с истинными метками, вы можете создать обучающий корпус, который можно использовать для повторного обучения или дообучения и улучшения модели. С помощью заданий Lakeflow можно настроить цикл непрерывной обратной связи и автоматизировать повторное обучение.
Требования
- В вашей рабочей области должен быть включён каталог Unity.
- Создатель и модификатор конечной точки должны иметь разрешение на управление конечной точкой. См. раздел Списки управления доступом.
- Создатель конечной точки и модификатора должны иметь следующие разрешения в каталоге Unity:
-
USE CATALOGправа доступа для указанного каталога. -
USE SCHEMAправа доступа на указанную схему. -
CREATE TABLEразрешения в схеме.
-
Включение и отключение таблиц вывода
В этом разделе показано, как включить или отключить таблицы вывода с помощью пользовательского интерфейса Databricks. Вы также можете использовать API; см. инструкции в по включению таблиц вывода в конечных точках обслуживания моделей с помощью API.
Владелец таблиц вывода — это пользователь, создавший конечную точку. Все списки управления доступом (ACL) в таблице соответствуют стандартным разрешениям каталога Unity и могут быть изменены владельцем таблицы.
Предупреждение
Таблица вывода может стать поврежденной, если выполнить одно из следующих действий:
- Измените схему таблицы.
- Измените имя таблицы.
- Удалите таблицу.
- Потерять права доступа к каталогу или схеме Unity Catalog.
В этом случае индекс auto_capture_config состояния конечной точки показывает состояние FAILED для таблицы полезной нагрузки. В этом случае необходимо создать новую конечную точку для продолжения использования таблиц вывода.
Чтобы включить таблицы вывода во время создания конечной точки, выполните следующие действия.
Щелкните Serving в пользовательском интерфейсе Azure Databricks.
Нажмите кнопку "Создать конечную точку обслуживания".
Выберите "Включить таблицы вывода".
В раскрывающихся меню выберите нужный каталог и схему, в которой должна находиться таблица.
Имя таблицы по умолчанию —
<catalog>.<schema>.<endpoint-name>_payload. При желании можно ввести настраиваемый префикс таблицы.Нажмите кнопку "Создать конечную точку обслуживания".
Вы также можете включить таблицы вывода в существующей конечной точке. Чтобы изменить существующую конфигурацию конечной точки, сделайте следующее:
- Перейдите на страницу конечной точки.
- Нажмите кнопку "Изменить конфигурацию".
- Выполните предыдущие инструкции, начиная с шага 3.
- По завершении щелкните Обновить конечную точку обслуживания.
Выполните следующие инструкции, чтобы отключить таблицы вывода:
- Перейдите на страницу конечной точки.
- Нажмите кнопку "Изменить конфигурацию".
- Нажмите кнопку "Включить таблицу вывода", чтобы удалить флажок.
- Когда вы будете удовлетворены спецификациями конечной точки, щелкните Обновить.
Перенос в таблицы инференции шлюза ИИ
Important
После миграции конечной точки на использование таблицы вывода данных Шлюза ИИ, она уже не может вернуться к устаревшей таблице.
Note
Таблицы вывода шлюза искусственного интеллекта имеют разные схемы по сравнению с устаревшими таблицами вывода.
Сведения о ценах см. на странице ценообразования шлюза ИИ.
В этом разделе объясняется, как перейти из устаревших таблиц вывода в таблицы вывода шлюза ИИ.
Существует два основных шага по обновлению конфигурации:
- Обновите конечную точку обслуживания, чтобы отключить устаревшую таблицу вывода.
- Обновите конечную точку обслуживания данных, чтобы включить таблицу вывода данных для шлюза ИИ.
Использование пользовательского интерфейса для переноса конфигурации таблицы вывода
Для небольшого количества конечных точек обслуживания измените конфигурацию конечной точки в пользовательском интерфейсе:
Нажмите Serving в интерфейсе Databricks и перейдите на страницу своего эндпоинта.
Нажмите кнопку "Изменить конфигурацию".
Нажмите кнопку "Включить таблицы вывода", чтобы удалить флажок.
Нажмите кнопку "Обновить " и подождите, пока состояние конечной точки станет готово.
Выполните следующие инструкции, чтобы включить таблицу инференции шлюза ИИ.
Нажмите Serving в интерфейсе Databricks и перейдите на страницу своего эндпоинта.
Щелкните "Изменить шлюз искусственного интеллекта".
Нажмите кнопку "Включить таблицы вывода".
В раскрывающемся меню выберите нужный каталог и схему, в которой должна находиться таблица.
Имя таблицы по умолчанию —
<catalog>.<schema>.<endpoint-name>_payload. При необходимости введите настраиваемый префикс таблицы.Нажмите кнопку "Обновить".
Используйте записную книжку для переноса конфигурации таблицы выводов
Для многих конечных точек можно использовать API для автоматизации процесса миграции. Databricks предоставляет пример блокнота, который пакетно мигрирует конечные точки обслуживания и демонстрирует примеры переноса существующих данных из устаревших таблиц инференции в таблицы инференции AI Gateway.
Миграция в ноутбук с таблицами вывода инференции шлюза ИИ.
рабочий процесс . Мониторинг производительности модели с помощью таблиц вывода
Чтобы отслеживать производительность модели с помощью таблиц вывода, выполните следующие действия.
- Активируйте таблицы вывода на вашей конечной точке либо во время создания конечной точки, либо путем ее обновления.
- Запланируйте рабочий процесс для обработки данных JSON в таблице инференции, распаковав их в соответствии со схемой конечной точки.
- (Необязательно) Объедините распакованные запросы и ответы с истинными метками, чтобы вычислить метрики качества модели.
- Создайте монитор по полученной таблице Delta и обновите метрики.
Начальные записные книжки реализуют этот рабочий процесс.
Стартовый ноутбук для мониторинга таблицы инференции
Следующая записная книжка реализует описанные выше шаги для распаковки запросов из таблицы вывода профилирования данных. Записная книжка может запускаться по запросу или на регулярной основе с помощью заданий Lakeflow.
Начальная записная книжка для профилирования данных таблицы инференса
Начальная записная книжка для мониторинга качества текста из конечных точек, обслуживающих LLM
Следующая записная книжка распаковывает запросы из таблицы вывода, вычисляет набор метрик оценки текста (например, удобочитаемость и токсичнысть), а также позволяет отслеживать эти метрики. Записная книжка может запускаться по запросу или на регулярной основе с помощью заданий Lakeflow.
Начальный ноутбук для профилирования данных в таблице инференса LLM
Запрос и анализ результатов в таблице вывода
После подготовки обслуживаемых моделей все запросы, сделанные для моделей, регистрируются автоматически в таблицу вывода вместе с ответами. Таблицу можно просмотреть в пользовательском интерфейсе, запросить таблицу из DBSQL или записной книжки или запросить таблицу с помощью REST API.
Чтобы просмотреть таблицу в пользовательском интерфейсе: На странице конечной точки щелкните название таблицы интерференций, чтобы открыть таблицу в обозревателе каталога.
Чтобы выполнить запрос к таблице из DBSQL или записной книжки Databricks: Вы можете выполнить код, аналогичный приведенному ниже, чтобы запросить таблицу инференции.
SELECT * FROM <catalog>.<schema>.<payload_table>
Если вы включили таблицы вывода с помощью пользовательского интерфейса, payload_table — это имя таблицы, назначенное при создании конечной точки. Если вы включили таблицы вывода данных с помощью API, payload_table указывается в разделе state ответа auto_capture_config. Пример см. в статье Включение таблиц инференции на конечных точках обслуживания моделей с использованием API.
Примечание о производительности
После вызова конечной точки вы можете увидеть вызов, зарегистрированный в таблице вывода в течение часа после отправки запроса оценки. Кроме того, Azure Databricks гарантирует доставку журналов по крайней мере один раз, поэтому это возможно, хотя и маловероятно, что повторяющиеся журналы отправляются.
схема таблицы вывода данных каталога Unity
Каждый запрос и ответ, который записывается в таблицу вывода, записывается в таблицу Delta со следующей схемой:
Note
При вызове конечной точки с пакетом входных данных весь пакет регистрируется как одна строка.
| Название столбца | Description | Тип |
|---|---|---|
databricks_request_id |
Идентификатор запроса, созданный Azure Databricks, прикреплён ко всем запросам на обслуживание модели. | СТРУНА |
client_request_id |
Необязательный идентификатор запроса, созданный клиентом, который можно указать в тексте запроса на обслуживание модели. См. раздел "Спецификации client_request_id " для получения дополнительной информации. |
СТРУНА |
date |
Дата UTC, по которой был получен запрос на обслуживание модели. | DATE |
timestamp_ms |
Временная метка в миллисекундах эпохи, когда был получен запрос на обслуживание модели. | LONG |
status_code |
Код состояния HTTP, возвращенный из модели. | INT |
sampling_fraction |
Доля выборки, используемая в случае, если запрос был сокращен. Это значение составляет от 0 до 1, где 1 означает, что было включено 100% входящих запросов. | ДВОЙНОЙ |
execution_time_ms |
Время выполнения в миллисекундах, для которого модель выполнила вывод. Это не включает сетевые задержки и представляет только время, затраченное моделью на создание прогнозов. | LONG |
request |
Необработанный текст JSON запроса, отправленный в конечную точку обслуживания модели. | СТРУНА |
response |
Текст JSON необработанного ответа, возвращаемый конечной точкой обслуживания модели. | СТРУНА |
request_metadata |
Карта метаданных, связанных с конечной точкой обслуживания модели, связанной с запросом. Эта карта содержит имя конечной точки, имя модели и версию модели, используемую для конечной точки. | MAP<СТРОКА, СТРОКА> |
Укажите client_request_id
Поле client_request_id является необязательным значением, которое пользователь может предоставить в тексте запроса на обслуживание модели. Это позволяет пользователю указать собственный идентификатор запроса, который отображается в последней таблице вывода в client_request_id и может использоваться для присоединения запроса к другим таблицам, использующей client_request_id, например присоединение метки конечной истины. Чтобы указать client_request_id, добавьте его в качестве ключа верхнего уровня тела запроса. Если client_request_id не указано, в строке, соответствующей запросу, значение отображается как null.
{
"client_request_id": "<user-provided-id>",
"dataframe_records": [
{
"sepal length (cm)": 5.1,
"sepal width (cm)": 3.5,
"petal length (cm)": 1.4,
"petal width (cm)": 0.2
},
{
"sepal length (cm)": 4.9,
"sepal width (cm)": 3,
"petal length (cm)": 1.4,
"petal width (cm)": 0.2
},
{
"sepal length (cm)": 4.7,
"sepal width (cm)": 3.2,
"petal length (cm)": 1.3,
"petal width (cm)": 0.2
}
]
}
Позже client_request_id можно использовать для интеграции эталонных меток, если существуют другие таблицы с метками, связанными с client_request_id.
Ограничения
- Управляемые клиентом ключи не поддерживаются.
- Для эндпоинтов, на которых размещаются базовые модели, таблицы для вывода данных поддерживаются только на указанных нагрузках пропускной способности.
- Брандмауэр Azure может привести к сбоям при создании таблицы delta каталога Unity, поэтому по умолчанию не поддерживается. Обратитесь к команде аккаунта Databricks, чтобы его включить.
- Если включены таблицы вывода, ограничение максимального параллелизма для всех обслуживаемых моделей в одной конечной точке равно 128. Обратитесь к группе учетных записей Azure Databricks, чтобы запросить увеличение этого ограничения.
- Если таблица вывода содержит более 500K файлов, дополнительные данные не регистрируются. Чтобы избежать превышения этого ограничения, выполните OPTIMIZE или настройте хранение в таблице, удалив старые данные. Чтобы проверить количество файлов в таблице, выполните
DESCRIBE DETAIL <catalog>.<schema>.<payload_table>. - Доставка журналов выводов в настоящее время осуществляется в меру возможностей, но вы можете ожидать, что журналы будут доступны в течение 1 часа с момента запроса. Обратитесь к группе учетных записей Databricks, чтобы получить дополнительные сведения.
Общие ограничения конечных точек обслуживания модели см. в разделе "Ограничения службы моделей" и "Регионы".