Contrôle vert
Lien copié dans le presse-papiers

Conseils pour commencer à contribuer aux projets Open-Source Ultralytics

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

La base des logiciels libres est la collaboration, l'apprentissage et le partage. Les projets open-source sont un excellent moyen pour les gens de se réunir pour construire quelque chose de plus grand qu'eux. À Ultralytics, les principes de l'open-source nous tiennent à cœur et nous t'encourageons toujours à contribuer à nos projets open-source. 

Si tu es enthousiaste à l'idée de contribuer, que ce soit en écrivant de la documentation, en révisant du code ou en traitant des problèmes, mais que tu ne sais pas trop par où commencer ou que tu es confronté à certains 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 de Ultralytics . Plongeons dans l'aventure !

L'importance des contributions communautaires sur Ultralytics

Avant de voir comment contribuer, répondons à la question de savoir pourquoi les contributions sont si cruciales. Nous croyons fermement à l'importance des contributions de la communauté Ultralytics . En participant à nos projets open-source, tu fais plus que nous aider à construire de meilleurs logiciels. Les contributeurs jouent un rôle clé en s'assurant que notre technologie reste ouverte, collaborative et en constante évolution. Vos contributions permettent à nos projets de prospérer, d'être accessibles et bénéfiques pour les utilisateurs et les développeurs du monde entier !

Au-delà de la création de logiciels de pointe, la contribution aux projets Ultralytics est aussi une fantastique opportunité pour toi de t'épanouir. Tu peux développer tes compétences en matière de codage, de résolution de problèmes et de 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 auprès de notre communauté peut également t'aider à développer ton réseau professionnel, à ouvrir de nouvelles opportunités et à améliorer ton portfolio pour te faire remarquer par les employeurs.

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

Comment commencer avec Ultralytics Contributions Open-Source

Pour commencer, tu peux consulter le guide officiel des contributions à Ultralytics . Il regorge de bonnes pratiques et de conseils pour t'aider à tirer le meilleur parti de tes contributions. La première étape serait de 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 dernier code, la prochaine étape consiste à cloner le dépôt Ultralytics . Une fois que c'est fait, tu peux aller dans le répertoire du projet et installer le paquetage en mode modifiable, comme le montre l'extrait de code ci-dessous.


# Clone the ultralytics repository
git clone https://github.com/ultralytics/ultralytics

# Navigate to the cloned directory
cd ultralytics

# Install the package in editable mode for development
pip install -e .

Si tu as besoin d'aide, notre guide de démarrage rapide contient tout ce dont tu as besoin pour démarrer en douceur.

Différents domaines auxquels contribuer

Une fois que tu auras configuré ton environnement et que tu te seras familiarisé avec le projet, tu pourras explorer les différents domaines dans lesquels tu pourras avoir un impact significatif. Ultralytics propose plusieurs façons de s'impliquer, et tu pourras choisir comment contribuer en fonction de tes compétences et de tes centres d'intérêt. 

Voici un aperçu de quelques-unes des options :

  • Documentation: Contribuer à la documentation est un excellent moyen de se plonger dans le projet tout en affinant tes compétences rédactionnelles. Tu peux aider en améliorant la documentation existante, en ajoutant des détails manquants ou en créant de nouveaux guides qui facilitent la contribution des autres.
  • Correction des bugs: Si tu as une certaine expérience du codage, envisage de travailler sur les corrections de bogues. Il peut s'agir d'ajustements mineurs ou de problèmes plus complexes, ce qui te donne l'occasion d'avoir un impact tangible sur le projet.
  • Améliorations de la fonctionnalité: Pour ceux qui sont prêts à plonger plus profondément, travailler sur l'amélioration des fonctionnalités peut être à la fois stimulant et gratifiant. Il peut s'agir d'ajouter de nouvelles fonctionnalités, d'améliorer celles qui existent déjà ou de travailler sur la feuille de route du projet.
  • Revue de la demande d'extraction (pull request): L'examen des pull requests est un autre moyen précieux de contribuer, surtout si tu connais bien les normes et les meilleures pratiques du projet. En donnant ton avis et en suggérant des améliorations, tu contribues à maintenir la qualité et l'intégrité de la base de code.
  • Discussions communautaires: Participer aux discussions de la communauté 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 points de vue et tes solutions.

Chacun de ces domaines offre une façon 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 de Ultralytics .

Fig 2. Chaque contribution est appréciée au sein de notre communauté grandissante. Source de l'image : Envato Elements.

Contribuer à la documentation open-source de Ultralytics

Lorsque tu contribues à la documentation de Ultralytics , n'oublie pas d'examiner la documentation existante et de vérifier s'il y a des problèmes ou des discussions qui mettent en évidence des points à améliorer. Ce faisant, tu t'assures que tes contributions sont concentrées là où elles sont le plus nécessaires. 

Lorsque tu rédiges ou révises, 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 le formatageMarkdown .
  • 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 que les pages se chargent rapidement.
  • Au cas où tu aurais des questions sur la mise en forme, un moyen facile de revérifier ta mise en forme est de vérifier comment les documents précédents ont été mis en forme.
Fig 3. Un exemple de formatage Markdown (à gauche) et le document final visualisé (à droite). Image par l'auteur.

Une fois que tu as rédigé ton projet, il est important de le prévisualiser en créant la documentation localement. Tu pourras ainsi détecter les problèmes éventuels avant de la soumettre. Pour ce faire, commence par cloner le dépôt et navigue jusqu'au répertoire du projet :


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

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


pip install -e ".[dev]"

Enfin, sers-toi de la documentation localement pour examiner tes changements :


mkdocs serve -f mkdocs.yml

Tu peux consulter les documents créés 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 demande d'extraction avec une description claire du document que tu as créé. Assure-toi de placer le document dans la section appropriée en fonction de l'endroit où il appartient et s'intègre le mieux(guides, solutions, intégrations, etc.). Jette également un coup d'œil au fichier index.md pour les sections concernées et au fichier mkdocs.yml dans son ensemble, et fais les mises à jour nécessaires. L'attention portée aux détails aidera le processus de révision à se dérouler sans encombre et garantira que ta contribution est bien intégrée au projet.

Ce qu'il faut garder à l'esprit lorsque l'on contribue à un code open-source

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

  • Évite la duplication du code: Réutilise le code existant dans la mesure du possible et minimise les arguments inutiles.
  • Effectue des changements plus petits et ciblés: Concentre-toi sur des changements plus petits et ciblés plutôt que sur des modifications importantes.
  • Simplifie ou supprime le code: Cherche des occasions de simplifier le code ou de supprimer les parties inutiles.
  • Rédige des docstrings: Explique clairement ce que fait ton code et renvoie à des ressources pertinentes.
  • Évite les dépendances inutiles: N'ajoute des dépendances que si elles sont absolument nécessaires.
Fig 4. Meilleures pratiques en matière de documentation du code source.

Il est également essentiel de prendre en compte la maintenabilité à long terme de la base de code. Avant de faire des changements, demande-toi si tes modifications ne risquent pas de casser le code existant de quelqu'un qui utilise Ultralytics. Si c'est le cas, réfléchis à la manière d'y remédier et assure-toi que tes modifications 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. Le formatage cohérent du code est un autre aspect de ta contribution qui est très important. Des outils comme Ruff Formatter peuvent t'aider à maintenir une cohérence stylistique et à détecter les bogues logiques ou les incohérences dans ton code. 

Examiner les demandes d'extraction (Pull Requests)

L'examen des demandes d'extraction (PR) est une excellente façon de contribuer au projet ! Un PR est créé lorsque quelqu'un demande à ce que ses modifications soient intégrées au projet principal. Cela permet au projet Ultralytics de fonctionner correctement. Lorsque tu examines une PR, assure-toi de comprendre pourquoi les changements ont été effectués. L'auteur doit expliquer clairement le but et les avantages de la mise à jour, et tu dois voir dans son PR des preuves de tests approfondis. 

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

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

  • Vérifie les tests unitaires: Vérifie que le PR inclut des tests pour les nouvelles fonctionnalités ou les changements afin de confirmer que le code fonctionne comme prévu et n'introduit pas de problèmes.
  • Examiner les mises à jour de la 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 façon dont les changements affectent les performances. Si nécessaire, demande des repères de performance ou des tests supplémentaires.
  • Vérifier les tests d'intégration continue: S'assurer que tous les tests d'intégration continue (CI) passent, y compris les vérifications du formatage du code et des résultats des tests unitaires.
  • Collabore aux corrections: Si des tests échouent, collabore avec l'auteur pour résoudre les problèmes avant d'approuver le PR.

En tant que réviseur, assure-toi de fournir des commentaires spécifiques et clairs sur les problèmes ou les préoccupations. Offre 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 test et de documentation, et n'hésite pas à lui indiquer des ressources qui peuvent l'aider. Enfin et surtout, reconnais toujours les efforts que l'auteur a déployés pour le RP. Les commentaires positifs aident à maintenir une atmosphère amicale et collaborative dans la communauté open-source.

Contribuer, c'est une question de communauté

Contribuer à des projets open-source comme Ultralytics peut te donner un sentiment inspirant de communauté. Que tu écrives du code, que tu révises des RP, que tu mettes à jour de la documentation ou que tu participes à des discussions, chaque effort aide le projet à grandir et à évoluer. Répondre à des questions ou participer à 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 de collaboration et de soutien pour toutes les personnes impliquées !

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

Logo FacebookLogo de TwitterLogo LinkedInSymbole du lien de copie

Lire la suite dans cette catégorie

Construisons ensemble le futur
de l'IA !

Commence ton voyage avec le futur de l'apprentissage automatique.