Implantar modelos como APIs sem servidor

Neste artigo, você aprenderá a implantar um modelo do catálogo de modelos como uma API sem servidor com cobrança baseada em token de pagamento conforme o uso.

Alguns modelos do catálogo de modelos podem ser implantados como uma API sem servidor com a cobrança paga conforme o uso. Esse tipo de implantação fornece uma maneira de consumir modelos como uma API sem hospedá-los em sua assinatura, ao mesmo tempo que mantém a segurança empresarial e a conformidade que as organizações precisam. Essa opção de implantação não requer cota de sua assinatura.

Esse artigo usa uma implantação de modelo Meta Llama para ilustração. No entanto, você pode usar as mesmas etapas para implantar qualquer um dos modelos no catálogo de modelos que estão disponíveis para implantação de API sem servidor.

Pré-requisitos

  • Uma assinatura do Azure com uma forma de pagamento válida. As assinaturas gratuitas ou de avaliação do Azure não funcionarão. Caso você não tenha uma assinatura do Azure, crie uma conta paga do Azure para começar.

  • Um hub do Estúdio de IA do Azure.

  • Um projeto do Estúdio de IA do Azure.

  • O RBAC do Azure (controle de acesso baseado em função) do Azure é usado para permitir acesso a operações no Estúdio de IA do Azure. Para executar as etapas neste artigo, sua conta de usuário deve receber a função de Desenvolvedor de IA do Azure no grupo de recursos. Para obter mais informações sobre permissões, confira Controle de acesso baseado em função no Estúdio de IA do Azure.

  • Você precisa instalar o seguinte software para trabalhar com o Estúdio de IA do Azure:

    Você pode usar qualquer navegador da Web compatível para navegar pelo Estúdio de IA do Azure.

Encontre seu modelo e ID de modelo no catálogo de modelos

  1. Entre no Azure AI Studio.

  2. Para modelos oferecidos por meio do Azure Marketplace, verifique se sua conta tem as permissões da função de Desenvolvedor de IA do Azure no grupo de recursos ou se você atende às permissões necessárias para se inscrever em ofertas de modelo.

    Os modelos que são oferecidos por provedores que não são da Microsoft (por exemplo, os modelos Llama e Mistral) são cobrados por meio do Azure Marketplace. Para esses modelos, é necessário assinar seu projeto para a oferta de modelo específica. Os modelos oferecidos pela Microsoft (por exemplo, modelos Phi-3) não têm esse requisito, pois a cobrança é feita de forma diferente. Para obter detalhes sobre a cobrança para implantação sem servidor de modelos no catálogo de modelos, consulte Cobrança para APIs sem servidor.

  3. Selecione Catálogo de modelos na barra lateral esquerda e localize o cartão do modelo que você deseja implantar. Neste artigo, você seleciona um modelo Meta-Llama-3-8B-Instruct.

    1. Se você estiver implantando o modelo usando a CLI do Azure, o Python ou o ARM, copie a ID do modelo.

      Importante

      Não inclua a versão ao copiar a ID do modelo. Os pontos de extremidade da API sem servidor sempre implantam a versão mais recente do modelo disponível. Por exemplo, para a ID do modelo azureml://registries/azureml-meta/models/Meta-Llama-3-8B-Instruct/versions/3, copie azureml://registries/azureml-meta/models/Meta-Llama-3-8B-Instruct.

    Uma captura de tela que mostra uma página de detalhes do modelo.

A próxima seção aborda as etapas para assinar seu projeto em uma oferta de modelo. Você pode ignorar esta seção e ir para Implantar o modelo em um ponto de extremidade de API sem servidor, se estiver implantando um modelo da Microsoft.

Inscrever seu projeto na oferta de modelo

Os pontos de extremidade de API sem servidor podem implantar modelos oferecidos pela Microsoft e outros. Para modelos da Microsoft (como modelos Phi-3), você não precisa criar uma assinatura do Azure Marketplace e pode implantá-los em pontos de extremidade de API sem servidor diretamente para consumir as respectivas previsões. Para modelos que não são da Microsoft, você precisa criar a assinatura primeiro. Se esta for a primeira vez implantando o modelo no projeto, você precisará inscrever seu projeto na oferta específica do modelo do Azure Marketplace. Cada projeto tem sua própria inscrição na oferta específica do Azure Marketplace do modelo, que permite controlar e monitorar os gastos.

Dica

Ignore essa etapa se estiver implantando modelos da família de modelos Phi-3. Implante diretamente o modelo em um ponto de extremidade de API sem servidor.

Observação

Os modelos oferecidos por meio do Azure Marketplace estão disponíveis para implantação em pontos de extremidade de API sem servidor em regiões específicas. Verifique a Disponibilidade do modelo e da região para implantações de API sem servidor para verificar quais modelos e regiões estão disponíveis. Se o que você precisa não estiver listado, você poderá implantar em um workspace em uma região com suporte e, em seguida, consumir pontos de extremidade de API sem servidor de um workspace diferente.

  1. Crie a assinatura do marketplace do modelo. Ao criar uma assinatura, você aceita os termos e condições associados à oferta de modelo.

    1. Na página Detalhes do modelo, selecione Implantar. Uma janela Opções de implantação é aberta, oferecendo a você a escolha entre implantação de API sem servidor e implantação usando uma computação gerenciada.

      Observação

      Para modelos que podem ser implantados somente por meio de implantação de API sem servidor, o assistente de implantação de API sem servidor é aberto logo após você selecionar Implantar na página de detalhes do modelo.

    2. Selecione API sem servidor com segurança de conteúdo de IA do Azure (versão prévia) para abrir o assistente de implantação de API sem servidor.

    3. Selecione o projeto no qual você deseja implantar seus modelos. Para usar a oferta de implantação do modelo de API sem servidor, seu projeto deve pertencer a uma das regiões com suporte para a implantação sem servidor para o modelo específico.

      Uma captura de tela mostrando como implantar um modelo com a opção de API sem servidor.

    4. Se a mensagem Você já tem uma assinatura do Azure Marketplace para este projeto for exibida, não será necessário criar a assinatura, pois você já tem uma. Você pode continuar a Implantar o modelo em um ponto de extremidade de API sem servidor.

    5. No assistente de implantação, selecione o link para Termos do Azure Marketplace para saber mais sobre os termos de uso. Você também pode selecionar a guia Preço e termos para saber mais sobre o preço do modelo selecionado.

    6. Selecione Assinar e Implantar.

  2. Depois de inscrever o projeto na oferta específica do Azure Marketplace, as implantações subsequentes da mesma oferta no mesmo projeto não exigirão a inscrição novamente.

  3. A qualquer momento, você pode ver as ofertas de modelo às quais seu projeto está inscrito no momento:

    1. Acesse o portal do Azure.

    2. Navegue até o grupo de recursos ao qual o projeto pertence.

    3. No filtro Tipo, selecione SaaS.

    4. Você vê todas as ofertas nas quais se inscreveu atualmente.

    5. Selecione qualquer recurso para ver os detalhes.

Implantar o modelo em um ponto de extremidade de API sem servidor

Depois de criar uma assinatura para um modelo que não seja da Microsoft, você pode implantar o modelo associado em um ponto de extremidade de API sem servidor. Para modelos da Microsoft (como modelos Phi-3), você não precisa criar uma assinatura.

O ponto de extremidade de API sem servidor oferece uma forma de consumir os modelos como uma API sem hospedá-los na sua assinatura, mantendo a segurança e a conformidade corporativa que as organizações precisam. Essa opção de implantação não requer cota de sua assinatura.

Nesta seção, você criará um ponto de extremidade com o nome meta-llama3-8b-qwerty.

  1. Criar o ponto de extremidade sem servidor

    1. Para implantar um modelo da Microsoft que não exija a assinatura de uma oferta de modelo:

      1. Selecione Desenvolver e, em seguida, selecione API sem servidor com Segurança de Conteúdo de IA do Azure (versão prévia) para abrir o assistente de implantação.
      2. Selecione o projeto no qual você deseja implantar seu modelo. Observe que nem todas as regiões têm suporte.
    2. Como alternativa, para um modelo que não seja da Microsoft e que exija uma assinatura de modelo, se tiver acabado de assinar o projeto na seção anterior, continue selecionando Implantar. Como alternativa, selecione Continuar a implantar (se o assistente de implantação tiver a observação Você já tem uma assinatura do Azure Marketplace para este projeto).

      Captura de tela mostrando um projeto que já está inscrito na oferta.

    3. Dê um nome à implantação. Esse nome se torna parte da URL da API de implantação. Essa URL deve ser exclusiva em cada região do Azure.

      Captura de tela mostrando como especificar o nome da implantação que você deseja criar.

      Dica

      A opção Filtro de conteúdo (prévia) é habilitada por padrão. Deixe a configuração padrão para que o serviço detecte conteúdo nocivo, como ódio, automutilação, conteúdo sexual e violento. Para obter mais informações sobre filtragem de conteúdo, consulte Filtragem de conteúdo no Estúdio de IA do Azure.

    4. Selecione Implantar. Quando a implantação estiver pronta, você será redirecionado para a página Implantações.

  2. A qualquer momento, você pode ver os pontos de extremidade implantados em seu projeto:

    1. Acesse seu projeto.

    2. Selecione a seção Implantações

    3. Os pontos de extremidade da API sem servidor são exibidos.

  3. O ponto de extremidade criado usa a autenticação de chave para autorização. Use as etapas a seguir para obter as chaves associadas a um determinado ponto de extremidade.

    Você pode retornar à página Implantações, selecionar a implantação e observar o URI de destino e a Chave. Use-os para chamar a implantação e gerar previsões.

    Observação

    Ao usar o portal do Azure, os pontos de extremidade de API sem servidor não são exibidos por padrão no grupo de recursos. Use a opção Mostrar tipos ocultos para exibi-los no grupo de recursos.

  4. Neste estágio, seu ponto de extremidade está pronto para ser usado.

  5. Caso você precise consumir essa implantação de um projeto ou hub diferente ou planeje usar o prompt flow para criar aplicativos inteligentes, será necessário criar uma conexão com a implantação de API sem servidor. Para saber como configurar um ponto de extremidade de API sem servidor existente em um novo projeto ou hub, consulte Consumir pontos de extremidade de API sem servidor implantados de um projeto ou prompt flow diferente.

    Dica

    Se você estiver usando o prompt flow no mesmo projeto ou hub em que a implantação foi realizada, você ainda precisará criar a conexão.

Usar o ponto de extremidade da API sem servidor

Os modelos implantados no Azure Machine Learning e no Estúdio de IA do Azure em pontos de extremidade de API sem servidor dão suporte à API de Inferência de Modelo de IA do Azure que expõe um conjunto comum de recursos para modelos fundamentais e que pode ser usada pelos desenvolvedores para consumir previsões de um conjunto diversificado de modelos de maneira uniforme e consistente.

Leia mais sobre as funcionalidades dessa API e como você pode usá-la ao criar aplicativos.

Isolamento da rede

Pontos de extremidade para modelos implantados como APIs sem servidor seguem a configuração do sinalizador de acesso à rede pública (PNA) do AI Studio Hub que contém o projeto no qual a implantação existe. Para proteger seu ponto de extremidade MaaS, desative o sinalizador PNA no AI Studio Hub. Você pode proteger a comunicação de entrada de um cliente para seu terminal usando um ponto de extremidade privado para o hub.

Para definir o sinalizador PNA para o hub do Estúdio de IA do Azure:

  1. Acesse o portal do Azure.
  2. Pesquise o grupo de recursos ao qual o hub pertence e selecione o Hub de IA do Azure nos recursos listados para esse grupo de recursos.
  3. Na página Visão geral do hub no menu à esquerda, selecione Configurações>Rede.
  4. Na guia Acesso público, você pode definir as configurações para o sinalizador de acesso à rede pública.
  5. Salve suas alterações. Suas alterações podem levar até cinco minutos para serem propagadas.

Excluir pontos de extremidade e assinaturas

Você pode excluir pontos de extremidade e assinaturas de modelo. Excluir uma assinatura de modelo torna qualquer ponto de extremidade associado Não íntegro e inutilizável.

Para excluir um ponto de extremidade de API sem servidor:

  1. Acesse o Estúdio de IA do Azure.

  2. Acesse Componentes>Implantações.

  3. Abra a implantação que você deseja excluir.

  4. Selecione Excluir.

Para excluir a assinatura de modelo associada:

  1. Vá para o Portal do Azure

  2. Navegue até o grupo de recursos ao qual o projeto pertence.

  3. No filtro Tipo, selecione SaaS.

  4. Escolha a assinatura que deseja excluir.

  5. Selecione Excluir.

Considerações de custo e cota para modelos implantados como pontos de extremidade de API sem servidor

A cota é gerenciada por implantação. Cada implantação tem um limite de taxa de 200.000 tokens por minuto e 1.000 solicitações de API por minuto. No entanto, atualmente, limitamos uma implantação por modelo e projeto. Entre em contato com o Suporte do Microsoft Azure se os limites de taxa atuais não forem suficientes para seus cenários.

Custo para modelos da Microsoft

Você pode encontrar as informações de preços na guia Preços e termos do assistente de implantação ao implantar modelos da Microsoft (como modelos Phi-3) como pontos de extremidade de API sem servidor.

Custo para modelos que não são da Microsoft

Os modelos que não são da Microsoft implantados como pontos de extremidade de API sem servidor são oferecidos por meio do Azure Marketplace e integrados ao Estúdio de IA do Azure para uso. Você pode encontrar os preços do Azure Marketplace ao implantar ou ajustar esses modelos.

Sempre que um projeto se inscreve em determinada oferta do Azure Marketplace, um recurso é criado para acompanhar os custos associados ao consumo dele. O mesmo recurso é usado para acompanhar os custos associados à inferência e ao ajuste. No entanto, vários medidores estão disponíveis para acompanhar cada cenário de modo independente.

Para obter mais informações sobre como acompanhar os custos, consulte Monitorar os custos dos modelos oferecidos por meio do Azure Marketplace.

Uma captura de tela mostrando recursos diferentes correspondentes a diferentes ofertas de modelo e seus medidores associados.

Permissões necessárias para se inscrever em ofertas de modelo

O RBAC do Azure (controle de acesso baseado em função) do Azure é usado para permitir acesso a operações no Estúdio de IA do Azure. Para executar as etapas neste artigo, sua conta de usuário deve ter a função de Proprietário, Colaborador ou Desenvolvedor de IA do Azure para a assinatura do Azure. Como alternativa, sua conta pode receber uma função personalizada que tenha as seguintes permissões:

  • Na assinatura do Azure, para inscrever o workspace na oferta do Azure Marketplace, uma vez para cada workspace, 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
  • No grupo de recursos, para criar e usar o recurso SaaS:

    • Microsoft.SaaS/resources/read
    • Microsoft.SaaS/resources/write
  • No workspace, para implantar pontos de extremidade (a função de cientista de dados do Azure Machine Learning já contém essas permissões):

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

Para obter mais informações sobre permissões, confira Controle de acesso baseado em função no Estúdio de IA do Azure.