मुख्य सामग्री पर जाएँ

Docker, n8n, Qdrant, और Ollama के साथ लोकल AI

लो/नो-कोड ऑटोमेशन फ्रेमवर्क का इस्तेमाल करके अपने संवेदनशील डेटा की सुरक्षा करने वाले सुरक्षित, लोकल AI अनुप्रयोग बनाना सीखें।
· 9 मि॰ पढ़ें

AI के साथ खोजें

दुनिया भर की कंपनियां AI की शक्ति का लाभ उठाते हुए संवेदनशील जानकारी की सुरक्षा को लेकर तेजी से चिंतित हैं। यह गाइड ओपन-सोर्स टूल्स के शक्तिशाली संयोजन का उपयोग करके सुरक्षित, लोकल AI अनुप्रयोग बनाने के लिए एक व्यापक समाधान प्रस्तुत करता है।

हम Self-hosted AI Starter Kit का उपयोग करके एक लोकल AI वातावरण तुरंत सेट अप करेंगे। यह किट अपने आप Ollama, Qdrant, n8n, और Postgres चलाएगी। इसके अलावा, हम n8n डैशबोर्ड के माध्यम से Harry Potter डेटासेट का उपयोग करके RAG (Retrieval-augmented generation) चैटबॉट के लिए AI वर्कफ़्लो बनाना सीखेंगे।

चाहे आप डेवलपर हों, डेटा साइंटिस्ट हों, या कोई गैर-तकनीकी पेशेवर जो सुरक्षित AI समाधान लागू करना चाहते हैं, यह ट्यूटोरियल आपको संवेदनशील डेटा पर पूरा नियंत्रण बनाए रखते हुए शक्तिशाली, स्व-होस्टेड AI वर्कफ़्लो बनाने की बुनियाद देगा।

लोकल AI क्या है?

लोकल AI आपको क्लाउड सेवाओं के बजाय अपनी ही इंफ्रास्ट्रक्चर पर कृत्रिम बुद्धिमत्ता सिस्टम और वर्कफ़्लो चलाने की अनुमति देता है, जिससे गोपनीयता और लागत-कुशलता बढ़ती है।

यदि आप AI इकोसिस्टम में नए हैं, तो पहले हमारे स्किल ट्रैक AI Fundamentals देखें ताकि आप गति पकड़ सकें। इस पाठ्यक्रम-श्रंखला को पूरा करने पर, आप ChatGPT, बड़े भाषा मॉडल, जेनरेटिव AI और अन्य लोकप्रिय AI विषयों पर उपयोगी जानकारी हासिल करेंगे।

Local AI Feature image.

चित्र: लेखक द्वारा

यहाँ वे टूल्स हैं जिनका उपयोग हम अपने लोकल AI अनुप्रयोग बनाने और चलाने के लिए करेंगे:

  1. Docker: यह आपका कंटेनराइज़ेशन प्लेटफ़ॉर्म है जो सभी AI घटकों को प्रबंधनीय, पृथक वातावरणों में पैकेज करता है। यह हमें एक ही कमांड से सभी AI टूल चलाने में मदद करेगा। 
  2. n8n: एक वर्कफ़्लो ऑटोमेशन फ़्रेमवर्क जो आपको ड्रैग-एंड-ड्रॉप इंटरफ़ेस के जरिए AI वर्कफ़्लो बनाने देता है। इसमें कोडिंग ज्ञान की आवश्यकता नहीं होती, जिससे यह गैर-तकनीकी व्यक्तियों के लिए आदर्श बनता है।
  3. Postgres: यह टूल सभी डेटा और लॉग स्टोर करता है, n8n फ़्रेमवर्क के लिए मेमोरी बफर के रूप में कार्य करता है।
  4. Qdrant: एक वेक्टर डेटाबेस और सर्च इंजन जो AI-जनित सामग्री को खोजने योग्य और प्रबंधनीय बनाता है।
  5. Ollama: एक AI मॉडल मैनेजर जो आपको न्यूनतम हार्डवेयर आवश्यकताओं के साथ किसी भी ओपन-सोर्स बड़े भाषा मॉडल को लोकल रूप से चलाने की सुविधा देता है।

RAG चैटबॉट के लिए AI वर्कफ़्लो बनाने में हमारा प्राथमिक फ़्रेमवर्क n8n होगा। हम Qdrant को वेक्टर स्टोर और Ollama को AI मॉडल प्रदाता के रूप में उपयोग करेंगे। मिलकर ये घटक हमें RAG सिस्टम बनाने में मदद करेंगे।

Docker इंस्टॉल करना  

हम आधिकारिक Docker वेबसाइट पर जाकर Docker डेस्कटॉप एप्लिकेशन डाउनलोड और इंस्टॉल करेंगे। इसे इंस्टॉल करना और शुरू करना काफी आसान है। 

Docker के बारे में और जानें: Docker for Data Science ट्यूटोरियल देखें या हमारा Introduction to Docker कोर्स लें। 

Windows Docker Desktop

स्रोत: Docker: Accelerated Container Application Development

Windows उपयोगकर्ताओं को Docker कंटेनर सफलतापूर्वक चलाने के लिए एक अतिरिक्त टूल की आवश्यकता होती है: Windows Subsystem for Linux (WSL)। यह डेवलपर्स को एक Linux डिस्ट्रीब्यूशन इंस्टॉल करने और Windows पर सीधे Linux एप्लिकेशन उपयोग करने की अनुमति देता है।

Windows पर WSL इंस्टॉल करने के लिए, टर्मिनल या PowerShell में निम्न कमांड टाइप करें। सुनिश्चित करें कि PowerShell को एडमिनिस्ट्रेटर के रूप में लॉन्च किया गया है।

$ wsl --install

WSL सफलतापूर्वक इंस्टॉल करने के बाद, अपने सिस्टम को रीस्टार्ट करें। फिर, यह जांचने के लिए कि Docker सही से काम कर रहा है या नहीं, PowerShell में निम्न कमांड टाइप करें।

$ docker run hello-world

Docker ने सफलतापूर्वक hello-world इमेज खींच ली और कंटेनर शुरू कर दिया।

Running the Sample Docker Image

Docker Compose के साथ लोकल AI अनुप्रयोग इंस्टॉल और चलाना

इस गाइड में, हम Docker Compose का उपयोग करके लोकल रूप से AI सेवाएँ सेट अप करना सीखेंगे। यह तरीका आपको कुछ ही मिनटों में Docker इमेज लोड करने और कंटेनर परिनियोजित करने देता है, जिससे अपनी इंफ्रास्ट्रक्चर पर कई AI सेवाएँ चलाना और प्रबंधित करना सरल हो जाता है।

सबसे पहले, हम टर्मिनल में निम्न कमांड टाइप करके n8n-io/self-hosted-ai-starter-kit क्लोन करेंगे। 

$ git clone https://github.com/n8n-io/self-hosted-ai-starter-kit.git
$ cd self-hosted-ai-starter-kit

यह स्टार्टर किट AI वर्कफ़्लो बनाने के लिए आवश्यक सर्वर और एप्लिकेशन सेट अप करने का सबसे आसान तरीका है। फिर, हम Docker इमेज लोड करेंगे और कंटेनर चलाएंगे। 

$ docker compose --profile cpu up

यदि आपके पास NVIDIA GPU है, तो प्रतिक्रिया जनरेशन में एक्सेलरेशन पाने के लिए नीचे दिया गया कमांड टाइप करके देखें। साथ ही, Ollama Docker गाइड का पालन करके Docker के लिए NVIDIA GPU सेट अप करें।

$ docker compose --profile gpu-nvidia up

इसमें कुछ मिनट लगेंगे क्योंकि यह सभी Docker इमेज डाउनलोड करेगा और फिर एक-एक करके Docker कंटेनर चलाएगा।

Running the Docker Compose script from the AI starter Kit.

सभी Docker सेवाएँ चल रही हैं। जो Docker कंटेनर exited दिख रहे हैं, वे Llama 3.2 मॉडल डाउनलोड करने और n8n बैकअप वर्कफ़्लो इम्पोर्ट करने के लिए उपयोग हुए थे।

Viewing the status of Docker containers.

हम टर्मिनल में निम्न कमांड टाइप करके चल रहे Docker कंटेनरों की स्थिति भी जांच सकते हैं। 

$ docker compose ps

स्टार्टर किट में Llama 3.2 मॉडल डाउनलोड करने का स्क्रिप्ट शामिल था। हालांकि, एक ठीक-ठाक RAG चैटबॉट एप्लिकेशन के लिए हमें एम्बेडिंग मॉडल भी चाहिए। हम Ollama Docker कंटेनर पर जाएंगे, “Exec” टैब पर क्लिक करेंगे, और “nomic-embed-text” मॉडल डाउनलोड करने के लिए निम्न कमांड टाइप करेंगे।

$ ollama pull nomic-embed-text

जैसा कि हम देख सकते हैं, हम Docker कंटेनर के साथ ऐसे इंटरेक्ट कर सकते हैं जैसे वह एक अलग वर्चुअल मशीन हो।

Executing the command in the Docker container.

अपने ब्राउज़र में n8n डैशबोर्ड URL http://localhost:5678/ खोलें, और ईमेल व पासवर्ड के साथ n8n यूज़र अकाउंट सेट अप करें। फिर, मुख्य डैशबोर्ड पेज पर होम बटन पर क्लिक करें और डेमो वर्कफ़्लो एक्सेस करें। 

डेमो एक सरल LLM वर्कफ़्लो है जो यूज़र इनपुट लेता है और प्रतिक्रिया जनरेट करता है।

Sample AI workflow on n8n

वर्कफ़्लो चलाने के लिए, Chat बटन पर क्लिक करें और अपना प्रश्न टाइप करना शुरू करें। कुछ ही सेकंड में प्रतिक्रिया जनरेट हो जाएगी। 

कृपया ध्यान दें कि हम GPU एक्सेलरेशन के साथ एक छोटे भाषा मॉडल का उपयोग कर रहे हैं, इसलिए प्रतिक्रिया आमतौर पर लगभग 2 सेकंड ही लेती है।

Running the AI workflow on n8n

n8n डैशबोर्ड के साथ AI वर्कफ़्लो बनाएं

इस प्रोजेक्ट में हम एक RAG (Retrieval-Augmented Generation) चैटबॉट बनाएंगे जो Harry Potter फिल्मों के डेटा का उपयोग करके संदर्भ-संगत और सटीक उत्तर प्रदान करेगा। यह प्रोजेक्ट नो-कोड समाधान है, यानी आपको बस आवश्यक वर्कफ़्लो घटकों को खोजकर कनेक्ट करना है ताकि AI वर्कफ़्लो तैयार हो जाए।

n8n, Langchain जैसा एक नो-कोड प्लेटफ़ॉर्म है। RAG with Llama 3.1 8B, Ollama, and Langchain ट्यूटोरियल का अनुसरण करें ताकि आप Langchain का उपयोग करके ऐसा ही AI वर्कफ़्लो बनाना समझ सकें।

1. चैट ट्रिगर जोड़ना

डैशबोर्ड के बीच में “Add the first step” बटन पर क्लिक करें, “Chat Trigger” खोजें और उसे जोड़ें। 

Adding the Chat trigger to the n8n workflow

सुनिश्चित करें कि आपने “Allow File Uploads” सक्षम कर दिया है।

activating the allows file uploads option.

2. Qdrant वेक्टर स्टोर जोड़ना

आप “Chat Trigger” घटक पर प्लस (+) बटन क्लिक करके और खोजकर “Qdrant Vector Store” नामक अन्य घटक जोड़ सकते हैं। 

ऑपरेशन मोड को “Insert Documents” पर बदलें, Qdrant कलेक्शन को “By ID” कर दें, और ID के रूप में “Harry_Potter” टाइप करें।

Adding the Qdrant Vector Store

विकल्प से बाहर निकलने पर, हम देखेंगे कि चैट ट्रिगर हमारे वेक्टर स्टोर से जुड़ गया है।  

connecting the chat trigger with the Qdrant vector store.

3. एम्बेडिंग मॉडल को वेक्टर स्टोर से जोड़ना

Qdrant वेक्टर स्टोर के नीचे “Embedding” लेबल वाले प्लस बटन पर क्लिक करें। हम मॉडल मैनेजमेंट मेन्यू पर पहुंचेंगे, जहाँ हम Embeddings Ollama चुनेंगे और मॉडल को “nomic-embed-text:latest” में बदल देंगे।

Adding the Embedding Ollama model.

4. डॉक्युमेंट लोडर को वेक्टर स्टोर से जोड़ना

Qdrant वेक्टर स्टोर के नीचे “Document” लिखे प्लस बटन पर क्लिक करें, और मेन्यू से “Default Data Loader” चुनें। डेटा के प्रकार को “Binary” में बदलें।

Adding the Default Data loader

फिर, डॉक्युमेंट लोडर में 500 के चंक साइज और 50 के चंक ओवरलैप के साथ एक टोकन स्प्लिटर जोड़ें।

Adding the token splitter

अंत में हमारा वर्कफ़्लो इस तरह दिखना चाहिए। यह वर्कफ़्लो यूज़र से CSV फाइलें लेगा, उन्हें टेक्स्ट में बदलेगा, फिर उस टेक्स्ट को एम्बेडिंग्स में बदलकर वेक्टर स्टोर में स्टोर करेगा।

Data ingestion workflow for vector database.

5. Qdrant वेक्टर स्टोर का परीक्षण

डैशबोर्ड के नीचे Chat बटन पर क्लिक करें। चैट विंडो खुलने पर, नीचे दिखाए अनुसार फाइल बटन पर क्लिक करें।

adding a single file

इस वर्कफ़्लो में, हम Harry Potter Movies डेटासेट से सभी CSV फाइलें लोड करेंगे। हालांकि, अपने वर्कफ़्लो का परीक्षण करने के लिए, हम केवल एक CSV फाइल ‘spell’ यूज़र क्वेरी के आधार पर लोड करेंगे।

adding a single CSV file

आप URL http://localhost:6333/dashboard का उपयोग करके Qdrant सर्वर पर जा सकते हैं और देख सकते हैं कि फाइल वेक्टर स्टोर में लोड हुई है या नहीं। 

Qdrant Dashboard

अब, बाकी फाइलें भी वेक्टर स्टोर में जोड़ें। 

adding a multiple file to the vector store

6. AI एजेंट जोड़ना

हम चैट ट्रिगर को वेक्टर स्टोर से जोड़ेंगे, उसे AI एजेंट से लिंक करेंगे, और एजेंट प्रकार को “Conversation Agent” में बदल देंगे।

Creating the second workflow.

7. चैट मॉडल को AI एजेंट से जोड़ना

AI एजेंट के नीचे “Chat Model” बटन पर क्लिक करें और मेन्यू से Ollama Chat मॉडल चुनें। उसके बाद, मॉडल का नाम “Llama3.2:latest” में बदल दें।

Connecting the chat model with AI agent

8. वेक्टर स्टोर टूल को AI एजेंट से जोड़ना

AI एजेंट के नीचे “Tool” बटन पर क्लिक करें और मेन्यू से वेक्टर स्टोर टूल चुनें। टूल का नाम और विवरण प्रदान करें। 

Connecting the vector store tool with AI agent.

9. Qdrant रिट्रीवर को वेक्टर स्टोर टूल से जोड़ना

हमें वेक्टर स्टोर टूल में घटक जोड़ने की आवश्यकता है। सबसे पहले, हम Qdrant को वेक्टर स्टोर के रूप में शामिल करेंगे और कलेक्शन ID को "Harry_Potter" पर सेट करेंगे। यह वेक्टर स्टोर सिमिलैरिटी सर्च के दौरान Harry Potter कलेक्शन तक पहुँच करेगा। इसके अतिरिक्त, ऑपरेशन मोड को "Retrieved Documents" में बदलें।

Qdrant Document Retriever

10. चैट मॉडल को वेक्टर स्टोर टूल से जोड़ना

वेक्टर स्टोर टूल को एक LLM मॉडल भी चाहिए। हम Ollama चैट मॉडल को कनेक्ट करेंगे और मॉडल को “llama3.2:latest” में बदल देंगे।

Ollama Chat model

11. एम्बेडिंग मॉडल को Qdrant रिट्रीवर से जोड़ना

अंतिम चरण में, हम रिट्रीवल वेक्टर स्टोर को एम्बेडिंग मॉडल प्रदान करेंगे। इससे यह यूज़र क्वेरी को एम्बेडिंग में बदल सकेगा और फिर LLM की प्रोसेसिंग के लिए एम्बेडिंग को वापस टेक्स्ट में बदल सकेगा। 

सुनिश्चित करें कि आपने अपने वेक्टर स्टोर के लिए सही एम्बेडिंग मॉडल प्रदान किया है।

Embedding model

AI वर्कफ़्लो इस तरह दिखना चाहिए। 

Entire AI workflow for RAG Chatbot.

12. AI वर्कफ़्लो का परीक्षण

Harry Potter ब्रह्मांड के बारे में प्रश्न पूछना शुरू करने के लिए चैट बटन पर क्लिक करें।

प्रॉम्प्ट: “Hogwarts में सबसे गुप्त स्थान कौन-सा है?”

Testing the AI workflow 1

प्रॉम्प्ट: “सबसे शक्तिशाली जादू-मंत्र कौन-सा है?”

Testing the AI workflow 2

हमारा AI वर्कफ़्लो तेज़ है और सुचारु रूप से काम कर रहा है। यह नो-कोड तरीका लागू करना काफी आसान है। n8n उपयोगकर्ताओं को अपनी एप्लिकेशन साझा करने की भी अनुमति देता है ताकि कोई भी लिंक के जरिए, ठीक ChatGPT की तरह, उन्हें एक्सेस कर सके।

निष्कर्ष 

n8n, LLM/AI प्रोजेक्ट्स के लिए एक बेहतरीन टूल है—खासकर गैर-तकनीकी व्यक्तियों के लिए। कई बार हमें वर्कफ़्लो शून्य से बनाने की भी आवश्यकता नहीं होती। हमें बस n8n वेबसाइट पर समान प्रोजेक्ट्स खोजना, JSON कोड कॉपी करना और अपने n8n डैशबोर्ड में पेस्ट करना होता है। यह उतना ही सरल है। 

n8n workflow automation templates.

स्रोत: Discover 900+ Automation Workflows from the n8n's Community

इस ट्यूटोरियल में, हमने लोकल AI के बारे में सीखा और विभिन्न AI सेवाएँ बनाने व डिप्लॉय करने के लिए सेल्फ-होस्टेड AI स्टार्टर किट का उपयोग कैसे करें, यह जाना। फिर, हमने n8n डैशबोर्ड लॉन्च किया और Qdrant, एम्बेडिंग मॉडल्स, वेक्टर स्टोर टूल्स, LLMs, और डॉक्युमेंट लोडर्स का उपयोग करके अपना AI वर्कफ़्लो बनाया। n8n के साथ वर्कफ़्लो बनाना और चलाना काफ़ी आसान है। यदि आप AI टूल्स में नए हैं और नो-कोड AI समाधानों के बारे में सीखना चाहते हैं, तो हमारे अन्य संसाधन देखें:

Abid Ali Awan

लेखक

Abid Ali Awan

एक प्रमाणित डेटा साइंटिस्ट के रूप में, मैं अत्याधुनिक तकनीक का उपयोग करके नवाचारी मशीन लर्निंग अनुप्रयोग बनाने के लिए उत्साहित रहता/रहती हूँ। स्पीच रिकॉग्निशन, डेटा विश्लेषण और रिपोर्टिंग, MLOps, संवादात्मक AI और NLP में मजबूत पृष्ठभूमि के साथ, मैंने ऐसे बुद्धिमान सिस्टम विकसित करने में अपनी विशेषज्ञता निखारी है जो वास्तविक प्रभाव डाल सकें। तकनीकी दक्षता के अलावा, मैं जटिल अवधारणाओं को स्पष्ट और संक्षिप्त भाषा में प्रस्तुत करने में भी निपुण हूँ। परिणामस्वरूप, मैं डेटा साइंस पर एक मांग में रहने वाला/वाली ब्लॉगर बन गया/गई हूँ, और डेटा प्रोफेशनलों के बढ़ते समुदाय के साथ अपने अनुभव और विचार साझा करता/करती हूँ। वर्तमान में, मैं कंटेंट निर्माण और संपादन पर केंद्रित हूँ, बड़े भाषा मॉडलों के साथ काम करते हुए ऐसा प्रभावशाली और आकर्षक कंटेंट विकसित कर रहा/रही हूँ जो व्यवसायों और व्यक्तियों दोनों को अपने डेटा का अधिकतम लाभ उठाने में मदद कर सके।

विषय