সরাসরি প্রধান সামগ্রীতে চলে যান

মেশিন লার্নিং মডেল AWS ক্লাউডে ডেপ্লয় করার সহজ গাইড

ভূমিকা

আমরা যখন নিজের পিসিতে কোনো মেশিন লার্নিং মডেল বা ওয়েবসাইট তৈরি করি, তখন সেটি শুধু আমাদের কম্পিউটারেই চলে। কিন্তু আমরা যদি চাই যে সারা বিশ্বের মানুষ আমাদের ওয়েবসাইটটি ব্যবহার করবে, তখন আমাদের সেটিকে একটি ক্লাউড সার্ভারে আপলোড করতে হয়। একেই বলা হয় ডেপ্লয়মেন্ট (Deployment)। আজকের আলোচনায় আমরা শিখব কীভাবে একটি তৈরি করা মেশিন লার্নিং প্রজেক্টকে Amazon Web Services (AWS) এর EC2 সার্ভারে সেটআপ করতে হয়।


ভিডিও রেফারেন্স

এই পুরো বিষয়টি হাতে-কলমে শেখার জন্য নিচের ভিডিওটি দেখতে পারেন: Deploy machine learning model to production AWS (Amazon EC2 instance)


১. আর্কিটেকচার বা কাজের কাঠামো

আমাদের এই সিস্টেমে দুটি প্রধান অংশ কাজ করবে:

  • Nginx (এনজিনিক্স): এটি একটি হালকা ও দ্রুত ওয়েব সার্ভার। যখন কেউ ওয়েবসাইটটি ভিজিট করবে, Nginx তাদের HTML, CSS এবং JS ফাইলগুলো দেখাবে।

  • Flask (ফ্লাস্ক): এটি একটি পাইথন সার্ভার যা আমাদের মেশিন লার্নিং মডেলটিকে চালায়। যখন ইউজার কোনো ইনপুট দিয়ে প্রাইস প্রেডিক্ট করতে চাইবে, তখন Nginx সেই রিকোয়েস্টটি এই পাইথন সার্ভারে পাঠিয়ে দেবে।

সহজ ভাষায়: Nginx হলো হোটেলের ওয়েটার, যে ইউজারকে মেনু (ওয়েবসাইট) দেখায়। আর Flask হলো রান্নাঘর, যেখানে আসল কাজ (মডেল প্রেডিকশন) হয়।


২. লোকাল মেশিনে (নিজের পিসিতে) কনফিগারেশন

সরাসরি ক্লাউডে যাওয়ার আগে নিজের পিসিতে পরীক্ষা করা ভালো।

  • Nginx সেটআপ: Nginx ডাউনলোড করে এর কনফিগারেশন ফাইলে (nginx.conf) আপনার ওয়েবসাইটের পাথ সেট করে দিতে হবে। এর ফলে ব্রাউজারে localhost লিখলেই আপনার ওয়েবসাইটটি ওপেন হবে।

  • Reverse Proxy (রিভার্স প্রক্সি): এটি খুব গুরুত্বপূর্ণ। এর মাধ্যমে আমরা বলে দেই যে, যদি ইউজার /api লিখে কিছু সার্চ করে, তবে সেই রিকোয়েস্টটি যেন সরাসরি পোর্ট 5000-এ চলে যায় যেখানে আমাদের ফ্লাস্ক সার্ভার চলছে।

কোডিং কনফিগারেশন (nginx.conf-এ যোগ করতে হবে):

Nginx

location /api/ {
    proxy_pass http://127.0.0.1:5000/;
} 

ব্যাখ্যা: এখানে proxy_pass কমান্ডটি ব্যবহার করে আমরা রিকোয়েস্টটিকে পোর্ট ৫০০০-এ রিডাইরেক্ট (পাঠিয়ে দেওয়া) করছি।


৩. AWS EC2 ক্লাউডে সেটআপ

এবার আমরা একই কাজ ক্লাউডে করব।

  • EC2 Instance তৈরি: AWS কনসোলে গিয়ে একটি Ubuntu ভার্চুয়াল মেশিন তৈরি করতে হবে।

  • SSH কানেকশন: আপনার পিসি থেকে ক্লাউড সার্ভারের সাথে কানেক্ট করার জন্য SSH (সিকিউর সেল) ব্যবহার করতে হয়। এটি অনেকটা পাসওয়ার্ডের মতো কাজ করে যা দিয়ে আপনি নিরাপদে সার্ভারে ঢুকতে পারেন।

  • WinSCP ব্যবহার: আপনার পিসির কোড ফাইলগুলো সার্ভারে পাঠানোর জন্য WinSCP-এর মতো একটি টুল ব্যবহার করা হয়। এটি ড্র্যাগ-অ্যান্ড-ড্রপ করে ফাইল ট্রান্সফার করতে সাহায্য করে।


৪. সার্ভারে সফটওয়্যার ইন্সটল ও রান করা

সার্ভারে সবকিছু ঠিকঠাক কাজ করার জন্য কিছু কমান্ড চালাতে হবে:

১. sudo apt-get update – সিস্টেম আপডেট করার জন্য। ২. sudo apt-get install nginx – সার্ভার ইন্সটল করার জন্য। ৩. pip3 install -r requirements.txt – আপনার প্রজেক্টের প্রয়োজনীয় লাইব্রেরিগুলো ইন্সটল করার জন্য।

সবশেষে python3 server.py কমান্ডটি দিয়ে সার্ভার চালু করলেই আপনার ওয়েবসাইটটি ইন্টারনেটে লাইভ হয়ে যাবে!


বিশ্লেষণ ও পরামর্শ

ক্রিয়েটরের উদ্দেশ্য: এই ভিডিওটির মূল লক্ষ্য হলো একজন ডেভেলপারকে হাতে-কলমে শেখানো যে কীভাবে একটি লোকাল প্রজেক্টকে প্রোডাকশন বা রিয়েল লাইফ ইউজের উপযোগী করা যায়।

বাস্তবতা ও সাজেশন:

  • ডোমেইন নাম: ভিডিওতে দেখানো পদ্ধতিটি ব্যবহার করলে আপনি আইপি (IP) অ্যাড্রেস পাবেন। ওয়েবসাইটকে সুন্দর নাম (যেমন: mysite.com) দিতে চাইলে GoDaddy বা অন্য কোনো জায়গা থেকে ডোমেইন কিনে তা এই আইপি-এর সাথে ম্যাপ করতে হবে।

  • নিরাপত্তা: যখন আপনি বড় কোনো প্রজেক্ট করবেন, তখন শুধু HTTP নয়, বরং HTTPS (SSL সার্টিফিকেট) ব্যবহার করা জরুরি যাতে ডেটা চুরি না হয়।

  • বিকল্প: এখনকার সময়ে AWS EC2 ছাড়াও Render, Heroku, বা Vercel-এর মতো সার্ভিস আছে যেখানে ডেপ্লয়মেন্ট আরও অনেক সহজ। আপনি চাইলে সেগুলোও ট্রাই করতে পারেন।

আপনার শেখার পথে ধৈর্য ধরুন, কারণ সার্ভার কনফিগারেশন প্রথমবার একটু কঠিন মনে হতে পারে। একবার সফলভাবে করতে পারলে এটি আপনার আত্মবিশ্বাস অনেক বাড়িয়ে দেবে!

[

Deploy machine learning model to production AWS (Amazon EC2 instance)

codebasics · 143K views

](http://www.youtube.com/watch?v=q8NOmLD5pTU)

মন্তব্যসমূহ

এই ব্লগটি থেকে জনপ্রিয় পোস্টগুলি

সিজ্জিন (Sijjin) vs ইল্লিয়িন (Illiyin) পার্থক্য Difference

Sijjin (سِجِّين) এবং Illiyin (عِلِّيِّين) —এ দুটি শব্দ কুরআনে এসেছে এবং দুটোই মানুষের আমলনামা সংরক্ষণ সম্পর্কিত স্থানকে নির্দেশ করে। ১. সিজ্জিন (Sijjin) সিজ্জিন হলো পাপীদের (কাফের, মুনাফিক ও দুরাচারীদের) আমলনামা সংরক্ষণের স্থান। এটি সাত তলদেশের নীচে এক কারাগার বা অন্ধকার জগতে অবস্থিত বলে উল্লেখ রয়েছে। সূরা আল-মুতাফফিফীন (৮৩:৭-৯) তে বলা হয়েছে: "كَلَّا إِنَّ كِتَابَ الْفُجَّارِ لَفِي سِجِّينٍ ۝ وَمَا أَدْرَاكَ مَا سِجِّينٌ ۝ كِتَابٌ مَرْقُومٌ" অর্থ: "না, পাপীদের আমলনামা সিজ্জিনে সংরক্ষিত। তুমি কি জানো, সিজ্জিন কী? এটি এক লিখিত দলিল।" সিজ্জিনকে একটি কারাগার, সংকীর্ণ স্থান, বা নিচের স্তরে অবস্থিত এক অন্ধকার দুনিয়া হিসেবে ব্যাখ্যা করা হয়। ২. ইল্লিয়িন (Illiyin) ইল্লিয়িন হলো সৎকর্মশীলদের (মুমিন ও নেককারদের) আমলনামা সংরক্ষণের স্থান । এটি সপ্তম আসমানের ওপরে সংরক্ষিত এক সম্মানিত স্থান। সূরা আল-মুতাফফিফীন (৮৩:১৮-২১) তে বলা হয়েছে: "كَلَّا إِنَّ كِتَابَ الْأَبْرَارِ لَفِي عِلِّيِّينَ ۝ وَمَا أَدْرَاكَ مَا عِلِّيُّونَ ۝ كِتَابٌ مَرْقُومٌ ۝ يَش...

তারাবিহ সমগ্র - প্রথম আলো

রামাদান ২০২৪ উপলক্ষে প্রথম আলোর নিয়মিত আয়োজন - খতমে তারাবিহ'র সূরা গুলো নিয়ে সংক্ষিপ্ত আলোচনা'র লিংক  নিচে দেওয়া হলো।  লিংকে ক্লিক করলেই আপনাকে আলোচনা তে নিয়ে যাবে। তারাবিহ: ১ | একটি খুন ও গাভি নিয়ে বনি ইসরাইলের বাড়াবাড়ি তারাবিহ: ২ | নারীর মর্যাদা ও অধিকার এবং অলৌকিক তিন ঘটনা তারাবিহ: ৩ | যে ১৪ নারীকে বিয়ে করা হারাম তারাবিতে: ১২ | মহানবী (সা.)–এর আকাশভ্রমণ এবং আসহাবে কাহাফের কাহিনি

রেডমি নোট ৯ এর বিস্তারিত | Redmi Note 9 in Bangla

৩০ এপ্রিল, ২০২০ এ শাওমির ঘোষনা আসে এই ফোনটি নিয়ে। কিন্তু ফোনটি মার্কেটে আসে মে মাসের শেষের দিকে৷ করোনার কারনে ফোনটি বাংলাদেশে আসতে আরো সময় নেয়। বর্তমানে বাংলাদেশে আন অফিশিয়াল ভাবে ফোনটি পাওয়া যাচ্ছে৷ বাংলাদেশে অফিশিয়াল ভাবে এখনো ফোনটি আসার তথ্য নেয়৷ চলুন ফোনটি নিয়ে বিস্তারিত আলোচনা করা যাক। শাওমি নোট সিরিজের ফোন বের করে এদের রেডমি নামে সাব ব্যান্ড৷ এদের কাজ হল এই নোট সিরিজ নিয়ে কাজ করা৷ প্রতিবছর নোট সিরিজের ১/২ টা ফোন বাজারে আসে। সাথে সেই ফোন গুলার বিভিন্ন ভার্সন (যেমন - র‍্যাম ও রমের ভিত্তিতে) বাজারে আসে। এই বছরও তারা রেডমি সিরিজের নোট ৯ বাজারে আনে। এই বছর হয়তো এই সিরিজের আরো ফোন বাজারে আসবে। ডিস্পলেঃ ফোনটির ডিসপ্লে সাইজ ৬.৫৩ ইঞ্চি। এতে আইপিএস এলসিডি ডিসপ্লে ব্যবহার করা হয়েছে। এই ফোনের ডিসপ্লে প্রটেকশন হিসেবে আছে গরিলা গ্লাস ফাইভ। স্ক্রিন আর ফোনের বডির অনুপাত প্রায় ৮৩.৫%। এই ফোনের ডিসপ্লে ফুলএইচডি মানে ১০৮০পি। এই ডিস্পলের দৈর্ঘ্য ১৯.৫ একক এবং প্রস্থ হল ৯ একক। এত বড় ফোনের কারনে এই ফোনের পিপি আই ডেনসিটি ৩৯৫। যা একটু কম। প্লাটফর্মঃ এই ফোনের অপারেটিং সিস্টেম এন্ড্রয়েড ১০ এবং এর...