প্রকল্প সম্পর্কে
PaperQA2 হলো একটি ওপেন-সোর্স পাইথন প্যাকেজ এবং CLI টুল, যা বৈজ্ঞানিক সাহিত্য এবং অন্যান্য নথি প্রকারের উপর উচ্চ-নির্ভুলতা রিট্রিভাল অগমেন্টেড জেনারেশন (RAG)-এর জন্য ডিজাইন করা হয়েছে। এটি PDF, সাধারণ টেক্সট, মার্কডাউন, HTML, মাইক্রোসফট অফিস ফাইল (docx, xlsx, pptx) এবং সোর্স কোড ফাইল গ্রহণ করে, তারপর নির্দিষ্ট পৃষ্ঠা এবং অনুচ্ছেদের দিকে নির্দেশিত গ্রাউন্ডেড, ইন-টেক্সট উদ্ধৃতিসহ ব্যবহারকারীর প্রশ্নের উত্তর দেয়।
সিস্টেমটি একটি তিন-দফা এজেন্টিক ওয়ার্কফ্লো অনুসরণ করে: (১) পেপার সার্চ, যেখানে একটি LLM প্রার্থী পেপার খুঁজে পেতে কীওয়ার্ড ক্যুয়েরি তৈরি করে এবং একটি লোকাল ফুল-টেক্সট সার্চ ইনডেক্সে চান্ক করে; (২) গ্যাদার এভিডেন্স, যেখানে ক্যুয়েরি এমবেড করা হয়, টপ-কে চান্কগুলো র্যাঙ্ক করা হয়, প্রতিটি চান্ককে প্রেক্ষাপটে সারসংক্ষেপ করা হয় এবং একটি LLM সবচেয়ে প্রাসঙ্গিক সারসংক্ষেপগুলো পুনরায় স্কোর ও নির্বাচন করে; (৩) জেনারেট আনসার, যেখানে সেরা সারসংক্ষেপগুলো একটি প্রম্পটে স্থাপন করা হয় এবং একটি উত্তর তৈরি করা হয়। একটি ভাষা এজেন্ট এই টুলগুলো যেকোনো ক্রমে ইনভোক করতে পারে, যা ক্যুয়েরি এবং উত্তরগুলোর পুনরাবৃত্তিমূলক পরিমার্জনকে সক্ষম করে।
মূল বৈশিষ্ট্যগুলোর মধ্যে রয়েছে Semantic Scholar, Crossref এবং Unpaywall থেকে স্বয়ংক্রিয় মেটাডেটা আনা (উদ্ধৃতি সংখ্যা এবং রিট্র্যাকশন চেকসহ), ডকুমেন্ট মেটাডেটা-সচেতন এমবেডিং, LLM-ভিত্তিক রি-র্যাঙ্কিং এবং কনটেক্সচুয়াল সারসংক্ষেপ (RCS), এবং একটি শক্তিশালী কাস্টমাইজেশন ইন্টারফেস। ডিফল্ট স্ট্যাকটি একটি Numpy ভেক্টর ডেটাবেসের সাথে OpenAI এমবেডিং এবং মডেল ব্যবহার করে, কিন্তু PaperQA2 LiteLLM-এর সাথে একীভূত হয় যাতে প্রায় যেকোনো LLM প্রোভাইডার, যেমন Claude, Gemini এবং llama.cpp-এর মাধ্যমে লোকালি হোস্ট করা মডেলগুলো সমর্থন করা যায়। Sentence Transformers-এর মাধ্যমে লোকাল এমবেডিং মডেলগুলোও সমর্থিত।
CLI টুল `pqa` দ্রুত শুরু করার ব্যবহার প্রদান করে: পেপারের একটি ডিরেক্টরিতে নেভিগেট করুন এবং এক ধাপে ইনডেক্স, সার্চ এবং উত্তর দিতে `pqa ask 'What is PaperQA2?'` চালান। বান্ডেল করা সেটিংস (high_quality, fast, wikicrow, contracrow, debug, tier1_limits) বিভিন্ন ব্যবহারের ক্ষেত্রের জন্য পূর্ব-টিউন করা কনফিগারেশন অফার করে, যার মধ্যে বিরোধীতা সনাক্তকরণ এবং উইকিপিডিয়া-স্টাইল নিবন্ধ লেখা রয়েছে। API টিয়ার সীমাবদ্ধতার সাথে খাপ খাওয়ানোর জন্য প্রতিটি মডেলের জন্য রেট লিমিটিং কনফিগারেবল।
পাইথন লাইব্রেরিটি সিঙ্ক্রোনাস এবং অ্যাসিঙ্ক্রোনাস উভয় API-ই অফার করে। `ask` ফাংশনটি একটি সুবিধাজনক র্যাপার প্রদান করে, যখন `agent_query` এবং সরাসরি `Docs` অবজেক্ট ম্যানিপুলেশন ডকুমেন্ট ইনজেস্টিং এবং ক্যুয়েরিং-এর উপর সূক্ষ্ম নিয়ন্ত্রণের সুযোগ দেয়। `Docs` অবজেক্টটি ফাইল, URL এবং কোড যোগ করার পাশাপাশি এভিডেন্স রিট্রিভাল এবং ক্যুয়েরিং-এর জন্য পদ্ধতিগুলোকে সাপোর্ট করে। সমস্ত পূর্ববর্তী উত্তরগুলো পরবর্তী সার্চের জন্য ইনডেক্স এবং সংরক্ষিত থাকে।
সাম্প্রতিক আপডেটগুলো (ডিসেম্বর ২০২৫) টেবিল, ফিগার, অ-ইংরেজি ভাষা এবং গাণিতিক সমীকরণের জন্য মাল্টিমোডাল সাপোর্ট যোগ করেছে; নতুন মডেল-ভিত্তিক PDF রিডার (Docling এবং Nvidia nemotron-parse); মাইক্রোসফট অফিস ডকুমেন্ট পার্সিং; মাল্টিমোডাল কনটেক্সচুয়াল সারসংক্ষেপ যেখানে মিডিয়া অবজেক্টগুলো সারসংক্ষেপ LLM-এ পাস করা হয়; এবং httpx ব্যবহার করে একটি সরলীকৃত HTTP স্ট্যাক। প্রজেক্টটি ডিসেম্বর ২০২৫-এ সেমান্টিক ভার্সনিং থেকে ক্যালেন্ডার ভার্সনিং-এ স্থানান্তরিত হয়েছে।
PaperQA2 Apache 2.0 লাইসেন্সের অধীনে লাইসেন্সপ্রাপ্ত এবং Python 3.11+ প্রয়োজন। এটি Semantic Scholar, Crossref, Unpaywall, Pydantic, tantivy, LiteLLM এবং pybtex সহ লাইব্রেরিগুলোর উপর নির্ভরশীল। প্রজেক্টটি Future House দ্বারা বিকশিত হয়েছে এবং বৈজ্ঞানিক প্রশ্নোত্তর, সারসংক্ষেপ এবং বিরোধীতা সনাক্তকরণ টাস্কগুলিতে সুপারহিউম্যান পারফরম্যান্স প্রদর্শনকারী পিয়ার-রিভিউড গবেষণায় প্রকাশিত হয়েছে।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.