मॉडलों को किसी registry में अपरिवर्तनीय versioned artifacts मानिए, कभी उस फाइल की तरह नहीं जिसे उसी जगह overwrite कर दिया जाए। हर वर्जन training कोड का commit, डेटा का snapshot, उसके metrics और staging या production जैसा stage दर्ज करता है। serving configuration से पढ़ती है कि कौन सा वर्जन load करना है, इसलिए rollback एक config बदलाव है जिसमें सेकंड लगते हैं, और पिछला वर्जन दोबारा build किए बिना load होने लायक बना रहता है।
इंटरव्यूअर यह क्यों पूछते हैं
इससे इंटरव्यूअर को पता चलता है कि आपने कोई मॉडल चलाया है या सिर्फ deploy किया है। मुख्य विचार हैं अपरिवर्तनीयता, सर्विस और artifact के बीच एक pointer की परत, और कोड तथा डेटा तक वापस जाती lineage। जिसे कभी आनन फानन rollback करना पड़ा है वह जानता है कि container दोबारा build करना बहुत धीमा है, इसलिए पिछले वर्जन को तुरंत load होने लायक रखना वही ब्योरा है जो मायने रखता है।
अपना जवाब कैसे स्ट्रक्चर करें
- अपरिवर्तनीय versioned artifacts पर अड़ें, overwrite कभी नहीं।
- हर वर्जन को जो lineage ढोनी है, वह गिनाएं।
- वह config pointer बताएं जो serving को वर्जन बदलने देता है।
- बताएं कि rollback कितना तेज होना चाहिए और आप उसका अभ्यास कैसे करते हैं।
उदाहरण जवाब
पहला नियम यह है कि मॉडल artifact अपरिवर्तनीय है। उसे एक वर्जन मिलता है, वह एक बार लिखा जाता है, और उसे कभी कोई overwrite नहीं करता, क्योंकि जिस दिन आपको rollback चाहिए उसी दिन पता चलता है कि पुरानी फाइल बदल दी गई थी। हर वर्जन lineage ढोता है: training कोड का git SHA, डेटा snapshot की पहचान, hyperparameter config, मूल्यांकन के metrics, और किसने promote किया। इसका मतलब है कि तीन महीने बाद जब कोई पूछे कि अप्रैल में मॉडल का बर्ताव क्यों बदला, तो वह एक lookup है, कोई पुरातत्व परियोजना नहीं। serving में वर्जन hardcode नहीं होता। वह config से एक pointer पढ़ती है, इसलिए promote करना pointer बदलना है और rollback उसे वापस बदलना, दोनों सेकंडों में। जहां जगह इजाजत देती है वहां मैं पिछला वर्जन मेमोरी में load रखता हूं, ताकि rollback में न दोबारा deploy लगे न किसी नए container पर cold start। और मैं उसका अभ्यास करता हूं, क्योंकि बिना आजमाया rollback रास्ता कोई rollback रास्ता नहीं है। पिछली टीम में हम बीच बीच में कम traffic वाली खिड़की में जानबूझकर एक rollback करते थे, और इसी से हमें पता चला कि config बदलाव तो ठीक फैला, लेकिन नीचे की एक cache ने पुरानी threshold दस मिनट और पकड़े रखी।
जल्दी ही यह इंटरव्यू देने जा रहे हैं? GhostPilot आपकी लाइव कॉल सुनता है, सवाल पूछे जाते ही उसे पकड़ लेता है, और रियल-टाइम में एक स्ट्रक्चर्ड जवाब आपकी स्क्रीन पर डाल देता है। अगले मॉक में इसे आजमाएं, या ले लें एक $29 Session Pass, कोई सब्सक्रिप्शन नहीं, असली इंटरव्यू के लिए।
देखें यह कैसे काम करता हैफॉलो-अप सवाल जिनकी उम्मीद रखें
- जब नए मॉडल को कोई नया feature चाहिए हो तो rollback आप कैसे संभालते हैं?
- artifact के साथ model card में क्या होना चाहिए?
- पुराने मॉडल वर्जन को आप सुरक्षित तरीके से कैसे हटाएंगे?
मशीन लर्निंग इंजीनियर के और सवाल
आपका इंटरव्यूअर इसका अपना वर्ज़न पूछेगा। फ्री Question Predictor में अपना असली जॉब डिस्क्रिप्शन पेस्ट कीजिए और वो 20 सवाल पाइए जो उस रोल में सबसे ज्यादा पूछे जाने की संभावना है, साथ में यह भी कि हर सवाल असल में क्या टटोल रहा है।
मेरे सवाल प्रेडिक्ट करें