Pipeline (Pipeline (Boru Hattı))

Makine öğrenimi bağlamında pipeline (boru hattı), ham veriden nihai tahmine ya da çıktıya uzanan işlem adımlarının zincirlediği sistemdir.

Makine öğrenimi bağlamında pipeline (boru hattı), ham veriden nihai tahmine ya da çıktıya uzanan işlem adımlarının zincirlediği sistemdir. Her adım bir öncekinin çıktısını girdi olarak alır. Veri ön işleme, özellik mühendisliği, model çıkarımı ve son işleme adımlarını tek bir tutarlı birim olarak kapsülleyen pipeline yapısı, hem tekrar kullanımı hem de dağıtım tutarlılığını artırır. Hugging Face Transformers kütüphanesi, NLP ve bilgisayarlı görü görevleri için yüksek seviyeli pipeline arayüzleri sunar. `pipeline('sentiment-analysis')` gibi tek satırlık çağrılarla tokenizasyon, model çalıştırma ve sonuç son işleme otomatik olarak gerçekleşir. Transformers.js, aynı pipeline API'sini JavaScript'e taşıyarak tarayıcı ve Node.js ortamlarında çalıştırabilir hale getirir. MLOps platformlarında pipeline kavramı daha geniş bir anlam taşır: veri toplama, eğitim, değerlendirme, dağıtım ve izleme adımlarını kapsayan uçtan uca ML yaşam döngüsü iş akışını ifade eder. Kubeflow Pipelines, MLflow ve Apache Airflow bu tür pipeline'ları orkestre etmek için kullanılan platformlardır. CI/CD analojisiyle düşünüldüğünde ML pipeline, yazılım pipeline'ının veri ve model boyutundaki karşılığıdır.

Pipeline Türleri

smart_toy Çıkarım Pipeline

Ön işleme + model + son işleme. Hugging Face pipeline() API'si bu yapıyı soyutlar. Tokenizasyon ve softmax otomatik uygulanır.

model_training Eğitim Pipeline

Veri yükleme, artırma, ileri geçiş, kayıp hesaplama, geri yayılım ve ağırlık güncelleme adımları. PyTorch Lightning ve HF Trainer standartlaştırır.

schema MLOps Pipeline

Veri toplama → hazırlık → eğitim → değerlendirme → dağıtım → izleme döngüsü. Kubeflow, MLflow ve SageMaker Pipelines bu akışı yönetir.

search RAG Pipeline

Sorgu → embedding → vektör arama → bağlam oluşturma → LLM üretimi adımları. LangChain, LlamaIndex ve özel boru hatları bu akışı kapsüller.

code Transformers.js Pipeline Kullanımı

Transformers.js pipeline API'si Hugging Face Python arayüzünü JavaScript'e taşır: `const pipe = await pipeline('text-classification')` ile hızlıca başlanabilir. Desteklenen görevler: duygu analizi (sentiment-analysis), soru yanıtlama (question-answering), metin üretimi (text-generation), nesne tespiti (object-detection), ses tanıma (automatic-speech-recognition) ve daha fazlası. Modeller ONNX Runtime Web üzerinde çalışır; tarayıcıda ilk çalıştırmada model ağırlıkları önbelleğe alınır.

quiz Sık Sorulan Sorular

  • check_circle Pipeline içindeki adımlar paralel çalıştırılabilir mi?: Bağımsız adımlar paralel yürütülebilir (veri parallelism, model parallelism). Ancak zincirleme bağımlılık olan adımlar sıralı çalışmalıdır.
  • check_circle Özel model ile Hugging Face pipeline kullanılabilir mi?: Evet. pipeline() fonksiyonuna model parametresi olarak Hub model ID'si veya yerel model yolu verilebilir. AutoModel ile yüklenen modeller uyumludur.