Compartir a través de


Implementación de modelos como implementaciones de API sin servidor

Importante

Los elementos marcados (versión preliminar) en este artículo se encuentran actualmente en versión preliminar pública. Esta versión preliminar se ofrece sin acuerdo de nivel de servicio y no se recomienda para las cargas de trabajo de producción. Es posible que algunas características no sean compatibles o que tengan sus funcionalidades limitadas. Para más información, consulte Términos de uso complementarios para las versiones preliminares de Microsoft Azure.

En este artículo, aprenderá a implementar un modelo de Azure AI Foundry como una implementación de API sin servidor. Algunos modelos del catálogo de modelos se pueden implementar como una implementación de API sin servidor. Este tipo de implementación proporciona una forma de consumir modelos como API sin alojarlos en su suscripción, al tiempo que mantiene la seguridad y el cumplimiento empresarial que necesitan las organizaciones. Esta opción de implementación no requiere cuota de la suscripción.

Aunque la implementación de API sin servidor es una opción para implementar modelos de Azure AI Foundry, se recomienda implementar modelos de Foundry en recursos de Azure AI Foundry.

Nota:

Se recomienda implementar modelos de Azure AI Foundry en Recursos de Azure AI Foundry para que pueda consumir las implementaciones en el recurso a través de un único punto de conexión con la misma autenticación y esquema para generar inferencia. El punto de conexión sigue la API de inferencia de modelos de Azure AI que admiten todos los modelos de Foundry. Para obtener información sobre cómo implementar un modelo foundry en los recursos de Azure AI Foundry, consulte Incorporación y configuración de modelos a modelos de Azure AI Foundry.

Prerrequisitos

  • Una suscripción de Azure con un método de pago válido. Las suscripciones gratuitas o de evaluación de Azure no funcionarán. Si no tiene una suscripción de Azure, cree una cuenta de Azure de pago para comenzar.

  • Si no tiene uno, cree un proyectobasado en concentrador.

  • Asegúrese de que la característica Implementación de modelos en recursos de Azure AI Foundry (versión preliminar) está desactivada en el portal de Azure AI Foundry. Cuando esta característica está activada, las implementaciones de API sin servidor no están disponibles en el portal.

    Captura de pantalla del portal de Azure AI Foundry en la que se muestra dónde deshabilitar la implementación en los recursos de Azure AI Foundry.

  • Los modelos foundry de asociados y la comunidad requieren acceso a Azure Marketplace, mientras que los modelos foundry vendidos directamente por Azure no tienen este requisito. Asegúrese de que tiene los permisos necesarios para suscribirse a ofertas de modelos en Azure Marketplace.

  • Los controles de acceso basados en roles de Azure (Azure RBAC) se utilizan para otorgar acceso a las operaciones en el portal de Azure AI Foundry. Para realizar los pasos descritos en este artículo, la cuenta de usuario debe tener asignado el rol Desarrollador de Azure AI en el grupo de recursos. Para más información sobre los permisos, consulte el control de acceso basado en roles en el portal de Azure AI Foundry.

  • Puede usar cualquier explorador web compatible para navegar por Azure AI Foundry.

Búsqueda del modelo en el catálogo de modelos

  1. Inicie sesión en Azure AI Foundry.
  2. Si aún no está en el proyecto, selecciónelo.
  3. Seleccione Catálogo de modelos en el panel izquierdo.
  1. Seleccione la tarjeta de modelo del modelo que desea implementar. En este artículo, selecciona un modelo DeepSeek-R1.

  2. Seleccione Usar este modelo para abrir la ventana de implementación de API sin servidor , donde puede ver la pestaña Precios y términos .

  3. En el asistente para la implementación, asigne un nombre a la implementación. La opción Filtro de contenido (versión preliminar) está habilitada de manera predeterminada. Deje la configuración predeterminada para que el servicio detecte contenido dañino, como odio, autolesión, contenido sexual y violento. Para más información sobre el filtrado de contenido, consulte Filtrado de contenido en el portal de Azure AI Foundry.

    Captura de pantalla que muestra el Asistente para la implementación de un modelo vendido directamente por Azure.

Implementación del modelo en una API sin servidor

En esta sección, creará un punto de conexión para el modelo.

  1. En el Asistente para la implementación, seleccione Implementar. Espere hasta que la implementación esté lista y se le redirigirá a la página Implementaciones.

  2. Para ver los puntos de conexión implementados en el proyecto, en la sección Mis recursos del panel izquierdo, seleccione Modelos y puntos de conexión.

  3. El punto de conexión creado usa la autenticación de clave para la autorización. Para obtener las claves asociadas a un punto de conexión determinado, siga estos pasos:

    1. Seleccione la implementación y anote el URI de destino y la clave del punto de conexión.

    2. Utiliza estas credenciales para invocar la implementación y generar predicciones.

  4. Si necesita consumir esta implementación desde otro proyecto o hub, o planea usar Prompt flow para desarrollar aplicaciones inteligentes, debe crear una conexión a la implementación de API sin servidor. Para obtener información sobre cómo configurar una implementación de API sin servidor existente en un nuevo proyecto o hub, consulte Consumir una implementación de API sin servidor desplegada desde un proyecto diferente o desde Prompt flow.

    Sugerencia

    Si estás usando Prompt flow en el mismo proyecto o centro donde se realizó el despliegue, aún necesitas crear la conexión.

Uso de la implementación de api sin servidor

Los modelos implementados en Azure Machine Learning y Azure AI Foundry en implementaciones de API sin servidor admiten la API de inferencia de modelos de Azure AI que expone un conjunto común de funcionalidades para modelos fundamentales y que los desarrolladores pueden usar para consumir predicciones de un conjunto diverso de modelos de forma uniforme y coherente.

Obtenga más información sobre las Funcionalidades de esta API y cómo usarla al compilar aplicaciones.

Eliminación de puntos de conexión y suscripciones

Sugerencia

Dado que puede personalizar el panel izquierdo en el portal de Azure AI Foundry, es posible que vea elementos diferentes de los que se muestran en estos pasos. Si no ve lo que busca, seleccione ... Más en la parte inferior del panel izquierdo.

Puede eliminar suscripciones y puntos de conexión del modelo. La eliminación de una suscripción modelo hace que cualquier punto de conexión asociado se convierta en Incorrecto e inutilizable.

Para eliminar una implementación de API sin servidor:

  1. Vaya al Fundición de IA de Azure.
  2. Vaya a su proyecto.
  3. En la sección Mis recursos, seleccione Modelos y puntos de conexión.
  4. Abra la implementación que desea eliminar.
  5. Seleccione Eliminar.

Para eliminar la suscripción del modelo asociado:

  1. Vaya a Azure Portal.
  2. Vaya al grupo de recursos al que pertenece el proyecto.
  3. En el filtroTipo, seleccione SaaS.
  4. Seleccione la suscripción que quiere eliminar.
  5. Seleccione Eliminar.
  • Para trabajar con Azure AI Foundry, instale la CLI de Azure y la extensión ml para Azure Machine Learning.

    az extension add -n ml
    

    Si ya tiene instalada la extensión, asegúrese de que está instalada la versión más reciente.

    az extension update -n ml
    

    Una vez instalada la extensión, configúrela:

    az account set --subscription <subscription>
    az configure --defaults workspace=<project-name> group=<resource-group> location=<location>
    

Búsqueda del modelo en el catálogo de modelos

  1. Inicie sesión en Azure AI Foundry.
  2. Si aún no está en el proyecto, selecciónelo.
  3. Seleccione Catálogo de modelos en el panel izquierdo.
  1. Seleccione la tarjeta de modelo del modelo que desea implementar. En este artículo, selecciona un modelo DeepSeek-R1.

  2. Copie el identificador de modelo sin incluir la versión del modelo, ya que las implementaciones de API sin servidor siempre implementan la versión más reciente del modelo disponible. Por ejemplo, para el identificador de modelo azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1, copie azureml://registries/azureml-deepseek/models/DeepSeek-R1.

    Captura de pantalla que muestra la página de detalles de un modelo para un modelo vendido directamente por Azure.

Los pasos de esta sección del artículo usan el modelo DeepSeek-R1 para la ilustración. Los pasos son los mismos, ya sea que use Foundry Models vendidos directamente por Azure o Foundry Models de asociados y comunidad. Por ejemplo, si decide implementar el modelo Cohere-command-r-08-2024 en su lugar, puede reemplazar las credenciales del modelo en los fragmentos de código por las credenciales de Cohere.

Implementación del modelo en una API sin servidor

En esta sección, creará un punto de conexión para el modelo. Asigne al punto de conexión el nombre DeepSeek-R1-qwerty.

  1. Cree el punto de conexión sin servidor.

    endpoint.yml

    name: DeepSeek-R1-qwerty
    model_id: azureml://registries/azureml-deepseek/models/DeepSeek-R1
    

    Use el archivo endpoint.yml para crear el punto de conexión:

    az ml serverless-endpoint create -f endpoint.yml
    
  2. En cualquier momento, puede ver los puntos de conexión implementados en el proyecto:

    az ml serverless-endpoint list
    
  3. El punto de conexión creado usa la autenticación de clave para la autorización. Siga estos pasos para obtener las claves asociadas a un punto de conexión determinado.

    az ml serverless-endpoint get-credentials -n DeepSeek-R1-qwerty
    
  4. Si necesita consumir esta implementación desde otro proyecto o hub, o planea usar Prompt flow para desarrollar aplicaciones inteligentes, debe crear una conexión a la implementación de API sin servidor. Para obtener información sobre cómo configurar una implementación de API sin servidor existente en un nuevo proyecto o hub, consulte Consumir una implementación de API sin servidor desplegada desde un proyecto diferente o desde Prompt flow.

    Sugerencia

    Si estás usando Prompt flow en el mismo proyecto o centro donde se realizó el despliegue, aún necesitas crear la conexión.

Uso de la implementación de api sin servidor

Los modelos implementados en Azure Machine Learning y Azure AI Foundry en implementaciones de API sin servidor admiten la API de inferencia de modelos de Azure AI que expone un conjunto común de funcionalidades para modelos fundamentales y que los desarrolladores pueden usar para consumir predicciones de un conjunto diverso de modelos de forma uniforme y coherente.

Obtenga más información sobre las Funcionalidades de esta API y cómo usarla al compilar aplicaciones.

Eliminación de puntos de conexión y suscripciones

Puede eliminar suscripciones y puntos de conexión del modelo. La eliminación de una suscripción modelo hace que cualquier punto de conexión asociado se convierta en Incorrecto e inutilizable.

Para eliminar una implementación de API sin servidor:

az ml serverless-endpoint delete \
    --name "DeepSeek-R1-qwerty"

Para eliminar la suscripción del modelo asociado:

az ml marketplace-subscription delete \
    --name "DeepSeek-R1"
  • Para trabajar con Azure AI Foundry, instale el SDK de Azure Machine Learning para Python.

    pip install -U azure-ai-ml
    

    Una vez instalado, importe los espacios de nombres necesarios y cree un cliente conectado al proyecto:

    from azure.ai.ml import MLClient
    from azure.identity import InteractiveBrowserCredential
    from azure.ai.ml.entities import MarketplaceSubscription, ServerlessEndpoint
    
    client = MLClient(
        credential=InteractiveBrowserCredential(tenant_id="<tenant-id>"),
        subscription_id="<subscription-id>",
        resource_group_name="<resource-group>",
        workspace_name="<project-name>",
    )
    

Búsqueda del modelo en el catálogo de modelos

  1. Inicie sesión en Azure AI Foundry.
  2. Si aún no está en el proyecto, selecciónelo.
  3. Seleccione Catálogo de modelos en el panel izquierdo.
  1. Seleccione la tarjeta de modelo del modelo que desea implementar. En este artículo, selecciona un modelo DeepSeek-R1.

  2. Copie el identificador de modelo sin incluir la versión del modelo, ya que las implementaciones de API sin servidor siempre implementan la versión más reciente del modelo disponible. Por ejemplo, para el identificador de modelo azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1, copie azureml://registries/azureml-deepseek/models/DeepSeek-R1.

    Captura de pantalla que muestra la página de detalles de un modelo para un modelo vendido directamente por Azure.

Los pasos de esta sección del artículo usan el modelo DeepSeek-R1 para la ilustración. Los pasos son los mismos, ya sea que use Foundry Models vendidos directamente por Azure o Foundry Models de asociados y comunidad. Por ejemplo, si decide implementar el modelo Cohere-command-r-08-2024 en su lugar, puede reemplazar las credenciales del modelo en los fragmentos de código por las credenciales de Cohere.

Implementación del modelo en una API sin servidor

En esta sección, creará un punto de conexión para el modelo. Asigne al punto de conexión el nombre DeepSeek-R1-qwerty.

  1. Cree el punto de conexión sin servidor.

    endpoint_name="DeepSeek-R1-qwerty"
    
    serverless_endpoint = ServerlessEndpoint(
        name=endpoint_name,
        model_id=model_id
    )
    
    created_endpoint = client.serverless_endpoints.begin_create_or_update(
        serverless_endpoint
    ).result()
    
  2. En cualquier momento, puede ver los puntos de conexión implementados en el proyecto:

    endpoint_name="DeepSeek-R1-qwerty"
    
    serverless_endpoint = ServerlessEndpoint(
        name=endpoint_name,
        model_id=model_id
    )
    
    created_endpoint = client.serverless_endpoints.begin_create_or_update(
        serverless_endpoint
    ).result()
    
  3. El punto de conexión creado usa la autenticación de clave para la autorización. Siga estos pasos para obtener las claves asociadas a un punto de conexión determinado.

    endpoint_keys = client.serverless_endpoints.get_keys(endpoint_name)
    print(endpoint_keys.primary_key)
    print(endpoint_keys.secondary_key)
    
  4. Si necesita consumir esta implementación desde otro proyecto o hub, o planea usar Prompt flow para desarrollar aplicaciones inteligentes, debe crear una conexión a la implementación de API sin servidor. Para obtener información sobre cómo configurar una implementación de API sin servidor existente en un nuevo proyecto o hub, consulte Consumir una implementación de API sin servidor desplegada desde un proyecto diferente o desde Prompt flow.

    Sugerencia

    Si estás usando Prompt flow en el mismo proyecto o centro donde se realizó el despliegue, aún necesitas crear la conexión.

Uso de la implementación de api sin servidor

Los modelos implementados en Azure Machine Learning y Azure AI Foundry en implementaciones de API sin servidor admiten la API de inferencia de modelos de Azure AI que expone un conjunto común de funcionalidades para modelos fundamentales y que los desarrolladores pueden usar para consumir predicciones de un conjunto diverso de modelos de forma uniforme y coherente.

Obtenga más información sobre las Funcionalidades de esta API y cómo usarla al compilar aplicaciones.

Eliminación de puntos de conexión y suscripciones

Puede eliminar suscripciones y puntos de conexión del modelo. La eliminación de una suscripción modelo hace que cualquier punto de conexión asociado se convierta en Incorrecto e inutilizable.

client.serverless_endpoints.begin_delete(endpoint_name).wait()

Para eliminar la suscripción del modelo asociado:

client.marketplace_subscriptions.begin_delete(subscription_name).wait()
  • Para trabajar con Azure AI Foundry, instale la CLI de Azure como se describe en la CLI de Azure.

    Configure las siguientes variables de entorno según la configuración:

    RESOURCE_GROUP="serverless-models-dev"
    LOCATION="eastus2" 
    

Búsqueda del modelo en el catálogo de modelos

  1. Inicie sesión en Azure AI Foundry.
  2. Si aún no está en el proyecto, selecciónelo.
  3. Seleccione Catálogo de modelos en el panel izquierdo.
  1. Seleccione la tarjeta de modelo del modelo que desea implementar. En este artículo, selecciona un modelo DeepSeek-R1.

  2. Copie el identificador de modelo sin incluir la versión del modelo, ya que las implementaciones de API sin servidor siempre implementan la versión más reciente del modelo disponible. Por ejemplo, para el identificador de modelo azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1, copie azureml://registries/azureml-deepseek/models/DeepSeek-R1.

    Captura de pantalla que muestra la página de detalles de un modelo para un modelo vendido directamente por Azure.

Los pasos de esta sección del artículo usan el modelo DeepSeek-R1 para la ilustración. Los pasos son los mismos, ya sea que use Foundry Models vendidos directamente por Azure o Foundry Models de asociados y comunidad. Por ejemplo, si decide implementar el modelo Cohere-command-r-08-2024 en su lugar, puede reemplazar las credenciales del modelo en los fragmentos de código por las credenciales de Cohere.

Implementación del modelo en una API sin servidor

En esta sección, creará un punto de conexión para el modelo. Asigne al punto de conexión el nombre myserverless-text-1234ss.

  1. Cree el punto de conexión sin servidor. Use la plantilla siguiente para crear un punto de conexión:

    serverless-endpoint.bicep

    param projectName string = 'my-project'
    param endpointName string = 'myserverless-text-1234ss'
    param location string = resourceGroup().location
    param modelId string = 'azureml://registries/azureml-deepseek/models/DeepSeek-R1'
    
    var modelName = substring(modelId, (lastIndexOf(modelId, '/') + 1))
    var subscriptionName = '${modelName}-subscription'
    
    resource projectName_endpoint 'Microsoft.MachineLearningServices/workspaces/serverlessEndpoints@2024-04-01-preview' = {
      name: '${projectName}/${endpointName}'
      location: location
      sku: {
        name: 'Consumption'
      }
      properties: {
        modelSettings: {
          modelId: modelId
        }
      }
      dependsOn: [
        projectName_subscription
      ]
    }
    
    output endpointUri string = projectName_endpoint.properties.inferenceEndpoint.uri
    

    Cree la implementación como se indica a continuación:

    az deployment group create --resource-group $RESOURCE_GROUP --template-file model-subscription.bicep
    
  2. En cualquier momento, puede ver los puntos de conexión implementados en el proyecto:

    Puede usar las herramientas de administración de recursos para consultar los recursos. El código siguiente usa la CLI de Azure:

    az resource list \
        --query "[?type=='Microsoft.MachineLearningServices/workspaces/serverlessEndpoints']"
    
  3. El punto de conexión creado usa la autenticación de clave para la autorización. Obtenga las claves asociadas al punto de conexión especificado mediante las API REST para consultar esta información.

  4. Si necesita consumir esta implementación desde otro proyecto o hub, o planea usar Prompt flow para desarrollar aplicaciones inteligentes, debe crear una conexión a la implementación de API sin servidor. Para obtener información sobre cómo configurar una implementación de API sin servidor existente en un nuevo proyecto o hub, consulte Consumir una implementación de API sin servidor desplegada desde un proyecto diferente o desde Prompt flow.

    Sugerencia

    Si estás usando Prompt flow en el mismo proyecto o centro donde se realizó el despliegue, aún necesitas crear la conexión.

Uso de la implementación de api sin servidor

Los modelos implementados en Azure Machine Learning y Azure AI Foundry en implementaciones de API sin servidor admiten la API de inferencia de modelos de Azure AI que expone un conjunto común de funcionalidades para modelos fundamentales y que los desarrolladores pueden usar para consumir predicciones de un conjunto diverso de modelos de forma uniforme y coherente.

Obtenga más información sobre las Funcionalidades de esta API y cómo usarla al compilar aplicaciones.

Eliminación de puntos de conexión y suscripciones

Puede eliminar suscripciones y puntos de conexión del modelo. La eliminación de una suscripción modelo hace que cualquier punto de conexión asociado se convierta en Incorrecto e inutilizable.

Puede usar las herramientas de administración de recursos para administrar los recursos. El código siguiente usa la CLI de Azure:

az resource delete --name <resource-name>

Consideraciones de costo y cuota para los modelos de Foundry implementados como una implementación de API sin servidor

La cuota se gestiona por cada implementación. Cada implementación tiene un límite de velocidad de 200 000 tokens por minuto y 1000 solicitudes de API por minuto. Además, actualmente limitamos una implementación por modelo por proyecto. Póngase en contacto con el Soporte técnico de Microsoft Azure si los límites de velocidad actuales no son suficientes para sus escenarios.

  • Puede encontrar información de precios para modelos vendidos directamente por Azure, en la pestaña Precios y términos de la ventana de implementación de API sin servidor.

  • Los modelos de asociados y la comunidad se ofrecen a través de Azure Marketplace e integrados con Azure AI Foundry para su uso. Puede encontrar precios de Azure Marketplace al implementar o ajustar estos modelos. Cada vez que un proyecto se suscribe a una oferta determinada de Azure Marketplace, se crea un nuevo recurso para realizar un seguimiento de los costos asociados a su consumo. El mismo recurso se usa para hacer un seguimiento de los costos asociados con la inferencia y la optimización. Sin embargo, hay varios medidores disponibles para hacer un seguimiento de cada escenario de forma independiente. Para más información sobre cómo realizar un seguimiento de los costos, consulte Supervisar los costos de los modelos ofrecidos a través de Azure Marketplace.

Permisos necesarios para suscribirse a ofertas de modelo

Los controles de acceso basados en roles de Azure (Azure RBAC) se utilizan para otorgar acceso a las operaciones en el portal de Azure AI Foundry. Para realizar los pasos descritos en este artículo, se debe asignar a la cuenta de usuario el rol de Propietario, Colaborador o Rol de desarrollador de Inteligencia artificial de Azure para la suscripción de Azure. Como alternativa, a la cuenta se le puede asignar un rol personalizado que tenga los permisos siguientes:

  • En la suscripción de Azure: para suscribir el área de trabajo a la oferta de Azure Marketplace, una vez para cada área de trabajo, por oferta:

    • Microsoft.MarketplaceOrdering/agreements/offers/plans/read
    • Microsoft.MarketplaceOrdering/agreements/offers/plans/sign/action
    • Microsoft.MarketplaceOrdering/offerTypes/publishers/offers/plans/agreements/read
    • Microsoft.Marketplace/offerTypes/publishers/offers/plans/agreements/read
    • Microsoft.SaaS/register/action
  • En el grupo de recursos, para crear y usar el recurso de SaaS:

    • Microsoft.SaaS/resources/read
    • Microsoft.SaaS/resources/write
  • En el área de trabajo—para implementar puntos de conexión (el rol científico de datos de Azure Machine Learning ya contiene estos permisos):

    • Microsoft.MachineLearningServices/workspaces/marketplaceModelSubscriptions/*
    • Microsoft.MachineLearningServices/workspaces/serverlessEndpoints/*

Para más información sobre los permisos, consulte el control de acceso basado en roles en el portal de Azure AI Foundry.