मॉडल वर्जनिंग इंफ्रास्ट्रक्चर: बड़े पैमाने पर ML आर्टिफैक्ट्स का प्रबंधन
अपडेट: 11 दिसंबर, 2025
दिसंबर 2025 अपडेट: MLflow 3.0 जनरेटिव AI और AI एजेंट्स के लिए रजिस्ट्री का विस्तार कर रहा है—मॉडल्स को सटीक कोड वर्जन, प्रॉम्प्ट्स, इवैल्यूएशन रन और डिप्लॉयमेंट मेटाडेटा से जोड़ रहा है। मॉडल वर्जनिंग अब सिर्फ वेट्स नहीं बल्कि फाइन-ट्यून्ड एडैप्टर्स, प्रॉम्प्ट टेम्प्लेट्स और रिट्रीवल कॉन्फिगरेशन्स को भी ट्रैक कर रहा है। सैकड़ों GB वेट्स वाले LLMs को Git से परे विशेष इंफ्रास्ट्रक्चर की आवश्यकता है।
MLflow 3.0 ने अपनी मॉडल रजिस्ट्री को जनरेटिव AI एप्लिकेशन्स और AI एजेंट्स को संभालने के लिए विस्तारित किया है, मॉडल्स को सटीक कोड वर्जन, प्रॉम्प्ट कॉन्फिगरेशन, इवैल्यूएशन रन और डिप्लॉयमेंट मेटाडेटा से जोड़ते हुए।¹ यह विकास दर्शाता है कि "मॉडल वर्जनिंग" का मतलब मूलभूत रूप से बदल गया है—सरल pickle फाइल्स को ट्रैक करने से लेकर मल्टीपल फाइन-ट्यून्ड एडैप्टर्स, प्रॉम्प्ट टेम्प्लेट्स और रिट्रीवल कॉन्फिगरेशन्स वाले जटिल सिस्टम्स को मैनेज करने तक। प्रोडक्शन AI चलाने वाले संगठनों को ऐसे इंफ्रास्ट्रक्चर की जरूरत है जो सिर्फ वेट्स नहीं, बल्कि मॉडल्स को विश्वसनीय रूप से रिप्रोड्यूस और डिप्लॉय करने के लिए आवश्यक पूरे कॉन्टेक्स्ट को वर्जन करे।
पारंपरिक सॉफ्टवेयर वर्जनिंग के विपरीत, ML मॉडल वर्जनिंग में विशाल बाइनरी फाइल्स, जटिल ट्रेनिंग कॉन्फिगरेशन, डेटासेट वर्जन और इवैल्यूएशन मेट्रिक्स को ट्रैक करना शामिल है—साथ ही रिप्रोड्यूसिबिलिटी और कंप्लायंस आवश्यकताओं को बनाए रखना।² LLMs के लिए चुनौती और बढ़ जाती है जहां फाइन-ट्यून्ड मॉडल्स तेजी से बढ़ते हैं और प्रॉम्प्ट इंजीनियरिंग वर्जन कंट्रोल की आवश्यकता वाले आर्टिफैक्ट्स की एक और परत जोड़ती है।
मॉडल वर्जनिंग क्यों महत्वपूर्ण है
प्रोडक्शन ML सिस्टम चुपचाप फेल होते हैं। मॉडल्स समय के साथ खराब होते हैं, फाइन-ट्यून्ड वर्जन अप्रत्याशित रूप से अंडरपरफॉर्म करते हैं, और उचित वर्जनिंग के बिना, टीमें यह पहचान नहीं पाती कि क्या बदला या ज्ञात-अच्छी स्थितियों में रोलबैक नहीं कर पाती।
वर्जनिंग चुनौती
बाइनरी आर्टिफैक्ट्स: मॉडल वेट्स क्लासिकल ML के लिए मेगाबाइट्स से लेकर बड़े लैंग्वेज मॉडल्स के लिए सैकड़ों गीगाबाइट्स तक होते हैं। Git इन फाइल्स को कुशलता से संभाल नहीं सकता; विशेष इंफ्रास्ट्रक्चर आवश्यक हो जाता है।
कॉन्फिगरेशन विस्फोट: एक सिंगल मॉडल में ट्रेनिंग कोड, हाइपरपैरामीटर्स, डेटा प्रीप्रोसेसिंग, फीचर इंजीनियरिंग और डिप्लॉयमेंट कॉन्फिगरेशन शामिल होते हैं। कोई भी बदलाव संभावित रूप से मॉडल बिहेवियर को प्रभावित करता है।
डेटासेट निर्भरता: मॉडल क्वालिटी ट्रेनिंग डेटा पर निर्भर करती है। डेटासेट वर्जनिंग के बिना, मॉडल को रिप्रोड्यूस करना असंभव हो जाता है, समान कोड के साथ भी।
इवैल्यूएशन कपलिंग: विशिष्ट टेस्ट सेट्स पर परफॉर्मेंस मेट्रिक्स डिप्लॉयमेंट निर्णय निर्धारित करते हैं। वे मेट्रिक्स मॉडल वर्जन से स्थायी रूप से लिंक होने चाहिए।
व्यावसायिक आवश्यकताएं
रिप्रोड्यूसिबिलिटी: फाइनेंस और हेल्थकेयर में नियामक आवश्यकताएं किसी भी समय डिप्लॉय किए गए सटीक मॉडल वर्जन को फिर से बनाने की क्षमता की मांग करती हैं।³
ऑडिटेबिलिटी: कंप्लायंस के लिए डिप्लॉय किए गए मॉडल्स को ट्रेनिंग डेटा, कोड और डिप्लॉयमेंट को मंजूरी देने वाले निर्णयकर्ताओं तक ट्रेस करना आवश्यक है।
रोलबैक क्षमता: प्रोडक्शन इंसिडेंट्स के लिए मिनटों में पिछले मॉडल वर्जन पर वापस जाने की जरूरत होती है, घंटों में नहीं।
सहयोग: एक ही मॉडल पर काम करने वाले कई डेटा साइंटिस्ट्स को मॉडल आर्टिफैक्ट्स के लिए स्पष्ट ओनरशिप और कॉन्फ्लिक्ट रेज़ोल्यूशन की जरूरत होती है।
मॉडल रजिस्ट्री आर्किटेक्चर
मॉडल रजिस्ट्री डेवलपमेंट से प्रोडक्शन तक ML मॉडल्स के लाइफसाइकल को मैनेज करने वाले केंद्रीय रिपॉजिटरी के रूप में कार्य करती है:⁴
कोर कंपोनेंट्स
वर्जन कंट्रोल: प्रत्येक मॉडल वर्जन को एक यूनिक आइडेंटिफायर मिलता है, आमतौर पर मॉडल नाम को सिमैंटिक वर्जन (v1.2.3) या हैश-बेस्ड आइडेंटिफायर्स के साथ जोड़कर।
मेटाडेटा स्टोरेज: ट्रेनिंग पैरामीटर्स, इवैल्यूएशन मेट्रिक्स, डेटा लिनिएज और डिप्लॉयमेंट हिस्ट्री मॉडल आर्टिफैक्ट्स के साथ परसिस्ट होते हैं।
आर्टिफैक्ट स्टोरेज: मॉडल वेट्स, कॉन्फिगरेशन फाइल्स और संबंधित एसेट्स स्केलेबल ऑब्जेक्ट स्टोरेज (S3, GCS, Azure Blob) में स्टोर होते हैं।
लाइफसाइकल मैनेजमेंट: मॉडल्स स्टेज से गुजरते हैं—development, staging, production, archived—प्रत्येक ट्रांजिशन पर गवर्नेंस कंट्रोल्स के साथ।
रजिस्ट्री वर्कफ्लो
Training Job → Register Model → Staging Review → Production Deployment
↓ ↓ ↓ ↓
Metrics Version ID Approvals Traffic Routing
Logged Generated Recorded Monitored
रजिस्ट्रेशन: ट्रेनिंग पाइपलाइन्स स्वचालित रूप से सफल मॉडल्स को संबंधित मेटाडेटा के साथ रजिस्टर करती हैं: - Training run ID और experiment context - हाइपरपैरामीटर्स और कॉन्फिगरेशन - हेल्ड-आउट डेटा पर इवैल्यूएशन मेट्रिक्स - डेटा वर्जन रेफरेंस - Code commit hash
स्टेजिंग: कैंडिडेट मॉडल्स प्रोडक्शन से पहले वैलिडेशन से गुजरते हैं: - बेंचमार्क्स के खिलाफ ऑटोमेटेड टेस्टिंग - सेंसिटिव एप्लिकेशन्स के लिए ह्यूमन रिव्यू - करंट प्रोडक्शन मॉडल के खिलाफ A/B टेस्टिंग - इंफरेंस लेटेंसी के लिए परफॉर्मेंस प्रोफाइलिंग
प्रमोशन: अप्रूव्ड मॉडल्स प्रोडक्शन में डिप्लॉय होते हैं: - ट्रैफिक धीरे-धीरे नए वर्जन पर शिफ्ट होता है - मॉनिटरिंग डिग्रेडेशन डिटेक्ट करती है - मेट्रिक्स गिरने पर रोलबैक ट्रिगर होता है
प्लेटफॉर्म तुलना
MLflow
MLflow सबसे व्यापक ओपन-सोर्स मॉडल रजिस्ट्री प्रदान करता है:⁵
Model Registry फीचर्स: - वर्जनिंग और एलियासिंग के साथ सेंट्रलाइज्ड मॉडल स्टोर - लिनिएज ट्रैकिंग (experiment → run → model) - स्टेज ट्रांजिशन्स (Staging, Production, Archived) - एनोटेशन्स और मेटाडेटा टैगिंग - प्रोग्रामेटिक एक्सेस के लिए REST API
MLflow 3.0 एन्हांसमेंट्स: - LoggedModel एंटिटी मॉडल्स को कोड, प्रॉम्प्ट्स और इवैल्यूएशन से कनेक्ट करती है - जनरेटिव AI एप्लिकेशन्स के लिए एन्हांस्ड ट्रेसिंग - जटिल AI सिस्टम्स के लिए एजेंट सपोर्ट - Databricks मैनेज्ड एंटरप्राइज वर्जन प्रदान करता है
उदाहरण वर्कफ्लो:
import mlflow
# ट्रेनिंग के दौरान मॉडल लॉग करें
with mlflow.start_run():
mlflow.log_params({"learning_rate": 0.001, "epochs": 10})
mlflow.log_metrics({"accuracy": 0.95, "f1": 0.92})
mlflow.pyfunc.log_model("model", python_model=trained_model)
# मॉडल रजिस्ट्री में रजिस्टर करें
model_uri = f"runs:/{run_id}/model"
mlflow.register_model(model_uri, "fraud-detection-model")
# प्रोडक्शन में प्रमोट करें
client = mlflow.tracking.MlflowClient()
client.transition_model_version_stage(
name="fraud-detection-model",
version=3,
stage="Production"
)
सबसे अच्छा: ओपन-सोर्स फ्लेक्सिबिलिटी के साथ व्यापक MLOps क्षमताएं चाहने वाले संगठनों के लिए।
Weights & Biases
W&B मजबूत आर्टिफैक्ट वर्जनिंग के साथ एक्सपेरिमेंट ट्रैकिंग पर जोर देता है:⁶
मुख्य क्षमताएं: - रिच विज़ुअलाइज़ेशन के साथ एक्सपेरिमेंट ट्रैकिंग - लिनिएज ग्राफ्स के साथ आर्टिफैक्ट वर्जनिंग - एलियास के साथ मॉडल रजिस्ट्री (@champion, @production) - टीम वर्कफ्लो के लिए कोलैबोरेशन फीचर्स - प्रमुख ML फ्रेमवर्क्स के साथ इंटीग्रेशन
आर्टिफैक्ट वर्जनिंग:
import wandb
run = wandb.init(project="nlp-models")
# मॉडल को आर्टिफैक्ट के रूप में लॉग करें
artifact = wandb.Artifact("bert-classifier", type="model")
artifact.add_file("model.pt")
run.log_artifact(artifact)
# एलियास के साथ रजिस्ट्री से लिंक करें
run.link_artifact(artifact, "model-registry/bert-classifier",
aliases=["latest", "production"])
विचारणीय: क्लाउड-फर्स्ट आर्किटेक्चर के लिए बाहरी सर्वर्स को डेटा भेजना आवश्यक है, जो सख्त डेटा प्राइवेसी आवश्यकताओं से टकरा सकता है।
सबसे अच्छा: न्यूनतम सेटअप ओवरहेड के साथ एक्सपेरिमेंट ट्रैकिंग और कोलैबोरेशन को प्राथमिकता देने वाली टीमों के लिए।
DVC (Data Version Control)
DVC बड़ी फाइल्स और डेटासेट्स के लिए Git को एक्सटेंड करता है:⁷
आर्किटेक्चर: - Git-जैसे कमांड्स (dvc add, dvc push, dvc pull) - मेटाडेटा फाइल्स Git में ट्रैक, बड़ी फाइल्स रिमोट स्टोरेज में - रिप्रोड्यूसिबल एक्सपेरिमेंट्स के लिए पाइपलाइन डेफिनिशन्स - मल्टीपल स्टोरेज बैकेंड्स (S3, GCS, Azure, SSH)
हालिया विकास: DVC lakeFS फैमिली में शामिल हुआ, lakeFS पेटाबाइट-स्केल डेटा वर्जनिंग के लिए एंटरप्राइज स्टैंडर्ड के रूप में काम कर रहा है।
उदाहरण वर्कफ्लो:
# बड़ी मॉडल फाइल को DVC में जोड़ें
dvc add models/bert-finetuned.pt
# मेटाडेटा को Git में कमिट करें
git add models/bert-finetuned.pt.dvc .gitignore
git commit -m "Add fine-tuned BERT model v1.0"
# रिमोट स्टोरेज में पुश करें
dvc push
# किसी भी कमिट से रिप्रोड्यूस करें
git checkout v1.0
dvc checkout
सबसे अच्छा: मौजूदा Git वर्कफ्लो वाली टीमों के लिए जो लाइटवेट डेटा और मॉडल वर्जनिंग चाहती हैं।
क्लाउड-नेटिव रजिस्ट्रीज़
Vertex AI Model Registry (Google Cloud):⁸ - नेटिव GCP इंटीग्रेशन - एंडपॉइंट्स पर डायरेक्ट डिप्लॉयमेंट - ऑटोमैटिक लिनिएज ट्रैकिंग - Vertex AI Pipelines के साथ इंटीग्रेशन
Amazon SageMaker Model Registry: - AWS इकोसिस्टम इंटीग्रेशन - अप्रूवल वर्कफ्लो - क्रॉस-अकाउंट मॉडल शेयरिंग - SageMaker Pipelines के साथ इंटीग्रेशन
Azure ML Model Registry: - Azure इंटीग्रेशन - MLflow कम्पैटिबिलिटी - मैनेज्ड एंडपॉइंट्स डिप्लॉयमेंट
सबसे अच्छा: विशिष्ट क्लाउड प्रोवाइडर्स के प्रति प्रतिबद्ध संगठनों के लिए जो नेटिव इंटीग्रेशन चाहते हैं।
LLM-विशिष्ट विचार
बड़े लैंग्वेज मॉडल पारंपरिक ML से परे अद्वितीय वर्जनिंग चुनौतियां प्रस्तुत करते हैं:⁹
क्या वर्जन करें
बेस मॉडल्स: ट्रैक करें कि कौन सा फाउंडेशन मॉडल (Llama 3.1-8B, GPT-4, Claude) स्टार्टिंग पॉइंट के रूप में काम करता है।
फाइन-ट्यून्ड वेट्स: फुल फाइन-ट्यूनिंग पूरी तरह से नई वेट फाइल्स प्रोड्यूस करती है; LoRA एडैप्टर्स बेस मॉडल्स को रेफरेंस करने वाली छोटी डेल्टा फाइल्स प्रोड्यूस करते हैं।
प्रॉम्प्ट टेम्प्लेट्स: सिस्टम प्रॉम्प्ट्स, few-shot उदाहरण और इंस्ट्रक्शन फॉर्मेट्स मॉडल बिहेवियर को काफी प्रभावित करते हैं।
रिट्रीवल कॉन्फिगरेशन्स: RAG सिस्टम्स को एम्बेडिंग मॉडल्स, चंकिंग स्ट्रैटेजीज़ और रिट्रीवल पैरामीटर्स की वर्जनिंग की आवश्यकता होती है।
LLMs के लिए सिमैंटिक वर्जनिंग
परिवर्तन के महत्व को संप्रेषित करने के लिए सिमैंटिक वर्जनिंग अपनाएं:¹⁰
मेजर वर्जन (v2.0.0): - अलग बेस मॉडल - आर्किटेक्चर बदलाव - ब्रेकिंग API बदलाव
माइनर वर्जन (v1.3.0): - नए डेटा पर फाइन-ट्यूनिंग - महत्वपूर्ण परफॉर्मेंस सुधार - नई क्षमताएं जोड़ी गईं
पैच वर्जन (v1.2.1): - बग फिक्सेस - माइनर ऑप्टिमाइज़ेशन्स - कॉन्फिगरेशन अपडेट्स
एडैप्टर मैनेजमेंट
LoRA और QLoRA व्यवस्थित संगठन की आवश्यकता वाली बढ़ती एडैप्टर फाइल्स बनाते हैं:
base-model/
├── llama-3.1-8b/
│ └── v1.0.0/
│ ├── weights/
│ └── config.json
└── adapters/
├── customer-support-v1/
│ ├── adapter_model.bin
│ └── adapter_config.json
├── code-generation-v2/
└── summarization-v1/
एडैप्टर वर्जनिंग स्ट्रैटेजी: - एडैप्टर्स को बेस मॉडल्स से स्वतंत्र रूप से वर्जन करें - कम्पैटिबल बेस मॉडल वर्जन डॉक्यूमेंट करें - प्रति एडैप्टर ट्रेनिंग डेटा और हाइपरपैरामीटर्स ट्रैक करें - सर्विंग में एडैप्टर्स के बीच रैपिड स्विचिंग इनेबल करें
डिप्लॉयमेंट स्ट्रैटेजीज़
कैनरी डिप्लॉयमेंट्स
फुल रोलआउट से पहले नए मॉडल वर्जन पर छोटा ट्रैफिक प्रतिशत रूट करें:¹¹
# Kubernetes कैनरी कॉन्फिगरेशन
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
spec:
http:
- route:
- destination:
host: model-service
subset: v1
weight: 90
- destination:
host: model-service
subset: v2
weight: 10
प्रक्रिया: 1. प्रोडक्शन के साथ नया वर्जन डिप्लॉय करें 2. 5-10% ट्रैफिक नए वर्जन पर रूट करें 3. मेट्रिक्स मॉनिटर करें (लेटेंसी, एरर रेट, बिज़नेस मेट्रिक्स) 4. मेट्रिक्स होल्ड करने पर धीरे-धीरे ट्रैफिक बढ़ाएं 5. परिणामों के आधार पर पूर्ण रोलआउट या रोलबैक करें
टूलिंग: Istio, Argo Rollouts और Flagger मेट्रिक डिग्रेडेशन पर ऑटोमैटिक रोलबैक के साथ प्रोग्रेसिव डिलीवरी ऑटोमेट करते हैं।
A/B टेस्टिंग
बिज़नेस इम्पैक्ट मापने के लिए मॉडल वर्जन्स की तुलना करें:¹²
कैनरी से मुख्य अंतर: - कैनरी समस्याएं डिटेक्ट करता है (मिनट से घंटे) - A/B टेस्टिंग इम्पैक्ट मापती है (दिन से हफ्ते) - A/B निष्कर्षों के लिए स्टैटिस्टिकल सिग्निफिकेंस आवश्यक
इम्प्लीमेंटेशन: - कंसिस्टेंट रूटिंग के लिए यूज़र IDs हैश करें - प्रति वेरिएंट कन्वर्ज़न मेट्रिक्स ट्रैक करें - स्टैटिस्टिकल सिग्निफिकेंस प्राप्त होने तक चलाएं - भविष्य के रेफरेंस के लिए परिणाम डॉक्यूमेंट करें
शैडो डिप्लॉयमेंट
रिस्पॉन्स सर्व किए बिना प्रोडक्शन ट्रैफिक को नए मॉडल पर रूट करें:
लाभ: - वास्तविक ट्रैफिक पैटर्न के साथ टेस्ट करें - यूज़र इम्पैक्ट के बिना आउटपुट्स की तुलना करें - डिप्लॉयमेंट से पहले एज केसेस पहचानें
इम्प्लीमेंटेशन: - प्रोडक्शन मॉडल रिस्पॉन्स सर्व करता है - शैडो मॉडल उन्हीं रिक्वेस्ट्स को प्रोसेस करता है - आउटपुट्स की तुलना होती है लेकिन यूज़र्स को रिटर्न नहीं होते - विसंगतियां जांच ट्रिगर करती हैं
रोलबैक प्रक्रियाएं
हर डिप्लॉयमेंट को रोलबैक क्षमता की जरूरत है:
तत्काल रोलबैक:
# ट्रैफिक रूटिंग रोलबैक
kubectl set image deployment/model-service model=model:v1.2.0
# फीचर फ्लैग रोलबैक
feature_flags.disable("new_model_v2")
रजिस्ट्री-बेस्ड रोलबैक: ```py
[Content truncated for translation]