गो, पोस्टग्रेएसक्यूएल और ओलामा के साथ स्थानीय RAG सिस्टम बनाना: क्लाउड API के बिना

OllamaOllama
यह लेख गो, पोस्टग्रेएसक्यूएल के साथ pgvector, और ओलामा का उपयोग करके एक पूरी तरह से स्थानीय RAG सिस्टम बनाने की पड़ताल करता है, जो लैंगचेन जैसे भारी फ्रेमवर्क और क्लाउड API से बचाता है। यह आर्किटेक्चर, इंडेक्सिंग, सिमेंटिक खोज, और जनरेशन को कवर करता है, और गोपनीयता और नियंत्रण के लिए स्थानीय प्रोसेसिंग के लाभों पर प्रकाश डालता है।
यह लेख क्लाउड एपीआई के बिना, Go, pgvector एक्सटेंशन के साथ PostgreSQL, और Ollama का उपयोग करके एक स्थानीय RAG (रिट्रीवल-ऑगमेंटेड जनरेशन) सिस्टम बनाने का वर्णन करता है। सिस्टम में दो मुख्य घटक होते हैं: दस्तावेज़ों के ऑफ़लाइन इंडेक्सिंग के लिए एक इन्जेस्ट कमांड-लाइन इंटरफ़ेस (CLI) और वास्तविक समय में उपयोगकर्ता प्रश्नों को संभालने के लिए एक REST एपीआई। दस्तावेज़ों को टुकड़ों में विभाजित किया जाता है, nomic-embed-text मॉडल का उपयोग करके एम्बेड किया जाता है, और सिमेंटिक खोज के लिए pgvector के साथ PostgreSQL में संग्रहीत किया जाता है। क्वेरी के समय, सिस्टम क्वेरी के लिए एक एम्बेडिंग उत्पन्न करता है, अनुमानित निकटतम पड़ोसी खोज (HNSW) का उपयोग करके समान टुकड़ों को ढूंढता है, और उत्तर उत्पन्न करने के लिए संबंधित संदर्भ को Ollama के माध्यम से llama3.2 मॉडल को भेजता है। यह दृष्टिकोण बाहरी एपीआई कॉल से बचकर पूर्ण डेटा गोपनीयता और स्वायत्तता सुनिश्चित करता है। लेख वेक्टर स्पेस स्थिरता बनाए रखने के लिए इंडेक्सिंग और क्वेरी दोनों के लिए एक ही एम्बेडिंग मॉडल का उपयोग करने के महत्व पर जोर देता है।
स्रोत: Habr — хаб NLP — मूल
इस विषय पर हमारी पिछली पोस्ट ↓
ताज़ा समाचार