Советы, как начать участвовать в проектах Ultralytics с открытым исходным кодом

Абирами Вина

4 мин. чтения

28 августа 2024 г.

Узнайте, как внести свой вклад в проекты Ultralytics с открытым исходным кодом, и изучите лучшие советы, связанные с документацией, просмотром PR и использованием основных инструментов.

Основа программного обеспечения с открытым исходным кодом - это сотрудничество, обучение и совместное использование. Проекты с открытым исходным кодом - это отличный способ для людей объединиться и построить что-то большее, чем они сами. Мы в Ultralytics придерживаемся принципов открытого исходного кода и всегда призываем вас вносить свой вклад в наши проекты с открытым исходным кодом. 

Если вы хотите внести свой вклад, будь то написание документации, рецензирование кода или решение проблем, но не знаете, с чего начать, или сталкиваетесь с какими-то проблемами, мы готовы помочь вам начать. В этой статье мы расскажем вам о том, как начать участвовать в проектах Ultralytics с открытым исходным кодом. Давайте окунемся в работу!

Важность вклада сообщества Ultralytics

Прежде чем мы рассмотрим, как внести свой вклад, давайте ответим на вопрос, почему вклад так важен. Мы очень верим в важность вклада сообщества Ultralytics. Участвуя в наших проектах с открытым исходным кодом, вы делаете больше, чем просто помогаете нам создавать лучшее программное обеспечение. Участники играют ключевую роль в обеспечении того, чтобы наши технологии оставались открытыми, совместными и постоянно развивались. Благодаря вашему вкладу наши проекты процветают, становятся доступными и полезными для пользователей и разработчиков по всему миру!

Помимо создания передового программного обеспечения, участие в проектах Ultralytics - это еще и фантастическая возможность для вашего роста. Вы сможете развить свои навыки кодирования, решения проблем и работы в команде, работая рядом с опытными разработчиками, которые могут подсказать и поделиться передовым опытом. Ваши усилия могут оказать реальное влияние на инструменты, которыми пользуются тысячи людей по всему миру. Участие в работе нашего сообщества также поможет вам расширить профессиональную сеть, открыть новые возможности и улучшить свое портфолио, чтобы привлечь внимание работодателей.

__wf_reserved_inherit
Рис. 1. Причины для вклада. Изображение автора.

Как начать работу с материалами Ultralytics с открытым исходным кодом

Для начала стоит ознакомиться с официальным руководством по внесению вкладов в Ultralytics. В нем собраны лучшие практики и советы, которые помогут вам извлечь максимум пользы из своего вклада. Первым шагом будет ознакомление с тем, что уже является частью проекта, путем изучения руководства по внесению вклада и погружения в код. 

Если вы хотите принять участие в разработке или просто ознакомиться с последними версиями кода, следующим шагом будет клонирование репозитория Ultralytics. После этого вы можете перейти в каталог проекта и установить пакет в режиме редактирования, как показано в приведенном ниже фрагменте кода.

Если вам нужна помощь, в нашем руководстве по быстрому запуску есть все необходимое для успешного начала работы.

Различные области, в которые можно внести свой вклад

После настройки среды и знакомства с проектом вы можете изучить различные области, в которых вы можете оказать значимое влияние. Ultralytics предлагает несколько способов участия в проекте, и вы можете выбрать, как внести свой вклад, исходя из ваших навыков и интересов. 

Вот обзор некоторых вариантов:

  • Документация: Вклад в документацию - это отличный способ погрузиться в проект и отточить свои писательские навыки. Вы можете помочь, улучшив существующую документацию, добавив недостающие детали или создав новые руководства, которые облегчат другим внесение вклада.
  • Исправления ошибок: Если у вас есть опыт кодирования, подумайте о работе над исправлением ошибок. Они могут варьироваться от незначительных корректировок до более сложных проблем, что даст вам возможность оказать ощутимое влияние на проект.
  • Улучшение характеристик: Для тех, кто готов погрузиться глубже, работа над усовершенствованием функций может быть одновременно сложной и полезной. Это может включать в себя добавление новых функций, улучшение существующих или работу над дорожной картой проекта.
  • Обзоры Pull request: Рецензирование запросов на поставку - еще один ценный способ внести свой вклад, особенно если вы знакомы со стандартами и лучшими практиками проекта. Предоставляя обратную связь и предлагая улучшения, вы помогаете поддерживать качество и целостность кодовой базы.
  • Обсуждения в сообществе: Участие в обсуждениях сообщества - отличный способ внести свой вклад, если вам нравится сотрудничать и делиться идеями. Участвуйте в текущих обсуждениях, предлагайте новые идеи или помогайте другим, предлагая свои идеи и решения.

Каждая из этих областей предлагает уникальный способ внести свой вклад, и вы можете выбрать тот, который лучше всего соответствует вашим сильным сторонам и интересам. Помните, что каждый вклад, каким бы маленьким он ни был, играет ключевую роль в развитии и росте Ultralytics.

__wf_reserved_inherit
Рис. 2. В нашем растущем сообществе ценится каждый вклад. Источник изображения: Envato Elements.

Внесение вклада в документацию Ultralytics с открытым исходным кодом

При внесении вклада в документацию Ultralytics обязательно просмотрите существующую документацию и проверьте наличие проблем или обсуждений, которые указывают на области, требующие улучшения. Это поможет убедиться, что ваш вклад будет направлен туда, где он наиболее необходим. 

При написании или редактировании помните, что для сохранения последовательности важно следовать рекомендациям проекта. Вот несколько советов по форматированию:

  • Всегда используйте форматирование Markdown.
    ‍.
  • Начинайте каждый документ с четкого вступления, сохраняйте простой и доступный язык.
  • Используйте пулевые точки для списков, описательный текст для ссылок и изображения размером менее 1 МБ, чтобы страницы загружались быстро.
  • Если у вас возникли вопросы по поводу форматирования, простой способ перепроверить его - посмотреть, как была отформатирована предыдущая документация.
__wf_reserved_inherit
Рис. 3. Пример форматирования в формате Markdown (слева) и конечный визуализированный документ (справа). Изображение автора.

После того как вы сделали проект, важно предварительно просмотреть его, создав документацию на месте. Так вы сможете выявить все проблемы перед отправкой. Для этого начните с клонирования репозитория и перейдите в каталог проекта:

Далее вы можете установить необходимые зависимости:

Наконец, обслужите документацию локально, чтобы просмотреть свои изменения:

Вы можете просмотреть локально собранную документацию, перейдя по адресу `http://127.0.0.1:8000/` в веб-браузере. 

После проверки на ясность, точность и последовательность вы можете отправить запрос на исправление с четким описанием созданного вами документа. Обязательно поместите документ в соответствующий раздел, исходя из того, где он лучше всего подходит(руководства, решения, интеграции и т. д.). Также посмотрите на файл index.md для соответствующих разделов и общий файл mkdocs.yml и внесите необходимые изменения. Внимание к деталям поможет процессу рассмотрения пройти гладко и гарантирует, что ваш вклад будет хорошо интегрирован в проект.

О чем следует помнить при внесении вклада в open-sourcecode

Внося свой вклад в проект Ultralytics, важно следовать лучшим практикам, которые гарантируют, что ваш код будет чистым, поддерживаемым и легко интегрируемым. Вот несколько ключевых моментов, о которых следует помнить:

  • Избегайте дублирования кода: По возможности повторно используйте существующий код и сводите к минимуму ненужные аргументы.
  • Вносите небольшие, целенаправленные изменения: Сосредоточьтесь на небольших, целенаправленных изменениях, а не на крупных модификациях.
  • Упростите или удалите код: Ищите возможности упростить код или удалить ненужные части.
  • Пишите эффективные docstrings: Четко объясните, что делает ваш код, и дайте ссылки на соответствующие ресурсы.
  • Избегайте ненужных зависимостей: Добавляйте зависимости только в том случае, если они абсолютно необходимы.
__wf_reserved_inherit
Рис. 4. Лучшие практики документирования исходного кода.

Также важно учитывать долгосрочную поддерживаемость кодовой базы. Прежде чем вносить какие-либо изменения, спросите себя, могут ли ваши модификации нарушить существующий код, использующий Ultralytics. Если да, подумайте, как решить эту проблему и обеспечить максимальную совместимость ваших изменений.

После того как вы разработали часть кода для участия в проекте, вам нужно будет протестировать его. Вы можете использовать такие фреймворки, как pytest, чтобы проверить свои изменения перед отправкой. Последовательное форматирование кода - еще один аспект вашего вклада, который очень важен. Такие инструменты, как Ruff Formatter , помогут вам сохранить стилистическую последовательность и обнаружить любые логические ошибки или несоответствия в вашем коде. 

Просмотр запросов на поставку

Просмотр запросов на слияние (PR) - это отличный способ внести свой вклад! PR создается, когда кто-то просит слить его изменения в основной проект. Это помогает поддерживать проект Ultralytics в рабочем состоянии. Когда вы просматриваете PR, убедитесь, что вы понимаете, почему были сделаны изменения. Автор должен четко объяснить цель и преимущества обновления, и вы должны увидеть в PR доказательства тщательного тестирования. 

__wf_reserved_inherit
Рис. 5. Что такое запрос на привлечение?

Давайте рассмотрим несколько ключевых моментов, на которых стоит сосредоточиться.

  • Проверьте наличие модульных тестов: Проверьте, включены ли в PR тесты для новых функций или изменений, чтобы убедиться, что код работает так, как ожидалось, и не вызывает проблем.
  • Проверьте обновления документации: Убедитесь, что документация обновлена с учетом изменений или новых возможностей, включая примеры, ссылки на API и другие важные детали.
  • Оцените влияние на производительность: Рассмотрите, как изменения влияют на производительность. При необходимости запросите контрольные показатели производительности или дополнительное тестирование.
  • Проверка тестов CI: Убедитесь, что все тесты непрерывной интеграции (CI) пройдены, включая проверку форматирования кода и результатов юнит-тестов.
  • Сотрудничайте с автором над исправлениями: Если какие-либо тесты не работают, вместе с автором устраните проблемы, прежде чем утверждать PR.

Как рецензент, не забудьте оставить отзыв, в котором будут четко и ясно изложены все вопросы и проблемы. Предлагайте предложения по улучшению и задавайте вопросы, которые помогут автору продумать возможные проблемы. Призывайте автора следовать лучшим практикам в кодировании, тестировании и документировании и не стесняйтесь указывать ему на ресурсы, которые могут помочь. И последнее, но не менее важное: всегда отмечайте усилия, которые автор вложил в PR. Положительные отзывы помогают поддерживать дружескую и совместную атмосферу в сообществе разработчиков открытого кода.

Участие в проекте - это забота о сообществе

Участие в проектах с открытым исходным кодом, таких как Ultralytics, может дать вам вдохновляющее чувство сообщества. Пишете ли вы код, проверяете PR, обновляете документацию или участвуете в обсуждениях - все ваши усилия помогают проекту расти и развиваться. Ответы на вопросы или участие в дискуссиях, будь то на GitHub, Discord, Subreddit или других форумах, - это ценный способ внести свой вклад и наладить контакт с другими людьми. Помните, что ваш вклад, каким бы маленьким он ни был, оказывает значительное влияние и помогает создать атмосферу сотрудничества и поддержки для всех участников!

В Ultralytics мы увлечены инновациями в сообществе разработчиков с открытым исходным кодом. Будьте в курсе наших последних разработок, посетив наш репозиторий GitHub. Присоединяйтесь к нашему активному сообществу и узнайте, как мы влияем на такие отрасли, как сельское хозяйство и производство.

Давайте вместе построим будущее
искусственного интеллекта!

Начните свое путешествие в будущее машинного обучения

Начните бесплатно
Ссылка копируется в буфер обмена