আমরা প্রতি সপ্তাহে অত্যাধুনিক প্রযুক্তি সম্পর্কে ঘোষণা সহ উত্তেজনাপূর্ণ সময়ে বাস করি। OpenAI সবেমাত্র কাটিং-এজ টেক্সট-টু-ইমেজ মডেল DALLE 2 প্রকাশ করেছে।
শুধুমাত্র কিছু লোক একটি নতুন এআই সিস্টেমে প্রাথমিক অ্যাক্সেস অর্জন করেছে যা প্রাকৃতিক ভাষার বর্ণনা থেকে বাস্তবসম্মত গ্রাফিক্স তৈরি করতে পারে। এটি এখনও জনসাধারণের জন্য বন্ধ রয়েছে।
স্টেবিলিটি এআই এরপর রিলিজ করে স্থিতিশীল বিস্তার মডেল, DALLE2 এর একটি ওপেন সোর্স বৈকল্পিক। এই লঞ্চ সবকিছু বদলে দিয়েছে। ইন্টারনেট জুড়ে লোকেরা দ্রুত ফলাফল প্রকাশ করছিল এবং বাস্তবসম্মত শিল্প দ্বারা বিস্মিত হচ্ছে।
স্থিতিশীল প্রসারণ কি?
স্থিতিশীল বিস্তার একটি মেশিন লার্নিং মডেল যা পাঠ্য থেকে চিত্র তৈরি করতে, পাঠ্যের উপর নির্ভর করে চিত্র পরিবর্তন করতে এবং কম-রেজোলিউশন বা কম-বিশদ চিত্রগুলিতে বিশদ বিবরণ পূরণ করতে সক্ষম।
এটি কোটি কোটি ফটোতে প্রশিক্ষিত ছিল এবং এর সমতুল্য ফলাফল প্রদান করতে পারে DALL-E2 এবং মিডজার্নি. স্থিতিশীলতা এআই এটি উদ্ভাবন করেছে, এবং এটি 22 আগস্ট, 2022-এ সর্বজনীন করা হয়েছিল।
কিন্তু সীমিত স্থানীয় কম্পিউটেশনাল রিসোর্স সহ, স্টেবল ডিফিউশন মডেল উচ্চ-মানের ছবি তৈরি করতে অনেক সময় নেয়। একটি ক্লাউড সরবরাহকারী ব্যবহার করে অনলাইনে মডেলটি চালানো আমাদের প্রায় অসীম গণনামূলক সংস্থান সরবরাহ করে এবং আমাদের আরও দ্রুত চমৎকার ফলাফল অর্জন করতে দেয়।
একটি মাইক্রোসার্ভিস হিসাবে মডেলটিকে হোস্ট করা অন্যান্য সৃজনশীল অ্যাপগুলিকে অনলাইনে ML মডেলগুলি চালানোর জটিলতার সাথে মোকাবিলা না করেই মডেলের সম্ভাবনাকে আরও সহজে কাজে লাগাতে দেয়৷
এই পোস্টে, আমরা কীভাবে একটি স্থিতিশীল প্রসারিত মডেল বিকাশ করতে এবং এটি AWS-এ স্থাপন করতে হয় তা প্রদর্শন করার চেষ্টা করব।
স্থিতিশীল বিস্তার তৈরি করুন এবং স্থাপন করুন
বেন্টোএমএল এবং Amazon Web Services EC2 হল স্থিতিশীল ডিফিউশন মডেল অনলাইন হোস্ট করার জন্য দুটি বিকল্প। BentoML হল স্কেলিং এর জন্য একটি ওপেন সোর্স ফ্রেমওয়ার্ক মেশিন লার্নিং সেবা. BentoML এর সাথে, আমরা একটি নির্ভরযোগ্য বিচ্ছুরণ পরিষেবা তৈরি করব এবং এটিকে AWS EC2 তে স্থাপন করব।
পরিবেশের প্রস্তুতি এবং স্থিতিশীল বিস্তার মডেল ডাউনলোড করুন
প্রয়োজনীয়তা ইনস্টল করুন এবং সংগ্রহস্থল ক্লোন করুন।
আপনি স্ট্যাবল ডিফিউশন মডেলটি নির্বাচন এবং ডাউনলোড করতে পারেন। একক নির্ভুলতা 10GB-এর বেশি VRAM সহ CPUs বা GPU-গুলির জন্য উপযুক্ত৷ অর্ধেক নির্ভুলতা 10GB VRAM-এর কম GPU-এর জন্য আদর্শ।
বিল্ডিং স্থিতিশীল বিস্তার
একটি পিছনে মডেল পরিবেশন করার জন্য আমরা একটি BentoML পরিষেবা তৈরি করব বিশদ API. নিম্নলিখিত উদাহরণটি পূর্বাভাসের জন্য একক নির্ভুলতা মডেল এবং পরিষেবাটিকে ব্যবসায়িক যুক্তিতে সংযুক্ত করতে service.py মডিউল ব্যবহার করে৷ আমরা তাদের @svc.api-এর সাথে ট্যাগ করে API হিসাবে ফাংশনগুলিকে প্রকাশ করতে পারি।
উপরন্তু, আমরা পরামিতিগুলিতে API-এর ইনপুট এবং আউটপুট প্রকারগুলি সংজ্ঞায়িত করতে পারি। txt2img এন্ডপয়েন্ট, উদাহরণস্বরূপ, একটি JSON ইনপুট গ্রহণ করে এবং একটি চিত্র আউটপুট তৈরি করে, যেখানে img2img এন্ডপয়েন্ট একটি চিত্র এবং একটি JSON ইনপুট গ্রহণ করে এবং একটি চিত্র আউটপুট প্রদান করে।
একটি StableDiffusionRunnable অপরিহার্য অনুমান যুক্তি সংজ্ঞায়িত করে। রানেবল মডেলের txt2img পাইপ পদ্ধতি চালানো এবং প্রাসঙ্গিক ইনপুট পাঠানোর দায়িত্বে রয়েছে। API-এ মডেল ইনফারেন্স লজিক চালানোর জন্য, StableDiffusionRunnable থেকে একটি কাস্টম রানার তৈরি করা হয়।
তারপরে, পরীক্ষার জন্য একটি BentoML পরিষেবা শুরু করতে নিম্নলিখিত কমান্ডটি ব্যবহার করুন। স্থানীয়ভাবে চলমান স্থিতিশীল বিস্তার মডেল সিপিইউ-তে অনুমান বরং মন্থর। প্রতিটি অনুরোধ প্রক্রিয়া করতে প্রায় 5 মিনিট সময় লাগবে।
টেক্সট টু ইমেজ
টেক্সট টু ইমেজ আউটপুট
bentofile.yaml ফাইল প্রয়োজনীয় ফাইল এবং নির্ভরতা সংজ্ঞায়িত করে।
একটি বেন্টো তৈরি করতে নীচের কমান্ডটি ব্যবহার করুন। একটি Bento হল একটি BentoML পরিষেবার জন্য বিতরণ বিন্যাস। এটি একটি স্বয়ংসম্পূর্ণ সংরক্ষণাগার যাতে পরিষেবাটি শুরু করার জন্য প্রয়োজনীয় সমস্ত ডেটা এবং কনফিগারেশন থাকে৷
স্টেবল ডিফিউশন বেন্টো সম্পন্ন হয়েছে। আপনি যদি সঠিকভাবে বেন্টো তৈরি করতে অক্ষম হন তবে আতঙ্কিত হবেন না; আপনি পরবর্তী বিভাগে তালিকাভুক্ত কমান্ড ব্যবহার করে পূর্ব-নির্মিত মডেল ডাউনলোড করতে পারেন।
প্রি-বিল্ড মডেল
প্রি-বিল্ড মডেলগুলি নিম্নরূপ:
EC2 এ স্থিতিশীল বিস্তার মডেল স্থাপন করুন
EC2 তে bento স্থাপন করতে, আমরা bentoctl ব্যবহার করব। bentoctl আপনাকে আপনার bentos স্থাপন করতে দিতে পারে মেঘ প্ল্যাটফর্ম Terraform ব্যবহার করে। Terraform ফাইল তৈরি এবং প্রয়োগ করতে, AWS EC2 অপারেটর ইনস্টল করুন।
স্থাপনার config.yaml ফাইলে, স্থাপনাটি ইতিমধ্যেই কনফিগার করা হয়েছে। আপনার প্রয়োজনীয়তা সম্পাদনা করতে নির্দ্বিধায় অনুগ্রহ করে. বেন্টো ডিফল্টরূপে একটি g4dn.xlarge হোস্টের সাথে স্থাপন করা হয় গভীর জ্ঞানার্জন AMI GPU PyTorch 1.12.0 (Ubuntu 20.04) US-west-1 অঞ্চলে AMI।
এখনই টেরাফর্ম ফাইল তৈরি করুন। ডকার ইমেজ তৈরি করুন এবং এটি AWS ECR এ আপলোড করুন। আপনার ব্যান্ডউইথের উপর নির্ভর করে, ছবি আপলোড হতে অনেক সময় লাগতে পারে। AWS EC2 এ বেন্টো স্থাপন করার সময়, Terraform ফাইলগুলি ব্যবহার করুন।
Swagger UI অ্যাক্সেস করতে, EC2 কনসোলের সাথে সংযোগ করুন এবং একটি ব্রাউজারে সর্বজনীন IP ঠিকানাটি খুলুন৷ অবশেষে, যদি স্থিতিশীল ডিফিউশন BentoML পরিষেবার আর প্রয়োজন না হয়, তাহলে স্থাপনা সরিয়ে দিন।
উপসংহার
SD এবং এর সহচর মডেলগুলি কতটা আকর্ষণীয় এবং শক্তিশালী তা আপনি দেখতে সক্ষম হবেন৷ সময়ই বলে দেবে যে আমরা ধারণাটিকে আরও পুনরাবৃত্তি করব নাকি আরও পরিশীলিত পদ্ধতির দিকে এগিয়ে যাব।
যাইহোক, বর্তমানে আশেপাশের পরিস্থিতি এবং নির্দেশাবলী আরও ভালভাবে উপলব্ধি করার জন্য সামঞ্জস্য সহ বড় মডেলদের প্রশিক্ষণের উদ্যোগ চলছে। আমরা BentoML ব্যবহার করে স্থিতিশীল ডিফিউশন পরিষেবা বিকাশ করার চেষ্টা করেছি এবং এটি AWS EC2 এ স্থাপন করেছি।
আমরা আরও শক্তিশালী হার্ডওয়্যারে স্টেবল ডিফিউশন মডেল চালাতে, কম লেটেন্সি সহ ছবি তৈরি করতে এবং AWS EC2 এ পরিষেবাটি স্থাপন করে একটি একক কম্পিউটারের বাইরে প্রসারিত করতে সক্ষম হয়েছি।
নির্দেশিকা সমন্ধে মতামত দিন