Ultralytics YOLO27 :
Ultralytics YOLO

Conseils pour commencer à contribuer aux projets open source d’Ultralytics

Découvre comment contribuer aux projets open source d’Ultralytics et explore les meilleurs conseils concernant la documentation, la revue des PR et l’utilisation des outils essentiels.

ABAbirami Vina10 min read
Pourquoi contribuer aux projets open source d’Ultralytics

Les logiciels open source reposent sur la collaboration, l’apprentissage et le partage. Les projets open source sont un excellent moyen de réunir des personnes pour créer quelque chose de plus grand qu’elles-mêmes. Chez Ultralytics, nous accordons une grande importance aux principes de l’open source et t’encourageons toujours à contribuer à nos projets open source.

Si tu es enthousiaste à l’idée de contribuer, que ce soit en rédigeant de la documentation, en révisant du code ou en traitant des problèmes, mais que tu ne sais pas par où commencer ou que tu rencontres des problèmes, nous sommes là pour t’aider à démarrer. Dans cet article, nous allons te donner quelques conseils pour commencer à contribuer aux projets open source d’Ultralytics. C’est parti !

L’importance des contributions de la communauté Ultralytics#

Avant d’examiner comment contribuer, répondons à la question de savoir pourquoi les contributions sont si essentielles. Nous croyons fermement à l’importance des contributions de la communauté Ultralytics. En participant à nos projets open source, tu ne fais pas que nous aider à créer de meilleurs logiciels. Les contributeurs jouent un rôle essentiel pour garantir que notre technologie reste ouverte, collaborative et en constante évolution. Tes contributions permettent à nos projets de rester dynamiques, accessibles et utiles aux utilisateurs et aux développeurs du monde entier !

Au-delà de la création de logiciels de pointe, contribuer aux projets Ultralytics est aussi une excellente occasion de progresser. Tu peux développer tes compétences en programmation, en résolution de problèmes et en travail d’équipe tout en collaborant avec des développeurs expérimentés qui peuvent te guider et partager leurs bonnes pratiques. Tes efforts peuvent avoir un impact concret sur des outils utilisés par des milliers de personnes dans le monde. Participer à notre communauté peut également t’aider à élargir ton réseau professionnel, à ouvrir de nouvelles opportunités et à enrichir ton portfolio pour te démarquer auprès des employeurs.

Raisons de contribuer à des projets open source

Fig. 1. Raisons de contribuer. Image de l’auteur.

Comment commencer à contribuer aux projets open source d’Ultralytics#

Un excellent point de départ consiste à consulter le guide officiel de contribution d’Ultralytics. Il regorge de bonnes pratiques et de conseils pour tirer le meilleur parti de tes contributions. La première étape consiste à te familiariser avec ce qui fait déjà partie du projet en consultant les directives de contribution et en te plongeant dans le code.

Que tu souhaites contribuer au développement ou simplement explorer le code le plus récent, l’étape suivante consiste à cloner le dépôt Ultralytics. Une fois cette opération effectuée, tu peux accéder au répertoire du projet et installer le package en mode modifiable, comme indiqué dans l’extrait de code ci-dessous.

Si tu as besoin d’aide, notre guide de démarrage rapide contient tout ce qu’il te faut pour démarrer sereinement.

Différents domaines auxquels contribuer#

Une fois ton environnement configuré et le projet pris en main, tu peux explorer les différents domaines dans lesquels tu peux avoir un impact significatif. Ultralytics propose plusieurs façons de s’impliquer, et tu peux choisir comment contribuer en fonction de tes compétences et de tes centres d’intérêt.

Voici quelques possibilités :

  • Documentation : contribuer à la documentation est un excellent moyen de découvrir le projet tout en perfectionnant tes compétences rédactionnelles. Tu peux aider en améliorant la documentation existante, en ajoutant les informations manquantes ou en créant de nouveaux guides qui facilitent la contribution pour les autres.
  • Corrections de bugs : si tu as une certaine expérience en programmation, pense à travailler sur la correction de bugs. Il peut s’agir de petits ajustements comme de problèmes plus complexes, ce qui te donne l’occasion d’avoir un impact concret sur le projet.
  • Améliorations des fonctionnalités : si tu es prêt à aller plus loin, travailler sur l’amélioration des fonctionnalités peut être à la fois stimulant et gratifiant. Cela peut consister à ajouter de nouvelles fonctionnalités, à améliorer celles qui existent déjà ou à travailler sur la feuille de route du projet.
  • Révision des pull requests : réviser des pull requests est une autre façon précieuse de contribuer, surtout si tu connais les standards et les bonnes pratiques du projet. En fournissant des retours et en suggérant des améliorations, tu contribues à préserver la qualité et l’intégrité de la base de code.
  • Discussions de la communauté : participer aux discussions de la communauté est un excellent moyen de contribuer si tu apprécies la collaboration et le partage d’idées. Participe aux conversations en cours, propose de nouvelles idées ou aide les autres en partageant tes points de vue et tes solutions.

Chacun de ces domaines offre une manière unique de contribuer, et tu peux choisir celui qui correspond le mieux à tes points forts et à tes centres d’intérêt. N’oublie pas que chaque contribution, aussi petite soit-elle, joue un rôle essentiel pour aider Ultralytics à grandir et à évoluer.

Chaque contribution compte dans notre communauté en pleine croissance

Fig. 2. Chaque contribution compte dans notre communauté en pleine croissance. Source de l’image : Envato Elements.

Contribuer à la documentation open source d’Ultralytics#

Lorsque tu contribues à la documentation d’Ultralytics, veille à consulter la documentation existante et à rechercher les problèmes ou discussions qui mettent en évidence les domaines nécessitant des améliorations. Cela permet de garantir que tes contributions ciblent les besoins les plus importants.

Lorsque tu rédiges ou modifies du contenu, n’oublie pas qu’il est essentiel de suivre les directives du projet pour maintenir la cohérence. Voici quelques conseils de mise en forme :

  • Utilise toujours la mise en forme Markdown.
  • Commence chaque document par une introduction claire et utilise un langage simple et accessible.
  • Utilise des listes à puces, un texte descriptif pour les liens et des images de moins de 1 Mo afin d’accélérer le chargement des pages.
  • Si tu as des questions sur la mise en forme, un moyen simple de la vérifier consiste à consulter la mise en forme utilisée dans la documentation précédente.

Mise en forme Markdown accompagnée du document final visualisé

Fig. 3. Exemple de mise en forme Markdown (à gauche) et du document final visualisé (à droite). Image de l’auteur.

Une fois ton brouillon créé, il est important de le prévisualiser en générant la documentation localement. Tu peux ainsi repérer les problèmes avant de l’envoyer. Pour cela, commence par cloner le dépôt et accéder au répertoire du projet :

Ensuite, tu peux installer les dépendances nécessaires :

Enfin, sers la documentation localement pour examiner tes modifications :

Tu peux consulter la documentation générée localement en accédant à http://127.0.0.1:8000/ dans ton navigateur web.

Après avoir vérifié la clarté, l’exactitude et la cohérence du contenu, tu peux soumettre une pull request accompagnée d’une description claire du document que tu as créé. Veille à placer le document dans la section appropriée, en fonction de l’endroit où il s’intègre le mieux (guides, solutions, intégrations, etc.). Consulte également le fichier index.md pour les sections concernées ainsi que le fichier mkdocs.yml global, et effectue les mises à jour nécessaires. Le souci du détail facilitera le processus de révision et garantira une bonne intégration de ta contribution au projet.

Points à garder à l’esprit lorsque tu contribues au code open source#

Lorsque tu apportes des contributions de code au projet Ultralytics, il est important de suivre les bonnes pratiques qui contribuent à garantir que ton code est propre, maintenable et facile à intégrer. Voici quelques points essentiels à garder à l’esprit :

  • Évite la duplication de code : réutilise le code existant chaque fois que possible et réduis au minimum les arguments inutiles.
  • Effectue des modifications plus petites et ciblées : concentre-toi sur des changements de moindre ampleur et ciblés plutôt que sur des modifications importantes.
  • Simplifie ou supprime du code : recherche les occasions de simplifier le code ou d’en supprimer les parties inutiles.
  • Rédige des docstrings efficaces : explique clairement ce que fait ton code et ajoute des liens vers les ressources pertinentes.
  • Évite les dépendances inutiles : ajoute des dépendances uniquement si elles sont absolument nécessaires.

Bonnes pratiques de documentation du code source

Fig. 4. Bonnes pratiques de documentation du code source.

Il est également essentiel de prendre en compte la maintenabilité à long terme de la base de code. Avant d’effectuer des modifications, demande-toi si elles risquent de casser le code existant de quelqu’un qui utilise Ultralytics. Si c’est le cas, réfléchis à la manière de résoudre le problème et veille à rendre tes changements aussi compatibles que possible.

Une fois que tu as développé un morceau de code à contribuer, tu dois le tester. Tu peux utiliser des frameworks comme pytest pour tester tes modifications avant de les soumettre. La mise en forme cohérente du code est un autre aspect très important de ta contribution. Des outils comme le Ruff Formatter peuvent t’aider à maintenir une cohérence stylistique et à détecter les bugs logiques ou les incohérences dans ton code.

Réviser les pull requests#

Réviser des pull requests (PRs) est une excellente façon de contribuer ! Une PR est créée lorsqu’une personne demande à fusionner ses modifications dans le projet principal. Cela contribue au bon fonctionnement du projet Ultralytics. Lorsque tu révises une PR, assure-toi de comprendre la raison des modifications. L’auteur doit expliquer clairement l’objectif et les avantages de la mise à jour, et tu dois trouver dans sa PR des preuves de tests approfondis.

Schéma expliquant ce qu’est une pull request

Fig. 5. Qu’est-ce qu’une pull request ?

Examinons quelques points essentiels sur lesquels te concentrer.

  • Vérifie les tests unitaires : vérifie que la PR inclut des tests pour les nouvelles fonctionnalités ou les modifications, afin de confirmer que le code fonctionne comme prévu et n’introduit aucun problème.
  • Révise les mises à jour de la documentation : vérifie que la documentation est mise à jour pour refléter les modifications ou les nouvelles fonctionnalités, notamment les exemples, les références d’API et les autres informations pertinentes.
  • Évalue l’impact sur les performances : examine l’effet des modifications sur les performances. Si nécessaire, demande des benchmarks de performances ou des tests supplémentaires.
  • Vérifie les tests de CI : assure-toi que tous les tests d’intégration continue (CI) réussissent, y compris les vérifications de mise en forme du code et les résultats des tests unitaires.
  • Collabore à la résolution des problèmes : si certains tests échouent, travaille avec l’auteur pour résoudre les problèmes avant d’approuver la PR.

En tant que réviseur, veille à fournir des retours précis et clairs sur les problèmes ou les préoccupations éventuels. Propose des améliorations et pose des questions qui aident l’auteur à réfléchir aux problèmes potentiels. Encourage-le à suivre les bonnes pratiques en matière de programmation, de tests et de documentation, et n’hésite pas à l’orienter vers des ressources utiles. Enfin, pense toujours à reconnaître les efforts investis par l’auteur dans la PR. Les retours positifs contribuent à maintenir une atmosphère conviviale et collaborative au sein de la communauté open source.

Contribuer, c’est avant tout participer à la communauté#

Contribuer à des projets open source comme Ultralytics peut t’apporter un sentiment de communauté inspirant. Que tu écrives du code, révises des PRs, mettes à jour la documentation ou participes à des discussions, chaque effort aide le projet à grandir et à évoluer. Répondre aux problèmes ou participer aux conversations, que ce soit sur GitHub, Discord, Subreddit ou d’autres forums, est une façon précieuse de contribuer et d’échanger avec les autres. N’oublie pas que tes contributions, aussi petites soient-elles, ont un impact significatif et contribuent à créer un environnement collaboratif et solidaire pour toutes les personnes impliquées !

Chez Ultralytics, nous sommes passionnés par la promotion de l’innovation au sein de la communauté open source. Reste au fait de nos dernières évolutions en consultant notre dépôt GitHub. Rejoins notre communauté dynamique et découvre comment nous avons un impact dans des secteurs comme l’agriculture et l’industrie manufacturière.

Explore solutions

Vision par ordinateur pour l'imagerie aérienne

Vision par ordinateur pour l'imagerie aérienne

Transforme les images de drones et aériennes en informations en temps réel pour l'agriculture, l'aquaculture, la surveillance environnementale, la conservation et l'analyse géospatiale avec Ultralytics YOLO.
En savoir plus
Vision par ordinateur dans l'aérospatiale

Vision par ordinateur dans l'aérospatiale

Apporte l'IA de vision à la surveillance aérienne grâce aux modèles Ultralytics YOLO. Alimente les drones, les flux de travail aérospatiaux, la conservation de l'environnement et les industries géospatiales avec des solutions de vision par ordinateur.
En savoir plus

Protège chaque site avec les modèles Ultralytics YOLO. L'IA de vision alimente la surveillance du périmètre, la détection des menaces, la reconnaissance des plaques d'immatriculation et la sécurité au travail.
En savoir plus
Vision par ordinateur en robotique

Vision par ordinateur en robotique

Donne plus d’intelligence à tes machines avec les modèles Ultralytics YOLO. L’IA visuelle en robotique permet la navigation autonome, la perception, le suivi d’objets et le contrôle en temps réel.
En savoir plus
Vision par ordinateur en logistique

Vision par ordinateur en logistique

Optimise la logistique avec les modèles Ultralytics YOLO. L’IA visuelle permet l’inspection des colis, le tri, le suivi des véhicules et la surveillance de la sécurité des entrepôts en temps réel.
En savoir plus
Vision par ordinateur dans le commerce de détail

Vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. L’IA visuelle permet le suivi des stocks, la surveillance des rayons, la gestion des files d’attente et l’obtention d’informations plus pertinentes sur les clients.
En savoir plus
La vision par ordinateur dans le secteur de la santé

La vision par ordinateur dans le secteur de la santé

Développe des solutions de santé avec les modèles Ultralytics YOLO. L'IA de vision dans le secteur de la santé accélère l'imagerie médicale, améliore les diagnostics et renforce la surveillance des patients.
En savoir plus
La vision par ordinateur dans l'industrie manufacturière

La vision par ordinateur dans l'industrie manufacturière

Optimise la production industrielle avec les modèles Ultralytics YOLO. L'IA de vision améliore le contrôle qualité, la détection des défauts, le respect des règles relatives aux EPI et l'automatisation des lignes d'assemblage.
En savoir plus
Vision par ordinateur dans l’automobile

Vision par ordinateur dans l’automobile

Applique la vision par ordinateur à l’automobile avec les modèles Ultralytics YOLO. L’IA de vision améliore la sécurité routière, l’aide à la conduite et l’automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Vision par ordinateur dans l’agriculture

Vision par ordinateur dans l’agriculture

Apporte l’IA de vision à l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise la surveillance des cultures, le suivi du bétail et l’agriculture de précision pour des rendements plus élevés et plus intelligents.
En savoir plus
Vision par ordinateur pour l'imagerie aérienne

Vision par ordinateur pour l'imagerie aérienne

Transforme les images de drones et aériennes en informations en temps réel pour l'agriculture, l'aquaculture, la surveillance environnementale, la conservation et l'analyse géospatiale avec Ultralytics YOLO.
En savoir plus
Vision par ordinateur dans l'aérospatiale

Vision par ordinateur dans l'aérospatiale

Apporte l'IA de vision à la surveillance aérienne grâce aux modèles Ultralytics YOLO. Alimente les drones, les flux de travail aérospatiaux, la conservation de l'environnement et les industries géospatiales avec des solutions de vision par ordinateur.
En savoir plus

Protège chaque site avec les modèles Ultralytics YOLO. L'IA de vision alimente la surveillance du périmètre, la détection des menaces, la reconnaissance des plaques d'immatriculation et la sécurité au travail.
En savoir plus
Vision par ordinateur en robotique

Vision par ordinateur en robotique

Donne plus d’intelligence à tes machines avec les modèles Ultralytics YOLO. L’IA visuelle en robotique permet la navigation autonome, la perception, le suivi d’objets et le contrôle en temps réel.
En savoir plus
Vision par ordinateur en logistique

Vision par ordinateur en logistique

Optimise la logistique avec les modèles Ultralytics YOLO. L’IA visuelle permet l’inspection des colis, le tri, le suivi des véhicules et la surveillance de la sécurité des entrepôts en temps réel.
En savoir plus
Vision par ordinateur dans le commerce de détail

Vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. L’IA visuelle permet le suivi des stocks, la surveillance des rayons, la gestion des files d’attente et l’obtention d’informations plus pertinentes sur les clients.
En savoir plus
La vision par ordinateur dans le secteur de la santé

La vision par ordinateur dans le secteur de la santé

Développe des solutions de santé avec les modèles Ultralytics YOLO. L'IA de vision dans le secteur de la santé accélère l'imagerie médicale, améliore les diagnostics et renforce la surveillance des patients.
En savoir plus
La vision par ordinateur dans l'industrie manufacturière

La vision par ordinateur dans l'industrie manufacturière

Optimise la production industrielle avec les modèles Ultralytics YOLO. L'IA de vision améliore le contrôle qualité, la détection des défauts, le respect des règles relatives aux EPI et l'automatisation des lignes d'assemblage.
En savoir plus
Vision par ordinateur dans l’automobile

Vision par ordinateur dans l’automobile

Applique la vision par ordinateur à l’automobile avec les modèles Ultralytics YOLO. L’IA de vision améliore la sécurité routière, l’aide à la conduite et l’automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Vision par ordinateur dans l’agriculture

Vision par ordinateur dans l’agriculture

Apporte l’IA de vision à l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise la surveillance des cultures, le suivi du bétail et l’agriculture de précision pour des rendements plus élevés et plus intelligents.
En savoir plus
Vision par ordinateur pour l'imagerie aérienne

Vision par ordinateur pour l'imagerie aérienne

Transforme les images de drones et aériennes en informations en temps réel pour l'agriculture, l'aquaculture, la surveillance environnementale, la conservation et l'analyse géospatiale avec Ultralytics YOLO.
En savoir plus
Vision par ordinateur dans l'aérospatiale

Vision par ordinateur dans l'aérospatiale

Apporte l'IA de vision à la surveillance aérienne grâce aux modèles Ultralytics YOLO. Alimente les drones, les flux de travail aérospatiaux, la conservation de l'environnement et les industries géospatiales avec des solutions de vision par ordinateur.
En savoir plus

Protège chaque site avec les modèles Ultralytics YOLO. L'IA de vision alimente la surveillance du périmètre, la détection des menaces, la reconnaissance des plaques d'immatriculation et la sécurité au travail.
En savoir plus
Vision par ordinateur en robotique

Vision par ordinateur en robotique

Donne plus d’intelligence à tes machines avec les modèles Ultralytics YOLO. L’IA visuelle en robotique permet la navigation autonome, la perception, le suivi d’objets et le contrôle en temps réel.
En savoir plus
Vision par ordinateur en logistique

Vision par ordinateur en logistique

Optimise la logistique avec les modèles Ultralytics YOLO. L’IA visuelle permet l’inspection des colis, le tri, le suivi des véhicules et la surveillance de la sécurité des entrepôts en temps réel.
En savoir plus
Vision par ordinateur dans le commerce de détail

Vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. L’IA visuelle permet le suivi des stocks, la surveillance des rayons, la gestion des files d’attente et l’obtention d’informations plus pertinentes sur les clients.
En savoir plus
La vision par ordinateur dans le secteur de la santé

La vision par ordinateur dans le secteur de la santé

Développe des solutions de santé avec les modèles Ultralytics YOLO. L'IA de vision dans le secteur de la santé accélère l'imagerie médicale, améliore les diagnostics et renforce la surveillance des patients.
En savoir plus
La vision par ordinateur dans l'industrie manufacturière

La vision par ordinateur dans l'industrie manufacturière

Optimise la production industrielle avec les modèles Ultralytics YOLO. L'IA de vision améliore le contrôle qualité, la détection des défauts, le respect des règles relatives aux EPI et l'automatisation des lignes d'assemblage.
En savoir plus
Vision par ordinateur dans l’automobile

Vision par ordinateur dans l’automobile

Applique la vision par ordinateur à l’automobile avec les modèles Ultralytics YOLO. L’IA de vision améliore la sécurité routière, l’aide à la conduite et l’automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Vision par ordinateur dans l’agriculture

Vision par ordinateur dans l’agriculture

Apporte l’IA de vision à l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise la surveillance des cultures, le suivi du bétail et l’agriculture de précision pour des rendements plus élevés et plus intelligents.
En savoir plus

Construisons ensemble l'avenir de l'IA !

Commence ton parcours vers l'avenir de l'apprentissage automatique