Compartir a través de


Tutorial: Implementación y consulta de un modelo personalizado

En este artículo se proporcionan los pasos básicos para implementar y consultar un modelo personalizado, que es un modelo de ML tradicional, instalado en el Catálogo de Unity o registrado en el registro de modelos del área de trabajo mediante Mosaic AI Model Serving.

A continuación se muestran guías que describen el servicio e implementación de un modelo de base para la inteligencia artificial generativa y LLM:

Paso 1: Registre el modelo en el registro de modelos

Hay diferentes maneras de registrar el modelo para el servicio de modelos:

Técnica de registro Descripción
Registro automático Esto se activa automáticamente cuando se usa Databricks Runtime para el aprendizaje automático. Es la manera más fácil, aunque le da menos control.
Registro con los tipos integrados de MLflow Puede registrar manualmente el modelo con los tipos de modelo integrados de MLflow.
Registro personalizado con pyfunc Úselo si tiene un modelo personalizado o si necesita pasos adicionales antes o después de la inferencia.

En el ejemplo siguiente se muestra cómo registrar el modelo de MLflow con el tipo transformer y cómo especificar los parámetros que necesita para el modelo.

with mlflow.start_run():
    model_info = mlflow.transformers.log_model(
        transformers_model=text_generation_pipeline,
        artifact_path="my_sentence_generator",
        inference_config=inference_config,
        registered_model_name='gpt2',
        input_example=input_example,
        signature=signature
    )

Una vez registrado el modelo, asegúrese de comprobar que esté registrado en Unity Catalog de MLflow o en el Registro de modelos.

Paso 2: Cree un punto de conexión mediante la interfaz de usuario de servicio

Una vez registrado el modelo y esté listo para servirlo, puede crear un punto de conexión de servicio de modelos mediante la interfaz de usuario de Servicio.

  1. Haga clic en Servicio en la barra lateral para mostrar la interfaz de usuario de Servicio.

  2. Haga clic en Crear punto de conexión de servicio.

    Panel de servicio de modelos en la interfaz de usuario de Databricks

  3. En el campo Nombre, proporcione un nombre para el punto de conexión.

  4. En la sección Entidades atendidas

    1. Haga clic en el campo Entidad para abrir el formulario Seleccionar entidad atendida.
    2. Seleccione el tipo de modelo que desea servir. El formulario se actualiza dinámicamente en función de la selección.
    3. Seleccione el modelo y la versión del modelo que desea servir.
    4. Seleccione el porcentaje de tráfico que se va a enrutar al modelo servido.
    5. Seleccione el tamaño de proceso que se va a usar. Puede usar los procesos de CPU o GPU para las cargas de trabajo. La compatibilidad con el servicio de modelos en GPU está en Versión preliminar pública. Consulte Tipos de carga de trabajo de GPU para obtener más información sobre los procesos de GPU disponibles.
    6. En Escalabilidad horizontal de procesos, seleccione el tamaño de la escalabilidad horizontal de procesos que se corresponda con el número de solicitudes que puede procesar este modelo servido al mismo tiempo. Este número debe ser aproximadamente igual al tiempo de ejecución del modelo QPS x.
      1. Los tamaños disponibles son Pequeño para 0 a 4 solicitudes, Medio para 8 a 16 solicitudes y Grande para 16 a 64 solicitudes.
    7. Especifique si el punto de conexión debe escalar a cero cuando no esté en uso.
  5. Haga clic en Crear. La página Puntos de conexión de servicio aparece con el estado Punto de conexión de servicio que se muestra como No listo.

    Creación de un punto de conexión para servir modelos

Si prefiere crear un punto de conexión mediante programación con Databricks Serving API, consulte Crear puntos de conexión de servicio de modelo personalizado.

Paso 3: Genere una consulta del punto de conexión

La manera más sencilla y rápida de probar y enviar solicitudes de puntuación al modelo servido es usar la interfaz de usuario del Servicio.

  1. En la página Punto de conexión de servicio, seleccione Punto de conexión de consulta.

  2. Inserte los datos de entrada del modelo en formato JSON y haga clic en Enviar solicitud. Si el modelo se ha registrado con un ejemplo de entrada, haga clic en Mostrar ejemplo para cargar el ejemplo de entrada.

       {
       "inputs" : ["Hello, I'm a language model,"],
       "params" : {"max_new_tokens": 10, "temperature": 1}
       }
    

Para enviar solicitudes de puntuación, cree un JSON con una de las claves admitidas y un objeto JSON correspondiente al formato de entrada. Vea Consulta de puntos de conexión de servicio para modelos personalizados para conocer los formatos admitidos e instrucciones sobre cómo enviar solicitudes de puntuación mediante la API.

Si tiene previsto acceder al punto de conexión de servicio fuera de la interfaz de usuario de servicio de Azure Databricks, necesita un DATABRICKS_API_TOKEN.

Importante

Como procedimiento recomendado de seguridad para escenarios de producción, Databricks recomienda usar Tokens de OAuth de máquina a máquina para la autenticación durante la producción.

Para pruebas y desarrollo, Databricks recomienda usar un token de acceso personal que pertenezca a entidades de servicio en lugar de usuarios del área de trabajo. Para crear tókenes para entidades de servicio, consulte Administración de tokens de acceso para una entidad de servicio.

Cuadernos de ejemplo

Consulte el siguiente cuaderno para servir un modelo de MLflow transformers con Model Serving.

Implementación de un cuaderno de modelos transformers de Hugging Face

Obtener el cuaderno

Consulte el siguiente cuaderno para servir un modelo pyfunc de MLflow con Model Serving. Para más información sobre cómo personalizar las implementaciones de modelos, consulte Implementación de código de Python con Servicio de modelos.

Implementación de un cuaderno de modelos pyfunc de MLflow

Obtener el cuaderno