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


Настройка шлюза ИИ на конечных точках обслуживания моделей

Из этой статьи вы узнаете, как настроить шлюз ИИ Мозаики в конечной точке обслуживания модели.

Требования

Настройка шлюза искусственного интеллекта с помощью пользовательского интерфейса

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

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

Функция Включение Сведения
Отслеживание использования Select Включить отслеживание использования для включения отслеживания и мониторинга метрик использования данных. — У вас должен быть включен Unity Catalog.
— администраторы учетных записей должны включить систему служения tableschema перед использованием системы tables: system.serving.endpoint_usage, которая фиксирует количество токенов для каждого запроса к конечной точке и system.serving.served_entities, которая сохраняет метаданные для каждой базовой модели.
— См. схемы отслеживания использования table
— Только администраторы учетных записей имеют разрешение на просмотр или запрос served_entitiestable или endpoint_usagetable, даже если пользователь, управляющий конечной точкой, должен включить отслеживание использования. См. Grant доступ к системе tables
— Число входных и выходных маркеров оценивается как (text_length+1)/4, если число маркеров не возвращается моделью.
Ведение журнала полезных данных Select Включить вывод tables для автоматической регистрации запросов и ответов из конечной точки в Delta tables, управляемой Unity Catalog. Необходимо иметь включённый Catalog Unity и CREATE_TABLE доступ в указанном catalogschema.
- Вывод tables, активированный шлюзом ИИ, имеет иной schema, чем вывод tables, предназначенный для конечных точек, обслуживающих пользовательские модели. См. вывод с поддержкой шлюза ИИ tableschema.
— данные журналирования полезной нагрузки заполняют этот tables менее чем через час после запроса конечной точки.
— Полезные данные размером более 1 МБ не регистрируются.
— Полезные данные ответа агрегируют ответ всех возвращаемых блоков.
— поддерживается потоковая передача. В сценариях потоковой передачи полезные данные ответа агрегируют ответ возвращаемых блоков.
AI Guardrails См. раздел "Настройка AI Guardrails" в пользовательском интерфейсе. — Guardrails предотвращает взаимодействие модели с небезопасным и вредным содержимым, обнаруженным в входных и выходных данных модели.
— Выходные ограждения не поддерживаются для моделей внедрения или потоковой передачи.
Ограничения скорости Вы можете применить ограничения частоты запросов для управления трафиком для конечной точки на пользователя и на конечную точку — Ограничения скорости определяются в запросах в минуту (QPM).
— значение по умолчанию — нет limit для каждого пользователя и каждой конечной точки.
Маршрутизация трафика Сведения о настройке маршрутизации трафика в конечной точке см. в статье "Обслуживание нескольких внешних моделей в конечной точке".

Настройка функций шлюза искусственного интеллекта

Настройка AI Guardrails в пользовательском интерфейсе

В следующем table показано, как настроить поддерживаемые ограждения.

Проверка Включение Сведения
Безопасность Select безопасность для включения мер безопасности, предотвращающих взаимодействие модели с небезопасным и вредным содержимым.
Обнаружение личных сведений (PII) Select обнаружение PII для выявления данных PII, таких как имена, адреса, номера кредитных карт.
Допустимые разделы Вы можете вводить разделы непосредственно в это поле. Если у вас несколько записей, обязательно нажмите клавишу ВВОД после каждого раздела. Кроме того, можно отправить .csv файл или .txt файл. Можно указать не более 50 допустимых разделов. Каждый раздел не может превышать 100 символов
Недопустимые ключевые слова Вы можете вводить разделы непосредственно в это поле. Если у вас несколько записей, обязательно нажмите клавишу ВВОД после каждого раздела. Кроме того, можно отправить .csv файл или .txt файл. Можно указать не более 50 недопустимых ключевых слов. Каждое ключевое слово не может превышать 100 символов.

Настройка функций AI Guardrail

Схемы отслеживания использования table

Система отслеживания использования system.serving.served_entitiestable имеет следующие schema:

имя Column Описание Тип
served_entity_id Уникальный идентификатор обслуживаемой сущности. STRING
account_id Идентификатор учетной записи клиента для разностного общего доступа. STRING
workspace_id Идентификатор рабочей области клиента конечной точки обслуживания. STRING
created_by Идентификатор создателя. STRING
endpoint_name Имя конечной точки обслуживания. STRING
endpoint_id Уникальный идентификатор конечной точки обслуживания. STRING
served_entity_name Имя обслуживаемой сущности. STRING
entity_type Тип обслуживаемой сущности. Может бытьFEATURE_SPEC, , EXTERNAL_MODELFOUNDATION_MODELилиCUSTOM_MODEL STRING
entity_name Базовое имя сущности. Отличается от served_entity_name имени пользователя. Например, entity_name — это имя модели Catalog Unity. STRING
entity_version Версия обслуживаемой сущности. STRING
endpoint_config_version Версия конфигурации конечной точки. INT
task Тип задачи. Возможные значения: llm/v1/chat, llm/v1/completions или llm/v1/embeddings. STRING
external_model_config Конфигурации для внешних моделей. Например: {Provider: OpenAI} STRUCT
foundation_model_config Конфигурации для базовых моделей. Например: {min_provisioned_throughput: 2200, max_provisioned_throughput: 4400}. STRUCT
custom_model_config Конфигурации для пользовательских моделей. Например: { min_concurrency: 0, max_concurrency: 4, compute_type: CPU }. STRUCT
feature_spec_config Конфигурации для спецификаций компонентов. Например: { min_concurrency: 0, max_concurrency: 4, compute_type: CPU } STRUCT
change_time Метка времени изменения для обслуживаемой сущности. TIMESTAMP
endpoint_delete_time Метка времени удаления сущности. Конечная точка — это контейнер для обслуживаемой сущности. После удаления конечной точки также удаляется обслуживаемая сущность. TIMESTAMP

Система system.serving.endpoint_usage для отслеживания использования table имеет следующие schema:

имя Column Описание Тип
account_id Идентификатор учетной записи клиента. STRING
workspace_id Идентификатор рабочей области клиента конечной точки обслуживания. STRING
client_request_id Пользователь предоставил запрос identifier, который можно указать в тексте запроса на обслуживание модели. STRING
databricks_request_id Запрос identifier, сгенерированный Azure Databricks, прикреплён ко всем запросам на обслуживание моделей. STRING
requester Идентификатор пользователя или субъекта-службы, разрешения которого используются для запроса вызова конечной точки обслуживания. STRING
status_code Код состояния HTTP, возвращенный из модели. INTEGER
request_time Метка времени получения запроса. TIMESTAMP
input_token_count Число маркеров входных данных. LONG
output_token_count Число маркеров выходных данных. LONG
input_character_count Число символов входной строки или запроса. LONG
output_character_count Число символов выходной строки ответа. LONG
usage_context Пользователь предоставил карту, содержащую идентификаторы конечного пользователя или клиентского приложения, которое вызывает конечную точку. См. дополнительные сведения об использовании с usage_context. MAP
request_streaming Указывает, находится ли запрос в режиме потоковой передачи. BOOLEAN
served_entity_id Уникальный идентификатор, используемый для join с измерением system.serving.served_entitiestable для поиска сведений о конечной точке и обслуживаемой сущности. STRING

Дальнейшее определение использования с помощью usage_context

При запросе внешней модели с включенным отслеживанием использования можно указать параметр с типом usage_contextMap[String, String]. Отображение сопоставления контекста использования происходит в отслеживании использования table в usage_contextcolumn. Размер usage_context карты не может превышать 10 КИБ.

Администраторы учетных записей могут объединять различные строки в зависимости от контекста использования в get и могут join эти сведения с данными из журнала полезных данных table. Например, можно добавить end_user_to_chargeusage_context в отслеживание затраты на отслеживание для конечных пользователей.

{
  "messages": [
    {
      "role": "user",
      "content": "What is Databricks?"
    }
  ],
  "max_tokens": 128,
  "usage_context":
    {
      "use_case": "external",
      "project": "project1",
      "priority": "high",
      "end_user_to_charge": "abcde12345",
      "a_b_test_group": "group_a"
    }
}

функции шлюза ИИ Update в конечных устройствах

Вы можете update функции шлюза искусственного интеллекта в точках развертывания моделей, где они ранее были активированы, и в точках, где они не были активированы. Обновления конфигураций шлюза искусственного интеллекта занимают около 20–40 секунд, однако ограничение скорости обновлений может занять до 60 секунд.

Ниже показано, как update функции шлюза искусственного интеллекта в конечной точке обслуживания модели с помощью пользовательского интерфейса обслуживания.

В разделе шлюза на странице конечной точки можно увидеть, какие функции включены. Чтобы настроить update эти функции, щелкните Изменить шлюз ИИ.

Update функции шлюза ИИ

Пример записной книжки

В следующей записной книжке показано, как программно включить и использовать функции Databricks Mosaic AI Gateway для управления моделями из providers. Дополнительные сведения об REST API см. в следующих статьях:

Включение записной книжки Databricks Mosaic AI Gateway

Get записная книжка

Дополнительные ресурсы