Ultralytics YOLO27 : Rejoins la liste d'attente.
Licence YOLO
Ultralytics YOLO

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

Apprends à contribuer aux projets open source d’Ultralytics et découvre les meilleurs conseils sur la documentation, la revue des PR et l’utilisation des outils essentiels.

Abirami VinaAbirami Vina10 min de lecture
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, les principes de l’open source nous tiennent à cœur et nous t’encourageons toujours à contribuer à nos projets open source.

Tu as envie de contribuer, que ce soit en rédigeant de la documentation, en examinant du code ou en traitant des problèmes, mais tu ne sais pas par où commencer ou tu rencontres des difficultés ? Nous sommes là pour t’aider à te lancer. Dans cet article, nous te donnerons quelques conseils pour commencer à contribuer aux projets open source d’Ultralytics.

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 veiller à ce que notre technologie reste ouverte, collaborative et en constante évolution. Tes contributions permettent à nos projets de prospérer, de rester accessibles et d’être utiles aux utilisateurs et aux développeurs du monde entier !

Au-delà de la création de logiciels, contribuer aux projets Ultralytics est aussi une excellente occasion pour toi de progresser. Tu peux développer tes compétences en programmation, en résolution de problèmes et en travail d’équipe 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 aussi t’aider à élargir ton réseau professionnel, à ouvrir de nouvelles perspectives et à enrichir ton portfolio pour te démarquer auprès des employeurs.

Pourquoi contribuer aux projets open source

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

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

Pour commencer, consulte 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 le contenu actuel du projet en prenant connaissance des consignes de contribution, en signant l’accord de licence des contributeurs (CLA) et en explorant 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 étape terminée, tu peux accéder au répertoire du projet et installer le paquet en mode éditable, comme indiqué dans l’extrait de code ci-dessous.

git clone https://github.com/ultralytics/ultralytics.git
cd ultralytics
pip install -e .

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

Différents domaines auxquels contribuer#

Une fois ton environnement configuré et le projet bien compris, tu peux explorer les différents domaines dans lesquels tu peux avoir un impact concret. Ultralytics propose plusieurs façons de participer 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 des informations manquantes ou en créant de nouveaux guides pour faciliter la contribution des autres.
  • Corrections de bugs : si tu as de l’expérience en programmation, envisage de travailler sur des corrections de bugs. Celles-ci peuvent aller de petits ajustements à des problèmes plus complexes et te donner l’occasion d’avoir un impact concret sur le projet.
  • Améliorations des fonctionnalités : Pour approfondir le sujet, travailler sur des améliorations de fonctionnalités peut être à la fois stimulant et gratifiant. Cela peut consister à ajouter de nouvelles fonctionnalités, à améliorer celles qui existent ou à travailler sur la feuille de route du projet.
  • Revues de pull requests : Examiner les pull requests est une autre façon précieuse de contribuer, surtout si tu connais les normes et les bonnes pratiques du projet. En donnant ton avis 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 une excellente façon de contribuer si tu aimes collaborer et partager des idées. Prends part aux conversations en cours, propose de nouvelles idées ou aide les autres en leur faisant profiter de tes connaissances et de tes solutions.

Chacun de ces domaines offre une façon 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 modeste soit-elle, joue un rôle essentiel dans la croissance et l’évolution d’Ultralytics.

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 les discussions qui mettent en évidence les points à améliorer. Cela permet de concentrer tes contributions là où elles sont le plus nécessaires.

Lorsque tu rédiges ou modifies du contenu, garde à l’esprit qu’il est essentiel de suivre les consignes du projet pour assurer 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 privilégie un langage simple et accessible.
  • Utilise des listes à puces, des textes de lien explicites et des images de moins de 1 Mo pour accélérer le chargement des pages.
  • Si tu as des questions sur la mise en forme, tu peux facilement la vérifier en consultant celle utilisée dans la documentation précédente.

Mise en forme Markdown et document final affiché

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

Une fois ton brouillon terminé, il est important de le prévisualiser en générant la documentation localement. Tu pourras ainsi repérer d’éventuels problèmes avant de soumettre tes modifications. Pour ce faire, commence par cloner le dépôt et accéder au répertoire du projet :

git clone https://github.com/ultralytics/ultralytics.git
cd ultralytics

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

pip install -e ".[dev]"

Enfin, génère la documentation et sers-la localement pour examiner tes modifications :

python docs/build_docs.py
python -m http.server --directory site

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 document, tu peux soumettre une pull request accompagnée d’une description claire du document créé. Veille à placer le document dans la section appropriée, là où il convient le mieux (guides, solutions, intégrations, etc.). Consulte également le fichier index.md pour trouver les sections pertinentes ainsi que le fichier mkdocs.yml dans son ensemble, puis apporte les mises à jour nécessaires. Le souci du détail facilitera le processus de revue et permettra d’intégrer correctement ta contribution au projet.

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

Lorsque tu contribues du code au projet Ultralytics, il est important de suivre les bonnes pratiques qui permettent de garantir que ton code est propre, facile à maintenir et à intégrer. Voici quelques points clés à garder à l’esprit :

  • Évite la duplication de code : Réutilise le code existant dans la mesure du possible et limite les arguments superflus.
  • Privilégie les modifications ciblées et de petite ampleur : Concentre-toi sur des changements limités et précis plutôt que sur de grandes modifications.
  • Simplifie ou supprime du code : Cherche des occasions de simplifier le code ou d’en supprimer les éléments inutiles.
  • Rédige des docstrings efficaces : Explique clairement le rôle de ton code et ajoute des liens vers les ressources pertinentes.
  • Évite les dépendances inutiles : N’ajoute des dépendances que 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 penser à la maintenabilité à long terme de la base de code. Avant d’apporter des modifications, demande-toi si elles risquent de casser le code existant d’une personne qui utilise Ultralytics. Si c’est le cas, réfléchis à la manière de résoudre ce problème et veille à rendre tes modifications aussi compatibles que possible.

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

Revue des pull requests#

Examiner les pull requests (PR) est une excellente façon de contribuer ! Une PR est soumise lorsqu’une personne demande à intégrer ses modifications au projet principal. Ce processus contribue au bon fonctionnement du projet Ultralytics. Lorsque tu examines une PR, veille à comprendre pourquoi les modifications ont été apportées. L’auteur doit en expliquer clairement l’objectif et les avantages, et sa PR doit montrer que les tests ont été réalisés de manière approfondie.

Schéma expliquant ce qu’est une pull request

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

Passons en revue quelques points essentiels.

  • Vérifie les tests unitaires : Vérifie que la PR comprend des tests pour les nouvelles fonctionnalités ou les modifications, afin de confirmer que le code fonctionne comme prévu et n’entraîne pas de problèmes.
  • Examine les mises à jour de la documentation : Vérifie que la documentation a été 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 : Évalue l’effet des modifications sur les performances. Si nécessaire, demande des benchmarks de performance ou des tests supplémentaires.
  • Vérifie les tests 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 des 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 commentaires précis et clairs sur tout problème ou toute préoccupation. 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 codage, de tests et de documentation, et n’hésite pas à lui indiquer des ressources utiles. Enfin, et surtout, reconnais toujours les efforts fournis par l’auteur pour la PR. Les commentaires positifs contribuent à préserver une atmosphère conviviale et collaborative dans la communauté open source.

La contribution, c’est avant tout une histoire de communauté#

Contribuer à des projets open source comme Ultralytics peut t’offrir un sentiment de communauté inspirant. Que tu écrives du code, examines des PR, 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 sur GitHub, Discord, Reddit ou d’autres forums est un excellent moyen de contribuer et d’échanger avec d’autres personnes. N’oublie pas que tes contributions, aussi modestes soient-elles, ont un impact important et contribuent à créer un environnement collaboratif et bienveillant pour toutes les personnes impliquées !

Chez Ultralytics, nous sommes passionnés par l’innovation au sein de la communauté open source. Suis nos dernières avancées en consultant notre dépôt GitHub. Rejoins notre communauté dynamique et découvre comment nous faisons évoluer des secteurs comme l’agriculture et l’industrie manufacturière.

Écrit par

Abirami Vina
Abirami Vina

Créateur de contenu · Ultralytics

Après avoir commencé sa carrière comme ingénieure en vision par ordinateur, Abirami Vina a acquis de solides bases en IA visuelle et en apprentissage automatique. Elle est créatrice de contenu chez Ultralytics, ainsi que fondatrice et rédactrice en chef de Scribe of AI, où elle conçoit du contenu technique de grande qualité pour des entreprises spécialisées en IA. Animée par la volonté de rendre l’IA à la fois compréhensible et captivante, elle fait le lien entre les technologies de pointe et leurs retombées concrètes.

Commentaires

Pose une question, partage tes résultats ou aide quelqu’un.

Découvre les solutions

La vision par ordinateur dans le sport

La vision par ordinateur dans le sport

Découvre comment Ultralytics YOLO propulse la vision par ordinateur dans le sport grâce au suivi des joueurs et du ballon, aux analyses de performance, aux conseils d’entraînement et à la rééducation des athlètes.
En savoir plus
Vision par ordinateur pour les images aériennes

Vision par ordinateur pour les images aériennes

Transforme les images de drones et les images aériennes en informations exploitables en temps réel pour l’agriculture, l’aquaculture, 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

Applique la vision par ordinateur dans l’aérospatiale avec Ultralytics YOLO pour l’inspection des aéronefs, la détection des corps étrangers sur les pistes, les opérations au sol des aéroports et la détection des défauts des matériaux composites.
En savoir plus
La vision par ordinateur dans la sécurité

La vision par ordinateur dans la sécurité

Protège chaque site avec les modèles Ultralytics YOLO. L’IA visuelle permet la surveillance des périmètres, la détection des menaces, la reconnaissance des plaques d’immatriculation et la sécurité au travail.
En savoir plus
La vision par ordinateur en robotique

La vision par ordinateur en robotique

Donne plus de capacités à tes machines grâce aux modèles Ultralytics YOLO. Dans la robotique, l’IA visuelle permet la navigation autonome, la perception, le suivi des objets et le contrôle en temps réel.
En savoir plus
La vision par ordinateur dans la logistique

La vision par ordinateur dans la logistique

Optimise la logistique avec les modèles Ultralytics YOLO. La vision par IA permet d’inspecter les colis, de les trier, de suivre les véhicules et de surveiller la sécurité des entrepôts en temps réel.
En savoir plus
La vision par ordinateur dans le commerce de détail

La vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA permet de suivre les stocks, de surveiller les rayons, de gérer les files d’attente et de mieux comprendre 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é

Crée des solutions de santé avec les modèles Ultralytics YOLO. La vision par IA dans le secteur de la santé accélère l’imagerie médicale, améliore les diagnostics et facilite 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 fabrication avec les modèles Ultralytics YOLO. La vision par IA améliore le contrôle qualité, la détection des défauts, le respect des règles concernant les EPI et l’automatisation des chaînes de montage.
En savoir plus
La vision par ordinateur dans l’automobile

La vision par ordinateur dans l’automobile

Mets la vision par ordinateur au service de l’automobile avec les modèles Ultralytics YOLO. La vision par IA renforce 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

Fais entrer l’IA de vision dans l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise le suivi des cultures et du bétail ainsi que l’agriculture de précision pour obtenir 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