Configuración de AI Gateway en puntos de conexión de servicio de modelos
En este artículo, aprenderá a configurar Mosaic AI Gateway en un punto de conexión de servicio de modelo.
Requisitos
- Un área de trabajo de Databricks en una región compatible con modelos externos.
- Complete los pasos 1 y 2 de Creación de un punto de conexión de servicio de modelo externo.
Configuración de AI Gateway mediante la interfaz de usuario
En esta sección se muestra cómo configurar AI Gateway durante la creación del punto de conexión mediante la interfaz de usuario de servicio.
Si prefiere hacerlo mediante programación, consulte el ejemplo del cuaderno.
En la sección AI Gateway de la página de creación de puntos de conexión, puede configurar individualmente las siguientes características de AI Gateway:
Característica | Cómo habilitar | Detalles |
---|---|---|
Seguimiento de uso | Seleccione Habilitar seguimiento de uso para habilitar el seguimiento y la supervisión de las métricas de uso de datos. | - Debes tener habilitado Unity Catalog. - Los administradores de cuentas deben habilitar el esquema de tabla del sistema de servicio antes de usar las tablas del sistema: system.serving.endpoint_usage que captura los recuentos de tokens para cada solicitud al punto de conexión y system.serving.served_entities que almacena metadatos para cada modelo externo.- Consulta Esquemas de tabla de seguimiento de uso - Solo los administradores de cuentas tienen permiso para ver o consultar la tabla served_entities o la tabla endpoint_usage , aunque el usuario que administra el punto de conexión debe habilitar el seguimiento de uso. Consulte Concesión de acceso a tablas del sistema- El número de tokens de entrada y salida se calcula como ( text_length +1)/4 si el modelo no devuelve el recuento de tokens. |
Registro de carga | Seleccione Habilitar tablas de inferencia para registrar automáticamente las solicitudes y respuestas del punto de conexión en tablas delta administradas por Unity Catalog. | - Debes tener Unity Catalog habilitado y el acceso CREATE_TABLE en el esquema de catálogo especificado.- Las tablas de inferencia habilitadas por AI Gateway tienen un esquema diferente de las tablas de inferencia creadas para los puntos de conexión de servicio de modelos que sirven modelos personalizados. Consulte Esquema de la tabla de inferencia habilitada para AI Gateway. - Los datos de registro de carga rellenan estas tablas menos de una hora después de consultar el punto de conexión. - Las cargas de más de 1 MB no se registran. - La carga de respuesta agrega la respuesta de todos los fragmentos devueltos. - Se admite el streaming. En escenarios de streaming, la carga de respuesta agrega la respuesta de fragmentos devueltos. |
Límites de protección de IA | Consulte Configuración de límites de protección de IA en la interfaz de usuario. | - Los límites de protección impiden que el modelo interactúe con contenido no seguro y dañino que se detecta en las entradas y salidas del modelo. - No se admiten límites de protección de salida para incrustaciones ni para streaming. |
Límites de frecuencia | Puede aplicar límites de volumen de solicitudes para administrar el tráfico del punto de conexión por usuario y por punto de conexión | - Los límites de volumen se definen en consultas por minuto (QPM). - El valor predeterminado es Sin límite para cada usuario y por punto de conexión. |
Enrutamiento del tráfico | Para configurar el enrutamiento de tráfico en el punto de conexión, consulte Servicio de varios modelos externos a un punto de conexión. |
Configuración de límites de protección de IA en la interfaz de usuario
En la tabla siguiente se muestra cómo configurar los límites de protección admitidos.
Límite de protección | Cómo habilitar | Detalles |
---|---|---|
Seguridad | Seleccione Seguridad para habilitar las medidas de seguridad para evitar que el modelo interactúe con contenido no seguro y dañino. | |
Detección de información de identificación personal | Seleccione Detección de DCP para detectar datos DCP, como nombres, direcciones, números de tarjeta de crédito. | |
Temas válidos | Puede escribir temas directamente en este campo. Si tiene varias entradas, asegúrese de presionar Entrar después de cada tema. Como alternativa, puede cargar un archivo .csv o .txt . |
Se puede especificar un máximo de 50 temas válidos. Cada tema no puede superar los 100 caracteres |
Palabras clave no válidas | Puede escribir temas directamente en este campo. Si tiene varias entradas, asegúrese de presionar Entrar después de cada tema. Como alternativa, puede cargar un archivo .csv o .txt . |
Se puede especificar un máximo de 50 palabras clave no válidas. Cada palabra clave no puede superar los 100 caracteres. |
Esquemas de tabla de seguimiento de uso
La tabla del sistema de seguimiento de uso system.serving.served_entities
usa el siguiente esquema:
Nombre de la columna | Descripción | Tipo |
---|---|---|
served_entity_id |
El Id. exclusivo de la entidad servida. | STRING |
account_id |
Identificador de cuenta de cliente para Delta Sharing. | STRING |
workspace_id |
El identificador del área de trabajo del cliente del punto de conexión de servicio. | STRING |
created_by |
Identificador del creador. | STRING |
endpoint_name |
Nombre del punto de conexión de servicio. | STRING |
endpoint_id |
Identificador único del punto de conexión de servicio. | STRING |
served_entity_name |
Nombre de la entidad servida. | STRING |
entity_type |
Tipo de la entidad que se sirve. Puede ser FEATURE_SPEC , EXTERNAL_MODEL , FOUNDATION_MODEL o CUSTOM_MODEL |
STRING |
entity_name |
El nombre subyacente de la entidad. Diferente del served_entity_name que es un nombre proporcionado por el usuario. Por ejemplo, entity_name es el nombre del modelo de Unity Catalog. |
STRING |
entity_version |
La versión de la entidad servida. | STRING |
endpoint_config_version |
La versión de la configuración del punto de conexión. | INT |
task |
Tipo de tarea. Puede ser llm/v1/chat , llm/v1/completions o llm/v1/embeddings . |
STRING |
external_model_config |
Configuraciones para modelos externos. Por ejemplo: {Provider: OpenAI} |
STRUCT |
foundation_model_config |
Configuraciones para modelos fundamentales. Por ejemplo: {min_provisioned_throughput: 2200, max_provisioned_throughput: 4400} |
STRUCT |
custom_model_config |
Configuraciones para modelos personalizados. Por ejemplo: { min_concurrency: 0, max_concurrency: 4, compute_type: CPU } |
STRUCT |
feature_spec_config |
Configuraciones para especificaciones de características. Por ejemplo: { min_concurrency: 0, max_concurrency: 4, compute_type: CPU } |
STRUCT |
change_time |
Marca de tiempo del cambio para la entidad atendida. | TIMESTAMP |
endpoint_delete_time |
Marca de tiempo de eliminación de entidades. El punto de conexión es el contenedor de la entidad atendida. Una vez eliminado el punto de conexión, también se elimina la entidad atendida. | TIMESTAMP |
La tabla del sistema de seguimiento de uso system.serving.endpoint_usage
usa el siguiente esquema:
Nombre de la columna | Descripción | Tipo |
---|---|---|
account_id |
Identificador de cuenta del cliente. | STRING |
workspace_id |
El identificador del área de trabajo del cliente del punto de conexión de servicio. | STRING |
client_request_id |
Identificador de solicitud proporcionado por el usuario que se puede especificar en el cuerpo de la solicitud de servicio del modelo. | STRING |
databricks_request_id |
Identificador de solicitud generado por Azure Databricks adjunto a todas las solicitudes de servicio del modelo. | STRING |
requester |
Identificador del usuario o entidad de servicio cuyos permisos se usan para la solicitud de invocación del punto de conexión de servicio. | STRING |
status_code |
El código de estado HTTP devuelto por el modelo. | INTEGER |
request_time |
Marca de tiempo a la que se recibió la solicitud. | TIMESTAMP |
input_token_count |
Recuento de token de la entrada. | LONG |
output_token_count |
Recuento de token de la salida. | LONG |
input_character_count |
Recuento de caracteres de la cadena de entrada o del símbolo del sistema. | LONG |
output_character_count |
Recuento de caracteres de la cadena de salida de la respuesta. | LONG |
usage_context |
Mapa proporcionado por el usuario que contiene identificadores del usuario final o de la aplicación cliente que realiza la llamada al punto de conexión. Consulte Definición adicional del uso con usage_context. | MAP |
request_streaming |
Indica si la solicitud está en modo de secuencia. | BOOLEAN |
served_entity_id |
Identificador único que se usa para combinar con la tabla de dimensiones system.serving.served_entities para buscar información sobre el punto de conexión y la entidad atendida. |
STRING |
Definición adicional del uso con usage_context
Al consultar un modelo externo con el seguimiento de uso habilitado, puede proporcionar el usage_context
parámetro con el tipo Map[String, String]
. La asignación de contexto de uso aparece en la tabla de seguimiento de uso de la columna usage_context
. Los administradores de cuentas pueden agregar filas diferentes en función del contexto de uso para obtener información y pueden unir esta información con la información de la tabla de registro de carga. Por ejemplo, puede agregar end_user_to_charge
a usage_context
para realizar el seguimiento de la atribución de costes para los usuarios finales.
{
"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"
}
}
Esquema de la tabla de inferencia habilitada para AI Gateway
Las tablas de inferencia habilitadas mediante AI Gateway tienen el esquema siguiente:
Nombre de la columna | Descripción | Tipo |
---|---|---|
request_date |
Fecha UTC en la que se recibió la solicitud de servicio del modelo. | FECHA |
databricks_request_id |
Identificador de solicitud generado por Azure Databricks adjunto a todas las solicitudes de servicio del modelo. | STRING |
client_request_id |
Identificador de solicitud generado por el cliente opcional que se puede especificar en el cuerpo de la solicitud de servicio del modelo. | STRING |
request_time |
Marca de tiempo a la que se recibió la solicitud. | TIMESTAMP |
status_code |
El código de estado HTTP devuelto por el modelo. | INT |
sampling_fraction |
La fracción de muestreo usada en caso de que la solicitud se muestree de forma descendente. Este valor está comprendido entre 0 y 1, donde 1 representa que se incluyeron el 100 % de las solicitudes entrantes. | DOUBLE |
execution_duration_ms |
Tiempo en milisegundos para los que el modelo realizó la inferencia. Esto no incluye latencias de red de sobrecarga y solo representa el tiempo necesario para que el modelo genere predicciones. | BIGINT |
request |
Cuerpo JSON de solicitud sin procesar que se envió al punto de conexión de servicio del modelo. | STRING |
response |
Cuerpo JSON de solicitud sin procesar que se envió al punto de conexión de servicio del modelo. | STRING |
served_entity_id |
El Id. exclusivo de la entidad servida. | STRING |
logging_error_codes |
ARRAY | |
requester |
Identificador del usuario o entidad de servicio cuyos permisos se usan para la solicitud de invocación del punto de conexión de servicio. | STRING |
Actualización de las características de AI Gateway en los puntos de conexión
Puede actualizar las características de AI Gateway en los puntos de conexión de servicio del modelo que los tenían habilitados anteriormente y los puntos de conexión que no lo hacían. Las actualizaciones de las configuraciones de AI Gateway tardan aproximadamente entre 20 y 40 segundos en aplicarse, pero las actualizaciones de limitación de volumen pueden tardar hasta 60 segundos.
A continuación se muestra cómo actualizar las características de AI Gateway en un punto de conexión de servicio de modelo mediante la interfaz de usuario de servicio.
En la sección Puerta de enlace de la página del punto de conexión, puede ver qué características están habilitadas. Para actualizar estas características, haga clic en Editar AI Gateway.
Ejemplo de cuaderno
En el cuaderno siguiente se muestra cómo habilitar y usar mediante programación las características de Databricks de Mosaic AI Gateway para administrar y controlar modelos de proveedores. Consulte lo siguiente para obtener más información sobre la API REST: