

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Utilisez la bibliothèque `cliente` smdebug pour créer une règle personnalisée sous forme de script Python
<a name="debugger-custom-rules-python-script"></a>

**Note**  
Amazon SageMaker Debugger n'est plus ouvert aux nouveaux clients. Les clients existants peuvent continuer à utiliser le service normalement. AWS continue d'investir dans l'amélioration de la sécurité et de la disponibilité de Debugger, mais nous ne prévoyons pas d'introduire de nouvelles fonctionnalités. Pour de plus amples informations, veuillez consulter [Modification de la disponibilité du débogueur](debugger-availability-change.md). 

L'API de règle `smdebug` fournit une interface pour configurer vos propres règles personnalisées. Le script python suivant montre comment vous pouvez créer une règle personnalisée, `CustomGradientRule`. La règle personnalisée de ce didacticiel contrôle si les gradients deviennent trop grands. Le seuil par défaut est 10. La règle personnalisée prend un essai de base créé par un estimateur SageMaker IA lorsqu'il lance une tâche de formation. 

```
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
```

Vous pouvez ajouter autant de classes de règles personnalisées que vous le souhaitez dans le même script python et les déployer dans n'importe quel essai de tâche d'entraînement en créant des objets de règle personnalisée dans la section suivante.