Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Ring Attention

Découvrez comment Ring Attention permet d'adapter les Transformers à des séquences de longueur infinie. Découvrez comment cette technique améliore les modèles de langage à grande échelle (LLM) et les Vision Transformers pour le traitement de volumes massifs de données.

Ring Attention est une technique avancée d'apprentissage automatique (ML) conçue pour étendre la fenêtre contextuelle des architectures Transformer à des longueurs de séquence pratiquement infinies. En répartissant les calculs complexes d’attention sur un cluster de GPU connectés selon une topologie en anneau, elle superpose efficacement la communication et le calcul. Cette avancée architecturale permet aux grands modèles linguistiques (LLM) et aux Vision Transformers (ViT) de traiter des entrées massives, telles que des livres entiers ou des heures de vidéo en continu, qui dépassent de loin la capacité de mémoire de n’importe quel périphérique matériel individuel.

Surmonter l'obstacle de la fenêtre de contexte

Dans les mécanismes d'auto-attention classiques, la consommation de mémoire augmente proportionnellement au carré de la longueur de la séquence d'entrée. Cela crée un goulot d'étranglement majeur pour les modèles d'apprentissage profond (DL) qui tentent d'analyser des données de grande longueur. Pour en savoir plus sur la manière dont la communauté de l'IA s'attaque à ce problème, vous pouvez consulter les travaux de Berkeley AI Research sur les modèles à large contexte.

Ring Attention résout ce goulot d'étranglement quadratique en segmentant les requêtes, les clés et les valeurs en blocs plus petits. Chaque GPU réseau distribué traite un bloc, puis transmet les clés et les valeurs au dispositif voisin dans le anneau. Ce transfert circulaire se poursuit jusqu'à ce que le mécanisme d'attention soit entièrement calculé. L'utilisation d'outils tels que le package de communicationPyTorch permet aux développeurs de mettre en place ces pipelines d'entraînement sophistiqués impliquant plusieurs dispositifs.

Attention par sonnerie vs attention par flash

Si ces deux techniques optimisent l'utilisation de la mémoire, elles opèrent à des niveaux différents. Flash Attention est un algorithme tenant compte du matériel qui réduit au minimum les opérations coûteuses de lecture et d'écriture en mémoire au sein de la SRAM GPU seul GPU. À l'inverse, Ring Attention est un algorithme distribué axé sur la répartition du calcul entre plusieurs GPU. Dans les workflows d'IA générative de pointe, ces deux techniques sont souvent combinées pour atteindre à la fois une efficacité matérielle localisée et une évolutivité massive sur plusieurs appareils, comme détaillé dans l'article de recherche original sur Ring Attention publié sur arXiv.

Applications concrètes

La capacité à traiter simultanément des millions de jetons ouvre la voie à de puissantes fonctionnalités dans le domaine de l'IA moderne :

  1. Analyse complète des documents et du code source : Ring Attention permet aux modèles d'intégrer des millions de lignes de code ou des bibliothèques juridiques complexes en une seule instruction. Cela améliore considérablement les systèmes s'appuyant sur la génération augmentée par la recherche (RAG), leur permettant de synthétiser le contexte sans tronquer les informations essentielles. Ce concept est à la base des modèles contextuels à grande échelle tels que l'architecture GeminiGoogle.
  2. Compréhension vidéo étendue : En vision par ordinateur (CV), le traitement de séquences vidéo haute résolution nécessite généralement un sous-échantillonnage important. Ring Attention permet aux modèles d'analyser des flux vidéo non compressés d'une durée d'une heure. Cela améliore la reconnaissance des actions et le suivi continu des objets dans les systèmes de sécurité et de conduite autonome, en conservant une perception temporelle sur de longues durées.

Traitement des séquences d'images

Alors que les modèles d'attention distribués à grande échelle traitent des contextes infinis, les applications pratiques axées sur la périphérie exigent des architectures hautement optimisées. Pour l' inférence en temps réel et le traitement des séquences visuelles, Ultralytics offre des performances de pointe sans l'énorme charge de calcul des transformateurs purement basés sur l'attention.

from ultralytics import YOLO

# Load the recommended YOLO26 model for high-speed object tracking
model = YOLO("yolo26n.pt")

# Perform robust multi-object tracking on a long video sequence
results = model.track(source="long_surveillance_feed.mp4", stream=True)

# Iterate through the stream to process temporal tracking data
for frame_result in results:
    print(f"Tracked {len(frame_result.boxes)} objects in current frame.")

Lors de la mise en place et de la mise à l'échelle de ces solutions complexes de détection d'objets et de segmentation d'images, la gestion de l'orchestration matérielle est essentielle. La Ultralytics simplifie entièrement ce processus en proposant des outils permettant un apprentissage en cloud sans heurts, l'annotation automatisée des ensembles de données et le déploiement de modèles en un clic sur plusieurs environnements matériels. L'utilisation de ces plateformes garantit que les techniques de mise à l'échelle de pointe passent sans heurts de la recherche à des pipelines d'IA évolutifs et prêts pour la production.

Construisons ensemble l'avenir de l'IA !

Commencez votre parcours avec l'avenir de l'apprentissage automatique