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

কিভাবে এআই (AI) দিয়ে একটি রেকমেন্ডেশন ইঞ্জিন তৈরি করবেন

ভিডিওটি দেখার জন্য এখানে ক্লিক করুন: How to Build an AI Recommendation Engine

Introduction

আজকাল আমরা ইউটিউব বা নেটফ্লিক্সে যখন কিছু দেখি, তখন তারা আমাদের পছন্দের সাথে মিল রেখে আরও কিছু ভিডিও সাজেস্ট করে। এটাকে বলা হয় Recommendation Engine। এই ভিডিওতে মিলান জোভানোভিচ দেখিয়েছেন কীভাবে এআই (AI) এবং মঙ্গোডিবি (MongoDB) ডাটাবেস ব্যবহার করে আপনি নিজের ওয়েবসাইট বা অ্যাপের জন্য এইরকম একটি সিস্টেম বানাতে পারেন। বিশেষ করে যারা .NET ডেভেলপার, তাদের জন্য এটি দারুণ একটি টিউটোরিয়াল।


Topic 1: ভেক্টর এম্বেডিং (Vector Embedding) কী?

সিস্টেমটি বোঝার জন্য আগে জানতে হবে এআই কীভাবে টেক্সট বোঝে। এআই সরাসরি ভাষা বোঝে না, সে ভাষাকে সংখ্যায় রূপান্তর করে।

বিস্তারিত: যখন আপনি কোনো ব্লগ পোস্ট বা আর্টকেল ডাটাবেসে রাখেন, এআই একটি মডেল ব্যবহার করে সেই টেক্সটকে একগুচ্ছ সংখ্যায় (Array of numbers) রূপান্তর করে। একেই বলে Vector Embedding। এর ফলে এআই বুঝতে পারে কোন আর্টিকেলের সাথে কোনটির মিল আছে। ধরুন, দুটি আর্টিকেলই 'Docker' নিয়ে লেখা, তাহলে তাদের সংখ্যার মানগুলো কাছাকাছি হবে।

  • সহজ ব্যাখ্যা (Difficult Word - Vector Embedding): মনে করুন, আপনার কাছে অনেকগুলো ফলের ছবি আছে। আপনি সেগুলোকে রঙ আর আকার অনুযায়ী আলাদা করলেন। এআই ঠিক এইভাবেই টেক্সটকে তার "অর্থের" ওপর ভিত্তি করে গাণিতিক মান দেয়, যাতে মিল খুঁজে পাওয়া সহজ হয়।

Topic 2: ডাটাবেস হিসেবে MongoDB এবং Voyage AI ব্যবহার

ভিডিওতে ডাটাবেস হিসেবে MongoDB ব্যবহার করা হয়েছে কারণ এতে 'Vector Search' করার ইন-বিল্ট সুবিধা আছে। আর এম্বেডিং তৈরির জন্য ব্যবহার করা হয়েছে Voyage 4 মডেল।

রেফারেন্স: [03:00]

বিস্তারিত: এখানে কয়েকটি মডেলের কথা বলা হয়েছে: Voyage 4 Large, Light, এবং Nano।

  • Nano: এটি খুব হালকা, যা আপনি নিজের কম্পিউটারে ডেভেলপমেন্টের সময় চালাতে পারবেন।

  • Shared Embedding Space: এর মানে হলো আপনি বড় মডেল দিয়ে ডাটা সেভ করলেন আর ছোট মডেল দিয়ে সার্চ করলেন, তবুও কাজ করবে। এতে খরচ কমে এবং গতি বাড়ে।


Topic 3: কোডিং এর মাধ্যমে এম্বেডিং জেনারেট করা

এখানে দেখানো হয়েছে কীভাবে .NET অ্যাপ্লিকেশন ব্যবহার করে একটি ব্লগের ইউআরএল (URL) থেকে কন্টেন্ট নিয়ে সেটার এম্বেডিং তৈরি করে MongoDB-তে সেভ করতে হয়।

কোড উদাহরণ:

C#

// Voyage 4 Nano মডেল ব্যবহার করে এম্বেডিং তৈরি
var articleContent = "আপনার ব্লগের লেখা এখানে থাকবে";
var embedding = await embeddingGenerator.GenerateAsync(articleContent);

// MongoDB তে সেভ করার জন্য অবজেক্ট তৈরি
var article = new Article 
{
    Url = "https://example.com/blog-post",
    Title = "AI কীভাবে কাজ করে",
    Content = articleContent,
    Embedding = embedding.ToArray() // সংখ্যাগুলোকে অ্যারে হিসেবে রাখা হচ্ছে
};

await collection.InsertOneAsync(article); 

ব্যাখ্যা: এই কোডটি আপনার ব্লগের লেখাকে এআই মডেলের কাছে পাঠায়। মডেলটি সেই লেখা পড়ে একগুচ্ছ সংখ্যা (Vector) ফেরত দেয়, যা আমরা পরে ডাটাবেসে সেভ করি।


Topic 4: ভেক্টর সার্চ (Vector Search) ও রেকমেন্ডেশন

আসল ম্যাজিক ঘটে এখানে। যখন কেউ একটি আর্টিকেল পড়ছে, তখন সিস্টেম তার সাথে মিল আছে এমন আরও ৩টি আর্টিকেল খুঁজে বের করে।

রেফারেন্স: [22:20]

বিস্তারিত: সার্চ করার সময় Exact Nearest Neighbor অথবা Approximate Nearest Neighbor পদ্ধতি ব্যবহার করা যায়।

  • Exact: এটি পুরো ডাটাবেস খুঁজে সবচেয়ে নিখুঁত রেজাল্ট দেয় (একটু ধীরগতি)।

  • Approximate: এটি দ্রুত কাজ করে কিন্তু মাঝেমধ্যে একদম নিখুঁত না হলেও কাছাকাছি রেজাল্ট দেয়।

ফিল্টারিং এর গুরুত্ব: [24:50] সার্চ করার সময় একটি সমস্যা হতে পারে—সিস্টেম আপনাকে ওই একই আর্টিকেল রেকমেন্ড করতে পারে যেটা আপনি এখন পড়ছেন। এটা এড়ানোর জন্য কোডে একটি 'Filter' যোগ করতে হয় যাতে বর্তমান আর্টিকেলের টাইটেল বাদ দিয়ে বাকিগুলো দেখানো হয়।


Analysis & My Thinking

কন্টেন্ট ক্রিয়েটর এখানে খুব সহজভাবে বুঝিয়েছেন যে এআই মানেই শুধু চ্যাটবট নয়, এটি দিয়ে ব্যাকএন্ডে অনেক দরকারি কাজ করা যায়।

আমার বিশ্লেষণ ও সম্ভাবনা: ১. বাস্তব প্রয়োগ: আপনি যদি একটি ই-কমার্স সাইট বানান, তবে কাস্টমার যে পণ্যটি দেখছে তার সাথে মিল রেখে 'Similar Products' দেখাতে এই প্রযুক্তি সেরা। ২. বিকল্প: MongoDB ছাড়াও Pinecone বা Milvus এর মতো স্পেশালাইজড ভেক্টর ডাটাবেস ব্যবহার করা যায়। তবে আপনি যদি অলরেডি মঙ্গোডিবি ব্যবহার করেন, তবে নতুন কিছু শেখার চেয়ে এটিই সহজ সমাধান। ৩. পরামর্শ: শুরুতে Voyage Nano বা Olama ব্যবহার করে লোকাল মেশিনে প্র্যাকটিস করা উচিত। এতে এপিআই (API) কল করার বাড়তি খরচ লাগবে না।

উপসংহার: এই সিস্টেমটি ব্যবহার করে আপনি আপনার অ্যাপ্লিকেশনে ইউজারের পছন্দ অনুযায়ী কন্টেন্ট সাজেস্ট করতে পারবেন, যা ইউজারকে আপনার প্ল্যাটফর্মে বেশিক্ষণ ধরে রাখতে সাহায্য করবে। Stay Awesome!

[

How to Build an AI Recommendation Engine (That Actually Works)

Milan Jovanović · 5.6K views

](http://www.youtube.com/watch?v=gBCtUifA9-I)

মন্তব্যসমূহ

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

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

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

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

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

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

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