Como usar a família de modelos Meta Llama com o Estúdio do Azure Machine Learning
Neste artigo, você aprenderá sobre a família de modelos Meta Llama (LLMs). Os modelos e ferramentas Meta Llama são uma coleção de modelos de raciocínio de imagem e texto de IA generativa pré-treinados e ajustados – variando em escala de SLMs (1B, modelos Base e Instruct 3B) para inferência no dispositivo e de borda – para LLMs de tamanho médio (modelos Base e Instruct 7B, 8B e 70B) e modelos de alto desempenho, como o Meta Llama 3.1 405B Instruct para casos de uso de geração e destilação de dados sintéticos.
Dica
Confira nossos anúncios dos modelos da família Meta Llama 3.2 disponíveis agora no Catálogo de Modelos de IA do Azure por meio do Blog da Meta e do Blog da Microsoft Tech Community.
Veja os seguintes exemplos do GitHub para explorar integrações com LangChain, LiteLLM, OpenAI e a API do Azure.
Importante
Esse recurso está atualmente em visualização pública. Essa versão prévia é fornecida sem um contrato de nível de serviço e não é recomendada para cargas de trabalho de produção. Alguns recursos podem não ter suporte ou podem ter restrição de recursos.
Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.
Modelos da família Meta Llama
Os modelos da família Meta Llama incluem os seguintes modelos:
A coleção Llama 3.2 de SLMs e modelos de raciocínio de imagem agora está disponível. Em breve, o Llama 3.2 11B Vision Instruct e o Llama 3.2 90B Vision Instruct estarão disponíveis como um ponto de extremidade de API sem servidor por meio de modelos como serviço. A partir de hoje, os seguintes modelos estarão disponíveis para implantação por meio da computação gerenciada:
- Llama 3.2 1B
- Llama 3.2 3B
- Llama 3.2 1B Instruct
- Llama 3.2 3B Instruct
- Llama Guard 3 1B
- Llama Guard 11B Vision
- Llama 3.2 11B Vision Instruct
- O Llama 3.2 90B Vision Instruct está disponível para implantação de computação gerenciada.
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 workspace do Azure Machine Learning e uma instância de computação. Se você não tiver esses recursos, use as etapas do artigo Início Rápido: Criar recursos de workspace para criá-los. A oferta de implantação de modelo de API sem servidor para Meta Llama 3.1 e Llama 3 só está disponível com espaços de trabalho criados nessas regiões:
- Leste dos EUA
- Leste dos EUA 2
- Centro-Norte dos EUA
- Centro-Sul dos Estados Unidos
- Oeste dos EUA
- Oeste dos EUA 3
- Suécia Central
Para obter uma lista de regiões disponíveis para cada um dos modelos que dão suporte a implantações de ponto de extremidade de API sem servidor, consulte Disponibilidade de região para modelos em pontos de extremidade de API sem servidor.
O RBAC do Azure (controle de acesso baseado em função) do Azure é usado para permitir acesso a operações no Azure Machine Learning. Para realizar as etapas deste artigo, a função de proprietário ou colaborador deve ser atribuída à conta de usuário da 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, consulte Gerenciar acesso a um espaço de trabalho do Workspace do Azure Machine Learning.
Criar uma nova implantação
Para criar uma implantação:
Acesse o Estúdio do Azure Machine Learning.
Selecione o workspace no qual você deseja implantar seus modelos. Para usar a oferta de implantação do modelo de pagamento conforme o uso, seu espaço de trabalho deve pertencer a uma das regiões disponíveis listadas nos pré-requisitos deste artigo.
Selecione
Meta-Llama-3.1-405B-Instruct
para implementar a partir do catálogo de modelos.Como alternativa, você pode iniciar a implantação acessando seu workspace e selecionando Pontos de extremidade>Pontos de extremidade sem servidor>Criar.
Na página de Detalhes para
Meta-Llama-3.1-405B-Instruct
, selecione Implantar e depois selecione API sem Servidor com Segurança de Conteúdo de IA do Azure.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 Detalhes da oferta do Marketplace para saber mais sobre os preços do modelo selecionado.
Se esta for a primeira vez que você implanta o modelo no espaço de trabalho, será necessário assinar seu espaço de trabalho para a oferta específica (por exemplo,
Meta-Llama-3.1-405B-Instruct
) no Azure Marketplace. Essa etapa requer que sua conta tenha as permissões de assinatura do Azure e as permissões de grupo de recursos listadas nos pré-requisitos. Cada workspace tem sua própria inscrição na oferta específica do Azure Marketplace, que permite controlar e monitorar os gastos. Selecione Assinar e Implantar.Observação
A subscrição de um espaço de trabalho para uma oferta específica do Azure Marketplace (nesse caso, Llama-3-70B) requer que a sua conta tenha acesso de Contribuidor ou Proprietário ao nível da subscrição onde o projeto é criado. Como alternativa, sua conta de usuário pode receber uma função personalizada que tenha as permissões do Azure e as permissões do grupo de recursos listadas nos pré-requisitos.
Depois de inscrever o workspace na oferta específica do Azure Marketplace, as implantações subsequentes da mesma oferta no mesmo workspace não exigirão a inscrição novamente. Portanto, você não precisa ter as permissões no nível da assinatura para implantações subsequentes. Se esse cenário se aplicar a você, selecione Continuar a implantar.
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.
Selecione Implantar. Aguarde até que a implantação seja concluída e você seja redirecionado para a página de pontos de extremidade sem servidor.
Selecione o ponto de extremidade para abrir a página Detalhes.
Selecione a guia Testar para começar a interagir com o modelo.
Anote também a URL de Destino e a Chave secreta para chamar a implantação e gerar conclusões.
Você sempre pode encontrar os detalhes do ponto de extremidade, a URL e as chaves de acesso do ponto de extremidade navegando até Workspace>Pontos de extremidade>Pontos de extremidade sem servidor.
Para saber mais sobre a cobrança de modelos Meta Llama implantados como uma API sem servidor, consulte Considerações de custo e cota para modelos do Meta Llama implantados como uma API sem servidor.
Consumir modelos Meta Llama como um serviço
Os modelos implantados como um serviço podem ser consumidos por meio da API de chat ou de preenchimentos, dependendo do tipo de modelo implantado.
No workspace, selecione Pontos de extremidade>Pontos de extremidade sem servidor.
Encontre e selecione a implantação
Meta-Llama-3.1-405B-Instruct
que você criou.Copie a URL de Destino e os valores de token de Chave.
Faça uma solicitação de API com base no tipo de modelo implantado.
- Para modelos de conclusão, como
Llama-3-8B
, use a API<target_url>/v1/completions
. - Para modelos de chat, como
Meta-Llama-3.1-405B-Instruct
, use a API/chat/completions
.
Para obter mais informações sobre como usar as APIs, consulte a seção Referência.
- Para modelos de conclusão, como
Referência para modelos Meta Llama 3.1 implantados em uma API sem servidor
Os modelos Llama aceitam a API de Inferência do Modelo de IA do Azure na rota /chat/completions
ou uma API do Chat Llama no /v1/chat/completions
. Da mesma forma, as conclusões de texto podem ser geradas usando a API de Inferência do Modelo de IA do Azure na rota /completions
ou uma API de Preenchimentos Llama no /v1/completions
O esquema API de Inferência do Modelo de IA do Azure pode ser encontrado no artigo referência para conclusões de chat e uma Especificação OpenAPI pode ser obtida no próprio ponto de extremidade.
API de preenchimentos
Use o método POST
para enviar a solicitação à rota /v1/completions
:
Solicitação
POST /v1/completions HTTP/1.1
Host: <DEPLOYMENT_URI>
Authorization: Bearer <TOKEN>
Content-type: application/json
Esquema de solicitação
O conteúdo é uma cadeia de caracteres formatada em JSON que contém os seguintes parâmetros:
Chave | Tipo | Padrão | Descrição |
---|---|---|---|
prompt |
string |
Sem padrão. Esse valor deve ser especificado. | O prompt a ser enviado ao modelo. |
stream |
boolean |
False |
O streaming permite que os tokens gerados sejam enviados como eventos enviados pelo servidor somente de dados sempre que estiverem disponíveis. |
max_tokens |
integer |
16 |
O número máximo de tokens a serem gerados na conclusão. A contagem de tokens do prompt mais max_tokens não pode exceder o tamanho do contexto do modelo. |
top_p |
float |
1 |
Uma alternativa à amostragem com temperatura, chamada de amostragem de núcleo, onde o modelo considera os resultados dos tokens com massa de probabilidade top_p . Portanto, 0,1 significa que apenas os tokens que compõem a massa de probabilidade de 10% do topo são considerados. Geralmente, recomendamos alterar top_p ou temperature , mas não ambos. |
temperature |
float |
1 |
A temperatura de amostragem a ser usada, entre 0 e 2. Valores mais altos significam que o modelo faz uma amostragem mais ampla da distribuição de tokens. Zero significa uma amostragem greedy. Recomendamos alterar isso ou top_p , mas não ambos. |
n |
integer |
1 |
Quantas conclusões devem ser geradas para cada prompt. Observação: como esse parâmetro gera muitas conclusões, ele poderá consumir rapidamente a sua cota de token. |
stop |
array |
null |
Cadeia de caracteres ou uma lista de cadeias de caracteres que contêm a palavra em que a API interrompe a geração de tokens adicionais. O texto retornado não conterá a sequência de parada. |
best_of |
integer |
1 |
Gera conclusões best_of do lado do servidor e retorna o “melhor” (aquele com a menor probabilidade de log por token). Os resultados não podem ser transmitidos. Quando usado com n , best_of controla o número de conclusões de candidatos e n especifica quantos retornar, best_of deve ser maior que n . Observação: como esse parâmetro gera muitas conclusões, ele poderá consumir rapidamente a sua cota de token. |
logprobs |
integer |
null |
Um número que indica a inclusão das probabilidades de log nos logprobs tokens mais prováveis e os tokens escolhidos. Por exemplo, se logprobs for 10, a API retornará uma lista dos 10 tokens mais prováveis. a API sempre retorna o logprob do token amostrado, portanto, pode haver até logprobs +1 elementos na resposta. |
presence_penalty |
float |
null |
Número entre -2.0 e 2.0. Valores positivos penalizam novos tokens com base em se apareceram no texto até o momento, aumentando a probabilidade do modelo apresentar novos tópicos. |
ignore_eos |
boolean |
True |
Indica se o token EOS deve ser ignorado e se a geração de tokens deve continuar após a geração do token EOS. |
use_beam_search |
boolean |
False |
Indica se a pesquisa de feixe deve ser usada em vez da amostragem. Nesse caso, best_of deve ser maior do que 1 e temperature deve ser 0 . |
stop_token_ids |
array |
null |
Lista de IDs para tokens que, quando gerados, interrompem a geração de tokens adicionais. A saída retornada contém os tokens de parada, a menos que os tokens de parada sejam tokens especiais. |
skip_special_tokens |
boolean |
null |
Indica se os tokens especiais devem ser ignorados na saída. |
Exemplo
Corpo
{
"prompt": "What's the distance to the moon?",
"temperature": 0.8,
"max_tokens": 512,
}
Esquema de resposta
O conteúdo da resposta é um dicionário com os campos a seguir.
Chave | Type | Descrição |
---|---|---|
id |
string |
Um identificador exclusivo do preenchimento. |
choices |
array |
A lista de opções de preenchimento que o modelo gerou para o prompt de entrada. |
created |
integer |
O carimbo de data/hora do UNIX (em segundos) de quando o preenchimento foi criado. |
model |
string |
A model_id usada para o preenchimento. |
object |
string |
O tipo de objeto, que é sempre text_completion . |
usage |
object |
Estatísticas de uso para a solicitação de preenchimento. |
Dica
No modo de streaming, para cada parte da resposta, finish_reason
é sempre null
, exceto o último, que é encerrado por um conteúdo [DONE]
.
O objeto choices
é um dicionário com os campos a seguir.
Chave | Type | Descrição |
---|---|---|
index |
integer |
Índice de opções. Quando best_of > 1, o índice dessa matriz pode não estar em ordem e pode não ser de 0 a n-1. |
text |
string |
Resultado do preenchimento. |
finish_reason |
string |
O motivo pelo qual o modelo parou de gerar tokens: - stop : o modelo atingiu um ponto de parada natural ou uma sequência de parada fornecida. - length : se o número máximo de tokens tiver sido atingido. - content_filter : quando o RAI modera e o CMP força a moderação. - content_filter_error : um erro durante a moderação e não foi capaz de tomar uma decisão sobre a resposta. - null : resposta da API ainda em andamento ou incompleta. |
logprobs |
object |
As probabilidades de log dos tokens gerados no texto de saída. |
O objeto usage
é um dicionário com os campos a seguir.
Chave | Type | Valor |
---|---|---|
prompt_tokens |
integer |
Número de tokens no prompt. |
completion_tokens |
integer |
Número de tokens gerados no preenchimento. |
total_tokens |
integer |
Total de tokens. |
O objeto logprobs
é um dicionário com os seguintes campos:
Chave | Type | Valor |
---|---|---|
text_offsets |
array de integers |
A posição ou o índice de cada token na saída do preenchimento. |
token_logprobs |
array de float |
Selecionou logprobs do dicionário na matriz top_logprobs . |
tokens |
array de string |
Tokens selecionados. |
top_logprobs |
array de dictionary |
Matriz de dicionário. Em cada dicionário, a chave é o token e o valor é o prob. |
Exemplo
{
"id": "12345678-1234-1234-1234-abcdefghijkl",
"object": "text_completion",
"created": 217877,
"choices": [
{
"index": 0,
"text": "The Moon is an average of 238,855 miles away from Earth, which is about 30 Earths away.",
"logprobs": null,
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 7,
"total_tokens": 23,
"completion_tokens": 16
}
}
API de chat
Use o método POST
para enviar a solicitação à rota /v1/chat/completions
:
Solicitação
POST /v1/chat/completions HTTP/1.1
Host: <DEPLOYMENT_URI>
Authorization: Bearer <TOKEN>
Content-type: application/json
Esquema de solicitação
O conteúdo é uma cadeia de caracteres formatada em JSON que contém os seguintes parâmetros:
Chave | Tipo | Padrão | Descrição |
---|---|---|---|
messages |
string |
Sem padrão. Esse valor deve ser especificado. | A mensagem ou histórico de mensagens a ser usado para solicitar o modelo. |
stream |
boolean |
False |
O streaming permite que os tokens gerados sejam enviados como eventos enviados pelo servidor somente de dados sempre que estiverem disponíveis. |
max_tokens |
integer |
16 |
O número máximo de tokens a serem gerados na conclusão. A contagem de tokens do prompt mais max_tokens não pode exceder o tamanho do contexto do modelo. |
top_p |
float |
1 |
Uma alternativa à amostragem com temperatura, chamada de amostragem de núcleo, onde o modelo considera os resultados dos tokens com massa de probabilidade top_p . Portanto, 0,1 significa que apenas os tokens que compõem a massa de probabilidade de 10% do topo são considerados. Geralmente, recomendamos alterar top_p ou temperature , mas não ambos. |
temperature |
float |
1 |
A temperatura de amostragem a ser usada, entre 0 e 2. Valores mais altos significam que o modelo faz uma amostragem mais ampla da distribuição de tokens. Zero significa uma amostragem greedy. Recomendamos alterar isso ou top_p , mas não ambos. |
n |
integer |
1 |
Quantas conclusões devem ser geradas para cada prompt. Observação: como esse parâmetro gera muitas conclusões, ele poderá consumir rapidamente a sua cota de token. |
stop |
array |
null |
Cadeia de caracteres ou uma lista de cadeias de caracteres que contêm a palavra em que a API interrompe a geração de tokens adicionais. O texto retornado não conterá a sequência de parada. |
best_of |
integer |
1 |
Gera conclusões best_of do lado do servidor e retorna o “melhor” (aquele com a menor probabilidade de log por token). Os resultados não podem ser transmitidos. Quando usado com n , best_of controla o número de conclusões de candidatos e n especifica quantos retornar, best_of deve ser maior que n . Observação: como esse parâmetro gera muitas conclusões, ele poderá consumir rapidamente a sua cota de token. |
logprobs |
integer |
null |
Um número que indica a inclusão das probabilidades de log nos logprobs tokens mais prováveis e os tokens escolhidos. Por exemplo, se logprobs for 10, a API retornará uma lista dos 10 tokens mais prováveis. a API sempre retornará o logprob do token amostrado, portanto, pode haver até logprobs +1 elementos na resposta. |
presence_penalty |
float |
null |
Número entre -2.0 e 2.0. Valores positivos penalizam novos tokens com base em se apareceram no texto até o momento, aumentando a probabilidade do modelo apresentar novos tópicos. |
ignore_eos |
boolean |
True |
Indica se o token EOS deve ser ignorado e se a geração de tokens deve continuar após a geração do token EOS. |
use_beam_search |
boolean |
False |
Indica se a pesquisa de feixe deve ser usada em vez da amostragem. Nesse caso, best_of deve ser maior do que 1 e temperature deve ser 0 . |
stop_token_ids |
array |
null |
Lista de IDs para tokens que, quando gerados, interrompem a geração de tokens adicionais. A saída retornada contém os tokens de parada, a menos que os tokens de parada sejam tokens especiais. |
skip_special_tokens |
boolean |
null |
Indica se os tokens especiais devem ser ignorados na saída. |
O objeto messages
tem os seguintes campos:
Chave | Type | Valor |
---|---|---|
content |
string |
O conteúdo da mensagem. O conteúdo é necessário para todas as mensagens. |
role |
string |
A função do autor da mensagem. Uma opção entre system , user ou assistant . |
Exemplo
Corpo
{
"messages":
[
{
"role": "system",
"content": "You are a helpful assistant that translates English to Italian."},
{
"role": "user",
"content": "Translate the following sentence from English to Italian: I love programming."
}
],
"temperature": 0.8,
"max_tokens": 512,
}
Esquema de resposta
O conteúdo da resposta é um dicionário com os campos a seguir.
Chave | Type | Descrição |
---|---|---|
id |
string |
Um identificador exclusivo do preenchimento. |
choices |
array |
A lista de opções de preenchimento que o modelo gerou para as mensagens de entrada. |
created |
integer |
O carimbo de data/hora do UNIX (em segundos) de quando o preenchimento foi criado. |
model |
string |
A model_id usada para o preenchimento. |
object |
string |
O tipo de objeto, que é sempre chat.completion . |
usage |
object |
Estatísticas de uso para a solicitação de preenchimento. |
Dica
No modo de streaming, para cada parte da resposta, finish_reason
é sempre null
, exceto o último, que é encerrado por um conteúdo [DONE]
. Em cada objeto choices
, a chave de messages
é alterada por delta
.
O objeto choices
é um dicionário com os campos a seguir.
Chave | Type | Descrição |
---|---|---|
index |
integer |
Índice de opções. Quando best_of > 1, o índice dessa matriz pode não estar em ordem e pode não ser de 0 a n-1 . |
messages ou delta |
string |
O resultado do preenchimento do chat no objeto messages . Quando o modo de streaming é usado, a chave delta é usada. |
finish_reason |
string |
O motivo pelo qual o modelo parou de gerar tokens: - stop : o modelo atingiu um ponto de parada natural ou uma sequência de parada fornecida. - length : se o número máximo de tokens tiver sido atingido. - content_filter : quando o RAI modera e o CMP força a moderação - content_filter_error : um erro durante a moderação e não foi capaz de tomar uma decisão sobre a resposta - null : resposta da API ainda em andamento ou incompleta. |
logprobs |
object |
As probabilidades de log dos tokens gerados no texto de saída. |
O objeto usage
é um dicionário com os campos a seguir.
Chave | Type | Valor |
---|---|---|
prompt_tokens |
integer |
Número de tokens no prompt. |
completion_tokens |
integer |
Número de tokens gerados no preenchimento. |
total_tokens |
integer |
Total de tokens. |
O objeto logprobs
é um dicionário com os seguintes campos:
Chave | Type | Valor |
---|---|---|
text_offsets |
array de integers |
A posição ou o índice de cada token na saída do preenchimento. |
token_logprobs |
array de float |
Selecionou logprobs do dicionário na matriz top_logprobs . |
tokens |
array de string |
Tokens selecionados. |
top_logprobs |
array de dictionary |
Matriz de dicionário. Em cada dicionário, a chave é o token e o valor é o prob. |
Exemplo
Veja a seguir um exemplo de fórmula:
{
"id": "12345678-1234-1234-1234-abcdefghijkl",
"object": "chat.completion",
"created": 2012359,
"model": "",
"choices": [
{
"index": 0,
"finish_reason": "stop",
"message": {
"role": "assistant",
"content": "Sure, I\'d be happy to help! The translation of ""I love programming"" from English to Italian is:\n\n""Amo la programmazione.""\n\nHere\'s a breakdown of the translation:\n\n* ""I love"" in English becomes ""Amo"" in Italian.\n* ""programming"" in English becomes ""la programmazione"" in Italian.\n\nI hope that helps! Let me know if you have any other sentences you\'d like me to translate."
}
}
],
"usage": {
"prompt_tokens": 10,
"total_tokens": 40,
"completion_tokens": 30
}
}
Implantar modelos Meta Llama em computação gerenciada
Além da implantação com o serviço gerenciado de pagamento conforme o uso, você também pode implantar modelos do Meta Llama 3.1 na computação gerenciada no Estúdio do Azure Machine Learning. Quando implantado na computação gerenciada, você pode selecionar todos os detalhes sobre a infraestrutura que executa o modelo, incluindo as máquinas virtuais a serem usadas e o número de instâncias para lidar com a carga esperada. Os modelos implantados na computação gerenciada consomem cota da sua assinatura. Os seguintes modelos da onda de lançamento 3.1 estão disponíveis na computação gerenciada:
Meta-Llama-3.1-8B-Instruct
(com suporte para FT)Meta-Llama-3.1-70B-Instruct
(com suporte para FT)Meta-Llama-3.1-8B
(com suporte para FT)Meta-Llama-3.1-70B
(com suporte para FT)Llama Guard 3 8B
Prompt Guard
Criar uma nova implantação
Siga estas etapas para implantar um modelo como Meta-Llama-3.1-70B-Instruct
em uma computação gerenciada no Estúdio do Azure Machine Learning.
Selecione o workspace no qual você deseja implantar o modelo.
Escolha o modelo que deseja implantar no catálogo de modelos do estúdio.
Como alternativa, você pode iniciar a implantação acessando seu espaço de trabalho e selecionando Pontos de Extremidade>Computação Gerenciada>Criar.
Na página de visão geral do modelo, selecione Implantar e Computação Gerenciada sem a Segurança de Conteúdo de IA do Azure.
Na página Implantar com a Segurança de Conteúdo de IA do Azure (versão prévia), selecione Ignorar Segurança de Conteúdo de IA do Azure para que você possa continuar a implantar o modelo usando a interface do usuário.
Dica
Em geral, recomendamos que selecione Habilitar segurança de conteúdo de IA do Azure (recomendado) para implantação do modelo Meta Llama. Atualmente, essa opção de implantação só tem suporte usando o SDK do Python e acontece em um notebook.
Selecione Continuar.
Dica
Caso você não tenha cota suficiente disponível no projeto selecionado, use a opção Quero usar a cota compartilhada e reconheço que esse ponto de extremidade será excluído em 168 horas.
Selecione a Máquina virtual e a Contagem de instâncias que você deseja atribuir à implantação.
Escolha se deseja criar essa implantação como parte de um novo ponto de extremidade ou de um existente. Os pontos de extremidade podem hospedar várias implantações, mantendo a configuração de recursos exclusiva para cada uma delas. As implantações no mesmo ponto de extremidade compartilham o URI do ponto de extremidade e as respectivas chaves de acesso.
Indique se você deseja habilitar a Coleta de dados de inferência (versão prévia).
Indica se você deseja habilitar Modelo do Pacote (versão prévia).
Selecione Implantar. Depois de alguns momentos, a página Detalhes do ponto de extremidade será aberta.
Aguarde a conclusão da criação e da implantação do ponto de extremidade. Esta etapa pode levar alguns minutos.
Selecione a página Consumir do ponto de extremidade para obter exemplos de código que podem ser usados para consumir o modelo implantado no aplicativo.
Para obter mais informações sobre como implantar modelos na computação gerenciada usando o estúdio, consulte Implantando modelos de base nos pontos de extremidade para inferência.
Consumir modelos Meta Llama implantados para computação gerenciada
Para obter informações sobre como invocar modelos Meta Llama 3 implantados em computação gerenciada, consulte o cartão do modelo no catálogo de modelos do Estúdio do Azure Machine Learning. Cada cartão de modelo tem uma página de visão geral que inclui uma descrição do modelo, exemplos de inferência baseada em código, ajuste fino e avaliação de modelo.
Exemplos de inferência adicionais
Pacote | Exemplo de notebook |
---|---|
CLI usando solicitações web CURL e Python | webrequests.ipynb |
SDK do OpenAI (experimental) | openaisdk.ipynb |
LangChain | langchain.ipynb |
SDK do LiteLLM | litellm.ipynb |
Custo e cotas
Considerações sobre custo e cota para modelos Meta Llama 3.1 implantados como uma API sem servidor
Os modelos do Meta Llama 3.1 implantados como uma API sem servidor são oferecidos pelo Meta por meio do Azure Marketplace e integrados ao Estúdio do Azure Machine Learning para uso. Encontre os preços do Azure Marketplace ao implantar ou ajustar os modelos.
Sempre que um workspace se inscreve em uma determinada oferta de modelo do Azure Marketplace, um novo 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.
A cota é gerenciada por implantação. Cada implantação tem um limite de taxa de 400.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.
Considerações sobre custo e cota para modelos Meta Llama 3.1 implantados em computação gerenciada
Para a implantação e inferência de modelos Meta Llama 3.1 com computação gerenciada, consuma a cota de núcleo de máquina virtual (VM) que é atribuída à sua assinatura com base em cada região. Ao se inscrever no Estúdio de IA do Azure, você recebe uma cota de VM padrão para várias famílias de VM disponíveis na região. Você pode continuar a criar implantações até atingir o limite de cota. Depois de atingir esse limite, você poderá solicitar um aumento de cota.
Filtragem de conteúdo
Os modelos implantados como uma API sem servidor são protegidos pela segurança de conteúdo da IA do Azure. Quando implantado em computação gerenciada, você pode cancelar esse recurso. Com a Segurança de Conteúdo de IA do Azure habilitada, o prompt e o preenchimento passam por um conjunto de modelos de classificação destinados a detectar e impedir a saída de conteúdo prejudicial. O sistema de filtragem de conteúdo (versão prévia) detecta e toma medidas em categorias específicas de conteúdo potencialmente prejudicial tanto em prompts de entrada quanto em conclusões de saída. Saiba mais sobre de Segurança de Conteúdo de IA do Azure.