Sürekli Entegrasyon ile AI/ML iş akışlarını geliştirin. Testleri otomatikleştirin, kod kalitesini artırın ve model geliştirmeyi zahmetsizce kolaylaştırın.
Sürekli Entegrasyon (CI), geliştiricilerin yazılımlarını sık sık birleştirdikleri temel bir yazılım geliştirme uygulamasıdır. kod değişikliklerini paylaşılan merkezi bir depoda toplar. CI, büyük güncellemeleri periyodik olarak entegre etmek yerine Otomatik derleme ve test dizilerini tetikleyen küçük, düzenli taahhütler. Dinamik bir alan olan Yapay Zeka (AI) ve Makine Öğrenimi (ML), bu uygulama bir köşe taşı Makine Öğrenimi Operasyonları (MLOps). Kodda, verilerde veya verilerde yapılan değişikliklerin hiperparametreler mevcut veya model performansını düşürür.
CI'ın birincil amacı, hataları mümkün olduğunca erken detect etmektir; bu kavram genellikle "başarısız hızlı." Bu süreç büyük ölçüde Git gibi sürüm kontrol sistemlerine dayanır. kod tabanını yönetir. Bir geliştirici bir değişikliği gönderdiğinde, bir CI sunucusu - örneğin GitHub Eylemleri, GitLab CI veya Jenkins-otomatikolarak yeni bir ortam yaratır.
Makine öğrenimi projeleri için bu ortam genellikle gibi konteynerleştirme araçları Geliştirme, test ve üretim aşamalarında tutarlılık sağlamak için Docker. CI boru hattı daha sonra bir dizi kontrol gerçekleştirir:
Makine öğrenimi için CI'ın kritik bir yönü, kodun hatasız çalıştığı ancak modelin zeka azalır. Bu entegre edilerek yapılır model testini doğrudan CI iş akışına dahil edin.
Aşağıdaki Python parçacığı, bir CI betiğinin bir CI betiğini nasıl yükleyebileceğini göstermektedir YOLO11 modeline uygun olduğunu ve performans ölçütlerinin Kodun birleştirilmesine izin vermeden önce belirli bir standart.
from ultralytics import YOLO
# Load the model to be tested (e.g., a newly trained artifact)
model = YOLO("yolo11n.pt")
# Run validation on a standard dataset (e.g., coco8.yaml for quick CI checks)
results = model.val(data="coco8.yaml")
# Extract the mAP50-95 metric
map_score = results.box.map
# Assert performance meets the minimum requirement for the pipeline to pass
print(f"Current mAP: {map_score}")
if map_score < 0.30:
raise ValueError("Model performance regression detected! mAP is too low.")
Sürekli Entegrasyon uygulaması, güvenilirliğin tartışılmaz olduğu sektörlerde hayati önem taşımaktadır.
Genellikle CI/CD olarak birlikte anılsa da, Sürekli Entegrasyonu aşağıdakilerden ayırt etmek önemlidir Sürekli Dağıtım.
Birlikte, aşağıdakilerin yaşam döngüsünü hızlandıran aerodinamik bir boru hattı oluştururlar vizyon yapay zeka ürünleri, ekiplerin daha hızlı yinelemesine olanak tanır yüksek kalite ve güvenlik standartlarını korurken.

.webp)