𝗛𝗼𝘄 𝗜 𝗙𝗶𝘅𝗲𝗱 𝗔𝗜 𝗟𝗮𝘁𝗲𝗻𝗰𝘆 𝗪𝗶𝘁𝗵 𝗦𝘁𝗿𝗲𝗮𝗺𝗶𝗻𝗴 𝗮𝗻𝗱 𝗖𝗮𝗰𝗵𝗶𝗻𝗴
আমি একজন ক্লায়েন্টের জন্য একটি চ্যাট অ্যাসিস্ট্যান্ট তৈরি করেছিলাম। এটি খুব একটা ভালো কাজ করছিল না।
ব্যবহারকারীরা প্রশ্ন করতেন। তারা ১৫ সেকেন্ড অপেক্ষা করতেন। তারা একটি খালি স্ক্রিন দেখতেন। তারপর তারা চলে যেতেন। ক্লায়েন্ট অসন্তুষ্ট ছিলেন।
সমস্যাটি AI মডেলের ছিল না। সমস্যাটি ছিল আমার কোডে। ব্যবহারকারীকে কিছু দেখানোর আগে আমি পুরো রেসপন্সের জন্য অপেক্ষা করছিলাম।
আমি বেশ কিছু সমাধানের চেষ্টা করেছি। Async কোনো কাজে আসেনি। শুধুমাত্র হুবহু টেক্সট ক্যাশ করা শুধুমাত্র FAQ-এর ক্ষেত্রে কাজ করেছিল। টোকেন সংখ্যা সীমিত করে দিলে উত্তরগুলো অকেজো হয়ে যাচ্ছিল।
আমি দুটি পদ্ধতির মাধ্যমে এটি সমাধান করেছি।
১. স্ট্রিমিং (Streaming)
বেশিরভাগ AI API স্ট্রিমিং সাপোর্ট করে। পুরো টেক্সট ব্লকের জন্য অপেক্ষা করার পরিবর্তে, আপনি ছোট ছোট চাঙ্ক (chunks) পান। এগুলো আসার সাথে সাথেই আপনি দেখাতে পারেন।
প্রথম শব্দটি ৩০০ মিলি-সেকেন্ডের মধ্যে চলে আসে। পুরো উত্তরের জন্য তখনও সময় লাগে, কিন্তু ব্যবহারকারী তাৎক্ষণিকভাবে অগ্রগতি দেখতে পান। এটি ব্যবহারকারীদের যুক্ত রাখে।
২. সিম্যান্টিক ক্যাশিং (Semantic Caching)
ব্যবহারকারীরা প্রায়ই একই ধরনের প্রশ্ন করেন। আমি এমন একটি ক্যাশ তৈরি করেছি যা অর্থের (meaning) ওপর ভিত্তি করে কাজ করে।
আমি sentence embeddings এবং একটি vector database ব্যবহার করি। API কল করার আগে, আমি পরীক্ষা করে দেখি যে আমার ক্যাশে একই ধরনের কোনো প্রশ্ন আছে কি না।
যদি মিল পাওয়া যায়, তবে আমি ১০ মিলি-সেকেন্ডের মধ্যে উত্তরটি দিয়ে দিই। এর ফলে আমার ৩০% ব্যবহারকারীর জন্য API কল করার প্রয়োজন আর থাকে না।
ফলাফল:
• স্ট্রিমিং রিয়েল-টাইম অগ্রগতি দেখানোর মাধ্যমে ব্যবহারকারীর অভিজ্ঞতা উন্নত করে। • সিম্যান্টিক ক্যাশিং খরচ কমায় এবং একই ধরনের প্রশ্নের ক্ষেত্রে ল্যাটেন্সি কমিয়ে দেয়।
ট্রেড-অফ (Trade-offs):
• স্ট্রিমিং আপনার ব্যাকএন্ডকে আরও জটিল করে তোলে। আপনাকে ওপেন কানেকশনগুলো ম্যানেজ করতে হবে। • ক্যাশিংয়ের জন্য অতিরিক্ত হার্ডওয়্যার বা ভেক্টর ডেটাবেসের মতো সফটওয়্যার প্রয়োজন। • ক্যাশ থ্রেশহোল্ড (threshold) সেট করা কঠিন। থ্রেশহোল্ড খুব বেশি হলে আপনি মিল খুঁজে পাবেন না। আর খুব কম হলে ভুল উত্তর দিয়ে ফেলবেন।
ধীরগতির জন্য AI মডেলকে দোষ দেওয়া বন্ধ করুন। আপনি কীভাবে ডেটা হ্যান্ডেল করছেন সেদিকে নজর দিন।
ঐচ্ছিক লার্নিং কমিউনিটি: https://t.me/GyaanSetuAi