Microsoft Agent Framework: মাল্টিমোডাল এজেন্ট
মাল্টিমোডাল এজেন্টগুলো টেক্সটের বাইরেও অনেক কিছু হ্যান্ডেল করতে পারে। তারা ইমেজ এবং PDF প্রসেস করতে পারে।
Microsoft Agent Framework আপনাকে একটি এজেন্ট কলের মাধ্যমে নন-টেক্সট কন্টেন্ট পাস করার সুবিধা দেয়। হোস্ট করা ফাইলের জন্য আপনি UriContent অথবা লোকাল বাইনারি ডেটার জন্য DataContent ব্যবহার করতে পারেন।
ফ্রেমওয়ার্কটি অনেক ধরনের ফাইল টাইপ রিপ্রেজেন্ট করতে পারে। তবে, রিপ্রেজেন্টেশন মানেই সক্ষমতা নয়।
শিপ করার আগে আপনাকে তিনটি বিষয় অবশ্যই যাচাই করতে হবে:
- ফ্রেমওয়ার্কটি কি কন্টেন্টটি রিপ্রেজেন্ট করতে পারে?
- প্রোভাইডার অ্যাডাপ্টার কি সেই কন্টেন্টটি পাঠাতে পারে?
- মডেলটি কি আপনার নির্দিষ্ট কাজের জন্য কন্টেন্টটি বুঝতে পারে?
এই চেইনের কোনো একটি অংশ ব্যর্থ হলে, অ্যাবস্ট্রাকশনটিও ব্যর্থ হবে।
ইমেজ বা ছবি নিয়ে কাজ করা সহজ। আপনি টেক্সট ইনস্ট্রাকশন এবং একটি ইমেজ প্রদান করেন। মডেলটি একটি টেক্সট রেসপন্স প্রদান করে। এটি নিচের ক্ষেত্রগুলোতে ভালো কাজ করে:
- UI রিভিউ
- স্ক্রিনশট ট্রায়াজ
- হাতে লেখা নোট ট্রান্সক্রাইব করা
- সাধারণ চার্ট ব্যাখ্যা করা
PDF বেশ জটিল। একটি PDF কেবল একটি বড় ইমেজ নয়। এতে টেক্সট, টেবিল, ভেক্টর গ্রাফিক্স এবং লেয়ার থাকে।
প্রোভাইডারের ওপর ভিত্তি করে "Read this PDF" এর অর্থ ভিন্ন ভিন্ন হতে পারে। কিছু মডেল টেক্সট দেখতে পায়, আবার কিছু মডেল ভিজ্যুয়াল লেআউট দেখে।
কখন নেটিভ PDF ইনপুট ব্যবহার করবেন:
- ডকুমেন্টটি ছোট হলে।
- উত্তরের জন্য ভিজ্যুয়াল লেআউট গুরুত্বপূর্ণ হলে।
- যদি ডকুমেন্টে বারবার সার্চ করার প্রয়োজন না হয়।
কখন ম্যানুয়াল প্রি-প্রসেসিং ব্যবহার করবেন:
- আপনি যদি অনেক ডকুমেন্ট প্রসেস করেন।
- আপনার যদি রিপিটেবল এক্সট্রাকশন প্রয়োজন হয়।
- আপনার যদি স্টেবল সাইটেশন বা পেজ রেফারেন্স প্রয়োজন হয়।
- আপনার যদি কস্ট এবং ল্যাটেন্সি কন্ট্রোল করার প্রয়োজন হয়।
প্রোডাকশন সিস্টেমের জন্য, "পুরো PDF পাঠানো" কে ডিফল্ট হিসেবে সেট করবেন না।
আপলোড বাউন্ডারির নিয়ন্ত্রণ অ্যাপ্লিকেশনের হাতে থাকা উচিত। অ্যাপ্লিকেশনের যা করা উচিত:
- ইউজারকে অথেন্টিকেট এবং অথরাইজ করা।
- কন্টেন্ট টাইপ ভ্যালিডেট করা।
- অনিরাপদ ফাইলের জন্য স্ক্যান করা।
- অরিজিনাল ফাইলটি স্টোর করা।
- এক্সট্রাক্টেড টেক্সট বা পেজ ইমেজের মতো ডেরিভড আর্টিফ্যাক্ট তৈরি করা।
তারপর, এজেন্টের যা প্রয়োজন শুধুমাত্র সেটুকুই পাস করুন।
আপনার কাজ যদি OCR বা টেবিল স্ট্রাকচারের মতো উচ্চ নির্ভুলতা (high precision) দাবি করে, তবে প্রথমে একটি ডকুমেন্ট প্রসেসিং পাইপলাইন ব্যবহার করুন। এজেন্টকে এক্সট্রাকশন লেয়ারে নয়, বরং এক্সপ্লেনেশন লেয়ারে থাকা উচিত।
এজেন্টকে সরাসরি ফাইলের অ্যাক্সেস দেওয়ার পরিবর্তে তাকে একটি টুল দিন। "InspectDocument"-এর মতো একটি টুল এজেন্টকে র (raw) ইনফ্রাস্ট্রাকচার স্পর্শ না করেই তথ্য চাওয়ার সুযোগ দেয়।
সবশেষে, ফাইল প্রসেসিং সম্পর্কে সবকিছু লগ (log) করুন। শুধুমাত্র উত্তরটি লগ করবেন না। মডেল, ফাইলের সাইজ, পেজ সংখ্যা এবং প্রি-প্রসেসিং পাথ লগ করুন। এটি ছাড়া, একটি ব্যর্থ ভিশন টাস্ক ডিবাগ করা অসম্ভব।
Optional learning community: https://t.me/GyaanSetuAi
