

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Implantação e predições de modelo do Autopilot
<a name="autopilot-llms-finetuning-deploy-models"></a>

Depois de ajustar um grande modelo de linguagem (LLM), você pode implantar o modelo para geração de texto em tempo real configurando um endpoint para obter predições interativas.

**nota**  
Recomendamos executar trabalhos de inferência em tempo real `ml.g5.12xlarge` para obter melhores performances. Como alternativa, as instâncias `ml.g5.8xlarge` são adequadas para tarefas de geração de texto Falcon-7B-Instruct e MPT-7B-Instruct.  
Você pode encontrar as especificidades dessas instâncias na categoria [Computação acelerada](https://aws.amazon.com/ec2/instance-types/) na seleção de tipos de instância fornecidos pelo Amazon EC2.

## Geração de texto em tempo real
<a name="autopilot-llms-finetuning-realtime"></a>

Você pode usar SageMaker APIs para implantar manualmente seu modelo ajustado em um endpoint de [inferência em tempo real do SageMaker AI Hosting e, em seguida, começar a fazer previsões invocando o endpoint](https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints.html) da seguinte maneira.

**nota**  
Como alternativa, você pode escolher a opção de implantação automática o criar seu experimento de ajuste fino no Autopilot. Para obter informações sobre como configurar a implantação automática de modelos, consulte [Como habilitar a implantação automática](autopilot-create-experiment-finetune-llms.md#autopilot-llms-finetuning-auto-model-deployment).   
Você também pode usar o SDK do SageMaker Python e a `JumpStartModel` classe para realizar inferências com modelos ajustados pelo Autopilot. Isso pode ser feito especificando um local personalizado para o artefato do modelo no Amazon S3. Para obter informações sobre como definir seu modelo como JumpStart modelo e implantar seu modelo para inferência, consulte [Implantação de baixo código com](https://sagemaker.readthedocs.io/en/stable/overview.html#deploy-a-pre-trained-model-directly-to-a-sagemaker-endpoint) a classe. JumpStartModel 

1. **Obtenha as definições do contêiner de inferência candidato**

   Você pode encontrar o `InferenceContainerDefinitions` interior do `BestCandidate` objeto recuperado da resposta à chamada da API [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html#API_DescribeAutoMLJobV2_ResponseSyntax). Uma definição de contêiner para inferência refere-se ao ambiente em contêineres projetado para implantar e executar seu modelo treinado para fazer predições.

   O exemplo de AWS CLI comando a seguir usa a API [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) para obter as definições de contêiner recomendadas para o nome do seu trabalho.

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name job-name --region region
   ```

1. **Crie um modelo de SageMaker IA**

   Use as definições de contêiner da etapa anterior para criar um modelo de SageMaker IA usando a [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API. Veja o AWS CLI comando a seguir como exemplo. Use o `CandidateName` para o nome do modelo.

   ```
   aws sagemaker create-model --model-name '<your-candidate-name>' \
                       --primary-container '<container-definition' \
                       --execution-role-arn '<execution-role-arn>' --region '<region>
   ```

1. **Criar uma configuração de endpoint**

   O exemplo de AWS CLI comando a seguir usa a [CreateEndpointConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html)API para criar uma configuração de endpoint.
**nota**  
Para evitar que a criação do endpoint atinja o tempo limite devido a um longo download do modelo, recomendamos configurar `ModelDataDownloadTimeoutInSeconds = 3600` e `ContainerStartupHealthCheckTimeoutInSeconds = 3600`.

   ```
   aws sagemaker create-endpoint-config --endpoint-config-name '<your-endpoint-config-name>' \
                       --production-variants '<list-of-production-variants>' ModelDataDownloadTimeoutInSeconds=3600 ContainerStartupHealthCheckTimeoutInSeconds=3600 \
                       --region '<region>'
   ```

1. **Criar o endpoint** 

   O AWS CLI exemplo a seguir usa a [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html)API para criar o endpoint.

   ```
   aws sagemaker create-endpoint --endpoint-name '<your-endpoint-name>' \
                       --endpoint-config-name '<endpoint-config-name-you-just-created>' \
                       --region '<region>'
   ```

   Verifique o progresso da implantação do seu endpoint usando a [DescribeEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeEndpoint.html)API. Veja o AWS CLI comando a seguir como exemplo.

   ```
   aws sagemaker describe-endpoint —endpoint-name '<endpoint-name>' —region <region>
   ```

   Depois que `EndpointStatus` muda para `InService`, o endpoint está pronto para ser usado para inferência em tempo real.

1. **Invocar o endpoint** 

   O comando a seguir invoca o endpoint para inferência em tempo real. Seu prompt precisa ser codificado em bytes.
**nota**  
O formato do seu prompt de entrada depende do modelo de linguagem. Para obter mais informações sobre o formato de promtps de geração de texto, consulte [Formato de solicitação para inferência em tempo real de modelos de geração de texto](#autopilot-llms-finetuning-realtime-prompt-examples). 

   ```
   aws sagemaker invoke-endpoint --endpoint-name '<endpoint-name>' \ 
                     --region '<region>' --body '<your-promt-in-bytes>' [--content-type] 'application/json' <outfile>
   ```

## Formato de solicitação para inferência em tempo real de modelos de geração de texto
<a name="autopilot-llms-finetuning-realtime-prompt-examples"></a>

Diferentes modelos de linguagem grande (LLMs) podem ter dependências específicas de software, ambientes de execução e requisitos de hardware que influenciam o contêiner recomendado pelo Autopilot para hospedar o modelo para inferência. Adicionalmente, cada modelo determina o formato de dados de entrada necessário e o formato esperado para predições e resultados.

Aqui estão exemplos de entradas para alguns modelos e contêineres recomendados.
+ Para modelos Falcon com o contêiner `huggingface-pytorch-tgi-inference:2.0.1-tgi1.0.3-gpu-py39-cu118-ubuntu20.04` recomendado:

  ```
  payload = {
      "inputs": "Large language model fine-tuning is defined as",
      "parameters": {
          "do_sample": false,
          "top_p": 0.9,
          "temperature": 0.1,
          "max_new_tokens": 128,
          "stop": ["<|endoftext|>", "</s>"]
      }
  }
  ```
+ Para outros modelos com o contêiner `djl-inference:0.22.1-fastertransformer5.3.0-cu118` recomendado:

  ```
  payload= {
      "text_inputs": "Large language model fine-tuning is defined as"
  }
  ```