Ultralytics YOLO27: Bekleme listesine katıl.
YOLO'yu lisansla
Ultralytics YOLO

Ultralytics açık kaynak projelerine katkıda bulunmaya başlamak için ipuçları

Ultralytics açık kaynak projelerine nasıl katkıda bulunacağını öğren; dokümantasyon, PR incelemeleri ve temel araçların kullanımıyla ilgili en iyi ipuçlarını keşfet.

Abirami VinaAbirami Vina7 dakikalık okuma
Ultralytics açık kaynak projelerine katkıda bulunma nedenleri

Açık kaynaklı yazılımın temelinde iş birliği, öğrenme ve paylaşım vardır. Açık kaynak projeleri, insanların bir araya gelip kendi başlarına başarabileceklerinden daha büyük işler ortaya koymaları için harika bir yoldur. Ultralytics'te açık kaynak ilkelerini yürekten benimsiyor ve açık kaynak projelerimize katkıda bulunmanı her zaman teşvik ediyoruz.

Dokümantasyon yazmak, kod incelemek veya sorunları ele almak gibi katkılarda bulunmak istiyor ama nereden başlayacağını bilmiyor ya da bazı sorunlarla karşılaşıyorsan başlamana yardımcı olabiliriz. Bu yazıda, Ultralytics'in açık kaynaklı projelerine katkıda bulunmaya başlamak için bazı ipuçlarını paylaşacağız.

Ultralytics topluluğunun katkılarının önemi#

Katkıda bulunma yollarını incelemeden önce, katkıların neden bu kadar önemli olduğu sorusunu yanıtlayalım. Ultralytics topluluğunun katkılarının önemine yürekten inanıyoruz. Açık kaynaklı projelerimize katılarak yalnızca daha iyi yazılımlar geliştirmemize yardımcı olmakla kalmıyorsun. Katkıda bulunanlar, teknolojimizin açık, iş birliğine dayalı ve sürekli gelişen yapısını korumada önemli bir rol oynuyor. Katkıların projelerimizin canlı, erişilebilir ve dünyanın dört bir yanındaki kullanıcılar ile geliştiriciler için yararlı kalmasını sağlıyor!

Ultralytics projelerine katkıda bulunmak, yazılım geliştirmenin ötesinde, kendini geliştirmek için de harika bir fırsattır. Rehberlik edebilecek ve en iyi uygulamaları paylaşabilecek deneyimli geliştiricilerle birlikte çalışırken kodlama, problem çözme ve ekip çalışması becerilerini geliştirebilirsin. Çabaların, dünya çapında binlerce kişinin kullandığı araçları gerçekten etkileyebilir. Topluluğumuzla etkileşim kurmak profesyonel ağını genişletmene, yeni fırsatların kapısını açmana ve işverenlerin dikkatini çekecek şekilde portföyünü güçlendirmene de yardımcı olabilir.

Açık kaynak projelerine katkıda bulunma nedenleri

Şekil 1. Katkıda bulunma nedenleri. Görselin sahibi yazar.

Ultralytics açık kaynak projelerine katkıda bulunmaya nasıl başlanır?#

Başlamak için resmî Ultralytics katkı rehberine göz atabilirsin. Rehber, katkılarından en iyi şekilde yararlanmana yardımcı olacak en iyi uygulamalar ve ipuçlarıyla dolu. İlk adım olarak katkı kurallarını inceleyerek, Katkıda Bulunan Lisans Sözleşmesi'ni (CLA) imzalayarak ve kodu inceleyerek projede hâlihazırda neler olduğunu öğrenebilirsin.

İster geliştirmeye katkıda bulunmak ister yalnızca en güncel kodu incelemek iste, sonraki adım Ultralytics deposunu klonlamaktır. Bunu yaptıktan sonra proje dizinine gidebilir ve aşağıdaki kod parçacığında gösterildiği gibi paketi düzenlenebilir modda yükleyebilirsin.

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

Yardıma ihtiyacın varsa hızlı başlangıç kılavuzumuz, sorunsuzca başlaman için gereken her şeyi içeriyor.

Katkıda bulunabileceğin farklı alanlar#

Ortamını kurup projeyi tanıdıktan sonra anlamlı bir katkı sunabileceğin farklı alanları keşfedebilirsin. Ultralytics katılım için çeşitli yollar sunuyor; becerilerine ve ilgi alanlarına göre nasıl katkıda bulunacağını seçebilirsin.

Seçeneklerden bazıları şöyle:

  • Dokümantasyon: Dokümantasyona katkıda bulunmak, yazma becerilerini geliştirirken projeyi yakından tanımak için harika bir yoldur. Mevcut dokümantasyonu iyileştirerek, eksik ayrıntıları ekleyerek veya başkalarının katkıda bulunmasını kolaylaştıran yeni kılavuzlar oluşturarak yardımcı olabilirsin.
  • Hata düzeltmeleri: Kodlama deneyimin varsa hata düzeltmeleri üzerinde çalışmayı düşünebilirsin. Küçük ayarlamalardan daha karmaşık sorunlara kadar değişen bu çalışmalar, projede somut bir etki yaratma fırsatı sunar.
  • Özellik geliştirmeleri: Daha derinlemesine çalışmaya hazırsan, özellik geliştirmeleri üzerinde çalışmak hem zorlayıcı hem de ödüllendirici olabilir. Bu çalışmalar yeni özellikler eklemeyi, mevcut özellikleri iyileştirmeyi veya proje yol haritası üzerinde çalışmayı içerebilir.
  • Pull request incelemeleri: Pull request'leri incelemek, özellikle projenin standartlarına ve en iyi uygulamalarına aşinaysan, katkıda bulunmanın bir başka değerli yoludur. Geri bildirim sunup iyileştirme önerileri vererek kod tabanının kalitesini ve bütünlüğünü korumaya yardımcı olursun.
  • Topluluk tartışmaları: İş birliği yapmaktan ve fikir paylaşmaktan hoşlanıyorsan, topluluk tartışmalarına katılmak katkıda bulunmanın harika bir yoludur. Devam eden sohbetlere katılabilir, yeni fikirler önerebilir veya görüşlerini ve çözümlerini sunarak başkalarına yardımcı olabilirsin.

Bu alanların her biri katkıda bulunmak için kendine özgü bir yol sunar; güçlü yönlerine ve ilgi alanlarına en uygun olanı seçebilirsin. Unutma, katkın ne kadar küçük olursa olsun, Ultralytics'in büyümesine ve gelişmesine yardımcı olmada önemli bir rol oynar.

Büyüyen topluluğumuzdaki her katkıya değer verilir

Şekil 2. Büyüyen topluluğumuzdaki her katkıya değer verilir. Görsel kaynağı: Envato Elements.

Ultralytics açık kaynak belgelerine katkıda bulunma#

Ultralytics belgelerine katkıda bulunurken mevcut belgeleri gözden geçir ve iyileştirilmesi gereken alanları vurgulayan sorunları veya tartışmaları kontrol et. Böylece katkıların en çok ihtiyaç duyulan alanlara odaklanır.

Yazarken veya düzenleme yaparken tutarlılığı korumak için proje yönergelerine uymanın önemli olduğunu unutma. İşte birkaç biçimlendirme ipucu:

  • Her zaman Markdown biçimlendirmesini kullan.
  • Her belgeye anlaşılır bir girişle başla ve dilini sade, kolay anlaşılır tut.
  • Listeler için madde işaretleri, bağlantılar için açıklayıcı metin kullan; sayfaların hızlı yüklenmesi için görselleri 1 MB'ın altında tut.
  • Biçimlendirmeyle ilgili soruların varsa biçimlendirmeni kontrol etmenin kolay bir yolu, önceki belgelerin nasıl biçimlendirildiğine bakmaktır.

Markdown biçimlendirmesi ve son görselleştirilmiş belge

Şekil 3. Markdown biçimlendirmesi (solda) ve son görselleştirilmiş belge (sağda) örneği. Görseli hazırlayan: yazar.

Taslağını hazırladıktan sonra belgeleri yerel ortamında derleyerek önizlemen önemlidir. Göndermeden önce sorunları yakalayabilirsin. Bunu yapmak için önce depoyu klonla ve proje dizinine geç:

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

Ardından gerekli bağımlılıkları yükleyebilirsin:

pip install -e ".[dev]"

Son olarak, değişikliklerini incelemek için dokümantasyonu derle ve yerel ortamında sun:

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

Yerel ortamında derlenen belgeleri web tarayıcında http://127.0.0.1:8000/ adresine giderek görüntüleyebilirsin.

Anlaşılırlık, doğruluk ve tutarlılık açısından gözden geçirdikten sonra oluşturduğun belgeyi açıkça açıklayan bir pull request gönderebilirsin. Belgeyi, ait olduğu ve en uygun olduğu bölüme yerleştirdiğinden emin ol (kılavuzlar, çözümler, entegrasyonlar vb.). Ayrıca ilgili bölümler için index.md dosyasına ve genel mkdocs.yml dosyasına göz atıp gerektiği gibi güncelleme yap. Ayrıntılara gösterdiğin özen, inceleme sürecinin sorunsuz ilerlemesine ve katkının projeyle iyi bütünleşmesine yardımcı olur.

Açık kaynak koduna katkıda bulunurken aklında bulundurman gerekenler#

Ultralytics projesine kod katkısında bulunurken kodunun temiz, bakımı kolay ve projeye entegre edilmesi kolay olmasını sağlamaya yardımcı olan en iyi uygulamaları izlemek önemlidir. Aklında bulundurman gereken bazı temel noktalar şunlardır:

  • Kod tekrarından kaçın: Mümkün olduğunda mevcut kodu yeniden kullan ve gereksiz argümanları en aza indir.
  • Daha küçük ve odaklı değişiklikler yap: Büyük değişiklikler yerine daha küçük, hedefe yönelik değişikliklere odaklan.
  • Kodu basitleştir veya kaldır: Kodu basitleştirme ya da gereksiz kısımları kaldırma fırsatlarını değerlendir.
  • Etkili docstring'ler yaz: Kodunun ne yaptığını açıkça anlat ve ilgili kaynaklara bağlantı ver.
  • Gereksiz bağımlılıklardan kaçın: Yalnızca kesinlikle gerekiyorsa bağımlılık ekle.

Kaynak kodu belgeleri için en iyi uygulamalar

Şekil 4. Kaynak Kodu Belgeleri İçin En İyi Uygulamalar.

Kod tabanının uzun vadeli sürdürülebilirliğini de göz önünde bulundurman önemlidir. Herhangi bir değişiklik yapmadan önce, yaptığın değişikliklerin Ultralytics'i kullanan birinin mevcut kodunu bozup bozmayacağını kendine sor. Bozma ihtimali varsa bunu nasıl ele alacağını değerlendir ve değişikliklerinin olabildiğince uyumlu olduğundan emin ol.

Katkıda bulunacağın kodu geliştirdikten sonra kodu test etmen gerekir. Değişikliklerini göndermeden önce test etmek için pytest gibi çerçevelerden yararlanabilirsin. Tutarlı kod biçimlendirmesi de katkının çok önemli bir başka yönüdür. Ruff gibi araçlar biçimsel tutarlılığı korumana ve kodundaki yaygın hataları ya da tutarsızlıkları yakalamana yardımcı olabilir.

Pull request'leri inceleme#

Pull request'leri (PR'ler) incelemek katkıda bulunmanın harika bir yoludur! Birisi değişikliklerini ana projeyle birleştirmek istediğinde PR açılır. Bu, Ultralytics projesinin sorunsuz işlemesine yardımcı olur. Bir PR'yi incelerken değişikliklerin neden yapıldığını anladığından emin ol. Yazar güncellemenin amacını ve faydalarını açıkça anlatmalı; PR'de kapsamlı testlerin yapıldığına dair kanıt görmelisin.

Pull request'in ne olduğunu açıklayan diyagram

Şekil 5. Pull request nedir?

Şimdi odaklanman gereken birkaç önemli noktaya bakalım.

  • Birim testlerini kontrol et: PR'de yeni özellikler veya değişiklikler için kodun beklendiği gibi çalıştığını ve sorun çıkarmadığını doğrulayan testlerin bulunduğunu kontrol et.
  • Belge güncellemelerini incele: Örnekler, API başvuruları ve diğer ilgili ayrıntılar dâhil olmak üzere belgelerin değişiklikleri veya yeni özellikleri yansıtacak şekilde güncellendiğini doğrula.
  • Performansa etkisini değerlendir: Değişikliklerin performansı nasıl etkilediğini göz önünde bulundur. Gerekirse performans kıyaslamaları veya ek testler iste.
  • CI testlerini doğrula: Kod biçimlendirme kontrolleri ve birim testi sonuçları dâhil tüm Sürekli Entegrasyon (CI) testlerinin başarılı olduğundan emin ol.
  • Düzeltmeler için iş birliği yap: Herhangi bir test başarısız olursa PR'yi onaylamadan önce sorunları çözmek için yazarla birlikte çalış.

İncelemeyi yapan kişi olarak, sorunlar veya endişelerle ilgili geri bildiriminin belirli ve net olmasına dikkat et. Geliştirme önerileri sun ve yazarın olası sorunları düşünmesine yardımcı olacak sorular sor. Yazarı kodlama, test ve dokümantasyonda en iyi uygulamaları izlemeye teşvik et ve yardımcı olabilecek kaynaklara yönlendirmekten çekinme. Son olarak, yazarın PR için harcadığı emeği her zaman takdir et. Olumlu geri bildirim, açık kaynak topluluğunda dostane ve iş birliğine dayalı bir ortamın korunmasına yardımcı olur.

Katkı, toplulukla ilgilidir#

Ultralytics gibi açık kaynaklı projelere katkıda bulunmak, ilham verici bir topluluk duygusu kazandırabilir. Kod yazıyor, PR'ları inceliyor, dokümantasyonu güncelliyor veya tartışmalara katılıyor ol; her katkı projenin büyümesine ve gelişmesine yardımcı olur. Soruları yanıtlamak veya GitHub, Discord, Reddit ya da diğer forumlarda sohbetlere katılmak, katkıda bulunmanın ve başkalarıyla bağlantı kurmanın değerli bir yoludur. Unutma, ne kadar küçük olursa olsun katkıların önemli bir etki yaratır ve projeye katılan herkes için iş birliğine dayalı, destekleyici bir ortam oluşmasına yardımcı olur!

Ultralytics olarak açık kaynak topluluğunda yeniliği teşvik etme konusunda tutkuluyuz. GitHub depomuzu ziyaret ederek en son gelişmelerden haberdar ol. Canlı topluluğumuza katıl ve tarım ile imalat gibi sektörlerde nasıl etki yarattığımızı gör.

Yazan

Abirami Vina
Abirami Vina

İçerik Üreticisi · Ultralytics

Bilgisayarlı görü mühendisi olarak kariyerine başlayan Abirami Vina, görü AI’sı ve makine öğrenimi alanlarında sağlam bir temel oluşturdu. Ultralytics’te İçerik Üreticisi, Scribe of AI’da ise Kurucu ve Baş Yazar olarak AI odaklı şirketler için nitelikli teknik içerikler hazırlıyor. AI’yı hem anlaşılır hem de ilgi çekici kılma tutkusuyla çalışan Abirami, en yeni teknolojiler ile gerçek dünyadaki etkileri arasında köprü kuruyor.

Yorumlar

Soru sor, sonuçlarını paylaş veya başka birine yardım et.

Çözümleri keşfet

Sporda bilgisayarlı görü

Sporda bilgisayarlı görü

Ultralytics YOLO'nun oyuncu ve top takibi, performans analitiği, antrenörlük içgörüleri ve sporcu rehabilitasyonuyla spor alanında görsel yapay zekâyı nasıl güçlendirdiğini keşfet.
Daha fazla bilgi edin
Hava görüntüleri için bilgisayarlı görü

Hava görüntüleri için bilgisayarlı görü

İHA ve hava görüntülerini Ultralytics YOLO ile tarım, su ürünleri yetiştiriciliği, koruma çalışmaları ve jeo-uzamsal analiz için gerçek zamanlı içgörülere dönüştür.
Daha fazla bilgi edin
Havacılıkta bilgisayarlı görü

Havacılıkta bilgisayarlı görü

Uçak denetimi, pistteki yabancı madde tespiti, havaalanı yer operasyonları ve kompozit malzeme kusurlarının tespiti için Ultralytics YOLO ile havacılık ve uzay sektöründe bilgisayarlı görü uygula.
Daha fazla bilgi edin
Güvenlikte bilgisayarlı görü

Güvenlikte bilgisayarlı görü

Ultralytics YOLO modelleriyle her sahayı koru. Görsel yapay zekâ; çevre izleme, tehdit tespiti, plaka tanıma ve iş yeri güvenliğini destekler.
Daha fazla bilgi edin
Robotikte bilgisayarlı görü

Robotikte bilgisayarlı görü

Ultralytics YOLO modelleriyle daha akıllı makinelere güç ver. Robotikte görsel yapay zekâ; otonom navigasyonu, algılamayı, nesne takibini ve gerçek zamanlı kontrolü destekler.
Daha fazla bilgi edin
Lojistikte bilgisayarlı görü

Lojistikte bilgisayarlı görü

Ultralytics YOLO modelleriyle lojistiği kolaylaştır. Görüntü yapay zekâsı; paket denetimini, ayrıştırmayı, araç takibini ve gerçek zamanlı depo güvenliği izlemeyi mümkün kılar.
Daha fazla bilgi edin
Perakendede bilgisayarlı görü

Perakendede bilgisayarlı görü

Ultralytics YOLO modelleriyle perakendeyi yeniden tasarla. Görüntü yapay zekâsı; envanter takibini, raf izlemeyi, kuyruk yönetimini ve daha kapsamlı müşteri analizlerini mümkün kılar.
Daha fazla bilgi edin
Sağlık hizmetlerinde bilgisayarlı görü

Sağlık hizmetlerinde bilgisayarlı görü

Ultralytics YOLO modelleriyle sağlık çözümleri geliştir. Sağlık hizmetlerinde görüntü yapay zekâsı; daha hızlı tıbbi görüntüleme, daha akıllı tanı ve hasta takibini mümkün kılar.
Daha fazla bilgi edin
Üretimde bilgisayarlı görü

Üretimde bilgisayarlı görü

Ultralytics YOLO modelleriyle üretimi optimize et. Görsel yapay zekâ; kalite kontrolünü, kusur tespitini, kişisel koruyucu donanım uyumunu ve montaj hattı otomasyonunu destekler.
Daha fazla bilgi edin
Otomotivde bilgisayarlı görü

Otomotivde bilgisayarlı görü

Ultralytics YOLO modelleriyle otomotivde bilgisayarlı görüden yararlan. Görsel yapay zekâ; daha akıllı yollar için yol güvenliğini, sürüş desteğini ve araç otomasyonunu ileri taşır.
Daha fazla bilgi edin
Tarımda bilgisayarlı görü

Tarımda bilgisayarlı görü

Ultralytics YOLO modelleriyle akıllı tarıma görüntü yapay zekâsı kazandır. Daha yüksek ve akıllı verim için mahsul izleme, hayvan takibi ve hassas tarımı destekle.
Daha fazla bilgi edin

Geleceğin yapay zekasını birlikte inşa edelim!

Makine öğreniminin geleceğine yolculuğuna başla