LLM ਲਈ MLOps: Dresscode 'ਤੇ ਇੱਕ ਕੇਸ ਸਟੱਡੀ
ਇੱਕ proof of concept ਤੋਂ ਅਸਲ ਉਤਪਾਦ (product) ਤੱਕ ਜਾਣਾ ਮੁਸ਼ਕਲ ਹੈ।
ਮੈਂ Dresscode ਬਣਾਇਆ ਹੈ, ਜੋ ਇੱਕ AI ਸਟਾਈਲਿਸਟ ਹੈ। ਇਹ ਵਰਡਰੋਬ (wardrobes) ਨੂੰ ਡਿਜੀਟਾਈਜ਼ ਕਰਨ ਅਤੇ ਅਸਲ-ਸਮੇਂ ਦੇ ਮੌਸਮ ਦੇ ਅਧਾਰ 'ਤੇ ਆਊਟਫਿਟ ਸੁਝਾਉਣ ਲਈ Gemma 4 ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ।
ਇੱਕ ਵਧੀਆ ਵਿਚਾਰ ਲਈ ਸਿਰਫ਼ ਇੱਕ ਮਾਡਲ ਹੀ ਕਾਫ਼ੀ ਨਹੀਂ ਹੁੰਦਾ। ਇਸ ਲਈ MLOps ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।
MLOps ਤੁਹਾਡੇ AI ਨੂੰ ਸਹੀ, ਭਰੋਸੇਮੰਦ ਅਤੇ ਚਲਾਉਣ ਵਿੱਚ ਸਸਤਾ ਰੱਖਦਾ ਹੈ। AI ਨੂੰ ਸਕੇਲ ਕਰਨ ਲਈ ਮੈਂ ਇਸ 7-ਸਟੈਪ ਪਾਈਪਲਾਈਨ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹਾਂ।
ਡਾਟਾ ਇੰਜੈਸਸ਼ਨ ਅਤੇ ਇੰਜੀਨੀਅਰਿੰਗ (Data Ingestion and Engineering) ਕੱਚਾ ਡਾਟਾ (Raw data) ਅਸੰਗਠਿਤ ਹੁੰਦਾ ਹੈ। Dresscode ਲਈ, ਉਪਭੋਗਤਾ ਹਾਈ-ਰੈਜ਼ੋਲਿਊਸ਼ਨ ਫੋਟੋਆਂ ਅਪਲੋਡ ਕਰਦੇ ਹਨ। • ਇੰਜੈਸਸ਼ਨ: ਅਸੀਂ API ਰਾਹੀਂ ਫੋਟੋਆਂ ਨੂੰ ਕਲਾਉਡ ਸਟੋਰੇਜ ਵਿੱਚ ਭੇਜਦੇ ਹਾਂ। • ਇੰਜੀਨੀਅਰਿੰਗ: ਅਸੀਂ ਲਾਗਤ ਬਚਾਉਣ ਅਤੇ ਪ੍ਰੋਸੈਸਿੰਗ ਦੀ ਰਫ਼ਤਾਰ ਵਧਾਉਣ ਲਈ 12MB ਦੀਆਂ ਸਮਾਰਟਫੋਨ ਫੋਟੋਆਂ ਨੂੰ ਕੰਪਰੈੱਸ ਕਰਦੇ ਹਾਂ। ਅਸੀਂ ਪ੍ਰਾਈਵੇਸੀ ਲਈ ਮੈਟਾਡਾਟਾ (metadata) ਨੂੰ ਵੀ ਹਟਾ ਦਿੰਦੇ ਹਾਂ। • ਟੈਕਸਟ ਕਲੀਨਿੰਗ: ਅਸੀਂ ਪ੍ਰੋਂਪਟਸ (prompts) ਨੂੰ ਛੋਟਾ ਅਤੇ ਕੁਸ਼ਲ ਰੱਖਣ ਲਈ ਵੈਦਰ API ਡਾਟਾ ਨੂੰ ਸਾਫ਼ ਕਰਦੇ ਹਾਂ।
ਫੀਚਰ ਸਟੋਰ (Feature Store) ਫੀਚਰ ਉਹ ਖਾਸ ਵੇਰਵੇ ਹੁੰਦੇ ਹਨ ਜੋ ਇੱਕ AI ਫੈਸਲੇ ਲੈਣ ਲਈ ਵਰਤਦਾ ਹੈ। • ਇਮੇਜਾਂ ਲਈ: ਅਸੀਂ ਮੈਥੇਮੈਟੀਕਲ ਐਮਬੈਡਿੰਗਜ਼ (mathematical embeddings - vectors) ਸਟੋਰ ਕਰਦੇ ਹਾਂ। ਇਹ ਸਾਨੂੰ ਇੱਕੋ ਤਸਵੀਰ ਨੂੰ ਦੁਬਾਰਾ ਪ੍ਰੋਸੈਸ ਕਰਨ ਤੋਂ ਰੋਕਦਾ ਹੈ। • ਮੌਸਮ ਲਈ: ਅਸੀਂ ਕੱਚੇ ਡਾਟਾ ਨੂੰ "chilly" ਜਾਂ "rainy" ਵਰਗੀਆਂ ਸ਼੍ਰੇਣੀਆਂ ਵਿੱਚ ਬਦਲਦੇ ਹਾਂ। • ਫਾਇਦਾ: ਇੱਕ ਫੀਚਰ ਸਟੋਰ ਤੁਹਾਨੂੰ ਇਹਨਾਂ ਵੇਰਵਿਆਂ ਨੂੰ ਦੁਬਾਰਾ ਗਣਨਾ ਕਰਨ ਦੀ ਬਜਾਏ ਤੁਰੰਤ ਪ੍ਰਾਪਤ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ।
ਮਾਡਲ ਟ੍ਰੇਨਿੰਗ ਅਤੇ ਪ੍ਰਯੋਗ (Model Training and Experimentation) ਅਸੀਂ Gemma 4 ਨੂੰ ਸ਼ੁਰੂ ਤੋਂ ਟ੍ਰੇਨ ਨਹੀਂ ਕਰਦੇ। ਅਸੀਂ Prompt Engineering ਅਤੇ ਮੁਲਾਂਕਣ (evaluation) 'ਤੇ ਧਿਆਨ ਕੇਂਦਰਿਤ ਕਰਦੇ ਹਾਂ। • ਪ੍ਰਯੋਗ: ਅਸੀਂ ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਵੱਖ-ਵੱਖ ਸਿਸਟਮ ਪ੍ਰੋਂਪਟਸ ਦਾ ਟੈਸਟ ਕਰਦੇ ਹਾਂ ਕਿ AI ਸਾਫ਼ JSON ਆਊਟਪੁੱਟ ਦੇਵੇ। • CI (Continuous Integration): ਅਸੀਂ 100 ਫੋਟੋਆਂ ਦੇ "Golden Dataset" ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ। ਹਰ ਵਾਰ ਜਦੋਂ ਅਸੀਂ ਪ੍ਰੋਂਪਟ ਬਦਲਦੇ ਹਾਂ, ਸਿਸਟਮ ਚੈੱਕ ਕਰਦਾ ਹੈ ਕਿ ਕੀ ਸ਼ੁੱਧਤਾ (accuracy) 95% ਤੋਂ ਉੱਪਰ ਰਹਿੰਦੀ ਹੈ।
ਮਾਡਲ ਰਜਿਸਟਰੀ (Model Registry) ਇਸ ਨੂੰ ਆਪਣੇ ਮਾਡਲਾਂ ਲਈ ਇੱਕ ਐਪ ਸਟੋਰ ਵਾਂਗ ਸਮਝੋ। • ਅਸੀਂ ਵਰਜ਼ਨ ਕੀਤੇ ਪ੍ਰੋਂਪਟਸ ਅਤੇ ਮਾਡਲ ਕੌਂਫਿਗਰੇਸ਼ਨਾਂ ਨੂੰ ਸਟੋਰ ਕਰਦੇ ਹਾਂ। • ਜੇਕਰ ਕੋਈ ਨਵਾਂ ਪ੍ਰੋਂਪਟ AI ਨੂੰ ਗਰਮੀਆਂ ਵਿੱਚ ਕੋਟ ਦੀ ਸਿਫਾਰਸ਼ ਕਰਨ ਲਈ ਮਜਬੂਰ ਕਰਦਾ ਹੈ, ਤਾਂ ਅਸੀਂ ਤੁਰੰਤ ਸਥਿਰ (stable) ਵਰਜ਼ਨ 'ਤੇ ਜਾਣ ਲਈ "Rollback" 'ਤੇ ਕਲਿੱਕ ਕਰ ਸਕਦੇ ਹਾਂ।
ਕੰਟੀਨਿਊਅਸ ਡਿਪਲਾਈਮੈਂਟ ਅਤੇ ਸਰਵਿੰਗ (Continuous Deployment and Serving) ਇਸ ਤਰੀਕੇ ਨਾਲ ਤੁਸੀਂ ਮਾਡਲ ਨੂੰ ਉਪਭੋਗਤਾ ਤੱਕ ਪਹੁੰਚਾਉਂਦੇ ਹੋ। • ਵਿਜ਼ੂਅਲ ਟਾਸਕ: ਅਸੀਂ asynchronous queues ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ। ਉਪਭੋਗਤਾ ਫੋਟੋਆਂ ਅਪਲੋਡ ਕਰਦੇ ਹਨ, ਅਤੇ ਅਸੀਂ ਉਹਨਾਂ ਨੂੰ ਬੈਕਗ੍ਰਾਊਂਡ ਵਿੱਚ ਪ੍ਰੋਸੈਸ ਕਰਦੇ ਹਾਂ ਤਾਂ ਜੋ ਐਪ ਤੇਜ਼ ਰਹੇ। • ਟੈਕਸਟ ਟਾਸਕ: ਅਸੀਂ token streaming ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ। ਇਹ ਆਊਟਫਿਟ ਸੁਝਾਅ ਨੂੰ ਸ਼ਬਦ-ਦਰ-ਸ਼ਬਦ ਦਿਖਾਉਂਦਾ ਹੈ ਤਾਂ ਜੋ ਉਪਭੋਗਤਾ ਨੂੰ ਲੋਡਿੰਗ ਸਕ੍ਰੀਨ ਦੇਖਣੀ ਨਾ ਪਵੇ।
ਕੰਟੀਨਿਊਅਸ ਮਾਨੀਟਰਿੰਗ (Continuous Monitoring) AI ਸਮੇਂ ਦੇ ਨਾਲ ਘਟ ਸਕਦਾ ਹੈ। ਅਸੀਂ ਤਿੰਨ ਚੀਜ਼ਾਂ ਦੀ ਨਿਗਰਾਨੀ ਕਰਦੇ ਹਾਂ: • ਸਿਸਟਮ ਪਰਫਾਰਮੈਂਸ: ਕੀ ਲੇਟੈਂਸੀ (latency) ਵਧ ਰਹੀ ਹੈ? • ਡਾਟਾ ਡ੍ਰਿਫਟ (Data Drift): ਕੀ ਉਪਭੋਗਤਾ ਅਜਿਹੇ ਨਵੇਂ ਫੋਟੋ ਫਾਰਮੈਟ ਅਪਲੋਡ ਕਰ ਰਹੇ ਹਨ ਜਿਨ੍ਹਾਂ ਦੀ ਅਸੀਂ ਉਮੀਦ ਨਹੀਂ ਕੀਤੀ ਸੀ? • ਮਾਡਲ ਦੀ ਸ਼ੁੱਧਤਾ: ਕੀ AI ਅਜਿਹੀਆਂ ਚੀਜ਼ਾਂ ਦੇ ਭਰਮ (hallucinate) ਕਰਨਾ ਸ਼ੁਰੂ ਕਰ ਰਿਹਾ ਹੈ ਜੋ ਉਪਭੋਗਤਾ ਕੋਲ ਨਹੀਂ ਹਨ?
ਫੀਡਬੈਕ ਲੂਪ (The Feedback Loop) ਸਿਸਟਮ ਨੂੰ ਗਲਤੀਆਂ ਤੋਂ ਸਿੱਖਣਾ ਚਾਹੀਦਾ ਹੈ। ਅਸੀਂ ਉਪਭੋਗਤਾ ਦੇ ਸੁਧਾਰਾਂ ਨੂੰ ਕੈਪਚਰ ਕਰਦੇ ਹਾਂ ਅਤੇ ਮਾਡਲ ਨੂੰ ਦੁਬਾਰਾ ਟ੍ਰੇਨ ਕਰਨ ਅਤੇ ਸੁਧਾਰਨ ਲਈ ਉਸ ਡਾਟਾ ਨੂੰ ਪਹਿਲੇ ਸਟੈਪ ਵਿੱਚ ਵਾਪਸ ਭੇਜਦੇ ਹਾਂ।
MLOps ਇੱਕ ਵਧੀਆ ਡੈਮੋ ਨੂੰ ਇੱਕ ਪੇਸ਼ੇਵਰ ਟੂਲ ਵਿੱਚ ਬਦਲ ਦਿੰਦਾ ਹੈ।
ਸਰੋਤ: https://dev.to/saad4software/mlops-for-llm-a-case-study-on-dresscode-3joj
ਵਿਕਲਪਿਕ ਲਰਨਿੰਗ ਕਮਿਊਨਿਟੀ: https://t.me/GyaanSetuAi
