इस प्रोजेक्ट के बारे में
Lexos एक इवेंट-संचालित AI दस्तावेज़ प्रोसेसिंग इंजन है जो सेल्फ-होस्टेड भाषा मॉडल के आसपास बनाया गया है। यह उच्च-समवर्ती Go गेटवे को अतुल्यकालिक Python वर्कर्स के साथ जोड़ता है ताकि HTTP अनुरोध हैंडलिंग को ब्लॉक किए बिना या बाहरी AI APIs पर निर्भर हुए दस्तावेज़ सारांश, रिट्रीवल-ऑगमेंटेड जनरेशन और भाषण प्रतिलेखन चलाया जा सके।
README में वर्णित प्रमुख क्षमताएँ:
सेल्फ-होस्टेड और गोपनीयता-केंद्रित: दस्तावेज़ पार्सिंग, एम्बेडिंग, वेक्टर रिट्रीवल, प्रतिलेखन और LLM इंफ़रेंस सभी सेल्फ-होस्टेड Docker वातावरण के अंदर चलते हैं, जिसमें किसी बाहरी AI API की आवश्यकता नहीं होती।
अतुल्यकालिक प्रसंस्करण: क्लाइंट को तुरंत 202 Accepted प्रतिक्रिया मिलती है जिसमें एक कार्य पहचानकर्ता होता है, जबकि CPU-गहन कार्य पृष्ठभूमि में जारी रहता है।
वास्तविक समय उत्तर स्ट्रीमिंग: Server-Sent Events Python वर्कर से, Redis Pub/Sub और Go गेटवे के माध्यम से, ब्राउज़र तक टोकन द्वारा टोकन उत्पन्न उत्तर स्ट्रीम करते हैं।
S3-संगत ऑब्जेक्ट स्टोरेज: विकास के लिए MinIO और उत्पादन के लिए Cloudflare R2, समान S3-संगत क्लाइंट कॉन्फ़िगरेशन का उपयोग करते हुए।
सामग्री-संबोधित प्रसंस्करण: SHA-256 फ़िंगरप्रिंट स्रोत सामग्री, ऑपरेशन और पैरामीटर को जोड़ते हैं ताकि पूर्ण किए गए आर्टिफैक्ट्स का पुन: उपयोग किया जा सके और डुप्लिकेट समवर्ती प्रसंस्करण को दबाया जा सके।
बहुभाषी रिट्रीवल: बहुभाषी एम्बेडिंग, टोकनाइज़र-जागरूक चंकिंग और FAISS कोसाइन-समानता खोज समर्थित भाषाओं में प्रासंगिक साक्ष्य प्राप्त करती है।
पृथक स्वचालित परीक्षण: Go हैंडलर निर्भरता-इंजेक्टेड Redis और स्टोरेज इंटरफेस का उपयोग करते हैं, जबकि Python परीक्षण Pytest और pytest-mock के साथ मॉडल, स्टोरेज और नेटवर्क संचालन को मॉक करते हैं।
आर्किटेक्चर: एक Next.js फ्रंटएंड प्रतिलेखन, सारांश और प्रश्न-उत्तर के लिए वर्कफ़्लो प्रदान करता है, जिसमें TanStack Query पोलिंग और SSE रेंडरिंग होती है। Go + Echo गेटवे इंजेशन, सत्यापन, ऑब्जेक्ट स्टोरेज के लिए स्ट्रीमिंग अपलोड, कार्य प्रेषण, डुप्लिकेट दमन और SSE प्रॉक्सीिंग को संभालता है। Redis ब्रोकर, कार्य स्थिति स्टोर, प्रोसेसिंग कैश और वितरित लॉक परत के रूप में कार्य करता है। Python वर्कर कतारों को पोल करता है और तीन पाइपलाइन चलाता है: Qwen3 0.6B के साथ Map-Reduce पाइपलाइन के माध्यम से सारांश के लिए Distiller, FastEmbed एम्बेडिंग और FAISS इंडेक्स का उपयोग करके RAG के लिए Gleaner, और Faster-Whisper के माध्यम से ऑडियो प्रतिलेखन के लिए Scriber।
परिनियोजन: लगभग 4 vCPUs और 8 GB RAM वाले छोटे CPU-केवल VPS के लिए डिज़ाइन किया गया है, जिसमें AI वर्कर लगभग 2 GB मेमोरी बजट के साथ है। क्वांटाइज़्ड Q4_K_M GGUF मॉडल, मेमोरी-मैप्ड लोडिंग, ONNX-आधारित एम्बेडिंग, प्रति-दस्तावेज़ FAISS IndexFlatIP इंडेक्स, अनुक्रमिक वर्कर समवर्ती और बाहरीकृत स्थिति संसाधन उपयोग को पूर्वानुमानित रखते हैं।
चलाना: Docker और Docker Compose पूर्वापेक्षाएँ हैं; रिपॉजिटरी क्लोन करें और docker-compose up --build -d चलाएँ। मॉडल फ़ाइलें डाउनलोड और कैश होने पर प्रारंभिक बूट में कुछ मिनट लग सकते हैं। उत्पादन स्टोरेज R2 एंडपॉइंट और S3_REGION=auto के साथ समान S3 कॉन्फ़िगरेशन सतह का उपयोग करता है, और Wrangler के साथ लाइफसाइकिल नियम लागू किए जा सकते हैं। कच्चे ऑब्जेक्ट एक दिन के बाद समाप्त हो जाते हैं और कैश ऑब्जेक्ट आठ दिनों के बाद, जबकि Redis कैश मेटाडेटा सात दिनों के लिए पुन: प्रयोज्य रहता है।
परीक्षण: Go गेटवे परीक्षण हैंडलर व्यवहार, फ़िंगरप्रिंट, कैश हिट, स्टेल-लॉक रिकवरी और स्टोरेज एक्सेस के लिए Testify मॉक का उपयोग करते हैं; Python परीक्षण कैश स्वामित्व, टोकन-जागरूक इंडेक्सिंग, स्ट्रीमिंग क्लीनअप, वर्कर रूटिंग, आर्टिफैक्ट पुन: उपयोग और विफलता रिकवरी को मान्य करते हैं; फ्रंटएंड CI TypeScript टाइप चेकिंग, ESLint और एक उत्पादन Next.js बिल्ड चलाता है।
लाइसेंस: MIT।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.