Découvre YOLO26 : l'IA de vision de nouvelle génération.
Ultralytics
Ultralytics YOLO

Conseils pour commencer à contribuer aux projets open-source d'Ultralytics

Apprends comment contribuer aux projets open-source d'Ultralytics et explore les meilleurs conseils liés à la documentation, à la révision des PR et à l'utilisation d'outils essentiels.

ABAbirami Vina
4 min read
Raisons de contribuer aux projets open-source d'Ultralytics

La base du logiciel open-source repose sur la collaboration, l'apprentissage et le partage. Les projets open-source sont un excellent moyen pour les gens de se réunir afin de construire quelque chose qui dépasse leurs propres capacités. Chez Ultralytics, nous avons les principes de l'open-source à cœur et nous t'encourageons toujours à contribuer à nos projets open-source.

Si tu as hâte de contribuer, que ce soit en rédigeant de la documentation, en relisant 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 à te lancer. Dans cet article, nous te guiderons à travers quelques conseils pour commencer à contribuer aux projets open-source d'Ultralytics. Allons-y !

Link to this sectionL'importance des contributions de la communauté Ultralytics#

Avant de voir comment contribuer, répondons à la question de savoir pourquoi ces contributions sont si cruciales. Nous croyons fermement en l'importance des contributions de la communauté Ultralytics. En participant à nos projets open-source, tu ne te contentes pas de nous aider à créer de meilleurs logiciels. Les contributeurs jouent un rôle clé pour garantir que notre technologie reste ouverte, collaborative et en constante évolution. Tes contributions maintiennent nos projets vivants, 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 également une opportunité fantastique pour toi de grandir. Tu peux développer tes compétences en codage, en résolution de problèmes et en travail d'équipe tout en travaillant aux côtés de développeurs expérimentés qui peuvent t'offrir des conseils et partager les meilleures pratiques. Tes efforts peuvent avoir un impact réel sur des outils utilisés par des milliers de personnes dans le monde. S'engager avec notre communauté peut aussi t'aider à élargir ton réseau professionnel, à te créer de nouvelles opportunités et à améliorer ton portfolio pour te démarquer auprès des employeurs.

Raisons de contribuer aux projets open-source

Fig 1. Raisons de contribuer. Image par l'auteur.

Link to this sectionComment débuter avec les contributions open-source d'Ultralytics#

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

Que tu cherches à contribuer au développement ou que tu veuilles simplement explorer le code le plus récent, l'étape suivante consiste à cloner le dépôt Ultralytics. Une fois cela fait, 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 dont tu as besoin pour te lancer en douceur.

Link to this sectionDifférents domaines dans lesquels contribuer#

Une fois ton environnement configuré et familiarisé avec le projet, tu peux explorer les différents domaines où 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 un aperçu de quelques options :

  • Documentation : Contribuer à la documentation est un excellent moyen de plonger dans le projet tout en perfectionnant tes compétences rédactionnelles. Tu peux aider en améliorant la documentation existante, en ajoutant les détails manquants ou en créant de nouveaux guides qui permettront aux autres de contribuer plus facilement.
  • Correctifs de bugs : Si tu as une expérience en codage, envisage de travailler sur des correctifs de bugs. Cela peut aller de petits ajustements à des problèmes plus complexes, te donnant l'opportunité d'avoir un impact tangible sur le projet.
  • Améliorations de fonctionnalités : Pour ceux qui sont prêts à aller plus loin, travailler sur des améliorations de fonctionnalités peut être à la fois stimulant et gratifiant. Cela pourrait impliquer l'ajout de nouvelles fonctionnalités, l'amélioration de celles existantes ou le travail sur la feuille de route du projet.
  • Revue de pull requests : Examiner les pull requests est un autre moyen précieux de contribuer, surtout si tu es familier avec les normes et les meilleures pratiques du projet. En fournissant des retours et en suggérant des améliorations, tu aides à maintenir la qualité et l'intégrité de la base de code.
  • Discussions communautaires : Participer aux discussions communautaires est un excellent moyen de contribuer si tu aimes la collaboration et le partage d'idées. Participe aux conversations en cours, propose de nouvelles idées ou aide les autres en offrant tes perspectives et solutions.

Chacun de ces domaines offre une manière unique de contribuer, et tu peux choisir celui qui correspond le mieux à tes forces et à tes intérêts. N'oublie pas que chaque contribution, aussi petite soit-elle, joue un rôle clé dans la croissance et l'évolution d'Ultralytics.

Chaque contribution est valorisée au sein de notre communauté en pleine croissance

Fig 2. Chaque contribution est valorisée dans notre communauté grandissante. Source de l'image : Envato Elements.

Link to this sectionContribuer à la documentation open-source d'Ultralytics#

Lorsque tu contribues à la documentation d'Ultralytics, assure-toi de passer en revue la documentation existante et de vérifier s'il y a des problèmes ou des discussions qui mettent en évidence des domaines à améliorer. Cela permet de garantir que tes contributions sont ciblées là où elles sont le plus nécessaires.

Lors de la rédaction ou de l'édition, garde à l'esprit qu'il est essentiel de suivre les directives du projet pour maintenir la cohérence. Voici quelques conseils de formatage :

  • Utilise toujours le formatage Markdown.
  • Commence chaque document par une introduction claire, et garde un langage simple et accessible.
  • Utilise des puces pour les listes, du texte descriptif pour les liens, et des images de moins de 1 Mo pour permettre aux pages de charger rapidement.
  • Si tu as des questions sur le formatage, un moyen facile de vérifier ton travail est de regarder comment la documentation précédente a été formatée.

Formatage Markdown aux côtés du document visualisé final

Fig 3. Un exemple de formatage Markdown (à gauche) et le document visualisé final (à droite). Image par l'auteur.

Une fois ton brouillon réalisé, il est important de le prévisualiser en construisant la documentation localement. Tu peux ainsi détecter tout problème avant la soumission. Pour ce faire, commence par cloner le dépôt et navigue vers le répertoire du projet :

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

Enfin, sers la documentation localement pour revoir tes modifications :

Tu peux visualiser la documentation construite localement en naviguant vers http://127.0.0.1:8000/ dans ton navigateur web.

Après avoir vérifié la clarté, l'exactitude et la cohérence, tu peux soumettre une pull request avec une description claire du document que tu as créé. Assure-toi de placer le document dans la section appropriée selon l'endroit où il convient le mieux (guides, solutions, intégrations, etc.). Merci de jeter également un œil au fichier index.md pour les sections pertinentes et au fichier mkdocs.yml global, et effectue les mises à jour nécessaires. Une attention aux détails aidera le processus de revue à se dérouler sans accroc et garantira que ta contribution est bien intégrée au projet.

Link to this sectionChoses à garder à l'esprit lors de la contribution au code open-source#

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

  • Évite la duplication de code : Réutilise le code existant autant que possible et minimise les arguments inutiles.
  • Effectue des changements plus petits et ciblés : Concentre-toi sur des modifications plus petites et ciblées plutôt que sur de grandes restructurations.
  • Simplifie ou supprime du code : Cherche des opportunités de simplifier le code ou de supprimer les parties inutiles.
  • Écris des docstrings efficaces : Explique clairement ce que fait 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. Meilleures 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 changements, demande-toi si tes modifications pourraient briser le code existant de quelqu'un utilisant Ultralytics. Si c'est le cas, réfléchis à la façon de résoudre ce problème et assure-toi que tes changements sont aussi compatibles que possible.

Une fois que tu as développé un morceau de code à contribuer, tu devras le tester. Tu peux utiliser des frameworks comme pytest pour tester tes modifications avant de les soumettre. Un formatage de code cohérent est un autre aspect très important de ta contribution. Des outils comme Ruff Formatter peuvent t'aider à maintenir une cohérence stylistique et à détecter tout bug logique ou incohérence dans ton code.

Link to this sectionRevue de pull requests#

Réviser des pull requests (PR) est une excellente façon de contribuer ! Une PR est ouverte lorsque quelqu'un demande à fusionner ses modifications dans le projet principal. Cela aide à maintenir le projet Ultralytics en bon état de marche. Lorsque tu révises une PR, assure-toi de comprendre pourquoi les changements ont été faits. L'auteur doit expliquer clairement l'objectif et les avantages de la mise à jour, et tu devrais voir des preuves de tests approfondis dans sa PR.

Schéma expliquant ce qu'est une pull request

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

Passons en revue quelques éléments clés sur lesquels se concentrer.

  • Vérifie les tests unitaires : Vérifie que la PR inclut des tests pour les nouvelles fonctionnalités ou modifications afin de confirmer que le code fonctionne comme prévu et n'introduit pas de problèmes.
  • Réviser les mises à jour de documentation : Vérifie que la documentation est mise à jour pour refléter les changements ou les nouvelles fonctionnalités, y compris les exemples, les références API et d'autres détails pertinents.
  • Évaluer l'impact sur les performances : Réfléchis à la manière dont les changements affectent les performances. Si nécessaire, demande des benchmarks de performance ou des tests supplémentaires.
  • Vérifier les tests CI : Assure-toi que tous les tests d'intégration continue Continuous Integration (CI) passent, y compris les vérifications de formatage du code et les résultats des tests unitaires.
  • Collaborer sur les correctifs : Si des tests échouent, travaille avec l'auteur pour résoudre les problèmes avant d'approuver la PR.

En tant que réviseur, assure-toi de fournir des retours spécifiques et clairs sur tout problème ou préoccupation. Propose des suggestions d'amélioration et pose des questions qui aident l'auteur à réfléchir aux problèmes potentiels. Encourage-le à suivre les meilleures pratiques en matière de codage, de tests et de documentation, et n'hésite pas à le diriger vers des ressources qui peuvent l'aider. Enfin, n'oublie jamais de reconnaître l'effort fourni par l'auteur dans la PR. Un feedback positif aide à maintenir une atmosphère amicale et collaborative dans la communauté open-source.

Link to this sectionContribuer, c'est avant tout une question de communauté#

Contribuer à des projets open-source comme Ultralytics peut te procurer un sentiment de communauté inspirant. Que tu écrives du code, révises des PR, mettes à jour la documentation ou participes à des discussions, chaque effort aide le projet à grandir et à évoluer. Répondre à des problèmes ou engager des conversations, que ce soit sur GitHub, Discord, Subreddit ou d'autres forums, est un moyen précieux de contribuer et de se connecter avec les autres. N'oublie pas que tes contributions, aussi petites soient-elles, ont un impact significatif et aident à favoriser un environnement collaboratif et solidaire pour tous les participants !

Chez Ultralytics, nous sommes passionnés par l'innovation au sein de la communauté open-source. Reste au courant de nos derniers développements en visitant notre dépôt GitHub. Rejoins notre communauté dynamique et découvre comment nous avons un impact dans des secteurs comme l'agriculture et la fabrication.

Explore solutions

Real-time AI that works with your team

IA dans la robotique

Équipe tes machines plus intelligentes avec les modèles Ultralytics YOLO. La vision par IA dans la robotique propulse la navigation autonome, la perception, le suivi d'objets et le contrôle en temps réel.

En savoir plus
Real-time AI that works with your team

IA dans la logistique

Simplifie la logistique avec les modèles Ultralytics YOLO. La vision par IA 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
Real-time AI that works with your team

IA dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA alimente le suivi des stocks, la surveillance des étagères, la gestion des files d'attente et des informations plus intelligentes sur les clients.

En savoir plus
Real-time AI that works with your team

IA dans la santé

Construis des solutions de santé avec les modèles Ultralytics YOLO. L'IA de vision dans la santé permet une imagerie médicale plus rapide, des diagnostics plus intelligents et une surveillance des patients.

En savoir plus
Real-time AI that works with your team

IA dans la fabrication

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA favorise le contrôle qualité, la détection des défauts, la conformité aux EPI et l'automatisation des chaînes de montage.

En savoir plus
Real-time AI that works with your operation

IA dans l'automobile

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

En savoir plus
Real-time AI tailored to your operation

IA en agriculture

Intègre 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
Real-time AI that works with your team

IA dans la robotique

Équipe tes machines plus intelligentes avec les modèles Ultralytics YOLO. La vision par IA dans la robotique propulse la navigation autonome, la perception, le suivi d'objets et le contrôle en temps réel.

En savoir plus
Real-time AI that works with your team

IA dans la logistique

Simplifie la logistique avec les modèles Ultralytics YOLO. La vision par IA 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
Real-time AI that works with your team

IA dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA alimente le suivi des stocks, la surveillance des étagères, la gestion des files d'attente et des informations plus intelligentes sur les clients.

En savoir plus
Real-time AI that works with your team

IA dans la santé

Construis des solutions de santé avec les modèles Ultralytics YOLO. L'IA de vision dans la santé permet une imagerie médicale plus rapide, des diagnostics plus intelligents et une surveillance des patients.

En savoir plus
Real-time AI that works with your team

IA dans la fabrication

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA favorise le contrôle qualité, la détection des défauts, la conformité aux EPI et l'automatisation des chaînes de montage.

En savoir plus
Real-time AI that works with your operation

IA dans l'automobile

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

En savoir plus
Real-time AI tailored to your operation

IA en agriculture

Intègre 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
Real-time AI that works with your team

IA dans la robotique

Équipe tes machines plus intelligentes avec les modèles Ultralytics YOLO. La vision par IA dans la robotique propulse la navigation autonome, la perception, le suivi d'objets et le contrôle en temps réel.

En savoir plus
Real-time AI that works with your team

IA dans la logistique

Simplifie la logistique avec les modèles Ultralytics YOLO. La vision par IA 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
Real-time AI that works with your team

IA dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA alimente le suivi des stocks, la surveillance des étagères, la gestion des files d'attente et des informations plus intelligentes sur les clients.

En savoir plus
Real-time AI that works with your team

IA dans la santé

Construis des solutions de santé avec les modèles Ultralytics YOLO. L'IA de vision dans la santé permet une imagerie médicale plus rapide, des diagnostics plus intelligents et une surveillance des patients.

En savoir plus
Real-time AI that works with your team

IA dans la fabrication

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA favorise le contrôle qualité, la détection des défauts, la conformité aux EPI et l'automatisation des chaînes de montage.

En savoir plus
Real-time AI that works with your operation

IA dans l'automobile

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

En savoir plus
Real-time AI tailored to your operation

IA en agriculture

Intègre 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 le futur de l'IA !

Commence ton aventure avec le futur de l'apprentissage automatique