Atributos do contêiner de inferência
O contêiner de inferência Amazon Nova SageMaker inclui um conjunto de atributos que podem ser habilitados para personalizar o comportamento do modelo durante a inferência. Cada atributo é introduzido em uma versão específica do contêiner e pode exigir variáveis de ambiente, parâmetros de solicitação ou ambos para ser ativado.
Esta página lista os atributos disponíveis no contêiner de inferência, descreve como habilitar cada um deles e identifica a versão do contêiner na qual o atributo foi introduzido. Use essa referência para determinar quais são os atributos disponíveis para sua implantação e como configurá-los.
Os atributos habilitados por variáveis de ambiente são definidos quando você cria o modelo ou a configuração do endpoint do SageMaker. Inclua-os no parâmetro Environment da chamada de API CreateModel. Os atributos habilitados por parâmetros de solicitação são definidos a cada invocação no corpo da solicitação.
nota
Sempre use a imagem mais recente do contêiner para ter acesso a todos os atributos disponíveis. A tag SM-Inference-latest aponta atualmente para v1.4.
Resumo de atributos
A tabela a seguir fornece uma referência rápida de todos os atributos compatíveis com o contêiner de inferência do Amazon Nova SageMaker.
| Recurso | Como habilitar | Padrão | Modelos compatíveis | Introduzida em |
|---|---|---|---|---|
| Temperatura padrão | Variável de ambiente | 1.0 |
Todos os modelos do Amazon Nova | v1.0 |
| Top-p padrão | Variável de ambiente | 1.0 |
Todos os modelos do Amazon Nova | v1.0 |
| Top-k padrão | Variável de ambiente | -1 (desabilitado) |
Todos os modelos do Amazon Nova | v1.0 |
| Máximo de novos tokens padrão | Variável de ambiente | Tamanho máximo de contexto do modelo | Todos os modelos do Amazon Nova | v1.0 |
| Logprobs padrão | Variável de ambiente | Desabilitado | Todos os modelos do Amazon Nova | v1.0 |
| Decodificação especulativa Eagle3 | Habilitada por padrão. | Habilitado | Todos os modelos do Amazon Nova | v1.0 |
| Tipo de dados de cache de KV | Variável de ambiente | Igual ao tipo de dados do modelo | Todos os modelos do Amazon Nova | v1.3 |
| Quantização | Variável de ambiente | Desabilitado* | Todos os modelos do Amazon Nova | v1.3 |
| Número de tokens especulativos | Variável de ambiente | 3 |
Todos os modelos do Amazon Nova | v1.4 |
| Decodificação de sufixo | Variável de ambiente | Desabilitado | Todos os modelos do Amazon Nova | v1.4 |
Importante
* A quantização FP8 é habilitada automaticamente e não pode ser desabilitada para as seguintes combinações de modelo e tipo de instância:
-
Amazon Nova Lite em
ml.g6.12xlargeouml.g6.24xlarge -
Nova 2 Lite em
ml.g6.48xlarge
Nessas configurações, não é necessário definir o QUANTIZATION_DTYPE. Para mais detalhes, consulte Quantização.
Temperatura padrão
Define a temperatura de amostragem padrão para todas as solicitações de inferência enviadas ao endpoint. A temperatura controla o quanto a saída do modelo é aleatória ou previsível. Um valor 0 faz com que o modelo sempre escolha a próxima palavra mais provável, produzindo uma saída consistente e repetível. Valores mais altos (até 2) predispõem o modelo a escolher palavras menos prováveis, produzindo respostas mais criativas e variadas.
Quando usar: reduza a temperatura (por exemplo, de 0.1 para 0.3) para as tarefas que precisam de respostas factuais e consistentes, como classificação ou extração de dados. Aumente-a (por exemplo, de 0.7 para 1.0) para tarefas criativas, como escrever histórias ou gerar ideias. A temperatura funciona junto com top-p e top-k, todos os três controlam como o modelo seleciona tokens e é possível combiná-los para ajustar o comportamento da saída.
- Introduzida em
v1.0- Modelos compatíveis
Todos os modelos do Amazon Nova
- Como habilitar
-
Defina a variável de ambiente
DEFAULT_TEMPERATUREao criar o modelo do SageMaker. - Valor padrão
1.0- Valores válidos
Flutuante entre
0e2(inclusive)
Variável de ambiente
"Environment": { "DEFAULT_TEMPERATURE": "0.7" }
nota
Você pode substituir esse padrão a cada solicitação, incluindo o parâmetro temperature no corpo da solicitação.
Top-p padrão
Define o valor de top-p padrão para todas as solicitações de inferência. Top-p controla a diversidade da saída limitando as escolhas do modelo a um subconjunto das palavras mais prováveis. Especificamente, o modelo classifica todas as próximas palavras possíveis por probabilidade e considera somente o menor grupo cuja probabilidade combinada atinja o valor de top-p. Por exemplo, um top-p de 0.9 significa que o modelo considera apenas as palavras que juntas representam 90% de probabilidade, ignorando as opções improváveis restantes.
Quando usar: use um valor top-p mais baixo (por exemplo, 0.5) para que o modelo use apenas palavras de alta confiança, produzindo uma saída mais focada. Use um valor maior (por exemplo, 0.95) para permitir maior variedade. O top-p é frequentemente usado como alternativa à temperatura, ambos controlam a diversidade da saída, mas o top-p se adapta dinamicamente com base na confiança do modelo em cada etapa. Você pode usar os dois juntos e, nesse caso, o modelo aplicará a limitação que for mais restritiva em cada etapa.
- Introduzida em
v1.0- Modelos compatíveis
Todos os modelos do Amazon Nova
- Como habilitar
-
Defina a variável de ambiente
DEFAULT_TOP_Pao criar o modelo do SageMaker. - Valor padrão
1.0- Valores válidos
Flutuante entre
1e-10e1(inclusive)
Variável de ambiente
"Environment": { "DEFAULT_TOP_P": "0.9" }
nota
Você pode substituir esse padrão a cada solicitação, incluindo o parâmetro top_p no corpo da solicitação.
Top-k padrão
Define o valor de top-k padrão para todas as solicitações de inferência. Top-k limita as escolhas do modelo a um número fixo de próximas palavras mais prováveis. Por exemplo, um top-k de 50 significa que o modelo considera apenas as 50 palavras mais prováveis em cada etapa, independentemente das probabilidades individuais. Um valor de -1 desabilita esse limite, permitindo que o modelo considere todas as palavras possíveis.
Quando usar: use top-k quando quiser impor um limite máximo rígido ao número de escolhas de palavras que o modelo considera. Valores mais baixos (por exemplo, 10) produzem saídas mais previsíveis, enquanto valores mais altos permitem mais variedade. Top-k pode ser combinado com temperatura e top-p. Quando vários controles de amostragem estão ativos, o modelo aplica todos eles, usando o que for mais restritivo em cada etapa.
- Introduzida em
v1.0- Modelos compatíveis
Todos os modelos do Amazon Nova
- Como habilitar
-
Defina a variável de ambiente
DEFAULT_TOP_Kao criar o modelo do SageMaker. - Valor padrão
-1(desabilitado)- Valores válidos
Inteiro,
-1ou mais. Use-1para considerar todos os tokens.
Variável de ambiente
"Environment": { "DEFAULT_TOP_K": "50" }
nota
Você pode substituir esse padrão a cada solicitação, incluindo o parâmetro top_k no corpo da solicitação.
Máximo de novos tokens padrão
Define o número máximo de tokens padrão (palavras ou partes de palavras) que o modelo gera em uma resposta. Esse valor se aplica a todas as solicitações, a menos que seja substituído. Use-o para controlar o tamanho da resposta e gerenciar os custos em todo o endpoint.
Quando usar: defina isso quando quiser impor um comprimento máximo de resposta consistente em todas as solicitações. Por exemplo, defina-o como 256 para tarefas de resposta curta ou 2048 para geração de conteúdo mais longo. O valor máximo permitido depende do valor de CONTEXT_LENGTH configurado para o endpoint, porque os tokens de entrada mais os tokens de saída não podem exceder o tamanho do contexto.
- Introduzida em
v1.0- Modelos compatíveis
Todos os modelos do Amazon Nova
- Como habilitar
-
Defina a variável de ambiente
DEFAULT_MAX_NEW_TOKENSao criar o modelo do SageMaker. - Valor padrão
Tamanho máximo de contexto de modelo
- Valores válidos
Inteiro,
1ou mais
Variável de ambiente
"Environment": { "DEFAULT_MAX_NEW_TOKENS": "512" }
nota
Você pode substituir esse padrão a cada solicitação, incluindo o parâmetro max_tokens ou max_completion_tokens no corpo da solicitação. O valor máximo permitido depende do valor de CONTEXT_LENGTH configurado para o endpoint.
Logprobs padrão
Define o número padrão de probabilidades logarítmicas a serem retornadas para cada token gerado. Uma probabilidade logarítmica é uma pontuação numérica que indica a confiança do modelo na escolha de cada palavra. Quando habilitada, a resposta inclui essas pontuações para cada token de saída, o que é útil para avaliar a confiança do modelo, comparar opções de palavras alternativas e depurar o comportamento de geração.
Quando usar: habilite logprobs quando precisar avaliar a confiança do modelo em sua saída, por exemplo, para sinalizar respostas de baixa confiança para análise humana ou para comparar a probabilidade de conclusões diferentes. Habilitar logprobs pode aumentar um pouco a latência e o tamanho da carga útil da resposta.
- Introduzida em
v1.0- Modelos compatíveis
Todos os modelos do Amazon Nova
- Como habilitar
-
Defina a variável de ambiente
DEFAULT_LOGPROBSao criar o modelo do SageMaker. - Valor padrão
Desabilitado
- Valores válidos
Inteiro entre
1e20(inclusive)
Variável de ambiente
"Environment": { "DEFAULT_LOGPROBS": "5" }
nota
Você pode substituir esse padrão a cada solicitação, incluindo os parâmetros logprobs e top_logprobs no corpo da solicitação. Habilitar logprobs pode aumentar um pouco a latência da resposta.
Decodificação especulativa Eagle3
Decodificação especulativa Eagle3 é uma técnica de otimização que acelera a geração de texto. Ela funciona usando um modelo preliminar menor e mais rápido para prever vários tokens e, em seguida, comparar essas previsões com o modelo primário em uma única etapa. Quando as previsões estão corretas, o modelo gera eficazmente vários tokens no tempo que normalmente levaria para gerar apenas um. O modelo primário sempre verifica os tokens preliminares, assim, a saída final é idêntica à que o modelo primário produziria por si só, o que muda é apenas a velocidade, não a qualidade.
Quando usar: a decodificação especulativa Eagle3 é habilitada por padrão e é vantajosa para a maioria das workloads. Considere desabilitá-la apenas se observar um comportamento inesperado ou precisar isolar as características de performance durante a depuração.
- Introduzida em
v1.0. Compatibilidade com quantização FP8 com decodificação especulativa Eagle3 adicionada nav1.4.- Modelos compatíveis
Todos os modelos do Amazon Nova
- Como habilitar
-
A decodificação especulativa Eagle3 é habilitada por padrão, sem necessidade de configuração. Use
DISABLE_SPECULATIVE_DECODINGpara desabilitá-la. - Valor padrão
false(A decodificação especulativa Eagle3 está habilitada)- Valores válidos
true,false
Variável de ambiente
O exemplo a seguir desabilita a decodificação especulativa Eagle3:
"Environment": { "DISABLE_SPECULATIVE_DECODING": "true" }
Tipo de dados de cache de KV
Define o tipo de dados para o cache de valores-chaves (KV) usado durante a inferência. O cache de KV armazena a memória de tokens anteriores do modelo em uma conversa, permitindo que ele gere cada novo token sem reprocessar toda a entrada. Para sequências longas, esse cache pode consumir uma quantidade significativa de memória da GPU. Configurar o cache de KV para um tipo de dados de menor precisão, como FP8, reduz o uso de memória e pode melhorar o throughput, ao custo de diferenças numéricas pouco significativas na saída.
Quando usar: habilite o cache de KV FP8 quando precisar permitir comprimentos de contexto maiores ou maior simultaneidade na instância. Isso é especialmente útil em instâncias de GPU com memória limitada. Teste seu caso de uso para verificar se a qualidade da saída atende aos seus requisitos, pois uma precisão menor pode produzir resultados ligeiramente diferentes.
- Introduzida em
v1.3- Modelos compatíveis
Todos os modelos do Amazon Nova
- Como habilitar
-
Defina a variável de ambiente
KV_CACHE_DTYPEao criar o modelo do SageMaker. - Valor padrão
Igual ao tipo de dados do modelo
- Valores válidos
fp8
Variável de ambiente
"Environment": { "KV_CACHE_DTYPE": "fp8" }
nota
Alterar o tipo de dados do cache de KV pode produzir saídas ligeiramente diferentes em comparação com a precisão padrão. Teste seu caso de uso para verificar se a qualidade da saída atende aos seus requisitos.
Quantização
Define o tipo de dados de quantização para os pesos do modelo. A quantização compacta os pesos do modelo em um formato de menor precisão (FP8 em vez da precisão mais alta padrão), o que reduz a quantidade de memória de GPU que o modelo requer. Isso pode melhorar o throughput da inferência e permitir que modelos maiores caibam em tipos de instâncias menores, com impacto mínimo na qualidade da saída.
Quando usar: use a quantização FP8 quando quiser reduzir o uso de memória para permitir maior simultaneidade ou colocar um modelo em um tipo de instância menor. Observe que algumas combinações de modelo e tipo de instância exigem quantização FP8 automaticamente. Veja o aviso abaixo.
- Introduzida em
v1.3- Modelos compatíveis
Todos os modelos do Amazon Nova
- Como habilitar
-
Defina a variável de ambiente
QUANTIZATION_DTYPEao criar o modelo do SageMaker. - Valor padrão
Desabilitado. Porém, a quantização FP8 é habilitada automaticamente para determinadas combinações de modelo e tipo de instância. Verifique a observação abaixo.
- Valores válidos
fp8
Variável de ambiente
"Environment": { "QUANTIZATION_DTYPE": "fp8" }
Importante
As seguintes combinações de modelo e tipo de instância exigem quantização FP8. Nessas configurações, a quantização é habilitada automaticamente e não pode ser desabilitada nem substituída:
-
Amazon Nova Lite em
ml.g6.12xlargeouml.g6.24xlarge -
Nova 2 Lite em
ml.g6.48xlarge
Para todas as outras configurações, consulte Modelos e instâncias compatíveis para obter detalhes.
Número de tokens especulativos
Controla quantos tokens o modelo preliminar prevê durante cada etapa de decodificação especulativa Eagle3. Um valor mais alto significa que o modelo preliminar tenta prever mais tokens ao mesmo tempo, o que pode melhorar o throughput quando as previsões são precisas. Se as previsões do modelo preliminar divergirem frequentemente do modelo primário, um valor menor poderá ser mais eficiente.
Quando usar: aumente esse valor quando a workload produzir padrões de saída previsíveis (por exemplo, dados estruturados ou texto modelado) nas quais o modelo preliminar provavelmente fará a suposição correta. Diminua-o para obter resultados criativos ou altamente variáveis, nos quais as previsões são menos confiáveis.
- Introduzida em
v1.4- Modelos compatíveis
Todos os modelos do Amazon Nova
- Como habilitar
-
Defina a variável de ambiente
NUM_SPECULATIVE_TOKENSao criar o modelo do SageMaker. - Valor padrão
3- Valores válidos
Inteiro entre
1e10(inclusive)
Variável de ambiente
"Environment": { "NUM_SPECULATIVE_TOKENS": "5" }
nota
Essa configuração se aplica apenas quando a decodificação especulativa Eagle3 está habilitada (DISABLE_SPECULATIVE_DECODING é false). Ela não tem efeito quando a decodificação especulativa está desabilitada ou quando a decodificação de sufixo é usada.
Decodificação de sufixo
A decodificação de sufixo é um método alternativo para acelerar a geração de texto. Em vez de usar um modelo preliminar separado (como a Eagle3 faz), a decodificação de sufixos procura padrões repetidos no texto já gerado ou no prompt de entrada e reutiliza esses padrões para prever tokens futuros. Essa abordagem funciona bem quando é provável que a saída contenha frases repetidas, formatos estruturados ou conteúdo muito semelhante à entrada.
Quando usar: use a decodificação de sufixo para tarefas cuja saída contenha padrões repetitivos, como geração de dados estruturados, modelos para preenchimento ou resumo de conteúdo que reutiliza frases da fonte. Para geração de uso geral, na qual a saída é altamente variada, o throughput do método Eagle3 padrão normalmente é melhor.
- Introduzida em
v1.4- Modelos compatíveis
Todos os modelos do Amazon Nova
- Como habilitar
-
Defina a variável de ambiente
SPECULATIVE_DECODING_METHODcomosuffixao criar o modelo do SageMaker. - Valor padrão
eagle3- Valores válidos
eagle3,suffix
Variável de ambiente
"Environment": { "SPECULATIVE_DECODING_METHOD": "suffix" }
nota
Para usar a decodificação de sufixo, DISABLE_SPECULATIVE_DECODING deve ser definido como false (o padrão). Definir DISABLE_SPECULATIVE_DECODING como true desabilita todos os métodos de decodificação especulativa, incluindo a decodificação de sufixos.