ਅਸੀਂ ਹਰ ਹਫ਼ਤੇ ਅਤਿ-ਆਧੁਨਿਕ ਤਕਨਾਲੋਜੀ ਬਾਰੇ ਘੋਸ਼ਣਾਵਾਂ ਦੇ ਨਾਲ, ਦਿਲਚਸਪ ਸਮੇਂ ਵਿੱਚ ਰਹਿੰਦੇ ਹਾਂ। OpenAI ਨੇ ਹੁਣੇ ਹੀ ਆਧੁਨਿਕ ਟੈਕਸਟ-ਟੂ-ਇਮੇਜ ਮਾਡਲ DALLE 2 ਜਾਰੀ ਕੀਤਾ ਹੈ।
ਸਿਰਫ਼ ਕੁਝ ਲੋਕਾਂ ਨੇ ਇੱਕ ਨਵੇਂ AI ਸਿਸਟਮ ਤੱਕ ਛੇਤੀ ਪਹੁੰਚ ਪ੍ਰਾਪਤ ਕੀਤੀ ਜੋ ਕੁਦਰਤੀ ਭਾਸ਼ਾ ਦੇ ਵਰਣਨ ਤੋਂ ਯਥਾਰਥਵਾਦੀ ਗ੍ਰਾਫਿਕਸ ਤਿਆਰ ਕਰ ਸਕਦੀ ਹੈ। ਇਹ ਅਜੇ ਵੀ ਲੋਕਾਂ ਲਈ ਬੰਦ ਹੈ।
ਸਥਿਰਤਾ AI ਫਿਰ ਜਾਰੀ ਕੀਤਾ ਸਥਿਰ ਫੈਲਾਅ ਮਾਡਲ, DALLE2 ਦਾ ਇੱਕ ਓਪਨ-ਸਰੋਤ ਰੂਪ। ਇਸ ਲਾਂਚ ਨੇ ਸਭ ਕੁਝ ਬਦਲ ਦਿੱਤਾ ਹੈ। ਸਾਰੇ ਇੰਟਰਨੈਟ ਤੇ ਲੋਕ ਤੁਰੰਤ ਨਤੀਜੇ ਪ੍ਰਕਾਸ਼ਿਤ ਕਰ ਰਹੇ ਸਨ ਅਤੇ ਯਥਾਰਥਵਾਦੀ ਕਲਾ ਦੁਆਰਾ ਹੈਰਾਨ ਹੋ ਰਹੇ ਸਨ।
ਸਥਿਰ ਫੈਲਾਅ ਕੀ ਹੈ?
ਸਥਿਰ ਫੈਲਾਅ ਇੱਕ ਮਸ਼ੀਨ ਲਰਨਿੰਗ ਮਾਡਲ ਹੈ ਜੋ ਟੈਕਸਟ ਤੋਂ ਚਿੱਤਰ ਬਣਾਉਣ, ਟੈਕਸਟ ਦੇ ਅਧਾਰ ਤੇ ਚਿੱਤਰਾਂ ਨੂੰ ਬਦਲਣ, ਅਤੇ ਘੱਟ-ਰੈਜ਼ੋਲਿਊਸ਼ਨ ਜਾਂ ਘੱਟ-ਵਿਸਥਾਰ ਵਾਲੀਆਂ ਤਸਵੀਰਾਂ 'ਤੇ ਵੇਰਵੇ ਭਰਨ ਦੇ ਸਮਰੱਥ ਹੈ।
ਇਸ ਨੂੰ ਅਰਬਾਂ ਫੋਟੋਆਂ 'ਤੇ ਸਿਖਲਾਈ ਦਿੱਤੀ ਗਈ ਸੀ ਅਤੇ ਇਸਦੇ ਬਰਾਬਰ ਨਤੀਜੇ ਦੇ ਸਕਦੇ ਹਨ FROM-E 2 ਅਤੇ ਮਿਡ ਜਰਨੀ. ਸਥਿਰਤਾ AI ਨੇ ਇਸ ਦੀ ਖੋਜ ਕੀਤੀ, ਅਤੇ ਇਸਨੂੰ 22 ਅਗਸਤ, 2022 ਨੂੰ ਜਨਤਕ ਕੀਤਾ ਗਿਆ।
ਪਰ ਸੀਮਤ ਸਥਾਨਕ ਕੰਪਿਊਟੇਸ਼ਨਲ ਸਰੋਤਾਂ ਦੇ ਨਾਲ, ਸਥਿਰ ਪ੍ਰਸਾਰ ਮਾਡਲ ਉੱਚ-ਗੁਣਵੱਤਾ ਵਾਲੀਆਂ ਤਸਵੀਰਾਂ ਬਣਾਉਣ ਲਈ ਲੰਬਾ ਸਮਾਂ ਲੈਂਦਾ ਹੈ। ਕਲਾਉਡ ਪ੍ਰਦਾਤਾ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਮਾਡਲ ਨੂੰ ਔਨਲਾਈਨ ਚਲਾਉਣਾ ਸਾਨੂੰ ਲਗਭਗ ਅਨੰਤ ਕੰਪਿਊਟੇਸ਼ਨਲ ਸਰੋਤ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਅਤੇ ਸਾਨੂੰ ਬਹੁਤ ਤੇਜ਼ੀ ਨਾਲ ਸ਼ਾਨਦਾਰ ਨਤੀਜੇ ਪ੍ਰਾਪਤ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ।
ਮਾਈਕ੍ਰੋਸਰਵਿਸ ਵਜੋਂ ਮਾਡਲ ਦੀ ਮੇਜ਼ਬਾਨੀ ਕਰਨਾ ਹੋਰ ਰਚਨਾਤਮਕ ਐਪਾਂ ਨੂੰ ML ਮਾਡਲਾਂ ਨੂੰ ਔਨਲਾਈਨ ਚਲਾਉਣ ਦੀਆਂ ਜਟਿਲਤਾਵਾਂ ਨਾਲ ਨਜਿੱਠਣ ਤੋਂ ਬਿਨਾਂ ਮਾਡਲ ਦੀ ਸੰਭਾਵਨਾ ਦਾ ਵਧੇਰੇ ਆਸਾਨੀ ਨਾਲ ਸ਼ੋਸ਼ਣ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ।
ਇਸ ਪੋਸਟ ਵਿੱਚ, ਅਸੀਂ ਇਹ ਦਿਖਾਉਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਾਂਗੇ ਕਿ ਇੱਕ ਸਥਿਰ ਪ੍ਰਸਾਰ ਮਾਡਲ ਨੂੰ ਕਿਵੇਂ ਵਿਕਸਤ ਕਰਨਾ ਹੈ ਅਤੇ ਇਸਨੂੰ AWS ਵਿੱਚ ਤੈਨਾਤ ਕਰਨਾ ਹੈ।
ਸਥਿਰ ਫੈਲਾਅ ਬਣਾਓ ਅਤੇ ਲਾਗੂ ਕਰੋ
ਬੈਂਟੋਐਮਐਲ ਅਤੇ ਐਮਾਜ਼ਾਨ ਵੈੱਬ ਸੇਵਾਵਾਂ EC2 ਸਟੇਬਲ ਡਿਫਿਊਜ਼ਨ ਮਾਡਲ ਨੂੰ ਔਨਲਾਈਨ ਹੋਸਟ ਕਰਨ ਲਈ ਦੋ ਵਿਕਲਪ ਹਨ। BentoML ਸਕੇਲਿੰਗ ਲਈ ਇੱਕ ਓਪਨ-ਸੋਰਸ ਫਰੇਮਵਰਕ ਹੈ ਮਸ਼ੀਨ ਸਿਖਲਾਈ ਸੇਵਾਵਾਂ। BentoML ਦੇ ਨਾਲ, ਅਸੀਂ ਇੱਕ ਭਰੋਸੇਮੰਦ ਡਿਸਪਰਸ਼ਨ ਸੇਵਾ ਬਣਾਵਾਂਗੇ ਅਤੇ ਇਸਨੂੰ AWS EC2 ਵਿੱਚ ਤੈਨਾਤ ਕਰਾਂਗੇ।
ਵਾਤਾਵਰਣ ਨੂੰ ਤਿਆਰ ਕਰਨਾ ਅਤੇ ਸਥਿਰ ਪ੍ਰਸਾਰ ਮਾਡਲ ਨੂੰ ਡਾਊਨਲੋਡ ਕਰਨਾ
ਲੋੜਾਂ ਨੂੰ ਸਥਾਪਿਤ ਕਰੋ ਅਤੇ ਰਿਪੋਜ਼ਟਰੀ ਨੂੰ ਕਲੋਨ ਕਰੋ।
ਤੁਸੀਂ ਸਟੇਬਲ ਡਿਫਿਊਜ਼ਨ ਮਾਡਲ ਨੂੰ ਚੁਣ ਅਤੇ ਡਾਊਨਲੋਡ ਕਰ ਸਕਦੇ ਹੋ। ਸਿੰਗਲ ਸ਼ੁੱਧਤਾ 10GB VRAM ਤੋਂ ਵੱਧ ਵਾਲੇ CPUs ਜਾਂ GPUs ਲਈ ਢੁਕਵੀਂ ਹੈ। ਅੱਧੀ ਸ਼ੁੱਧਤਾ 10GB VRAM ਤੋਂ ਘੱਟ ਵਾਲੇ GPUs ਲਈ ਆਦਰਸ਼ ਹੈ।
ਸਥਿਰ ਫੈਲਾਅ ਬਣਾਉਣਾ
ਅਸੀਂ ਏ ਦੇ ਪਿੱਛੇ ਮਾਡਲ ਦੀ ਸੇਵਾ ਕਰਨ ਲਈ ਇੱਕ BentoML ਸੇਵਾ ਬਣਾਵਾਂਗੇ ਰੈਸਟਿਫ API. ਨਿਮਨਲਿਖਤ ਉਦਾਹਰਨ ਭਵਿੱਖਬਾਣੀ ਲਈ ਸਿੰਗਲ ਸ਼ੁੱਧਤਾ ਮਾਡਲ ਅਤੇ ਸੇਵਾ ਨੂੰ ਵਪਾਰਕ ਤਰਕ ਨਾਲ ਜੋੜਨ ਲਈ service.py ਮੋਡੀਊਲ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ। ਅਸੀਂ ਉਹਨਾਂ ਨੂੰ @svc.api ਨਾਲ ਟੈਗ ਕਰਕੇ APIs ਦੇ ਰੂਪ ਵਿੱਚ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਉਜਾਗਰ ਕਰ ਸਕਦੇ ਹਾਂ।
ਇਸ ਤੋਂ ਇਲਾਵਾ, ਅਸੀਂ ਮਾਪਦੰਡਾਂ ਵਿੱਚ APIs ਦੇ ਇਨਪੁਟ ਅਤੇ ਆਉਟਪੁੱਟ ਕਿਸਮਾਂ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰ ਸਕਦੇ ਹਾਂ। txt2img ਐਂਡਪੁਆਇੰਟ, ਉਦਾਹਰਨ ਲਈ, ਇੱਕ JSON ਇੰਪੁੱਟ ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ ਅਤੇ ਇੱਕ ਚਿੱਤਰ ਆਉਟਪੁੱਟ ਪੈਦਾ ਕਰਦਾ ਹੈ, ਜਦੋਂ ਕਿ img2img ਐਂਡਪੁਆਇੰਟ ਇੱਕ ਚਿੱਤਰ ਅਤੇ ਇੱਕ JSON ਇਨਪੁਟ ਨੂੰ ਸਵੀਕਾਰ ਕਰਦਾ ਹੈ ਅਤੇ ਇੱਕ ਚਿੱਤਰ ਆਉਟਪੁੱਟ ਵਾਪਸ ਕਰਦਾ ਹੈ।
ਇੱਕ StableDiffusionRunnable ਜ਼ਰੂਰੀ ਅਨੁਮਾਨ ਤਰਕ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ। ਰਨਨੇਬਲ ਮਾਡਲ ਦੇ txt2img ਪਾਈਪ ਵਿਧੀਆਂ ਨੂੰ ਚਲਾਉਣ ਅਤੇ ਸੰਬੰਧਿਤ ਇਨਪੁਟਸ ਭੇਜਣ ਦਾ ਇੰਚਾਰਜ ਹੈ। APIs ਵਿੱਚ ਮਾਡਲ ਅਨੁਮਾਨ ਤਰਕ ਨੂੰ ਚਲਾਉਣ ਲਈ, ਇੱਕ ਕਸਟਮ ਰਨਰ StableDiffusionRunnable ਤੋਂ ਬਣਾਇਆ ਗਿਆ ਹੈ।
ਫਿਰ, ਜਾਂਚ ਲਈ BentoML ਸੇਵਾ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਹੇਠ ਦਿੱਤੀ ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕਰੋ। ਸਥਾਨਕ ਤੌਰ 'ਤੇ ਚੱਲ ਰਿਹਾ ਹੈ ਸਥਿਰ ਫੈਲਾਅ ਮਾਡਲ CPUs 'ਤੇ ਅਨੁਮਾਨ ਕਾਫ਼ੀ ਸੁਸਤ ਹੈ। ਹਰੇਕ ਬੇਨਤੀ ਨੂੰ ਪ੍ਰਕਿਰਿਆ ਕਰਨ ਵਿੱਚ ਲਗਭਗ 5 ਮਿੰਟ ਲੱਗਣਗੇ।
ਚਿੱਤਰ ਤੋਂ ਟੈਕਸਟ
ਟੈਕਸਟ ਤੋਂ ਚਿੱਤਰ ਆਉਟਪੁੱਟ
bentofile.yaml ਫਾਈਲ ਲੋੜੀਂਦੀਆਂ ਫਾਈਲਾਂ ਅਤੇ ਨਿਰਭਰਤਾਵਾਂ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੀ ਹੈ।
ਬੈਂਟੋ ਬਣਾਉਣ ਲਈ ਹੇਠਾਂ ਦਿੱਤੀ ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕਰੋ। ਇੱਕ Bento ਇੱਕ BentoML ਸੇਵਾ ਲਈ ਵੰਡ ਫਾਰਮੈਟ ਹੈ। ਇਹ ਇੱਕ ਸਵੈ-ਨਿਰਮਿਤ ਪੁਰਾਲੇਖ ਹੈ ਜਿਸ ਵਿੱਚ ਸੇਵਾ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਲੋੜੀਂਦੇ ਸਾਰੇ ਡੇਟਾ ਅਤੇ ਸੰਰਚਨਾਵਾਂ ਸ਼ਾਮਲ ਹਨ।
ਸਥਿਰ ਫੈਲਾਅ ਬੈਂਟੋ ਪੂਰਾ ਹੋ ਗਿਆ ਹੈ। ਜੇ ਤੁਸੀਂ ਬੈਂਟੋ ਨੂੰ ਸਹੀ ਢੰਗ ਨਾਲ ਤਿਆਰ ਕਰਨ ਵਿੱਚ ਅਸਮਰੱਥ ਹੋ, ਤਾਂ ਘਬਰਾਓ ਨਾ; ਤੁਸੀਂ ਅਗਲੇ ਭਾਗ ਵਿੱਚ ਸੂਚੀਬੱਧ ਕਮਾਂਡਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪ੍ਰੀ-ਬਿਲਟ ਮਾਡਲ ਨੂੰ ਡਾਊਨਲੋਡ ਕਰ ਸਕਦੇ ਹੋ।
ਪ੍ਰੀ-ਬਿਲਡ ਮਾਡਲ
ਹੇਠਾਂ ਦਿੱਤੇ ਪ੍ਰੀ-ਬਿਲਡ ਮਾਡਲ ਹਨ:
ਸਥਿਰ ਪ੍ਰਸਾਰ ਮਾਡਲ ਨੂੰ EC2 ਵਿੱਚ ਤੈਨਾਤ ਕਰੋ
ਬੈਂਟੋ ਨੂੰ EC2 ਵਿੱਚ ਤੈਨਾਤ ਕਰਨ ਲਈ, ਅਸੀਂ ਬੇਨਟੋਕਟਲ ਦੀ ਵਰਤੋਂ ਕਰਾਂਗੇ। bentoctl ਤੁਹਾਨੂੰ ਆਪਣੇ ਬੈਂਟੋਸ ਨੂੰ ਕਿਸੇ ਵੀ 'ਤੇ ਤਾਇਨਾਤ ਕਰਨ ਦੇ ਸਕਦਾ ਹੈ ਕਲਾਉਡ ਪਲੇਟਫਾਰਮ Terraform ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ. ਟੈਰਾਫਾਰਮ ਫਾਈਲਾਂ ਬਣਾਉਣ ਅਤੇ ਲਾਗੂ ਕਰਨ ਲਈ, AWS EC2 ਆਪਰੇਟਰ ਨੂੰ ਸਥਾਪਿਤ ਕਰੋ।
ਤੈਨਾਤੀ config.yaml ਫਾਈਲ ਵਿੱਚ, ਤੈਨਾਤੀ ਪਹਿਲਾਂ ਹੀ ਕੌਂਫਿਗਰ ਕੀਤੀ ਜਾ ਚੁੱਕੀ ਹੈ। ਕਿਰਪਾ ਕਰਕੇ ਆਪਣੀਆਂ ਲੋੜਾਂ ਨੂੰ ਸੰਪਾਦਿਤ ਕਰਨ ਲਈ ਸੁਤੰਤਰ ਮਹਿਸੂਸ ਕਰੋ। ਬੈਂਟੋ ਨੂੰ ਡਿਫੌਲਟ ਰੂਪ ਵਿੱਚ ਇੱਕ g4dn.xlarge ਹੋਸਟ 'ਤੇ ਤੈਨਾਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਡੂੰਘੀ ਸਿਖਲਾਈ AMI GPU PyTorch 1.12.0 (Ubuntu 20.04) US-west-1 ਖੇਤਰ 'ਤੇ AMI।
ਹੁਣੇ ਟੈਰਾਫਾਰਮ ਫਾਈਲਾਂ ਬਣਾਓ। ਡੌਕਰ ਚਿੱਤਰ ਬਣਾਓ ਅਤੇ ਇਸਨੂੰ AWS ECR 'ਤੇ ਅੱਪਲੋਡ ਕਰੋ। ਤੁਹਾਡੀ ਬੈਂਡਵਿਡਥ 'ਤੇ ਨਿਰਭਰ ਕਰਦਿਆਂ, ਚਿੱਤਰ ਅੱਪਲੋਡ ਕਰਨ ਵਿੱਚ ਲੰਮਾ ਸਮਾਂ ਲੱਗ ਸਕਦਾ ਹੈ। ਬੈਂਟੋ ਨੂੰ AWS EC2 ਵਿੱਚ ਤੈਨਾਤ ਕਰਨ 'ਤੇ, ਟੈਰਾਫਾਰਮ ਫਾਈਲਾਂ ਦੀ ਵਰਤੋਂ ਕਰੋ।
ਸਵੈਗਰ UI ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਲਈ, EC2 ਕੰਸੋਲ ਨਾਲ ਕਨੈਕਟ ਕਰੋ ਅਤੇ ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ ਜਨਤਕ IP ਐਡਰੈੱਸ ਖੋਲ੍ਹੋ। ਅੰਤ ਵਿੱਚ, ਜੇਕਰ ਸਥਿਰ ਫੈਲਾਅ BentoML ਸੇਵਾ ਦੀ ਹੁਣ ਲੋੜ ਨਹੀਂ ਹੈ, ਤਾਂ ਤੈਨਾਤੀ ਨੂੰ ਹਟਾ ਦਿਓ।
ਸਿੱਟਾ
ਤੁਹਾਨੂੰ ਇਹ ਦੇਖਣ ਦੇ ਯੋਗ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਕਿ SD ਅਤੇ ਇਸਦੇ ਸਾਥੀ ਮਾਡਲ ਕਿੰਨੇ ਦਿਲਚਸਪ ਅਤੇ ਸ਼ਕਤੀਸ਼ਾਲੀ ਹਨ। ਸਮਾਂ ਦੱਸੇਗਾ ਕਿ ਕੀ ਅਸੀਂ ਸੰਕਲਪ ਨੂੰ ਅੱਗੇ ਦੁਹਰਾਵਾਂਗੇ ਜਾਂ ਹੋਰ ਵਧੀਆ ਪਹੁੰਚਾਂ ਵੱਲ ਵਧਾਂਗੇ।
ਹਾਲਾਂਕਿ, ਵਰਤਮਾਨ ਵਿੱਚ ਆਲੇ-ਦੁਆਲੇ ਅਤੇ ਨਿਰਦੇਸ਼ਾਂ ਨੂੰ ਬਿਹਤਰ ਤਰੀਕੇ ਨਾਲ ਸਮਝਣ ਲਈ ਐਡਜਸਟਮੈਂਟਾਂ ਦੇ ਨਾਲ ਵੱਡੇ ਮਾਡਲਾਂ ਨੂੰ ਸਿਖਲਾਈ ਦੇਣ ਲਈ ਪਹਿਲਕਦਮੀਆਂ ਚੱਲ ਰਹੀਆਂ ਹਨ। ਅਸੀਂ BentoML ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਸਥਿਰ ਪ੍ਰਸਾਰ ਸੇਵਾ ਨੂੰ ਵਿਕਸਤ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਅਤੇ ਇਸਨੂੰ AWS EC2 ਵਿੱਚ ਤੈਨਾਤ ਕੀਤਾ।
ਅਸੀਂ ਵਧੇਰੇ ਸ਼ਕਤੀਸ਼ਾਲੀ ਹਾਰਡਵੇਅਰ 'ਤੇ ਸਟੇਬਲ ਡਿਫਿਊਜ਼ਨ ਮਾਡਲ ਨੂੰ ਚਲਾਉਣ, ਘੱਟ ਲੇਟੈਂਸੀ ਨਾਲ ਤਸਵੀਰਾਂ ਬਣਾਉਣ, ਅਤੇ AWS EC2 'ਤੇ ਸੇਵਾ ਨੂੰ ਤੈਨਾਤ ਕਰਕੇ ਇੱਕ ਕੰਪਿਊਟਰ ਤੋਂ ਅੱਗੇ ਵਧਾਉਣ ਦੇ ਯੋਗ ਸੀ।
ਕੋਈ ਜਵਾਬ ਛੱਡਣਾ