

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

# Use a biblioteca de cliente do `smdebug` para criar regra personalizada na forma de um script Python
<a name="debugger-custom-rules-python-script"></a>

A API de regras `smdebug` fornece uma interface para configurar suas próprias regras personalizadas. O script Python a seguir é uma amostra de como criar uma regra personalizada,`CustomGradientRule`. Este tutorial de regra personalizada observa se os gradientes estão ficando muito grandes e define o limite padrão como 10. A regra personalizada faz um teste básico criado por um estimador de SageMaker IA quando ele inicia o trabalho de treinamento. 

```
from smdebug.rules.rule import Rule

class CustomGradientRule(Rule):
    def __init__(self, base_trial, threshold=10.0):
        super().__init__(base_trial)
        self.threshold = float(threshold)

    def invoke_at_step(self, step):
        for tname in self.base_trial.tensor_names(collection="gradients"):
            t = self.base_trial.tensor(tname)
            abs_mean = t.reduction_value(step, "mean", abs=True)
            if abs_mean > self.threshold:
                return True
        return False
```

Você pode adicionar várias classes de regras personalizadas quantas quiser no mesmo script Python e implantá-las em qualquer teste de trabalho de treinamento criando objetos de regras personalizados na seção a seguir.