इस प्रोजेक्ट के बारे में

Civitas एक ओपन-डेटा AI/ML प्लेटफ़ॉर्म है जो आधिकारिक अमेरिकी सरकारी स्रोतों से डेटा एकत्र करके सीनेटरों, प्रतिनिधि सभा के सदस्यों, राष्ट्रपतियों और सुप्रीम कोर्ट के न्यायाधीशों के लिए एकीकृत पारदर्शिता स्कोरकार्ड बनाता है। इसमें एक एक्शन सेंटर भी है जो समाचार विश्लेषण से चल रहे नागरिक मुद्दों को उजागर करता है, राष्ट्रीय चिंताओं को ट्रैक करने योग्य मॉनिटर के रूप में स्वतः पहचानता है, और वर्ष-समीक्षा टाइमलाइन बनाता है। मतदान रिकॉर्ड, चुनाव वित्त, सदन में भाषण, न्यायिक राय, और घोषित मंचों का विश्लेषण एम्बेडिंग-आधारित वर्गीकरण, सामग्री-आधारित पार्टी संरेखण, और निर्धारणात्मक स्कोरिंग का उपयोग करके किया जाता है — यह सब Raspberry Pi 5 पर स्थानीय रूप से चलता है, जिसमें क्लाउड AI सेवाओं के लिए कोई बाहरी API कॉल नहीं होती। ## आर्किटेक्चर सिस्टम एक रात्रिकालीन बैच पाइपलाइन के आसपास बनाया गया है जो कई सरकारी APIs (Congress.gov, FEC, GovInfo, Senate.gov, Oyez, BLS/BEA, आदि) से डेटा प्राप्त करता है, उसे रूपांतरित करता है, एम्बेडिंग और निर्धारणात्मक स्कोरिंग का उपयोग करके विश्लेषण करता है, और परिणामों को SQLite डेटाबेस में संग्रहीत करता है। एक FastAPI बैकएंड डेटा को Next.js फ्रंटएंड तक पहुंचाता है। LLM (LFM2.5-1.2B-Instruct) प्राकृतिक-भाषा संश्लेषण की आवश्यकता वाले कार्यों के लिए llama.cpp के माध्यम से स्थानीय रूप से चलता है, जैसे एक्शन सेंटर मुद्दा निर्माण और न्यायाधीश प्रोफ़ाइल सारांश। ## मुख्य विशेषताएं - **पारदर्शिता स्कोरकार्ड**: मतदान रिकॉर्ड, चुनाव वित्त, सदन में भाषण, और अन्य डेटा के आधार पर सीनेटरों, प्रतिनिधियों, राष्ट्रपतियों और न्यायाधीशों के लिए स्कोर। - **एक्शन सेंटर**: समाचार विश्लेषण से चल रहे नागरिक मुद्दों को उजागर करता है, राष्ट्रीय चिंताओं को ट्रैक करने योग्य मॉनिटर के रूप में स्वतः पहचानता है, और वर्ष-समीक्षा टाइमलाइन बनाता है। - **हाइब्रिड खोज**: एक्सप्लोर इंडेक्स एम्बेडिंग-आधारित सिमेंटिक खोज को FTS5 कीवर्ड खोज और उद्धरण-ग्राफ PageRank के साथ जोड़ता है। - **पूरी तरह स्थानीय**: सभी मॉडल, डेटाबेस, और सेवाएं डिवाइस पर चलती हैं (Raspberry Pi 5, 16GB RAM)। कोई क्लाउड GPU नहीं, कोई तृतीय-पक्ष AI APIs नहीं। - **निर्धारणात्मक स्कोरिंग**: चरण 3 विश्लेषण पूरी तरह निर्धारणात्मक है, जिसमें कोई LLM कॉल नहीं होती, और एम्बेडिंग-आधारित वर्गीकरण और kNN का उपयोग होता है। - **कैशिंग आर्किटेक्चर**: पुनर्प्ले, प्रदर्शन, और ऑडिट ट्रेल के लिए तीन स्वतंत्र कैशिंग सिस्टम (ApiCache, AnalysisCache, LearnedClassification)। ## पाइपलाइन चरण रात्रिकालीन पाइपलाइन हर सीनेटर और प्रतिनिधि सभा के सदस्य को सात चरणों के माध्यम से संसाधित करती है: FETCH, TRANSFORM, ANALYZE, EXPLORE, JUSTICES, PRESIDENTS, और FINALIZE। यह पांच पाइपलाइनों (Senate, Supplementary, House, Stock trades, Election) की श्रृंखला के रूप में चलती है, जहां प्रत्येक लिंक तभी शुरू होता है जब पिछला समाप्त हो जाता है। ## वर्गीकरण रणनीति वर्गीकरण निर्णय एक स्तरीकृत रणनीति का उपयोग करके किए जाते हैं: सटीक मिलान, sentence-transformer एम्बेडिंग, kNN, और अंत में प्राकृतिक-भाषा संश्लेषण की आवश्यकता वाले कार्यों के लिए LLM। सिस्टम व्याख्यात्मकता और पुनरुत्पादकता पर जोर देता है, सभी मॉडल वेट पिन किए गए हैं। ## हार्डवेयर Raspberry Pi 5 (16 GB RAM), NVMe SSD। सभी मॉडल, डेटाबेस, और सेवाएं डिवाइस पर चलती हैं।