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.
Utiliser les règles de profilage intégrées gérées par Amazon Debugger SageMaker
Note
Avis de fin de support : le 30 juin 2027, le support d'Amazon SageMaker Profiler AWS prendra fin. Après le 30 juin 2027, vous ne pourrez plus accéder à la console Profiler ni aux ressources du Profiler. Pour de plus amples informations, veuillez consulter Modification de la disponibilité du profileur.
Les règles de profilage intégrées d'Amazon SageMaker Debugger analysent les métriques du système et les opérations du framework collectées lors de la formation d'un modèle. Debugger propose l'opération d'API ProfilerRule qui aide à configurer les règles pour surveiller les ressources et les opérations de calcul d'entraînement et détecter les anomalies. Par exemple, les règles de profilage peuvent vous aider à détecter des problèmes de calcul tels que des goulots d'étranglement du processeur, des temps d' I/O attente excessifs, une charge de travail déséquilibrée entre les opérateurs GPU et une sous-utilisation des ressources de calcul. Pour afficher la liste complète des règles de profilage intégrées disponibles, consultez Liste des règles de profilage intégrées à Debugger. Les rubriques suivantes montrent comment utiliser les règles Debugger intégrées avec des réglages de paramètre par défaut et des valeurs de paramètre personnalisées.
Note
Les règles intégrées sont fournies via les conteneurs SageMaker de traitement Amazon et entièrement gérées par SageMaker Debugger sans frais supplémentaires. Pour plus d'informations sur la facturation, consultez la page de SageMaker tarification
Rubriques
Utiliser les règles du SageMaker profileur intégré au débogueur avec leurs paramètres par défaut
Pour ajouter des règles intégrées au SageMaker débogueur dans votre ModelTrainer, vous devez configurer un objet de rules liste. L'exemple de code suivant montre la structure de base de la liste des règles intégrées du SageMaker débogueur.
from sagemaker.debugger import Rule, ProfilerRule, rule_configs rules=[ ProfilerRule.sagemaker(rule_configs.BuiltInProfilerRuleName_1()), ProfilerRule.sagemaker(rule_configs.BuiltInProfilerRuleName_2()), ... ProfilerRule.sagemaker(rule_configs.BuiltInProfilerRuleName_n()), ... # You can also append more debugging rules in the Rule.sagemaker(rule_configs.*()) format. ] model_trainer=ModelTrainer( ... rules=rules )
Pour obtenir la liste complète des règles intégrées disponibles, consultez Liste des règles de profilage intégrées à Debugger.
Pour utiliser les règles de profilage et inspecter les performances de calcul et la progression de votre tâche de formation, ajoutez la ProfilerReport règle SageMaker Debugger. Cette règle active toutes les règles intégrées de la famille Debugger ProfilerRule ProfilerRule. En outre, cette règle génère un rapport de profilage agrégé. Pour plus d'informations, consultez Rapport de profilage généré à l'aide du SageMaker débogueur. Vous pouvez utiliser le code suivant pour ajouter la règle du rapport de profilage à votre entraînement ModelTrainer.
from sagemaker.debugger import Rule, rule_configs rules=[ ProfilerRule.sagemaker(rule_configs.ProfilerReport()) ]
Lorsque vous démarrez la tâche d'entraînement avec la règle ProfilerReport, Debugger collecte les données d'utilisation des ressources toutes les 500 millisecondes. Debugger analyse l'utilisation des ressources pour identifier si votre modèle rencontre des problèmes de goulet d'étranglement. Si les règles détectent des anomalies d'entraînement, le statut d'évaluation de la règle passe à IssueFound. Vous pouvez configurer des actions automatisées, telles que la notification des problèmes de formation et l'arrêt des tâches de formation à l'aide d'Amazon CloudWatch Events et AWS Lambda. Pour de plus amples informations, veuillez consulter Action concernant les règles d'Amazon SageMaker Debugger.
Utilisation des règles de profilage intégrées de Debugger avec les valeurs de paramètre personnalisées
Si vous souhaitez ajuster les valeurs des paramètres des règles intégrées et personnaliser l'expression regex de la collection de tenseurs, configurez les paramètres base_config et rule_parameters pour les méthodes de classe ProfilerRule.sagemaker et Rule.sagemaker. Dans le cas des méthodes de classe Rule.sagemaker, vous pouvez également personnaliser les collections de tenseurs via le paramètre collections_to_save. Pour des instructions sur l'utilisation de la classe CollectionConfig, consultez Configurer les collections de tenseurs en utilisant l’API CollectionConfig.
Utilisez le modèle de configuration suivant pour personnaliser les valeurs des paramètres des règles intégrées. En modifiant les paramètres de règle comme vous le souhaitez, vous pouvez ajuster la sensibilité des règles à initier.
-
L'argument
base_configsert à appeler les méthodes de règles intégrées. -
L'argument
rule_parameterssert à ajuster les valeurs de clé par défaut des règles intégrées répertoriées dans Liste des règles de profilage intégrées à Debugger.
Pour plus d'informations sur la classe de règles, les méthodes et les paramètres du débogueur, consultez la section Classe SageMaker AI Debugger Rule du SDK
from sagemaker.debugger import Rule, ProfilerRule, rule_configs, CollectionConfig rules=[ ProfilerRule.sagemaker( base_config=rule_configs.BuiltInProfilerRuleName(), rule_parameters={ "key": "value" } ) ]
Les descriptions de paramètres et des exemples de personnalisation de valeur sont fournis pour chaque règle dans Liste des règles de profilage intégrées à Debugger.
Pour une configuration JSON de bas niveau des règles intégrées de Debugger à l'aide de l'API CreateTrainingJob, consultez Configurer le débogueur à l'aide de l'API SageMaker.