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á.
Solução de problemas
Se seu trabalho de treinamento falhar ou se comportar de forma inesperada, as seções a seguir podem ajudá-lo a identificar e resolver o problema. Verificar o status do seu trabalho pode ajudar a determinar se o problema está na sua configuração ou no seu agente, e as seções específicas do agente abaixo abordam registros e problemas comuns de cada caminho de implantação.
Depuração em nível de trabalho
Use a DescribeJob API para verificar o status atual do seu trabalho e ver por que ele falhou. A resposta inclui o status do trabalho, o motivo da falha se o trabalho falhou e um cronograma de transições de status que mostra até que ponto o trabalho progrediu antes que o problema ocorresse.
aws sagemaker describe-job \ --job-name "my-agent-rft-job" \ --job-category AgentRFT \ --region us-west-2
Campos principais a serem verificados:
-
JobStatus: Estado atual (
InProgressCompleted,Failed,Stopping,Stopped) -
SecondaryStatus: Fase mais granular (
Starting,,DownloadingTraining,Uploading) -
FailureReason: Se o trabalho falhou, uma descrição do motivo
-
SecondaryStatusTransitions: Cronograma completo de mudanças de status com registros de data e hora
CloudWatch Registros de trabalhos
As informações sobre o progresso do treinamento e o nível de implantação são registradas no seguinte grupo de registros em sua conta:
/aws/sagemaker/Job/AgentRFT
O nome do fluxo de log é<job-name>/.
Esses registros capturam o progresso da etapa de treinamento, eventos de invocação de implantação e erros de alto nível. Eles podem ser úteis para entender até que ponto seu trabalho progrediu e se as implementações estão sendo invocadas com sucesso.
Se seu trabalho falhar, verifique o FailureReason campo para obter detalhes. Se falhar durante a Training fase, o problema provavelmente pode estar no seu agente. Nesse caso, verifique os registros do seu agente para obter mais informações.
Depuração em nível de agente
Depuração do Amazon Bedrock AgentCore
Se você implantou seu agente no Amazon Bedrock AgentCore, o seguinte pode ser útil para investigar problemas do lado do agente.
Registros do agente
A saída stdout e stderr do contêiner do seu agente é capturada no Amazon CloudWatch Logs em sua conta. Você pode encontrá-los no seguinte grupo de registros:
/aws/bedrock-agentcore/runtimes/<runtime-name>-<id>-<qualifier>
Esses registros capturam a saída do código do seu agente, incluindo erros, rastreamentos de pilha e mensagens do SDK. Esses registros podem ser usados para investigar problemas relacionados ao código do agente, às dependências ou à conectividade com o RFT Runtime.
Verifique a integridade do agente
Verifique se o tempo de execução do seu agente está íntegro:
aws bedrock-agentcore-control list-agent-runtimes --region us-west-2
Para obter detalhes sobre um tempo de execução específico:
aws bedrock-agentcore-control get-agent-runtime \ --agent-runtime-id <runtime-id> \ --region us-west-2
Depuração personalizada de agentes
Se você estiver usando o caminho do encaminhador Lambda, problemas podem ocorrer na própria função do Lambda ou em seu agente externo. O seguinte pode ser útil para investigar ambos.
Registros do encaminhador Lambda
Os registros de execução da sua função Lambda são capturados no Amazon CloudWatch Logs. Você pode encontrá-los no seguinte grupo de registros:
/aws/lambda/<function-name>
Esses registros podem ser usados para investigar problemas relacionados ao encaminhamento de solicitações, tempos limite ou conectividade entre o Lambda e seu agente. Verifique se existe:
-
Erros de invocação (o Lambda não conseguiu entrar em contato com seu agente)
-
Erros de tempo limite (o agente demorou muito para responder)
-
Erros de validação (solicitação de implantação malformada)
Verifique a conectividade
Se seus registros do Lambda mostrarem erros de invocação ou tempos limite, o problema pode ser que o Lambda não consiga alcançar seu agente. As verificações a seguir podem ajudar a confirmar se a conexão entre seu Lambda e o agente está funcionando.
Health Check — confirme se seu agente está funcionando:
curl -s "http://$AGENT_ENDPOINT/health" # Expected: {"status": "ok"}
Invocação do teste Lambda — confirme se o Lambda pode entrar em contato com seu agente:
aws lambda invoke \ --function-name rft-agent-forwarder \ --cli-binary-format raw-in-base64-out \ --payload '{"prompt": "test", "metadata": {"jobArn": "test", "rolloutId": "test-1"}}' \ --region us-west-2 \ /tmp/response.json && cat /tmp/response.json # Note: This will return an InternalServerError because the jobArn "test" # does not correspond to an active training job. This is expected. # Success means the Lambda executed and reached your agent — check agent # logs to confirm the request was received.
Se o Lambda for executado com sucesso, mas o trabalho ainda falhar, os registros do agente poderão ter mais detalhes. Verifique os registros do seu agente em busca de erros relacionados a chamadas de inferência ou relatórios de recompensas.
Registros do agente
Os próprios registros do seu agente dependem de onde eles são implantados. Esses registros podem ser usados para investigar problemas relacionados ao código do seu agente, chamadas de inferência para o RFT Runtime ou relatórios de recompensas.
Por exemplo, se você implantou seu agente no Amazon EKS, você pode verificar os registros do seu agente com:
kubectl logs -l app=external-agent --tail=50
Usando CloudTrail para depuração
CloudTrail eventos de dados podem ajudar a confirmar se as chamadas do seu agente para o RFT Runtime estão sendo bem-sucedidas. Procure eventos com:
-
EventName:
Sample,,,SampleWithResponseStreamCompleteRolloutUpdateReward -
tipo de recursos:
AWS::SageMaker::Job
Se você não vê esses eventos, seu agente não está chamando com sucesso o RFT Runtime. Verifique os registros e as permissões do agente.
Registro de chamadas de API do com AWS CloudTrail
A Amazon SageMaker AI é integrada com AWS CloudTrail, um serviço que fornece um registro das ações realizadas por um usuário, função ou AWS serviço. CloudTrail captura todas as chamadas de API para a Amazon SageMaker AI como eventos. As chamadas capturadas incluem chamadas do console do Amazon SageMaker AI e chamadas de código para as operações da API do Amazon SageMaker AI. Usando as informações coletadas por CloudTrail, você pode determinar a solicitação que foi feita à Amazon SageMaker AI, o endereço IP a partir do qual a solicitação foi feita, quando foi feita e detalhes adicionais.
Cada entrada de log ou evento contém informações sobre quem gerou a solicitação. As informações de identidade ajudam a determinar o seguinte:
-
Se a solicitação foi feita com credenciais de usuário raiz ou credenciais de usuário.
-
Se a solicitação foi feita em nome de um usuário do Centro de Identidade do IAM.
-
Se a solicitação foi feita com credenciais de segurança temporárias de um perfil ou de um usuário federado.
-
Se a solicitação foi feita por outro AWS serviço.
CloudTrail está ativo em sua AWS conta quando você cria a conta e você tem acesso automático ao histórico de CloudTrail eventos. O histórico de CloudTrail eventos fornece um registro visível, pesquisável, baixável e imutável dos últimos 90 dias de eventos de gerenciamento registrados em uma região. AWS Para obter mais informações, consulte Trabalhando com o histórico de CloudTrail eventos no Guia AWS CloudTrail do usuário. Não há CloudTrail cobrança pela visualização do histórico de eventos.
Para um registro contínuo dos eventos em sua AWS conta nos últimos 90 dias, crie uma trilha ou um armazenamento de dados de eventos no CloudTrail Lake.
CloudTrail trilhas
Uma trilha permite CloudTrail entregar arquivos de log para um bucket do Amazon S3. Todas as trilhas criadas usando o AWS Management Console são multirregionais. Você pode criar uma trilha de região única ou multirregião usando a CLI AWS . É recomendável criar uma trilha multirregional porque você captura a atividade em todas as AWS regiões da sua conta. Se você criar uma trilha de região única, poderá visualizar somente os eventos registrados na região da AWS trilha. Para obter mais informações sobre trilhas, consulte Criação de uma trilha para sua AWS conta e Criação de uma trilha para uma organização no Guia AWS CloudTrail do usuário.
Você pode entregar uma cópia dos seus eventos de gerenciamento contínuos para o bucket do Amazon S3 sem nenhum custo CloudTrail criando uma trilha. No entanto, há cobranças de armazenamento do Amazon S3. Para obter mais informações sobre CloudTrail preços, consulte AWS CloudTrailPreços
CloudTrail Armazenamentos de dados de eventos em Lake
CloudTrail O Lake permite que você faça SQL-based consultas sobre seus eventos. CloudTrail O Lake converte eventos existentes no formato JSON baseado em linhas para o formato Apache
CloudTrail Os armazenamentos e consultas de dados de eventos em Lake incorrem em custos. Ao criar um armazenamento de dados de eventos, você escolhe a opção de preço que deseja usar para ele. A opção de preço determina o custo para a ingestão e para o armazenamento de eventos, e o período de retenção padrão e máximo para o armazenamento de dados de eventos. Para obter mais informações sobre os preços do CloudTrail , consulte Definição de preço do AWS CloudTrail
SageMaker Eventos de dados de IA em CloudTrail
Os Eventos de dados fornecem informações sobre as operações de recursos realizadas em um recurso (por exemplo, leitura ou gravação em um objeto do Amazon S3). Também são conhecidas como operações de plano de dados. Os eventos de dados costumam ser atividades de alto volume. Por padrão, CloudTrail não registra eventos de dados. O histórico de CloudTrail eventos não registra eventos de dados.
Há cobranças adicionais para eventos de dados. Para obter mais informações sobre os preços do CloudTrail, consulte Definição de preço do AWS CloudTrail
Você pode registrar eventos de dados para vários tipos de recursos de SageMaker IA da Amazon usando o CloudTrail console, a AWS CLI ou as operações de CloudTrail API. Para obter mais informações sobre como registrar eventos de dados, consulte Registrar eventos de dados com o AWS Management Console e Registrar eventos de dados com a interface de linha de AWS comando no Guia AWS CloudTrail do usuário.
A tabela a seguir lista os tipos de recursos de SageMaker IA da Amazon para os quais você pode registrar eventos de dados:
| Tipo de recurso (console) | valor resources.type | APIs de dados registradas em CloudTrail | Referência da API |
|---|---|---|---|
| SageMaker endpoint | AWS::SageMaker::Endpoint |
InvokeEndpoint, InvokeEndpointAsync, InvokeEndpointWithResponseStream | InvokeEndpoint, InvokeEndpointAsync, InvokeEndpointWithResponseStream |
| SageMaker empregos | AWS::SageMaker::Job |
CompleteRollout, Amostra, SampleWithResponseStream | CompleteRollout, Amostra, SampleWithResponseStream |
nota
As chamadas de SampleWithResponseStream API InvokeEndpoint InvokeEndpointAsyncSample,, e não registram os parâmetros da solicitação.
É possível configurar seletores de eventos avançados para filtrar os campos eventName, readOnly e resources.ARN para registrar em log somente os eventos que são importantes para você. Para saber mais sobre esses campos, consulte AdvancedFieldSelector na Referência de API do AWS CloudTrail .
Exemplo: registrar eventos de dados para um SageMaker endpoint e uma tarefa
O exemplo a seguir mostra como usar o comando da AWS CLI put-event-selectors para adicionar seletores de eventos avançados:
[ { "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.ARN", "Equals": ["arn:aws:sagemaker:us-east-1:111122223333:endpoint/your-inference-endpoint-arn"] }, { "Field": "resources.type", "Equals": ["AWS::SageMaker::Endpoint"] } ] }, { "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.ARN", "Equals": ["arn:aws:sagemaker:us-east-1:111122223333:job/your-job-arn"] }, { "Field": "resources.type", "Equals": ["AWS::SageMaker::Job"] } ] } ]
Em seguida, execute:
aws cloudtrail put-event-selectors \ --trail-name your-trail-name \ --advanced-event-selectors=file://advanced-event-selectors.json
SageMaker Eventos de gerenciamento de IA em CloudTrail
Os eventos de gerenciamento fornecem informações sobre as operações de gerenciamento que são realizadas nos recursos AWS da sua conta. Também são conhecidas como operações de ambiente de gerenciamento. Por padrão, CloudTrail registra eventos de gerenciamento.
O Amazon SageMaker AI registra todas as operações do plano de controle do Amazon SageMaker AI como eventos de gerenciamento. Para obter uma lista das operações do plano de controle da Amazon SageMaker AI nas quais a Amazon SageMaker AI se conecta CloudTrail, consulte a Referência da API de SageMaker IA da Amazon.
CloudTrail exemplos de eventos
Para obter informações sobre o conteúdo do CloudTrail registro, consulte o conteúdo do CloudTrail registro no Guia AWS CloudTrail do usuário.
Pacotes de modelos e pontos de verificação
Visão geral do
Durante o treinamento de RL em vários turnos, a plataforma salva periodicamente os parâmetros aprendidos do modelo como pontos de verificação. Esses pontos de verificação são armazenados como Pacotes de SageMaker Modelos em Grupos de Pacotes de Modelos, permitindo controle de versão, rastreamento de linhagem e continuidade entre trabalhos.
Principais conceitos
Model Package
Um Model Package é um artefato versionado e imutável em SageMaker IA que contém pesos de modelo treinados em um momento específico. Cada ponto de verificação produzido durante o treinamento é armazenado como um Model Package. Um Model Package tem:
Um ARN (por exemplo,)
arn:aws:sagemaker:us-west-2:123456789012:model-package/my-group/5Um local do S3 contendo os arquivos do modelo
Metadados sobre quando foi criado e a partir de qual etapa do treinamento
Grupo de pacotes de modelos
Um Model Package Group é um contêiner que contém várias versões do Model Package. Multi-turn O RL usa dois grupos separados:
| Group (Grupo) | Finalidade | Conteúdo |
|---|---|---|
| Grupo de pacotes do modelo de saída | Pontos de verificação finais do modelo treinado | HuggingFace-compatible Pesos do adaptador LoRa adequados para inferência e treinamento contínuo |
| Grupo de pacotes de modelos de ponto de verificação intermediário | Estado de treinamento retomável | Estado otimizador completo + pesos do adaptador para retomar o treinamento interrompido |
Você especifica os dois ao criar um trabalho:
{ "ModelPackageConfig": { "OutputModelPackageGroupArn": "arn:aws:sagemaker:us-west-2:123456789012:model-package-group/my-final-models", "IntermediateCheckpointModelPackageGroupArn": "arn:aws:sagemaker:us-west-2:123456789012:model-package-group/my-intermediate-checkpoints" } }
Tipos de pontos de verificação
Ponto de verificação retomável (estado completo)
Conteúdo: pesos do adaptador LoRa + estados do otimizador + metadados da etapa de treinamento (por classificação de GPU)
Armazenado em: Intermediate Checkpoint Model Package Group
Objetivo: retomar o treinamento a partir do ponto exato em que foi interrompido
Formato: formato interno (não diretamente utilizável para inferência)
Quando criado: cada etapa
Caso de uso: resiliência automática ou treinamento contínuo explícito
Ponto de verificação do modelo (somente pesos)
Conteúdo: Pesos do adaptador HuggingFace-compatible LoRa em formato SafeTensors
Armazenado em: Output Model Package Group
Objetivo: inferência, implantação ou treinamento contínuo
Formato: formato HuggingFace de adaptador padrão (
adapter_config.json+adapter_model.safetensors)Quando criado: cada etapa, na conclusão do trabalho e quando um trabalho é interrompido
Caso de uso: implante o modelo ajustado para inferência ou use como entrada para um novo trabalho de treinamento
Retomando o treinamento interrompido
Se um trabalho de treinamento falhar ou for interrompido no meio do treinamento, você poderá iniciar um novo trabalho que será retomado do ponto exato em que o trabalho anterior parou. A plataforma carrega todo o estado de treinamento (pesos + otimizador + contador de passos) a partir de um ponto de verificação retomável.
Para continuar, especifique um ponto de verificação retomável (do Intermediate Checkpoint Model Package Group) como: InputModelPackageArn
{ "ModelPackageConfig": { "OutputModelPackageGroupArn": "arn:aws:sagemaker:us-west-2:123456789012:model-package-group/my-final-models", "IntermediateCheckpointModelPackageGroupArn": "arn:aws:sagemaker:us-west-2:123456789012:model-package-group/my-intermediate-checkpoints", "InputModelPackageArn": "arn:aws:sagemaker:us-west-2:123456789012:model-package/my-intermediate-checkpoints/5" } }
Requisitos:
InputModelPackageArnDeve apontar para um ponto de verificação retomável (um comIsCheckpoint=truemetadados do Model Package)O novo trabalho deve usar o mesmo modelo básico
O novo trabalho deve usar a mesma configuração LoRa (classificação, alfa)
O novo trabalho deve usar os mesmos hiperparâmetros (taxa de aprendizado, tamanho do lote etc.)
O novo trabalho deve usar o mesmo conjunto de dados
Treinamento iterativo (treinamento contínuo)
O treinamento iterativo permite que você desenvolva um modelo previamente treinado com novos hiperparâmetros, um conjunto de dados diferente ou uma configuração de treinamento diferente. Ao contrário da retomada, isso inicia uma nova execução de treinamento que é inicializada a partir dos pesos LoRa treinados, mas com um novo estado de otimizador.
Para fazer um treinamento iterativo, especifique um ponto de verificação do modelo (do Output Model Package Group) como: InputModelPackageArn
{ "ModelPackageConfig": { "OutputModelPackageGroupArn": "arn:aws:sagemaker:us-west-2:123456789012:model-package-group/my-final-models", "IntermediateCheckpointModelPackageGroupArn": "arn:aws:sagemaker:us-west-2:123456789012:model-package-group/my-intermediate-checkpoints", "InputModelPackageArn": "arn:aws:sagemaker:us-west-2:123456789012:model-package/my-final-models/3" } }
O que você pode mudar entre as iterações:
Hiperparâmetros (taxa de aprendizado, tamanho do lote, max_steps, group_size, etc.)
Conjunto de dados (solicitações diferentes, distribuição de dados diferente)
Função de recompensa (recompensa lambda diferente)
Configuração do agente
O que deve permanecer o mesmo:
O modelo básico (o adaptador LoRa é específico para a arquitetura do modelo básico)
Casos de uso típicos:
Treine primeiro nos problemas fáceis e depois continue nos problemas mais difíceis (aprendizado curricular)
Treine com uma função de recompensa simples e depois refine com uma mais sutil
Aumente o tamanho do lote ou ajuste a taxa de aprendizado após observar a dinâmica inicial do treinamento
Ciclo de vida do ponto de verificação
Training Step 1 → Intermediate Checkpoint (Resumable) Training Step 1 → Intermediate Checkpoint (HFCompatible) ... Training Step N-1 → Intermediate Checkpoint (Resumable) Training Step N-1 → Intermediate Checkpoint (HFCompatible) ... Training Step N (final) → Model Checkpoint (HuggingFace LoRA) → Output Model Package Group
Quando um trabalho é concluído com êxito: os pesos finais do modelo são salvos como um Model Package no Output Model Package Group. O OutputModelPackageArn campo no registro do trabalho contém o ARN do modelo final.
Quando um trabalho falha ou é interrompido: o último ponto de verificação intermediário é promovido ao Output Model Package Group (melhor esforço).
Práticas recomendadas para postos de controle
Monitore a criação de pontos de verificação — use
DescribeJobpara rastrearResumableCheckpointe colocar emModelCheckpointcampo durante o treinamentoPara trabalhos longos, use treinamento iterativo — se um trabalho com muitas etapas falhar, planeje retomar a partir dos postos de controle em vez de recomeçar do zero