View a markdown version of this page

Qu'est-ce que Ray - Amazon SageMaker AI

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.

Qu'est-ce que Ray

Ray est un framework unifié open source permettant de faire évoluer les applications AI et Python. Il fournit la couche de calcul pour le traitement parallèle. Vous n'avez donc pas besoin d'être un expert en systèmes distribués pour exécuter des tâches sur un cluster. Vous continuez à écrire PyTorch, JAX ou vLLM, et Ray gère la mise à l'échelle. Pour une vue d'ensemble complète, consultez la section Présentation dans la documentation Ray.

Le framework Ray

Ray comporte trois couches :

  • Ray AI Libraries, un ensemble de bibliothèques Python pour les tâches courantes d'apprentissage automatique.

  • Ray Core, une bibliothèque informatique distribuée à usage général qui fait évoluer les applications Python.

  • Clusters de rayons, ensemble de nœuds de travail connectés à un nœud principal. Un cluster peut être de taille fixe ou il peut être adapté automatiquement aux ressources demandées par vos applications.

Bibliothèques Ray AI

  • Ray Data pour le prétraitement distribué des données et l'inférence par lots.

  • Ray Train pour la formation distribuée, parallèle aux données et parallèle aux modèles.

  • Ray Tune pour le réglage parallèle des hyperparamètres.

  • Ray Serve pour la diffusion de modèles en ligne.

  • RLLib pour l'apprentissage par renforcement.

Apprentissage par renforcement sur Ray

RLLib est la bibliothèque d'apprentissage par renforcement proposée par Ray Ships. En outre, les cadres d'apprentissage par renforcement utilisés pour les grands modèles linguistiques après la formation s'appuient sur Ray pour leur couche distribuée, car une seule exécution doit placer et coordonner plusieurs rôles différents sur les GPU à la fois : génération de déploiements, notation des récompenses et formation aux politiques. Ray Core leur donne le placement des acteurs et le calendrier nécessaires pour y parvenir.

Les frameworks qui s'exécutent sur Ray incluent verl, OpenRLHF et NVIDIA. NeMo-RL Chacune fonctionne comme une charge de travail Ray ordinaire, de sorte que tout ce que Ray prend en charge fonctionne de la même manière ici.

Ce que Ray gère pour vous

Ray gère le travail des systèmes distribués qui serait autrement le vôtre :

  • Orchestration des composants d'une application distribuée.

  • Planification du moment et de l'endroit où les tâches sont exécutées.

  • Tolérance aux pannes, afin que les tâches soient exécutées malgré les échecs.

  • Adaptation automatique des ressources à la demande.

Ray sur HyperPod

HyperPod exécute Ray open source via l' KubeRay opérateur, sans modification. Il ne bifurque pas Ray, ne modifie pas le runtime Ray et n'introduit pas de planificateur propriétaire. RayCluster, RayJobRayCronJob, et RayService se comportent comme ils le font en amont, et les manifestes que vous exécutez déjà continuent de fonctionner. Pour savoir ce qu'il faut configurer, consultezPrise en main.