

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á.

# Inicie trabalhos de treinamento com o Debugger usando o SDK do Python SageMaker
<a name="debugger-configuration-for-debugging"></a>

Para configurar um estimador de SageMaker IA com o SageMaker Debugger, use o [Amazon SageMaker Python](https://sagemaker.readthedocs.io/en/stable) SDK e especifique os parâmetros específicos do Debugger. Para utilizar totalmente a funcionalidade de depuração, há três parâmetros que você precisa configurar:`debugger_hook_config`, `tensorboard_output_config` e `rules`.

**Importante**  
Antes de criar e executar o método de ajuste do estimador para iniciar um trabalho de treinamento, certifique-se de adaptar seu script de treinamento seguindo as instruções em [Adaptação do seu script de treinamento para registrar um hook](debugger-modify-script.md).

## Construindo um estimador de SageMaker IA com parâmetros específicos do Debugger
<a name="debugger-configuration-structure"></a>

Os exemplos de código nesta seção mostram como criar um estimador de SageMaker IA com os parâmetros específicos do Debugger.

**nota**  
Os exemplos de código a seguir são modelos para construir os estimadores da estrutura de SageMaker IA e não são diretamente executáveis. Você precisa prosseguir para as próximas seções e configurar os parâmetros específicos do Debugger.

------
#### [ PyTorch ]

```
# An example of constructing a SageMaker AI PyTorch estimator
import boto3
import sagemaker
from sagemaker.pytorch import PyTorch
from sagemaker.debugger import CollectionConfig, DebuggerHookConfig, Rule, rule_configs

session=boto3.session.Session()
region=session.region_name

debugger_hook_config=DebuggerHookConfig(...)
rules=[
    Rule.sagemaker(rule_configs.built_in_rule())
]

estimator=PyTorch(
    entry_point="directory/to/your_training_script.py",
    role=sagemaker.get_execution_role(),
    base_job_name="debugger-demo",
    instance_count=1,
    instance_type="ml.p3.2xlarge",
    framework_version="1.12.0",
    py_version="py37",
    
    # Debugger-specific parameters
    debugger_hook_config=debugger_hook_config,
    rules=rules
)

estimator.fit(wait=False)
```

------
#### [ TensorFlow ]

```
# An example of constructing a SageMaker AI TensorFlow estimator
import boto3
import sagemaker
from sagemaker.tensorflow import TensorFlow
from sagemaker.debugger import CollectionConfig, DebuggerHookConfig, Rule, rule_configs

session=boto3.session.Session()
region=session.region_name

debugger_hook_config=DebuggerHookConfig(...)
rules=[
    Rule.sagemaker(rule_configs.built_in_rule()),
    ProfilerRule.sagemaker(rule_configs.BuiltInRule())
]

estimator=TensorFlow(
    entry_point="directory/to/your_training_script.py",
    role=sagemaker.get_execution_role(),
    base_job_name="debugger-demo",
    instance_count=1,
    instance_type="ml.p3.2xlarge",
    framework_version="2.9.0",
    py_version="py39",
    
    # Debugger-specific parameters
    debugger_hook_config=debugger_hook_config,
    rules=rules
)

estimator.fit(wait=False)
```

------
#### [ MXNet ]

```
# An example of constructing a SageMaker AI MXNet estimator
import sagemaker
from sagemaker.mxnet import MXNet
from sagemaker.debugger import CollectionConfig, DebuggerHookConfig, Rule, rule_configs

debugger_hook_config=DebuggerHookConfig(...)
rules=[
    Rule.sagemaker(rule_configs.built_in_rule())
]

estimator=MXNet(
    entry_point="directory/to/your_training_script.py",
    role=sagemaker.get_execution_role(),
    base_job_name="debugger-demo",
    instance_count=1,
    instance_type="ml.p3.2xlarge",
    framework_version="1.7.0",
    py_version="py37",
    
    # Debugger-specific parameters
    debugger_hook_config=debugger_hook_config,
    rules=rules
)

estimator.fit(wait=False)
```

------
#### [ XGBoost ]

```
# An example of constructing a SageMaker AI XGBoost estimator
import sagemaker
from sagemaker.xgboost.estimator import XGBoost
from sagemaker.debugger import CollectionConfig, DebuggerHookConfig, Rule, rule_configs

debugger_hook_config=DebuggerHookConfig(...)
rules=[
    Rule.sagemaker(rule_configs.built_in_rule())
]

estimator=XGBoost(
    entry_point="directory/to/your_training_script.py",
    role=sagemaker.get_execution_role(),
    base_job_name="debugger-demo",
    instance_count=1,
    instance_type="ml.p3.2xlarge",
    framework_version="1.5-1",

    # Debugger-specific parameters
    debugger_hook_config=debugger_hook_config,
    rules=rules
)

estimator.fit(wait=False)
```

------
#### [ Generic estimator ]

```
# An example of constructing a SageMaker AI generic estimator using the XGBoost algorithm base image
import boto3
import sagemaker
from sagemaker.estimator import Estimator
from sagemaker import image_uris
from sagemaker.debugger import CollectionConfig, DebuggerHookConfig, Rule, rule_configs

debugger_hook_config=DebuggerHookConfig(...)
rules=[
    Rule.sagemaker(rule_configs.built_in_rule())
]

region=boto3.Session().region_name
xgboost_container=sagemaker.image_uris.retrieve("xgboost", region, "1.5-1")

estimator=Estimator(
    role=sagemaker.get_execution_role()
    image_uri=xgboost_container,
    base_job_name="debugger-demo",
    instance_count=1,
    instance_type="ml.m5.2xlarge",
    
    # Debugger-specific parameters
    debugger_hook_config=debugger_hook_config,
    rules=rules
)

estimator.fit(wait=False)
```

------

Configure os seguintes parâmetros para ativar o SageMaker Debugger:
+ `debugger_hook_config`(um objeto de [https://sagemaker.readthedocs.io/en/stable/api/training/debugger.html#sagemaker.debugger.DebuggerHookConfig](https://sagemaker.readthedocs.io/en/stable/api/training/debugger.html#sagemaker.debugger.DebuggerHookConfig)) — Necessário para ativar o gancho no script de treinamento adaptado durante[Adaptação do seu script de treinamento para registrar um hook](debugger-modify-script.md), configurar o iniciador de SageMaker treinamento (estimador) para coletar tensores de saída de seu trabalho de treinamento e salvar os tensores em seu bucket S3 protegido ou em sua máquina local. Para saber como configurar o parâmetro `debugger_hook_config`, consulte [Configurando o SageMaker Debugger para salvar tensores](debugger-configure-hook.md).
+ `rules`(uma lista de [https://sagemaker.readthedocs.io/en/stable/api/training/debugger.html#sagemaker.debugger.Rule](https://sagemaker.readthedocs.io/en/stable/api/training/debugger.html#sagemaker.debugger.Rule)objetos) — Configure esse parâmetro para ativar as regras internas do SageMaker Debugger que você deseja executar em tempo real. As regras integradas são lógicas que depuram automaticamente o progresso do treinamento do seu modelo e encontram problemas de treinamento analisando os tensores de saída salvos em seu bucket seguro do S3. Para saber como configurar o parâmetro `rules`, consulte [Configurar regras integradas do Depurador](use-debugger-built-in-rules.md). Para encontrar uma lista completa de regras integradas para depuração de tensores de saída, consulte [Regra do Depurador](debugger-built-in-rules.md#debugger-built-in-rules-Rule). Se você quiser criar sua própria lógica para detectar problemas de treinamento, consulte [Criação de regras personalizadas usando a biblioteca de cliente do Depurador](debugger-custom-rules.md).
**nota**  
As regras integradas estão disponíveis somente por meio de instâncias SageMaker de treinamento. Você não pode usá-los no modo local.
+ `tensorboard_output_config`(um objeto de [https://sagemaker.readthedocs.io/en/stable/api/training/debugger.html#sagemaker.debugger.TensorBoardOutputConfig](https://sagemaker.readthedocs.io/en/stable/api/training/debugger.html#sagemaker.debugger.TensorBoardOutputConfig)) — Configure o SageMaker Debugger para coletar tensores de saída no formato TensorBoard compatível e salvar no caminho de saída do S3 especificado no objeto. `TensorBoardOutputConfig` Para saber mais, consulte [Visualize os tensores de saída do Amazon SageMaker Debugger em TensorBoard](debugger-enable-tensorboard-summaries.md).
**nota**  
O `tensorboard_output_config` deve ser configurado com o `debugger_hook_config` parâmetro, o que também exige que você adapte seu script de treinamento adicionando o hook `sagemaker-debugger`.

**nota**  
SageMaker O depurador salva com segurança os tensores de saída em subpastas do seu bucket do S3. Por exemplo, o formato do URI padrão do bucket do S3 em sua conta é `s3://amzn-s3-demo-bucket-sagemaker-<region>-<12digit_account_id>/<base-job-name>/<debugger-subfolders>/`. Há duas subpastas criadas pelo SageMaker Debugger: e. `debug-output` `rule-output` Se você adicionar o `tensorboard_output_config` parâmetro, também encontrará a pasta `tensorboard-output`.

Consulte os tópicos a seguir para encontrar mais exemplos de como configurar os parâmetros específicos do Debugger em detalhes.

**Topics**
+ [Construindo um estimador de SageMaker IA com parâmetros específicos do Debugger](#debugger-configuration-structure)
+ [Configurando o SageMaker Debugger para salvar tensores](debugger-configure-hook.md)
+ [Configurar regras integradas do Depurador](use-debugger-built-in-rules.md)
+ [Desativar o Debugger](debugger-turn-off.md)
+ [Métodos úteis de classes de estimadores de SageMaker IA para o Debugger](debugger-estimator-classmethods.md)