AWS গ্রাহকরা তাদের ক্লাউড অবকাঠামো ডিজাইন, বিকাশ এবং পরিচালনা করতে কোড (IaC) হিসাবে অবকাঠামোর উপর নির্ভর করছে। IaC নিশ্চিত করে যে গ্রাহক পরিকাঠামো এবং পরিষেবাগুলি সামঞ্জস্যপূর্ণ, স্কেলযোগ্য এবং পুনরুত্পাদনযোগ্য, পাশাপাশি উন্নয়ন ক্রিয়াকলাপের ক্ষেত্রে (DevOps) সর্বোত্তম অনুশীলনগুলি অনুসরণ করতে সক্ষম।
IaC এর সাথে AWS পরিকাঠামো এবং পরিষেবাগুলি পরিচালনা করার একটি সম্ভাব্য পদ্ধতি হল Terraform, যা ডেভেলপারদের পুনরায় ব্যবহারযোগ্য কোড মডিউলে তাদের পরিকাঠামো সংগঠিত করতে দেয়। মেশিন লার্নিং (এমএল) এর ক্ষেত্রে এই দিকটি ক্রমশ গুরুত্ব পাচ্ছে। IaC হিসাবে Terraform-এর সাথে প্রশিক্ষণ এবং অনুমান সহ ML পাইপলাইনগুলির বিকাশ এবং পরিচালনা করা, আপনাকে স্ক্র্যাচ থেকে পরিকাঠামো বিকাশ না করেই একাধিক ML ব্যবহারের ক্ষেত্রে বা অঞ্চলগুলির জন্য সহজেই স্কেল করতে দেয়৷ তদ্ব্যতীত, এটি এমএল পাইপলাইনের বিভিন্ন বাস্তবায়ন জুড়ে প্রশিক্ষণ এবং অনুমানের জন্য অবকাঠামো (উদাহরণস্বরূপ, উদাহরণের ধরন এবং আকার) জন্য ধারাবাহিকতা প্রদান করে। এটি আপনাকে রুট অনুরোধ এবং আগত ট্র্যাফিককে ভিন্ন করতে দেয় আমাজন সেজমেকার শেষ পয়েন্ট
এই পোস্টে, আমরা আপনাকে দেখাব কিভাবে Terraform এবং Amazon SageMaker ব্যবহার করে ML পাইপলাইন স্থাপন ও পরিচালনা করতে হয়।
সমাধান ওভারভিউ
এই পোস্টটি কোড প্রদান করে এবং Amazon SageMaker ব্যবহার করে মডেল প্রশিক্ষণ এবং অনুমানের জন্য Terraform সহ ML পাইপলাইনগুলির জন্য AWS পরিকাঠামো স্থাপনের প্রয়োজনীয় পদক্ষেপগুলির মধ্য দিয়ে চলে। এমএল পাইপলাইন এর মাধ্যমে পরিচালিত হয় এডাব্লুএস স্টেপ ফাংশন ML পাইপলাইনে বাস্তবায়িত বিভিন্ন পদক্ষেপগুলি অর্কেস্ট্রেট করতে, যেমনটি নিম্নলিখিত চিত্রে চিত্রিত হয়েছে।
ধাপ ফাংশন একটি শুরু হয় এডাব্লুএস ল্যাম্বদা ফাংশন, একটি অনন্য কাজের আইডি তৈরি করে, যেটি সেজমেকার প্রশিক্ষণের কাজ শুরু করার সময় ব্যবহৃত হয়। স্টেপ ফাংশন একটি মডেল, এন্ডপয়েন্ট কনফিগারেশন এবং অনুমানের জন্য ব্যবহৃত এন্ডপয়েন্ট তৈরি করে। অতিরিক্ত সম্পদ নিম্নলিখিত অন্তর্ভুক্ত:
- এডাব্লুএস আইডেন্টিটি এবং অ্যাক্সেস ম্যানেজমেন্ট (IAM) roles and policies attached to the resources in order to enable interaction with other resources
- আমাজন সিম্পল স্টোরেজ সার্ভিস (Amazon S3) buckets for training data and model output
- An অ্যামাজন ইলাস্টিক কনটেইনার রেজিস্ট্রি (Amazon ECR) repository for the ডকশ্রমিক image containing the training and inference logic
একটি ডকার ইমেজ সহ প্রশিক্ষণ এবং অনুমানের জন্য এমএল-সম্পর্কিত কোড প্রধানত নিম্নলিখিত বিদ্যমান কাজের উপর নির্ভর করে GitHub সংগ্রহস্থল.
নিম্নলিখিত চিত্রটি সমাধান আর্কিটেকচারকে চিত্রিত করে:
আমরা আপনাকে নিম্নোক্ত উচ্চ-স্তরের পদক্ষেপের মধ্য দিয়ে চলেছি:
- Terraform এর সাথে আপনার AWS পরিকাঠামো স্থাপন করুন।
- আপনার ডকার ইমেজ অ্যামাজন ইসিআর-এ পুশ করুন।
- এমএল পাইপলাইন চালান।
- আপনার শেষ বিন্দু আহ্বান করুন.
সংগ্রহস্থল কাঠামো
আপনি নিম্নলিখিত কোড এবং এই পোস্টের জন্য ব্যবহৃত ডেটা ধারণকারী সংগ্রহস্থল খুঁজে পেতে পারেন GitHub সংগ্রহস্থল.
সংগ্রহস্থল নিম্নলিখিত ডিরেক্টরি অন্তর্ভুক্ত:
/terraform
- নিম্নলিখিত সাবফোল্ডার নিয়ে গঠিত:./infrastructure
- ML পাইপলাইন মডিউল কল করার main.tf ফাইল রয়েছে, পরিবর্তনশীল ঘোষণাগুলি ছাড়াও যা আমরা পরিকাঠামো স্থাপন করতে ব্যবহার করি./ml-pipeline-module
- Terraform ML পাইপলাইন মডিউল রয়েছে, যা আমরা পুনরায় ব্যবহার করতে পারি
/src
- নিম্নলিখিত সাবফোল্ডার নিয়ে গঠিত:./container
- ডকার চিত্রের সংজ্ঞা সহ প্রশিক্ষণ এবং অনুমানের জন্য উদাহরণ কোড রয়েছে./lambda_function
- ল্যাম্বডা ফাংশন তৈরির কনফিগারেশনের জন্য পাইথন কোড রয়েছে, যেমন সেজমেকার প্রশিক্ষণ কাজের জন্য একটি অনন্য কাজের আইডি
/data
- নিম্নলিখিত ফাইল ধারণ করে:./iris.csv
- এমএল মডেল প্রশিক্ষণের জন্য ডেটা রয়েছে
পূর্বশর্ত
এই ওয়াকথ্রুটির জন্য, আপনার নিম্নলিখিত পূর্বশর্তগুলি থাকা উচিত:
- একটি AWS অ্যাকাউন্ট
- Terraform সংস্করণ 0.13.5 বা তার বেশি
- এডাব্লুএস কমান্ড লাইন ইন্টারফেস (AWS CLI) v2
- পাইথন 3.7 বা আরও বড়
- ডকশ্রমিক
Terraform এর সাথে আপনার AWS পরিকাঠামো স্থাপন করুন
এমএল পাইপলাইন স্থাপন করতে, আপনাকে আপনার প্রয়োজন অনুযায়ী কয়েকটি ভেরিয়েবল এবং নাম সামঞ্জস্য করতে হবে। এই ধাপের জন্য কোড আছে /terraform
ডিরেক্টরি.
প্রথমবার আরম্ভ করার সময়, ফাইলটি খুলুন terraform/infrastructure/terraform.tfvars
এবং পরিবর্তনশীল সামঞ্জস্য করুন প্রকল্পের নাম ভেরিয়েবল ছাড়াও আপনার প্রকল্পের নামে এলাকা আপনি যদি অন্য অঞ্চলে স্থাপন করতে চান। আপনি অতিরিক্ত ভেরিয়েবল যেমন প্রশিক্ষণ এবং অনুমানের জন্য উদাহরণ প্রকার পরিবর্তন করতে পারেন।
তারপর Terraform এর সাথে পরিকাঠামো স্থাপন করতে নিম্নলিখিত কমান্ডগুলি ব্যবহার করুন:
আউটপুট পরীক্ষা করুন এবং নিশ্চিত করুন যে পরিকল্পিত সংস্থানগুলি সঠিকভাবে প্রদর্শিত হবে এবং সবকিছু সঠিক হলে প্রয়োগের পর্যায়ে হ্যাঁ দিয়ে নিশ্চিত করুন। তারপর Amazon ECR কনসোলে যান (বা টার্মিনালে Terraform এর আউটপুট চেক করুন) এবং আপনার ECR সংগ্রহস্থলের URLটি পান যা আপনি Terraform এর মাধ্যমে তৈরি করেছেন।
আউটপুটটি ECR সংগ্রহস্থলের URL সহ নিম্নলিখিত প্রদর্শিত আউটপুটের অনুরূপ হওয়া উচিত:
আপনার ডকার ইমেজ অ্যামাজন ইসিআর-এ পুশ করুন
এমএল পাইপলাইন এবং সেজমেকারকে প্রশিক্ষণ দেওয়ার জন্য এবং অনুমানের জন্য একটি সেজমেকার এন্ডপয়েন্ট সরবরাহ করার জন্য, আপনাকে একটি ডকার ইমেজ প্রদান করতে হবে এবং এটি অ্যামাজন ইসিআর-এ সংরক্ষণ করতে হবে। আপনি ডিরেক্টরিতে একটি উদাহরণ খুঁজে পেতে পারেন src/container
. আপনি যদি পূর্ববর্তী ধাপ থেকে ইতিমধ্যেই AWS পরিকাঠামো প্রয়োগ করে থাকেন, তাহলে বর্ণনা অনুযায়ী আপনি ডকার ইমেজটি পুশ করতে পারেন। আপনার ডকার ইমেজ বিকশিত হওয়ার পরে, আপনি নিম্নলিখিত পদক্ষেপগুলি নিতে পারেন এবং এটিকে অ্যামাজন ইসিআর-এ ঠেলে দিতে পারেন (আপনার প্রয়োজন অনুসারে অ্যামাজন ইসিআর URL সামঞ্জস্য করুন):
আপনি যদি ইতিমধ্যেই টেরাফর্মের সাথে AWS পরিকাঠামো প্রয়োগ করে থাকেন, তাহলে আপনি আবার Terraform এর মাধ্যমে স্থাপন না করেই আপনার কোড এবং ডকার ইমেজের পরিবর্তন সরাসরি Amazon ECR-তে পুশ করতে পারেন।
এমএল পাইপলাইন চালান
ML পাইপলাইন প্রশিক্ষণ ও চালানোর জন্য, স্টেপ ফাংশন কনসোলে যান এবং বাস্তবায়ন শুরু করুন। আপনি স্টেট মেশিনের ভিজ্যুয়ালাইজেশনের প্রতিটি ধাপের অগ্রগতি পরীক্ষা করতে পারেন। আপনি সেজমেকার প্রশিক্ষণ কাজের অগ্রগতি এবং আপনার সেজমেকার শেষ পয়েন্টের অবস্থাও পরীক্ষা করতে পারেন।
স্টেপ ফাংশনে স্টেট মেশিন সফলভাবে চালানোর পর, আপনি দেখতে পাবেন যে সেজমেকার এন্ডপয়েন্ট তৈরি করা হয়েছে। সেজমেকার কনসোলে, নির্বাচন করুন অনুমিতি নেভিগেশন ফলকে, তারপর সমাপ্তি. InService-এ স্থিতি পরিবর্তন করার জন্য অপেক্ষা করা নিশ্চিত করুন।
আপনার শেষ বিন্দু আহ্বান করুন
আপনার এন্ডপয়েন্ট চালু করতে (এই উদাহরণে, আইরিস ডেটাসেটের জন্য), আপনি নিম্নলিখিত পাইথন স্ক্রিপ্টটি ব্যবহার করতে পারেন Python (Boto3) এর জন্য AWS SDK. আপনি একটি SageMaker নোটবুক থেকে এটি করতে পারেন, বা একটি Lambda ফাংশনে নিম্নলিখিত কোড স্নিপেট এম্বেড করতে পারেন:
পরিষ্কার কর
আপনি টেরাফর্ম ধ্বংস কমান্ড দিয়ে টেরাফর্ম দ্বারা তৈরি অবকাঠামো ধ্বংস করতে পারেন, তবে আপনাকে প্রথমে S3 বাকেটের ডেটা এবং ফাইলগুলি মুছতে হবে। উপরন্তু, সেজমেকার এন্ডপয়েন্ট (অথবা একাধিক সেজমেকার এন্ডপয়েন্ট একাধিকবার চালানো হলে) স্টেপ ফাংশনের মাধ্যমে তৈরি করা হয় এবং টেরাফর্মের মাধ্যমে পরিচালিত হয় না। এর মানে হল যে ডিপ্লয়মেন্ট ঘটে যখন স্টেপ ফাংশন সহ ML পাইপলাইন চালানো হয়। অতএব, নিশ্চিত করুন যে আপনি অপ্রয়োজনীয় খরচ এড়াতে স্টেপ ফাংশন ML পাইপলাইনের মাধ্যমে তৈরি সেজমেকার এন্ডপয়েন্ট বা এন্ডপয়েন্ট মুছে ফেলেছেন। নিম্নলিখিত পদক্ষেপগুলি সম্পূর্ণ করুন:
- Amazon S3 কনসোলে, S3 ট্রেনিং বাকেটের ডেটাসেট মুছুন।
- S3 মডেলের বালতিতে ML পাইপলাইনের মাধ্যমে প্রশিক্ষিত সমস্ত মডেল মুছুন, হয় Amazon S3 কনসোল বা AWS CLI এর মাধ্যমে।
- Terraform এর মাধ্যমে তৈরি অবকাঠামো ধ্বংস করুন:
- SageMaker এন্ডপয়েন্ট, এন্ডপয়েন্ট কনফিগারেশন এবং স্টেপ ফাংশনের মাধ্যমে তৈরি মডেলগুলি মুছুন, সেজমেকার কনসোলে বা AWS CLI-এর মাধ্যমে।
উপসংহার
অভিনন্দন! আপনি Terraform এর সাথে SageMaker ব্যবহার করে একটি ML পাইপলাইন স্থাপন করেছেন। এই উদাহরণ সমাধানটি দেখায় কিভাবে আপনি সহজেই পুনরায় ব্যবহারযোগ্য ফ্যাশনে ML পাইপলাইনের জন্য AWS পরিকাঠামো এবং পরিষেবা স্থাপন করতে পারেন। এটি আপনাকে একাধিক ব্যবহারের ক্ষেত্রে বা অঞ্চলগুলির জন্য স্কেল করার অনুমতি দেয় এবং সামঞ্জস্যপূর্ণ উপায়ে এক ক্লিকে প্রশিক্ষণ এবং এমএল মডেলগুলি স্থাপন করতে সক্ষম করে৷ উপরন্তু, আপনি একাধিকবার ML পাইপলাইন চালাতে পারেন, উদাহরণস্বরূপ, যখন নতুন ডেটা পাওয়া যায় বা আপনি অ্যালগরিদম কোড পরিবর্তন করতে চান। আপনি বিভিন্ন সেজমেকার এন্ডপয়েন্টে রুট অনুরোধ বা ট্র্যাফিক বেছে নিতে পারেন।
আমি আপনাকে নিরাপত্তা বৈশিষ্ট্য যোগ করার জন্য এবং আপনার চাহিদা এবং সম্ভাব্য কোম্পানির মান অনুযায়ী নিরাপত্তার সর্বোত্তম অনুশীলনগুলি অন্বেষণ করতে উত্সাহিত করি৷ উপরন্তু, আপনার CI/CD পাইপলাইনগুলিতে এই সমাধানটি এম্বেড করা আপনাকে আপনার প্রয়োজনীয়তা অনুসারে DevOps সেরা অনুশীলন এবং মানগুলি গ্রহণ এবং প্রতিষ্ঠা করার আরও ক্ষমতা দেবে।
লেখক সম্পর্কে
অলিভার জোলিকোফার আমাজন ওয়েব সার্ভিসের একজন ডেটা সায়েন্টিস্ট। তিনি গ্লোবাল এন্টারপ্রাইজ গ্রাহকদের মেশিন লার্নিং মডেল তৈরি, প্রশিক্ষণ এবং স্থাপন করতে সক্ষম করে, সেইসাথে MLOps-এর সাথে ML মডেল জীবনচক্র পরিচালনা করতে। আরও, তিনি ক্লাউড সলিউশন তৈরি এবং স্থপতি করেন।
- Coinsmart. ইউরোপের সেরা বিটকয়েন এবং ক্রিপ্টো এক্সচেঞ্জ।
- প্লেটোব্লকচেন। Web3 মেটাভার্স ইন্টেলিজেন্স। জ্ঞান প্রসারিত. বিনামূল্যে এক্সেস.
- ক্রিপ্টোহক। Altcoin রাডার। বিনামূল্যে ট্রায়াল.
- Source: https://aws.amazon.com/blogs/machine-learning/deploy-and-manage-machine-learning-pipelines-with-terraform-using-amazon-sagemaker/
- "
- 100
- 7
- প্রবেশ
- অনুযায়ী
- দিয়ে
- স্টক
- যোগ
- অতিরিক্ত
- অ্যালগরিদম
- সব
- ইতিমধ্যে
- মর্দানী স্ত্রীলোক
- অ্যামাজন ওয়েব সার্ভিসেস
- অন্য
- অভিগমন
- স্থাপত্য
- এলাকায়
- সহজলভ্য
- ডেস্কটপ AWS
- হচ্ছে
- সর্বোত্তম
- সেরা অভ্যাস
- শরীর
- সীমান্ত
- নির্মাণ করা
- তৈরী করে
- ক্ষমতা
- মামলা
- CD
- পরিবর্তন
- বেছে নিন
- মেঘ
- মেঘ অবকাঠামো
- কোড
- কোম্পানি
- কনফিগারেশন
- কনসোল
- আধার
- ধারণ
- খরচ
- নির্মিত
- সৃষ্টি
- ক্রেতা
- গ্রাহকদের
- উপাত্ত
- তথ্য বিজ্ঞানী
- স্থাপন
- মোতায়েন
- মোতায়েন
- বিস্তৃতি
- বর্ণিত
- নকশা
- ধ্বংস
- বিনষ্ট
- বিকাশ
- উন্নত
- ডেভেলপারদের
- উন্নয়নশীল
- উন্নয়ন
- বিভিন্ন
- সরাসরি
- ডকশ্রমিক
- সহজে
- সক্ষম করা
- উত্সাহিত করা
- শেষপ্রান্ত
- উদ্যোগ
- সব
- উদাহরণ
- বিদ্যমান
- অন্বেষণ করুণ
- ফ্যাশন
- বৈশিষ্ট্য
- ব্যক্তিত্ব
- প্রথম
- প্রথমবার
- অনুসরণ করা
- অনুসরণ
- ক্রিয়া
- অধিকতর
- উৎপাদিত
- বিশ্বব্যাপী
- জমিদারি
- কিভাবে
- কিভাবে
- HTTPS দ্বারা
- পরিচয়
- ভাবমূর্তি
- বাস্তবায়ন
- বাস্তবায়িত
- গুরুত্ব
- অন্তর্ভুক্ত করা
- অন্তর্ভুক্ত
- সুদ্ধ
- ক্রমবর্ধমানভাবে
- পরিকাঠামো
- ইনপুট
- মিথষ্ক্রিয়া
- IT
- কাজ
- সর্বশেষ
- শিক্ষা
- লাইন
- মেশিন
- মেশিন লার্নিং
- পরিচালনা করা
- পরিচালিত
- পরিচালক
- ML
- মডেল
- মডেল
- বহু
- নাম
- ন্যাভিগেশন
- প্রয়োজনীয়
- নোটবই
- খোলা
- অপারেশনস
- ক্রম
- অন্যান্য
- নীতি
- সম্ভব
- সম্ভাব্য
- প্রকল্প
- প্রদান
- উপলব্ধ
- সংগ্রহস্থলের
- অনুরোধ
- অনুরোধ
- আবশ্যকতা
- Resources
- প্রতিক্রিয়া
- রুট
- চালান
- দৌড়
- মাপযোগ্য
- স্কেল
- বিজ্ঞানী
- SDK
- নিরাপত্তা
- সেবা
- অনুরূপ
- সহজ
- আয়তন
- কঠিন
- সমাধান
- সলিউশন
- পর্যায়
- মান
- শুরু
- শুরু
- রাষ্ট্র
- অবস্থা
- স্টোরেজ
- দোকান
- সফলভাবে
- প্রান্তিক
- অতএব
- দ্বারা
- সময়
- ট্রাফিক
- প্রশিক্ষণ
- অনন্য
- ব্যবহার
- কল্পনা
- অপেক্ষা করুন
- ওয়েব
- ওয়েব সার্ভিস
- যখন
- ছাড়া
- হয়া যাই ?