منصوبے کے بارے میں

PaperQA2 ایک اوپن سورس Python پیکیج اور CLI ٹول ہے جو سائنسی ادب اور دیگر دستاویزات کی اقسام پر اعلیٰ درستگی والی retrieval augmented generation (RAG) کے لیے ڈیزائن کیا گیا ہے۔ یہ PDFs، سادہ متن، Markdown، HTML، Microsoft Office فائلیں (docx، xlsx، pptx)، اور سورس کوڈ فائلیں ingest کرتا ہے، پھر صارفین کے سوالات کے جوابات مخصوص صفحات اور حصوں کی طرف اشارہ کرنے والے حوالوں کے ساتھ دیتا ہے۔ یہ نظام تین مرحلوں پر مشتمل ایجنٹک ورک فلو پر عمل کرتا ہے: (1) پیپر تلاش، جہاں ایک LLM کلیدی الفاظ کے سوالات پیدا کرتا ہے تاکہ ممکنہ پیپرز تلاش کیے جا سکیں اور انہیں مقامی مکمل متن کی تلاش کے انڈیکس میں تقسیم کیا جا سکے؛ (2) شواہد جمع کرنا، جہاں سوال کو ایمبیڈ کیا جاتا ہے، ٹاپ-کے چنک کو درجہ دیا جاتا ہے، ہر چنک کو سیاق و سباق میں خلاصہ کیا جاتا ہے، اور ایک LLM دوبارہ اسکور کر کے سب سے زیادہ متعلقہ خلاصوں کا انتخاب کرتا ہے؛ (3) جواب تیار کرنا، جہاں بہترین خلاصوں کو پرامپٹ میں رکھا جاتا ہے اور جواب تیار کیا جاتا ہے۔ ایک لینگویج ایجنٹ ان ٹولز کو کسی بھی ترتیب میں استعمال کر سکتا ہے، جس سے سوالات اور جوابات کی تکراری تطہیر ممکن ہوتی ہے۔ کلیدی خصوصیات میں Semantic Scholar، Crossref، اور Unpaywall سے خودکار میٹا ڈیٹا حاصل کرنا (بشمول حوالہ جات کی گنتی اور واپسی کی جانچ)، دستاویز میٹا ڈیٹا سے آگاہ ایمبیڈنگز، LLM پر مبنی دوبارہ درجہ بندی اور سیاق و سباق سے متعلق خلاصہ (RCS)، اور ایک مضبوط حسب ضرورت انٹرفیس شامل ہیں۔ ڈیفالٹ اسٹیک OpenAI ایمبیڈنگز اور Numpy ویکٹر ڈیٹا بیس کے ساتھ ماڈلز استعمال کرتا ہے، لیکن 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 ٹائر کی پابندیوں کو ایڈجسٹ کرنے کے لیے ریٹ محدودیت ہر ماڈل کے لیے قابل ترتیب ہے۔ Python لائبریری ہم آہنگ اور غیر ہم آہنگ APIs دونوں پیش کرتی ہے۔ `ask` فنکشن ایک سہولت والا ریپر فراہم کرتا ہے، جبکہ `agent_query` اور براہ راست `Docs` آبجیکٹ میں ہیرا پھیری دستاویزات کی ingest اور استفسار پر باریک کنٹرول کی اجازت دیتی ہے۔ `Docs` آبجیکٹ فائلیں، URLs، اور کوڈ شامل کرنے کی حمایت کرتا ہے، جس میں شواہد کی بازیابی اور استفسار کے طریقے ہیں۔ تمام پچھلے جوابات کو انڈیکس کیا جاتا ہے اور بعد میں تلاش کے لیے محفوظ کیا جاتا ہے۔ حالیہ اپ ڈیٹس (دسمبر 2025) نے ٹیبلز، اعداد و شمار، غیر انگریزی زبانوں، اور ریاضی کی مساوات کے لیے ملٹی موڈل سپورٹ شامل کیا؛ نئے ماڈل پر مبنی PDF ریڈرز (Docling اور Nvidia nemotron-parse)؛ Microsoft Office دستاویز کی پارسنگ؛ ملٹی موڈل سیاق و سباق سے متعلق خلاصہ جہاں میڈیا آبجیکٹ کو خلاصہ LLM کو منتقل کیا جاتا ہے؛ اور httpx کا استعمال کرتے ہوئے ایک آسان HTTP اسٹیک۔ یہ پروجیکٹ دسمبر 2025 میں semantic versioning سے calendar versioning میں منتقل ہوا۔ PaperQA2 Apache 2.0 کے تحت لائسنس یافتہ ہے اور Python 3.11+ کی ضرورت ہے۔ یہ Semantic Scholar، Crossref، Unpaywall، Pydantic، tantivy، LiteLLM، اور pybtex سمیت لائبریریوں پر منحصر ہے۔ یہ پروجیکٹ Future House نے تیار کیا ہے اور اسے ہم مرتبہ نظرثانی شدہ تحقیق میں شائع کیا گیا ہے جس میں سائنسی سوالوں کے جواب دینے، خلاصہ کرنے، اور تضاد کا پتہ لگانے کے کاموں پر انسانی صلاحیتوں سے بہتر کارکردگی کا مظاہرہ کیا گیا ہے۔