Servicio de modelos con Azure Databricks
En este artículo se describe Mosaic AI Model Serving, incluidas sus ventajas y limitaciones.
¿Qué es Mosaic AI Model Serving?
Mosaic AI Model Serving proporciona una interfaz unificada para implementar, controlar y consultar modelos de IA para la inferencia por lotes y en tiempo real. Cada modelo que sirva está disponible como una API de REST que puede integrar en la aplicación web o cliente.
Model Serving proporciona un servicio de alta disponibilidad y baja latencia para implementar modelos. El servicio se escala o reduce verticalmente automáticamente para satisfacer los cambios de demanda, lo que ahorra costos de infraestructura al optimizar el rendimiento de la latencia. Esta funcionalidad usa un proceso sin servidor. Para más información, consulte la página precios de Model Serving.
El servicio de modelos admite el servicio a:
- Modelos personalizados. Estos son modelos de Python empaquetados en el formato MLflow. Se pueden registrar en el catálogo de Unity o en el registro del modelo del área de trabajo. Algunos ejemplos son los modelos de transformador scikit-learn, XGBoost, PyTorch y Hugging Face.
- El servicio de agente se admite como un modelo personalizado. Consulte Implementación de un agente para una aplicación de IA generativa.
- Modelos abiertos de última generación disponibles por las API de Foundation Model. Estos modelos son arquitecturas de modelos fundamentales mantenidos que admiten la inferencia optimizada. Los modelos base, como Meta-Llama-3.1-70B-Instruct, GTE-Large y Mistral-7B están disponibles para su uso inmediato con precios de pago por token y las cargas de trabajo que requieren garantías de rendimiento y variantes de modelo optimizadas se pueden implementar con rendimiento aprovisionado.
- Databricks recomienda usar
ai_query
con Model Serving para la inferencia por lotes. Para la experimentación rápida,ai_query
se puede usar con puntos de conexión de pago por token. Cuando esté listo para ejecutar la inferencia por lotes en datos grandes o de producción, Databricks recomienda usar puntos de conexión de rendimiento aprovisionados para un rendimiento más rápido. Consulte Api de modelo de rendimiento aprovisionado para obtener información sobre cómo crear un punto de conexión de rendimiento aprovisionado.- Consulte Realización de la inferencia por lotes mediante ai_query.
- Para empezar a trabajar con la inferencia por lotes con llms en tablas del catálogo> de Unity, consulte los ejemplos de cuadernos de inferencia por lotes mediante las API de Foundation Model aprovisionadas.
- Databricks recomienda usar
- Modelos externos. Estos son modelos de IA generativa hospedados fuera de Databricks. Algunos ejemplos son modelos como GPT-4 de OpenAI, Claude de Anthropic y otros. Los puntos de conexión que sirven a modelos externos se pueden regular de forma centralizada y los clientes pueden establecer límites de velocidad y control de acceso para ellos.
Nota:
Puede interactuar con modelos de lenguaje grandes compatibles mediante AI Playground. AI Playground es un entorno similar al chat en el que puede probar, preguntar y comparar los LLM. Esta funcionalidad está disponible en el área de trabajo de Azure Databricks.
El servicio de modelos ofrece una API REST y la API de implementación de MLflow para CRUD y tareas de consulta. Además, proporciona una sola interfaz de usuario para administrar todos los modelos y sus respectivos puntos de conexión de servicio. También puede acceder a modelos directamente desde SQL mediante funciones de IA para facilitar la integración en flujos de trabajo de análisis.
Para ver un tutorial introductorio sobre cómo servir modelos personalizados en Azure Databricks, consulte Tutorial: Implementación y consulta de un modelo personalizado.
Para ver un tutorial de introducción sobre cómo consultar un modelo básico en Databricks, consulte Introducción a la consulta de LLM en Databricks.
¿Por qué usar Model Serving?
- Implementar y consultar cualquier modelo: Model Serving proporciona una interfaz unificada que permite administrar todos los modelos en una ubicación y consultarlos con una sola API, independientemente de si se hospedan en Databricks o externamente. Este enfoque simplifica el proceso de experimentar con, personalizar e implementar modelos en producción en varias nubes y proveedores.
- Personalizar de forma segura los modelos con los datos privados: basado en una plataforma de Data Intelligence, Model Serving simplifica la integración de características e incrustaciones en modelos mediante la integración nativa con el almacén de características de Databricks y el Vector de búsqueda de Mosaic AI. Para mejorar aún más la precisión y la comprensión contextual, los modelos se pueden ajustar con datos propietarios e implementarse sin esfuerzo en Model Serving.
- Controlar y supervisar modelos: la interfaz de usuario de Serving permite administrar de forma centralizada todos los puntos de conexión de modelo en un solo lugar, incluidos los que se hospedan externamente. Puede administrar los permisos, realizar un seguimiento de los límites de uso y establecerlos, así como supervisar la calidad de todos los tipos de modelos. Esto le permite democratizar el acceso a SaaS y abrir LLM dentro de su organización, a la vez que garantiza que se han implementado límites de protección adecuados.
- Reducir el costo con inferencia optimizada y escalado rápido: Databricks ha implementado una serie de optimizaciones para asegurarse de obtener el mejor rendimiento y latencia para modelos grandes. Los puntos de conexión se escalan o reducen verticalmente automáticamente para satisfacer los cambios de demanda, lo que ahorra costos de infraestructura al optimizar el rendimiento de la latencia. Supervise los costos de servicio del modelo.
Nota:
En el caso de las cargas de trabajo sensibles a la latencia o que implican un gran número de consultas por segundo, Databricks recomienda usar la optimización de rutas en los puntos de conexión de servicio de modelos personalizados. Póngase en contacto con el equipo de la cuenta de Databricks para asegurarse de que el área de trabajo está habilitada para lograr una alta escalabilidad.
- Ofrecer confiabilidad y seguridad a Model Serving: Model Serving está diseñado para el uso de producción de alta disponibilidad y baja latencia, y puede admitir más de 25 000 consultas por segundo con una latencia de sobrecarga de menos de 50 ms. Las cargas de trabajo de servicio están protegidas por varias capas de seguridad, lo que garantiza un entorno seguro y confiable para incluso las tareas más confidenciales.
Nota:
El Servicio de modelos no proporciona parches de seguridad a las imágenes de modelos existentes debido al riesgo de desestabilización de las implementaciones de producción. Una nueva imagen de modelo creada a partir de una nueva versión del modelo contendrá las revisiones más recientes. Póngase en contacto con el equipo de la cuenta de Databricks para obtener más información.
Requisitos
- Modelo registrado en el catálogo de Unity o el registro del modelo del área de trabajo.
- Permisos en los modelos registrados como se describe en ACL de punto de conexión de servicio.
- MLflow 1.29 o superior.
- Si usa Azure Private Link para respetar las reglas de entrada relacionadas con las redes configuradas en el área de trabajo, Azure Private Link solo se admite para los puntos de conexión de servicio de modelos que usan el rendimiento aprovisionado o los puntos de conexión que atienden modelos personalizados. Consulte Configuración de la conectividad privada desde un proceso sin servidor.
Habilite el servicio de modelos para su área de trabajo
No se requieren pasos adicionales para habilitar Model Serving en el área de trabajo.
Limitaciones y disponibilidad de región
Mosaic AI Model Serving impone límites predeterminados para garantizar un rendimiento confiable. Consulte límites de servicio de modelos y regiones. Si tiene comentarios sobre estos límites o un punto de conexión en una región no admitida, póngase en contacto con el equipo de la cuenta de Databricks.
Protección de datos en Servicio de modelos
Databricks se toma muy en serio la seguridad de los datos. Databricks comprende la importancia de los datos que analiza mediante Mosaic AI Model Serving e implementa los siguientes controles de seguridad para proteger los datos.
- Cada solicitud de un cliente al Servicio de modelos está lógicamente aislada, autentificada y autorizada.
- Mosaic AI Model Serving cifra todos los datos en reposo (AES-256) y en tránsito (TLS 1.2+).
Para todas las cuentas de pago, Mosaic AI Model Serving no usa entradas de usuario enviadas al servicio ni salidas del servicio para entrenar ningún modelo ni mejorar los servicios de Databricks.
En el caso de las API de Foundation Model de Databricks, como parte de la prestación del servicio, Databricks puede procesar y almacenar temporalmente entradas y salidas con el fin de prevenir, detectar y mitigar abusos o usos perjudiciales. Sus entradas y salidas están aisladas de las de otros clientes, almacenadas en la misma región que su área de trabajo durante un máximo de treinta (30) días, y solo accesibles para detectar y responder a problemas de seguridad o abuso. Foundation Model API es un servicio designado de Databricks, lo que significa que se adhiere a los límites de residencia de datos implementados por Databricks Geos.
Recursos adicionales
- Introducción a la consulta de LLM en Databricks.
- Tutorial: Implementación y consulta de un modelo personalizado
- Introducción a la creación de aplicaciones generadas con IA en Databricks
- Implementación de modelos personalizados.
- Migrar al servicio de modelos
- Migración de puntos de conexión de servicio de LLM optimizados a rendimiento aprovisionado