Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Important
Una nueva experiencia de Unity Gateway ya está disponible de forma general. Es el plano de control empresarial para gobernar endpoints LLM y agentes de codificación con funciones mejoradas. Consulta la gobernanza de la IA con Unity Gateway.
En este artículo se describen las tablas de inferencia habilitadas por la pasarela de IA para supervisar los modelos servidos. La tabla de inferencia captura automáticamente las solicitudes entrantes y las respuestas salientes para un punto de conexión y las registra como una tabla de Unity Catalog Delta. Puede usar los datos de esta tabla para supervisar, evaluar, comparar y ajustar modelos de aprendizaje automático.
¿Qué son las tablas de inferencia habilitadas por la puerta de enlace de IA?
Las tablas de inferencia habilitadas para AI Gateway simplifican la supervisión y el diagnóstico de los modelos al registrar continuamente las entradas y respuestas (predicciones) de las solicitudes de servicio procedentes de los puntos de conexión de Modelo de servicio y guardarlas en una tabla Delta en Unity Catalog. Después, puede usar todas las funcionalidades de la plataforma de Databricks, como consultas y cuadernos SQL de Databricks para supervisar, depurar y optimizar los modelos.
Puede habilitar las tablas de inferencia en un punto de conexión existente o recién creado y las solicitudes a ese punto de conexión se registran automáticamente en una tabla en el Unity Catalog.
Algunas aplicaciones comunes para las tablas de inferencia son las siguientes:
- Cree un corpus de entrenamiento. Al unir tablas de inferencia con etiquetas de verdad básica, puede crear un corpus de entrenamiento que puede usar para volver a entrenar o ajustar y mejorar el modelo. Con los trabajos de Lakeflow, puede configurar un bucle continuo de retroalimentación y automatizar el reentrenamiento.
- Supervisar la calidad de los datos y del modelo. Puede supervisar continuamente el rendimiento del modelo y el desfase de datos mediante la generación de perfiles de datos, que genera automáticamente paneles de calidad de datos y modelos que puede compartir con las partes interesadas. Además, puede habilitar las alertas para saber cuándo necesita volver a entrenar el modelo en función de los cambios en los datos entrantes o las reducciones en el rendimiento del modelo.
- Depuración de problemas de producción. Las tablas de inferencia registran datos como códigos de estado HTTP, código JSON de solicitud y respuesta, tiempos de ejecución del modelo y salida de seguimientos durante los tiempos de ejecución del modelo. Puede usar estos datos de rendimiento con fines de depuración. También puede usar las tablas de inferencia de datos históricos para comparar el rendimiento del modelo en las solicitudes históricas.
- Supervisar los agentes desplegados. Las tablas de inferencia también pueden almacenar seguimientos de MLflow para agentes que le ayudan a depurar problemas y supervisar el rendimiento.
Requisitos
- Se admiten tablas de inferencia habilitadas con Unity Gateway para endpoints que sirven cualquiera de los siguientes:
- Un área de trabajo de Databricks en una región en la que se admite el modelo de servicio. Consulte Disponibilidad de características de modelo de servicio.
- El proceso sin servidor debe habilitarse en el área de trabajo.
- En el caso de las áreas de trabajo que tienen conectividad privada configurada en la cuenta de almacenamiento del catálogo de Unity, siga los pasos descritos en Configuración de la conectividad privada a los recursos de Azure.
- Databricks recomienda habilitar la optimización predictiva para optimizar el rendimiento de las tablas de inferencia.
- Su área de trabajo debe estar habilitada para Unity Catalog.
- Tanto el creador del punto de conexión como el modificador deben tener el permiso Puede administrar en el punto de conexión. Consulte las Listas de control de acceso.
- Tanto el creador del punto de conexión como el modificador deben tener los permisos siguientes en Unity Catalog:
-
USE CATALOGpermisos en el catálogo especificado. -
USE SCHEMApermisos en el esquema especificado. -
CREATE TABLEpermisos en el esquema.
-
- El catálogo no puede ser un catálogo OpenSharing del metastore actual.
Nota:
No se admite la especificación de una tabla existente. Azure Databricks crea automáticamente una nueva tabla de inferencia cuando creas un endpoint o actualizas la configuración de Unity Gateway con la configuración de la tabla de inferencia activada.
Advertencia
La tabla de inferencia podría detener el registro de datos o dañarse si realiza alguna de las acciones siguientes:
- Se cambia el esquema de la tabla.
- Cambie el nombre de la tabla.
- Se elimina la tabla.
Habilitación y deshabilitación de tablas de inferencia
En esta sección se muestra cómo habilitar o deshabilitar tablas de inferencia mediante la interfaz de usuario de servicio. El propietario de las tablas de inferencia es el usuario que ha habilitado la tabla de inferencia. Todas las listas de control de acceso (ACL) de la tabla siguen los permisos estándar de Unity Catalog y el propietario de la tabla puede modificarlos.
Para habilitar tablas de inferencia durante la creación de puntos de conexión, siga estos pasos:
- Haga clic en Serving en la interfaz de usuario de Azure Databricks.
- Haga clic en Crear punto de conexión de servicio.
- En la sección AI Gateway, seleccione Habilitar tablas de inferencia.
También puede habilitar tablas de inferencia en un punto de conexión existente. Para editar una configuración de punto de conexión existente, haga lo siguiente:
- En la sección AI Gateway, haz clic en Editar AI Gateway.
- Seleccione Habilitar tabla de inferencia.
Siga estas instrucciones para deshabilitar las tablas de inferencia:
- Vaya a la página del punto de conexión.
- Haga clic en Editar AI Gateway.
- Haga clic en Habilitar tabla de inferencia para quitar la marca de verificación.
- Cuando estés satisfecho con las especificaciones de Unity Gateway, haz clic en Actualizar.
Habilitación de tablas de inferencia para agentes
También puede habilitar tablas de inferencia para agentes implementados, estas tablas de inferencia almacenan la carga y los detalles de solicitud, así como los registros de seguimiento de MLflow.
Habilite las tablas de inferencia para los agentes mediante los métodos siguientes:
- Los agentes implementados mediante la
mlflow.deploy()API tienen las tablas de inferencia habilitadas automáticamente. Consulte Implementación de un agente para aplicaciones de IA (Servicio de modelos). - Para las implementaciones mediante programación, establezca la variable
ENABLE_MLFLOW_TRACINGde entornoTrueen la configuración del punto de conexión. Consulte Adición de variables de entorno de texto sin formato.
Para más información sobre el seguimiento del agente de MLflow, consulte Seguimiento de MLflow: observabilidad de GenAI.
Consulta y análisis de resultados en la tabla de inferencia
Una vez que los modelos servidos estén listos, todas las solicitudes realizadas a los modelos se registran automáticamente en la tabla de inferencia, junto con las respuestas. Puede ver la tabla en la interfaz de usuario, consultar la tabla desde Databricks SQL o un cuaderno, o consultar la tabla mediante la API REST.
Para ver la tabla en la interfaz de usuario: en la página del punto de conexión, haga clic en el nombre de la tabla de inferencia para abrir la tabla en el Explorador de catálogos.
Para consultar la tabla desde Databricks SQL o un cuaderno de Databricks: puede ejecutar código similar al siguiente para consultar la tabla de inferencia.
SELECT * FROM <catalog>.<schema>.<payload_table>
Para unir los datos de la tabla de inferencia con detalles sobre el modelo de base subyacente servido en el punto de conexión: Los detalles de Foundation model se capturan en la tabla del sistema system.serving.served_entities.
SELECT * FROM <catalog>.<schema>.<payload_table> payload
JOIN system.serving.served_entities se on payload.served_entity_id = se.served_entity_id
Esquema de tabla de inferencia habilitado por Unity Gateway
Las tablas de inferencia habilitadas usando Unity Gateway tienen el siguiente esquema:
| Nombre de la columna | Descripción | Tipo |
|---|---|---|
request_date |
Fecha UTC en la que se recibió la solicitud para ejecutar el modelo. | DATE |
databricks_request_id |
Un identificador de solicitud generado por Azure Databricks asociado a todas las solicitudes de servicio de modelos. | 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 |
request_time |
Marca de tiempo en la que se recibe la solicitud. | TIMESTAMP |
status_code |
El código de estado HTTP devuelto por el modelo. | INT |
sampling_fraction |
La fracción de muestreo utilizada en caso de que la solicitud haya sido submuestreada. 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 el 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 |
Identificador único de la entidad atendida. | STRING |
logging_error_codes |
Errores que se produjeron cuando no se pudieron registrar los datos. Los códigos de error incluyen MAX_REQUEST_SIZE_EXCEEDED y MAX_RESPONSE_SIZE_EXCEEDED. |
MATRIZ |
requester |
Identificador del usuario o principal de servicio cuyos permisos se utilizan para la solicitud de invocación del punto de servicio. Este campo devuelve NULL para los puntos de conexión del modelo personalizado optimizados para rutas. |
STRING |
Esquemas de tabla de inferencia del agente
Advertencia
Los registros de solicitud y los registros de evaluación están en desuso y se quitarán en una versión futura. Consulte los registros de peticiones y la desaprobación de los registros de evaluación para obtener instrucciones de migración.
En el caso de los agentes, Databricks crea tres tablas de inferencia para cada implementación para registrar solicitudes y respuestas hacia y desde el punto de conexión de servicio del modelo:
| Tabla de inferencia | Ejemplo de nombre de tabla en Azure Databricks | Contenido de la tabla |
|---|---|---|
| Carga útil | {catalog_name}.{schema_name}.{model_name}_payload |
Cargas de respuesta y solicitud JSON sin formato |
| Registros de solicitudes de carga | {catalog_name}.{schema_name}.{model_name}_payload_request_logs |
Solicitudes y respuestas formateadas, seguimientos de MLflow |
| Registros de evaluación de carga | {catalog_name}.{schema_name}.{model_name}_payload_assessment_logs |
Comentarios con formato, tal como se proporciona en la aplicación de revisión, para cada solicitud |
Los usuarios pueden esperar los datos de las tablas de carga en un plazo de una hora después de interactuar con el punto de conexión de servicio. Los registros de solicitudes de carga y los registros de evaluación pueden tardar más tiempo en rellenarse y se derivan de la tabla de carga sin procesar. Puede extraer los registros de solicitud y evaluación de la tabla de carga usted mismo. Las eliminaciones y actualizaciones de la tabla de carga no se reflejan en los registros de solicitudes de carga o en los registros de evaluaciones de carga.
Nota:
Si tiene habilitado el Firewall de Azure Storage, debería ponerse en contacto con el equipo de su cuenta de Databricks para habilitar las tablas de inferencia para sus puntos de conexión.
A continuación se muestra el esquema de la tabla de registros de solicitudes de carga:
| Nombre de la columna | Descripción | Tipo |
|---|---|---|
databricks_request_id |
Un identificador de solicitud generado por Azure Databricks asociado a todas las solicitudes de servicio de modelos. | 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 |
date |
Fecha UTC en la que se recibió la solicitud para ejecutar el modelo. | DATE |
timestamp_ms |
La marca de tiempo en milisegundos en que se recibió la solicitud de servicio de modelo. | LONG |
timestamp |
Marca de tiempo de la solicitud. | TIMESTAMP |
status_code |
El código de estado HTTP devuelto por el modelo. | INT |
sampling_fraction |
La fracción de muestreo utilizada en caso de que la solicitud haya sido submuestreada. Este valor está comprendido entre 0 y 1, donde 1 representa que se incluyeron el 100 % de las solicitudes entrantes. | DOUBLE |
execution_time_ms |
Tiempo de ejecución 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. | LONG |
conversation_id |
Identificador de conversación extraído de los registros de solicitudes. | STRING |
request |
La última consulta de usuario de la conversación del usuario. | STRING |
response |
Última respuesta al usuario. | STRING |
request_raw |
Representación en cadena de la solicitud. | STRING |
response_raw |
Representación de cadena de la respuesta. | STRING |
trace |
Representación de cadena de seguimiento extraída databricks_options de la estructura de respuesta. |
STRING |
request_metadata |
Mapa de metadatos relacionados con el punto de conexión de servicio del modelo asociado a la solicitud. Este mapa contiene el nombre del punto de conexión, el nombre del modelo y la versión del modelo que se usa para el punto de conexión. | MAPA<CADENA, CADENA> |
schema_version |
La versión del esquema. | STRING |
A continuación se muestra el esquema de la tabla de registros de evaluación de carga:
| Nombre de la columna | Descripción | Tipo |
|---|---|---|
request_id |
Identificador de solicitud de Databricks. | STRING |
step_id |
Identificador del paso, derivado de la evaluación de recuperación. | STRING |
source |
Campo de estructura que contiene la información sobre quién creó la evaluación. | ESTRUCTURA |
timestamp |
Marca de tiempo de la solicitud. | TIMESTAMP |
text_assessment |
Los datos de los datos de los comentarios sobre las respuestas del agente de la aplicación de revisión. | STRING |
retrieval_assessment |
Los datos de los comentarios sobre los documentos recuperados para una respuesta. | STRING |
Tabla de inferencia rápida para modelos personalizados que sirven puntos finales
Para los endpoints de servicio de CPU (modelo personalizado), Unity Gateway envía las cargas de solicitud y respuesta a la tabla de inferencia mediante la telemetría del endpoint, por lo que las filas suelen estar disponibles en cuestión de segundos.
La tabla de inferencia ({catalog_name}.{schema_name}.{model_name}_payload) es una vista sobre una tabla de registros de telemetría ({catalog_name}.{schema_name}.{model_name}_otel_logs). Cuando la tabla de inferencia está habilitada, las cargas de las solicitudes y respuestas se escriben en _otel_logs, y la vista _payload lee de ella. Consulta la vista _payload para leer solicitudes y respuestas.
Nota:
La _otel_logs tabla de registros de telemetría se crea en el mismo catálogo y esquema que la tabla de inferencias y permanece visible incluso cuando solo se habilita la tabla de inferencias — esto es esperado, porque _payload es una vista sobre ella. Cuando solo está habilitada la tabla de inferencia, _otel_logs contiene únicamente los datos de petición y respuesta de la tabla de inferencia; no incluye los campos adicionales presentes cuando se habilitan otras señales de telemetría (logs, spans o métricas).
La tabla de inferencia rápida utiliza Zerobus en el backend para proporcionar telemetría, por lo que está sujeta a las mismas limitaciones y cuotas que Zerobus. Ver cuotas de ingesta de Zerobus.
Nota:
La entrega y el muestreo de telemetría de endpoints se aplican únicamente a los endpoints de servicio de modelos personalizados en CPU. Los puntos de conexión que prestan servicio con ancho de banda aprovisionado, modelos externos, cargas de trabajo de la API de modelos base o agentes siguen el comportamiento de entrega descrito en Limitaciones.
Muestreo
El muestreo es una capacidad de la tabla de inferencia rápida: para modelos personalizados de CPU que sirven a los endpoints, puedes configurar la fracción de peticiones que se registran. El muestreo reduce el volumen de registros en puntos de conexión de alto tráfico, al tiempo que mantiene una muestra representativa del tráfico.
- Valor predeterminado: 100%. Todas las solicitudes se registran a menos que establezca una tasa más baja.
-
Rango: del 0 % al 100 %, almacenado como un
sampling_fractionentre 0 y 1. - Cada fila registrada registra la tasa aplicada en su
sampling_fractioncolumna.
Para establecer la tasa en la interfaz, introduce una Tasa de muestreo (%) cuando actives las tablas de inferencia en la sección de Unity Gateway. Para establecerlo mediante programación, especifique sampling_fraction en la configuración de telemetría del punto de conexión.
Volumen de punto de comprobación interno
Para soportar tablas de inferencia habilitadas por Unity Gateway, Azure Databricks crea un volumen interno en el esquema de la tabla de inferencia. El volumen tiene un nombre generado por el sistema con el formato <catalog>.<schema>.<payload table ID>_checkpoints. La eliminación de este volumen puede dejar mal formadas las tablas de inferencia. Azure Databricks elimina automáticamente el volumen al eliminar el punto de conexión de servicio correspondiente.
Limitaciones
- Cargas de trabajo de rendimiento aprovisionada:
- Si creas un nuevo modelo que sirve al endpoint que utiliza el rendimiento provisionado, solo se soportan tablas de inferencia habilitadas por Unity Gateway.
- Si tienes un endpoint de servicio de modelos existente que utiliza rendimiento provisionado y no tiene tablas de inferencia configuradas, puedes actualizarlo para que use tablas de inferencia habilitadas por Unity Gateway.
- Si tienes un endpoint de servicio de modelos existente que utiliza el rendimiento provisionado y tiene tablas de inferencia heredadas configuradas, debes desactivar la tabla de inferencia heredada antes de poder actualizar el endpoint para usar tablas de inferencia habilitadas por Unity Gateway.
- Después de habilitar tablas de inferencia habilitadas para Unity Gateway, no puedes cambiar a tablas de inferencia heredadas.
- En el caso de los registros de respuesta del agente de streaming, solo se agregan campos y seguimientos compatibles con ChatCompletion.
- Cargas de trabajo del modelo personalizado:
- Si creas un nuevo endpoint de servicio de modelos que sirva un modelo personalizado, Databricks recomienda utilizar tablas de inferencia habilitadas para Unity Gateway. Si se requiere la experiencia heredada de la tabla de inferencias, solo puedes configurar tu nuevo endpoint para Unity Gateway usando la API REST.
- Si tienes un endpoint de servicio de modelos existente que sirve a un modelo personalizado y no tiene tablas de inferencia configuradas, puedes actualizarlo para que use tablas de inferencia habilitadas por Unity Gateway.
- Si tienes un endpoint de servicio de modelos existente que sirve a un modelo personalizado y tiene tablas de inferencia heredadas configuradas, debes desactivar la tabla de inferencia heredada antes de poder actualizar el endpoint para usar tablas de inferencia habilitadas por Unity Gateway.
- Después de habilitar tablas de inferencia habilitadas para Unity Gateway, no puedes cambiar a tablas de inferencia heredadas.
- La entrega de registros de la tabla de inferencia podría verse afectada en los puntos de conexión de modelos personalizados con un rendimiento superior a 70 MB por segundo. Para administrar la entrega con un mayor rendimiento, reduzca la frecuencia de muestreo de la tabla de inferencia para reducir el volumen de solicitudes registradas.
- La entrega de registros de tablas de inferencia para los puntos de conexión de modelo de servicio que sirven a cargas de trabajo de API de Foundation Model, modelos externos o agentes es actualmente la mejor opción. Puede esperar que los registros estén disponibles en un plazo de 1 hora a partir de una solicitud. Póngase en contacto con el equipo de la cuenta de Databricks para obtener más información.
- El tamaño máximo de solicitud, respuesta y seguimiento registrado es 1 MiB (1048 576 bytes). Las cargas que superen esto se registran como
nullylogging_error_codesse rellenan conMAX_REQUEST_SIZE_EXCEEDEDoMAX_RESPONSE_SIZE_EXCEEDED. - Las tablas de inferencia para modelos optimizados para rutas que dan servicio a puntos de conexión se encuentran en Vista previa pública.
- No se garantiza que los registros de la tabla de inferencia se rellenen si el punto de servicio del modelo devuelve un error.
- En el caso de los puntos de conexión de modelo personalizados, es posible que los registros no se registren para errores 4xx o 5xx.
- Para otros puntos de conexión, es posible que los registros no se registren para errores 401, 403, 429 o 500.
Para limitaciones específicas de Unity Gateway, véase Limitaciones. Para conocer las limitaciones generales del punto de conexión del servicio de modelos, consulte Límites y regiones del servicio de modelos.