Implementação de modelos como APIs sem servidor (clássico)

Aplica-se apenas a:Portal Foundry (clássico). Este artigo não está disponível para o novo portal da Foundry. Saiba mais sobre o novo portal.

Nota

Os links neste artigo podem abrir conteúdo na nova documentação do Microsoft Foundry em vez da documentação do Foundry (clássico) que está a ver agora.

Importante

Os itens marcados (pré-visualização) neste artigo encontram-se atualmente em pré-visualização pública. Esta pré-visualização é fornecida sem um acordo de nível de serviço, e não a recomendamos para cargas de trabalho em produção. Certas funcionalidades podem não ser suportadas ou podem ter capacidades limitadas. Para mais informações, consulte Termos de Utilização Suplementares para Microsoft Azure Pré-visualizações.

Neste artigo, aprende como implementar um Modelo Microsoft Foundry como uma implementação de API serverless. Certos modelos no catálogo de modelos podem ser implementados como uma implementação de API serverless. Este tipo de implementação oferece uma forma de consumir modelos como uma API sem os hospedar na sua subscrição, mantendo a segurança e conformidade empresariais de que as organizações necessitam. Esta opção de implementação não exige quota da sua subscrição.

Embora a implementação de APIs serverless seja uma opção para implementar Modelos Foundry, recomendamos que implemente Modelos Foundry para recursos Foundry.

Nota

Recomendamos que implemente Modelos Microsoft Foundry em recursos Foundry para que possa utilizar as suas implementações no recurso através de um único endpoint com a mesma autenticação e esquema para obter inferência. O endpoint segue a API de Inferência de Modelos de IA Azure que todos os Modelos Foundry suportam. Para saber como implementar um Modelo Foundry nos recursos Foundry, consulte Adicionar e configurar modelos nos Modelos Foundry.

Pré-requisitos

  • Uma subscrição do Azure com um método de pagamento válido. Subscrições gratuitas ou de teste no Azure não funcionam. Se não tiver uma subscrição do Azure, crie uma conta do Azure paga para começar.

  • Se não tiveres um, cria um projeto baseado em hubs.

  • Certifique-se de que a funcionalidade Deploy models to Foundry resources (pré-visualização) está desligada no portal Foundry. Quando esta funcionalidade está ativada, as implementações de APIs serverless não estão disponíveis no portal.

    Uma captura de ecrã do portal da Foundry a mostrar onde desativar a implantação nos recursos da Foundry.

  • A Foundry Modelos de Parceiros e Comunidade requer acesso à Azure Marketplace, enquanto a Foundry Modelos Vendidos Diretamente por Azure não tem este requisito. Certifique-se de que tem as permissões necessárias para subscrever ofertas de modelos no Azure Marketplace.

  • Os controlos de acesso baseados em funções do Azure (Azure RBAC) são usados para conceder acesso a operações no portal Foundry. Para realizar os passos deste artigo, a sua conta de utilizador deve ser atribuída à função Azure AI Developer no grupo de recursos. Para mais informações sobre permissões, consulte Controlo de acesso baseado em funções no portal Foundry.

  • Pode usar qualquer navegador web compatível para navegar no Foundry.

Encontre o seu modelo no catálogo de modelos

  1. Iniciar sessão no Microsoft Foundry. Certifica-te de que a opção do New Foundry está desligada. Estes são os passos que se referem à Foundry (clássica).
  2. Se ainda não estás no teu projeto, seleciona-o.
  3. Selecione catálogo de modelos no painel esquerdo.
  1. Seleciona a placa do modelo que queres implementar. Neste artigo, seleciona um modelo DeepSeek-R1 .

  2. Selecionar Usar este modelo para abrir a janela de implementação da API Serverless , onde pode ver o separador Preços e termos .

  3. No assistente de implementação, atribua um nome à implantação. A opção de filtro de conteúdo (pré-visualização) está ativada por defeito. Deixe a configuração padrão do serviço para detetar conteúdos prejudiciais, como ódio, automutilação, conteúdo sexual e violento. Para mais informações sobre filtragem de conteúdos, consulte filtragem de conteúdos no portal Foundry.

    Captura de ecrã mostrando o assistente de implementação de um modelo vendido diretamente por Azure.

Implemente o modelo numa API sem servidor

Nesta secção, cria um endpoint para o seu modelo.

  1. No assistente de implementação, selecione Implementar. Espere até que a implementação esteja pronta e será redirecionado para a página de Implementações.

  2. Para ver os endpoints implementados no seu projeto, na secção My assets do painel esquerdo, selecione Modelos + endpoints.

  3. O endpoint criado utiliza autenticação por chave para autorização. Para obter as chaves associadas a um determinado endpoint, siga estes passos:

    1. Selecione a implementação e anote o URI e a Chave do destino do endpoint.

    2. Use estas credenciais para chamar a implementação e gerar previsões.

  4. Se precisar de consumir esta implementação a partir de um projeto ou hub diferente, ou planeia usar o Prompt flow para construir aplicações inteligentes, precisa de criar uma ligação à implementação da API serverless. Para aprender a configurar uma implementação de API serverless existente num novo projeto ou hub, consulte Consumo de uma implementação de API serverless a partir de um projeto diferente ou do Prompt flow.

    Dica

    Se estiveres a usar o Prompt flow no mesmo projeto ou hub onde a implementação foi implementada, ainda precisas de criar a ligação.

** Utilize a implementação de API serverless

Modelos implementados na Azure Machine Learning e Foundry em implementações de APIs serverless suportam a API de Inferência de Modelos de IA Azure que expõe um conjunto comum de capacidades para modelos fundamentais e que pode ser usada por programadores para consumir previsões de um conjunto diversificado de modelos de forma uniforme e consistente.

Leia mais sobre as capacidades desta API e como pode utilizá-la ao construir aplicações.

Eliminar endpoints e subscrições

Dica

Como podes personalizar o painel esquerdo no portal Microsoft Foundry, podes ver itens diferentes dos mostrados nestes passos. Se não vires o que procuras, seleciona ... Mais na parte inferior do painel esquerdo.

Pode eliminar subscrições de modelos e endpoints. Eliminar uma subscrição de modelo faz com que qualquer endpoint associado se torne Pouco saudável e inutilizável.

Para eliminar uma implementação de API serverless:

  1. Vai à Foundry.
  2. Vá para o seu projeto.
  3. Na secção Meus ativos , selecione Modelos + endpoints.
  4. Abre a implementação que queres apagar.
  5. Selecionar Eliminar.

Para eliminar a subscrição associada ao modelo:

  1. Vai ao portal Azure
  2. Navega até ao grupo de recursos onde o projeto pertence.
  3. No filtro de Tipo , selecione SaaS.
  4. Seleciona a subscrição que queres apagar.
  5. Selecionar Eliminar.
  • Para trabalhar com o Foundry, instala o CLI do Azure e a extensão ml para Azure Machine Learning.

    az extension add -n ml
    

    Se já tem a extensão instalada, certifique-se de que a versão mais recente está instalada.

    az extension update -n ml
    

    Depois de instalar a extensão, configure-a:

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

Encontre o seu modelo no catálogo de modelos

  1. Iniciar sessão no Microsoft Foundry. Certifica-te de que a opção do New Foundry está desligada. Estes são os passos que se referem à Foundry (clássica).
  2. Se ainda não estás no teu projeto, seleciona-o.
  3. Selecione catálogo de modelos no painel esquerdo.
  1. Seleciona a placa do modelo que queres implementar. Neste artigo, seleciona um modelo DeepSeek-R1 .

  2. Copie o ID do Modelo sem incluir a versão do modelo, uma vez que as implementações de APIs serverless implementam sempre a versão mais recente disponível do modelo. Por exemplo, para o ID azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1do modelo , copiar azureml://registries/azureml-deepseek/models/DeepSeek-R1.

    Uma captura de ecrã que mostra a página de detalhes de um modelo vendido diretamente por Azure.

Os passos desta secção do artigo utilizam o modelo DeepSeek-R1 para ilustração. Os passos são os mesmos, quer esteja a usar modelos Foundry vendidos diretamente pela Azure ou modelos Foundry de parceiros e comunidade. Por exemplo, se optar por implementar o modelo Cohere-command-r-08-2024 em vez disso, pode substituir as credenciais do modelo nos excertos de código pelas credenciais do Cohere.

Implemente o modelo numa API sem servidor

Nesta secção, cria um endpoint para o seu modelo. Nomeie o endpoint DeepSeek-R1-qwerty.

  1. Criar o endpoint serverless.

    endpoint.yml

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

    Use o ficheiro endpoint.yml para criar o endpoint:

    az ml serverless-endpoint create -f endpoint.yml
    
  2. A qualquer momento, pode ver os endpoints implementados no seu projeto:

    az ml serverless-endpoint list
    
  3. O endpoint criado utiliza autenticação por chave para autorização. Use os passos seguintes para obter as chaves associadas a um determinado endpoint.

    az ml serverless-endpoint get-credentials -n DeepSeek-R1-qwerty
    
  4. Se precisar de consumir esta implementação a partir de um projeto ou hub diferente, ou planeia usar o Prompt flow para construir aplicações inteligentes, precisa de criar uma ligação à implementação da API serverless. Para aprender a configurar uma implementação de API serverless existente num novo projeto ou hub, consulte Consumo de uma implementação de API serverless a partir de um projeto diferente ou do Prompt flow.

    Dica

    Se estiveres a usar o Prompt flow no mesmo projeto ou hub onde a implementação foi implementada, ainda precisas de criar a ligação.

** Utilize a implementação de API serverless

Modelos implementados na Azure Machine Learning e Foundry em implementações de APIs serverless suportam a API de Inferência de Modelos de IA Azure que expõe um conjunto comum de capacidades para modelos fundamentais e que pode ser usada por programadores para consumir previsões de um conjunto diversificado de modelos de forma uniforme e consistente.

Leia mais sobre as capacidades desta API e como pode utilizá-la ao construir aplicações.

Eliminar endpoints e subscrições

Pode eliminar subscrições de modelos e endpoints. Eliminar uma subscrição de modelo faz com que qualquer endpoint associado se torne Pouco saudável e inutilizável.

Para eliminar uma implementação de API serverless:

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

Para eliminar a subscrição associada ao modelo:

az ml marketplace-subscription delete \
    --name "DeepSeek-R1"
  • Para trabalhar com o Foundry, instala o SDK Azure Machine Learning para Python.

    pip install -U azure-ai-ml
    

    Uma vez instalado, importe os namespaces necessários e crie um cliente ligado ao seu projeto:

    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>",
    )
    

Encontre o seu modelo no catálogo de modelos

  1. Iniciar sessão no Microsoft Foundry. Certifica-te de que a opção do New Foundry está desligada. Estes são os passos que se referem à Foundry (clássica).
  2. Se ainda não estás no teu projeto, seleciona-o.
  3. Selecione catálogo de modelos no painel esquerdo.
  1. Seleciona a placa do modelo que queres implementar. Neste artigo, seleciona um modelo DeepSeek-R1 .

  2. Copie o ID do Modelo sem incluir a versão do modelo, uma vez que as implementações de APIs serverless implementam sempre a versão mais recente disponível do modelo. Por exemplo, para o ID azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1do modelo , copiar azureml://registries/azureml-deepseek/models/DeepSeek-R1.

    Uma captura de ecrã que mostra a página de detalhes de um modelo vendido diretamente por Azure.

Os passos desta secção do artigo utilizam o modelo DeepSeek-R1 para ilustração. Os passos são os mesmos, quer esteja a usar modelos Foundry vendidos diretamente pela Azure ou modelos Foundry de parceiros e comunidade. Por exemplo, se optar por implementar o modelo Cohere-command-r-08-2024 em vez disso, pode substituir as credenciais do modelo nos excertos de código pelas credenciais do Cohere.

Implemente o modelo numa API sem servidor

Nesta secção, cria um endpoint para o seu modelo. Nomeie o endpoint DeepSeek-R1-qwerty.

  1. Criar o endpoint serverless.

    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. A qualquer momento, pode ver os endpoints implementados no seu projeto:

    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. O endpoint criado utiliza autenticação por chave para autorização. Use os passos seguintes para obter as chaves associadas a um determinado endpoint.

    endpoint_keys = client.serverless_endpoints.get_keys(endpoint_name)
    print(endpoint_keys.primary_key)
    print(endpoint_keys.secondary_key)
    
  4. Se precisar de consumir esta implementação a partir de um projeto ou hub diferente, ou planeia usar o Prompt flow para construir aplicações inteligentes, precisa de criar uma ligação à implementação da API serverless. Para aprender a configurar uma implementação de API serverless existente num novo projeto ou hub, consulte Consumo de uma implementação de API serverless a partir de um projeto diferente ou do Prompt flow.

    Dica

    Se estiveres a usar o Prompt flow no mesmo projeto ou hub onde a implementação foi implementada, ainda precisas de criar a ligação.

** Utilize a implementação de API serverless

Modelos implementados na Azure Machine Learning e Foundry em implementações de APIs serverless suportam a API de Inferência de Modelos de IA Azure que expõe um conjunto comum de capacidades para modelos fundamentais e que pode ser usada por programadores para consumir previsões de um conjunto diversificado de modelos de forma uniforme e consistente.

Leia mais sobre as capacidades desta API e como pode utilizá-la ao construir aplicações.

Eliminar endpoints e subscrições

Pode eliminar subscrições de modelos e endpoints. Eliminar uma subscrição de modelo faz com que qualquer endpoint associado se torne Pouco saudável e inutilizável.

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

Para eliminar a subscrição associada ao modelo:

client.marketplace_subscriptions.begin_delete(subscription_name).wait()
  • Para trabalhar com o Foundry, instale o CLI do Azure conforme descrito em CLI do Azure.

    Configure as seguintes variáveis de ambiente de acordo com as suas definições:

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

Encontre o seu modelo no catálogo de modelos

  1. Iniciar sessão no Microsoft Foundry. Certifica-te de que a opção do New Foundry está desligada. Estes são os passos que se referem à Foundry (clássica).
  2. Se ainda não estás no teu projeto, seleciona-o.
  3. Selecione catálogo de modelos no painel esquerdo.
  1. Seleciona a placa do modelo que queres implementar. Neste artigo, seleciona um modelo DeepSeek-R1 .

  2. Copie o ID do Modelo sem incluir a versão do modelo, uma vez que as implementações de APIs serverless implementam sempre a versão mais recente disponível do modelo. Por exemplo, para o ID azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1do modelo , copiar azureml://registries/azureml-deepseek/models/DeepSeek-R1.

    Uma captura de ecrã que mostra a página de detalhes de um modelo vendido diretamente por Azure.

Os passos desta secção do artigo utilizam o modelo DeepSeek-R1 para ilustração. Os passos são os mesmos, quer esteja a usar modelos Foundry vendidos diretamente pela Azure ou modelos Foundry de parceiros e comunidade. Por exemplo, se optar por implementar o modelo Cohere-command-r-08-2024 em vez disso, pode substituir as credenciais do modelo nos excertos de código pelas credenciais do Cohere.

Implemente o modelo numa API sem servidor

Nesta secção, cria um endpoint para o seu modelo. Nomeie o endpoint myserverless-text-1234ss.

  1. Criar o endpoint serverless. Use o seguinte modelo para criar um endpoint:

    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))
    // Replace period character which is used in some model names (and is not valid in the subscription name)
    var sanitizedModelName = replace(modelName, '.', '')
    var subscriptionName = '${sanitizedModelName}-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
    

    Crie a implantação da seguinte forma:

    az deployment group create --resource-group $RESOURCE_GROUP --template-file model-subscription.bicep
    
  2. A qualquer momento, pode ver os endpoints implementados no seu projeto:

    Pode usar as ferramentas de gestão de recursos para consultar os recursos. O seguinte código utiliza CLI do Azure:

    az resource list \
        --query "[?type=='Microsoft.MachineLearningServices/workspaces/serverlessEndpoints']"
    
  3. O endpoint criado utiliza autenticação por chave para autorização. Obtenha as chaves associadas ao endpoint dado usando APIs REST para consultar esta informação.

  4. Se precisar de consumir esta implementação a partir de um projeto ou hub diferente, ou planeia usar o Prompt flow para construir aplicações inteligentes, precisa de criar uma ligação à implementação da API serverless. Para aprender a configurar uma implementação de API serverless existente num novo projeto ou hub, consulte Consumo de uma implementação de API serverless a partir de um projeto diferente ou do Prompt flow.

    Dica

    Se estiveres a usar o Prompt flow no mesmo projeto ou hub onde a implementação foi implementada, ainda precisas de criar a ligação.

** Utilize a implementação de API serverless

Modelos implementados na Azure Machine Learning e Foundry em implementações de APIs serverless suportam a API de Inferência de Modelos de IA Azure que expõe um conjunto comum de capacidades para modelos fundamentais e que pode ser usada por programadores para consumir previsões de um conjunto diversificado de modelos de forma uniforme e consistente.

Leia mais sobre as capacidades desta API e como pode utilizá-la ao construir aplicações.

Eliminar endpoints e subscrições

Pode eliminar subscrições de modelos e endpoints. Eliminar uma subscrição de modelo faz com que qualquer endpoint associado se torne Pouco saudável e inutilizável.

Podes usar as ferramentas de gestão de recursos para gerir esses recursos. O seguinte código utiliza CLI do Azure:

az resource delete --name <resource-name>

Considerações sobre custos e quotas para Modelos Foundry numa implementação de API serverless

A quota é gerida por cada implementação. Cada implementação tem um limite de taxa de 200.000 tokens por minuto e 1.000 pedidos de API por minuto. Além disso, atualmente limitamos uma implementação por modelo por projeto. Contacte o Suporte da Microsoft Azure se os limites atuais de taxa não forem suficientes para os seus cenários.

  • Pode encontrar informações de preços para Modelos Vendidos Diretamente pela Azure, no separador Preços e termos da janela de Implementação da API serverless.

  • Modelos da Partners and Community são oferecidos através da Azure Marketplace e integrados com a Foundry para uso. Pode encontrar preços no Azure Marketplace ao implementar ou ajustar estes modelos. Cada vez que um projeto subscreve uma determinada oferta do Azure Marketplace, é criado um novo recurso para acompanhar os custos associados ao seu consumo. O mesmo recurso é utilizado para acompanhar os custos associados à inferência e ao ajuste fino; no entanto, existem vários contadores disponíveis para acompanhar cada cenário de forma independente. Para mais informações sobre como acompanhar custos, consulte Monitorizar custos para modelos oferecidos através de Azure Marketplace.

Permissões necessárias para subscrever modelos de ofertas

Os controlos de acesso baseados em funções do Azure (Azure RBAC) são usados para conceder acesso a operações no portal Foundry. Para realizar os passos deste artigo, a sua conta de utilizador deve ser atribuída à função Proprietário, Contribuidor ou Azure AI Developer para a subscrição Azure. Em alternativa, a sua conta pode ser atribuída a um papel personalizado que tenha as seguintes permissões:

  • Na subscrição do Azure — para subscrever o espaço de trabalho à oferta do Azure Marketplace, uma vez por cada espaço de trabalho, 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
  • Sobre o grupo de recursos — para criar e usar o recurso SaaS:

    • Microsoft.SaaS/resources/read
    • Microsoft.SaaS/resources/write
  • No ambiente de trabalho: — para implementar endpoints (o papel de Cientista de Dados do Azure Machine Learning já contém estas permissões):

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

Para mais informações sobre permissões, consulte Controlo de acesso baseado em funções no portal Foundry.