Haystack AI फ़्रेमवर्क

Clore.ai पर deepset का Haystack तैनात करें — किफायती GPU इन्फ्रास्ट्रक्चर पर प्रोडक्शन RAG पाइपलाइनों, सैमांटिक सर्च और LLM एजेंट वर्कफ़्लो बनाएं।

Haystack deepset का ओपन-सोर्स AI ऑर्केस्ट्रेशन फ्रेमवर्क है जो प्रोडक्शन-ग्रेड LLM एप्लिकेशन बनाने के लिए है। 18K+ GitHub स्टार्स के साथ, यह एक लचीला पाइपलाइन-आधारित आर्किटेक्चर है जो डॉक्यूमेंट स्टोर्स, रिट्रीवर्स, रीडर्स, जनरेटर्स और एजेंट्स को एक साथ जोड़ता है — सभी स्वच्छ, कम्पोज़ेबल Python में। चाहे आपको प्राइवेट डॉक्यूमेंट्स पर RAG चाहिए, सेमांटिक सर्च, या मल्टी-स्टेप एजेंट वर्कफ़्लो, Haystack पाइपलाइनिंग की पेचीदगियों को संभालता है ताकि आप एप्लिकेशन लॉजिक पर ध्यान दे सकें।

Clore.ai पर, Haystack तब सबसे अच्छा काम करता है जब आपको Hugging Face Transformers या sentence-transformers के माध्यम से लोकल मॉडल इन्फ़रेंस के लिए GPU चाहिए। यदि आप केवल बाहरी APIs (OpenAI, Anthropic) पर निर्भर हैं, तो आप इसे CPU-only इंस्टेंस पर चला सकते हैं — लेकिन एम्बेडिंग निर्माण और लोकल LLMs के लिए GPU विलंबता को काफी घटा देता है।

circle-check
circle-info

यह गाइड शामिल करता है Haystack v2.x (haystack-ai पैकेज)। v2 API v1 से काफी अलग है (farm-haystack)। यदि आपकी मौजूदा v1 पाइपलाइन्स हैं, तो देखें माइग्रेशन गाइडarrow-up-right.

अवलोकन

संपत्ति
विवरण

प्रोजेक्ट

लाइसेंस

Apache 2.0

GitHub स्टार्स

18K+

संस्करण

v2.x (haystack-ai)

प्राथमिक उपयोग मामला

RAG, सेमांटिक सर्च, डॉक्यूमेंट QA, एजेंट वर्कफ़्लो

GPU समर्थन

वैकल्पिक — लोकल एम्बेडिंग/लोकल LLMs के लिए आवश्यक

कठिनाई

मध्यम

API सर्विंग

Hayhooks (FastAPI-आधारित, REST)

मुख्य एकीकरण

Ollama, OpenAI, Anthropic, HuggingFace, Elasticsearch, Pinecone, Weaviate, Qdrant

आप क्या बना सकते हैं

  • RAG पाइपलाइन्स — दस्तावेज़ इनजेस्ट करें, एम्बेडिंग बनाएँ, संदर्भ पुनःप्राप्त करें, प्रश्नों का उत्तर दें

  • सेमांटिक सर्च — दस्तावेज़ों को अर्थ के आधार पर खोजें, कीवर्ड नहीं

  • डॉक्यूमेंट प्रसंस्करण — PDFs, HTML, Word डॉक्स पार्स करें; सामग्री को विभाजित, साफ़ और इंडेक्स करें

  • एजेंट वर्कफ़्लो — टूल उपयोग (वेब सर्च, कैलकुलेटर, APIs) के साथ मल्टी-स्टेप तर्क

  • REST API सर्विसेज़ — किसी भी Haystack पाइपलाइन को Hayhooks के माध्यम से एक एंडपॉइंट के रूप में एक्सपोज़ करें

आवश्यकताएँ

हार्डवेयर आवश्यकताएँ

उपयोग का मामला
GPU
VRAM
RAM
डिस्क
Clore.ai मूल्य

केवल API मोड (OpenAI/Anthropic)

कोई नहीं / केवल CPU

4 GB

20 GB

~$0.01–0.05/घंटा

लोकल एम्बेडिंग (sentence-transformers)

RTX 3060

8 GB

16 GB

30 GB

~$0.10–0.15/घंटा

लोकल एम्बेडिंग + छोटा LLM (7B)

RTX 3090

24 GB

16 GB

50 GB

~$0.20–0.25/घंटा

लोकल LLM (13B–34B)

RTX 4090

24 GB

32 GB

80 GB

~$0.35–0.50/घंटा

बड़ा लोकल LLM (70B, क्वांटाइज़्ड)

A100 80GB

80 GB

64 GB

150 GB

~$1.10–1.50/घंटा

circle-info

अधिकांश RAG उपयोग मामलों के लिए, एक RTX 3090 ~$0.20/घंटे पर ~24 GB VRAM वाला कॉन्फ़िगरेशन सर्वोत्तम स्थान है — 24 GB VRAM sentence-transformer एम्बेडिंग्स + एक 7B–13B लोकल LLM को एक साथ संभाल लेता है।

सॉफ़्टवेयर आवश्यकताएँ

  • Docker (Clore.ai सर्वरों पर प्री-इंस्टॉल्ड)

  • NVIDIA ड्राइवर्स + CUDA (Clore.ai GPU सर्वरों पर प्री-इंस्टॉल्ड)

  • Python 3.10+ (कंटेनर के अंदर)

  • CUDA 11.8 या 12.x

त्वरित प्रारम्भ

1. एक Clore.ai सर्वर किराए पर लें

में Clore.ai मार्केटप्लेसarrow-up-rightFILTER के लिए:

  • VRAM: ≥ 8 GB एम्बेडिंग वर्कलोड के लिए, ≥ 24 GB लोकल LLMs के लिए

  • Docker: सक्षम (अधिकांश लिस्टिंग पर डिफ़ॉल्ट)

  • इमेज: nvidia/cuda:12.1-devel-ubuntu22.04 या pytorch/pytorch:2.2.0-cuda12.1-cudnn8-runtime

सर्वर का पब्लिक IP और SSH पोर्ट नोट करें से मेरे ऑर्डर.

2. कनेक्ट करें और GPU सत्यापित करें

3. Haystack Docker इमेज बनाएं

Haystack v2 pip इंस्टॉलेशन की सिफारिश करता है। एक कस्टम Dockerfile बनाएं:

4. Haystack को Hayhooks के साथ चलाएँ

Hayhooksarrow-up-right किसी भी Haystack पाइपलाइन को स्वचालित रूप से REST API में बदल देता है:

अपेक्षित प्रतिक्रिया:

5. अपनी पहली RAG पाइपलाइन बनाएँ

एक पाइपलाइन YAML लिखें जिसे Hayhooks एक एंडपॉइंट के रूप में सर्व करेगा:

Hayhooks स्वचालित रूप से इस पाइपलाइन का पता लगाता और सर्व करता है। इसे टेस्ट करें:

कॉन्फ़िगरेशन

पर्यावरण चर

वैरिएबल
विवरण
उदाहरण

OPENAI_API_KEY

GPT मॉडलों के लिए OpenAI API की

sk-...

ANTHROPIC_API_KEY

Claude के लिए Anthropic API की

sk-ant-...

HF_TOKEN

गेटेड मॉडलों के लिए Hugging Face टोकन

hf_...

HAYSTACK_TELEMETRY_ENABLED

उपयोग टेलीमेट्री अक्षम करें

false

CUDA_VISIBLE_DEVICES

विशिष्ट GPU चुनें

0

TRANSFORMERS_CACHE

HF मॉडलों के लिए कैश पथ

/workspace/hf-cache

पूर्ण कॉन्फ़िगरेशन के साथ चलाएँ

डॉक्यूमेंट इनजेस्टन पाइपलाइन

डॉक्यूमेंट्स को इनजेस्ट करने के लिए अलग इंडेक्सिंग पाइपलाइन बनाएं:

वेक्टर डेटाबेस का उपयोग (प्रोडक्शन)

प्रोडक्शन वर्कलोड के लिए, इन-मेमोरी स्टोर को एक लगातार वेक्टर डेटाबेस से बदलें:

GPU त्वरक

Haystack GPU एक्सेलेरेशन दो मुख्य परिदृश्यों में उपयोग करता है:

1. एम्बेडिंग जेनरेशन (Sentence Transformers)

बड़ी डॉक्यूमेंट कलेक्शन्स के एम्बेडिंग के लिए GPU अत्यंत लाभकारी है:

2. लोकल LLM इन्फ़रेंस (Hugging Face Transformers)

Ollama के बिना सीधे Haystack में LLMs चलाने के लिए:

3. Ollama के साथ पेयर करें (सिफारिश की गई विधि)

सरलता और प्रदर्शन के सर्वोत्तम संयोजन के लिए, LLM इन्फ़रेंस के लिए Ollama और ऑर्केस्ट्रेशन के लिए Haystack चलाएँ:

दोनों कंटेनरों में GPU उपयोग की निगरानी करें:

टिप्स और सर्वोत्तम प्रथाएँ

सही एम्बेडिंग मॉडल चुनें

मॉडल
VRAM
स्पीड
गुणवत्ता
उत्तम हेतु

BAAI/bge-small-en-v1.5

~0.5 GB

सबसे तेज

अच्छा

उच्च-थ्रूपुट इंडेक्सिंग

BAAI/bge-base-en-v1.5

~1 GB

तेज़

बेहतर

सामान्य RAG

BAAI/bge-large-en-v1.5

~2 GB

मध्यम

सर्वोत्तम

उच्चतम सटीकता

nomic-ai/nomic-embed-text-v1

~1.5 GB

तेज़

उत्कृष्ट

लंबे दस्तावेज़ों के लिए

पाइपलाइन डिज़ाइन सुझाव

  • डॉक्यूमेंट्स को बुद्धिमानी से विभाजित करें — अधिकांश RAG उपयोग मामलों के लिए 200–400 शब्द के चंक्स 10–15% ओवरलैप के साथ अच्छा काम करते हैं

  • एम्बेडिंग्स को कैश करें — अपने डॉक्यूमेंट स्टोर को डिस्क पर परस्थित रखें; फिर से एम्बेड करना महंगा है

  • उपयोग करें warm_up() — कॉल करें component.warm_up() उत्पादन उपयोग से पहले मॉडल्स को GPU मेमोरी में लोड करने के लिए

  • बैच इंडेक्सिंग — इष्टतम GPU उपयोग के लिए 32–64 के बैच में दस्तावेज़ों को प्रोसेस करें

  • मेटाडेटा के साथ फ़िल्टर करें — पुनःप्राप्ति को सीमित करने के लिए Haystack के मेटाडेटा फ़िल्टरेशन का उपयोग करें (जैसे तारीख, स्रोत, श्रेणी द्वारा)

लागत अनुकूलन

बाहरी एक्सेस के लिए Hayhooks सुरक्षित करें

समस्याओं का निवारण

समस्या
संभावित कारण
समाधान

ModuleNotFoundError: haystack

पैकेज इंस्टॉल नहीं है

Docker इमेज को पुनर्निर्माण करें; जांचें pip install haystack-ai सफल हुआ

CUDA में आउट ऑफ मेमोरी

एम्बेडिंग मॉडल बहुत बड़ा है

उपयोग करें bge-small-en-v1.5 या बैच साइज घटाएँ

Hayhooks पाइपलाइन पर 404 लौटाता है

YAML फ़ाइल नहीं मिली

वॉल्यूम माउंट की जाँच करें; पाइपलाइन फ़ाइल को होना चाहिए /app/pipelines/

CPU पर एम्बेडिंग धीमी है

GPU का पता नहीं चला

सत्यापित करें --gpus all फ्लैग; जाँचें torch.cuda.is_available()

Ollama कनेक्शन अस्वीकार किया गया

गलत होस्टनाम

उपयोग करें --add-host=host.docker.internal:host-gateway; URL को सेट करें http://host.docker.internal:11434

HuggingFace डाउनलोड विफल होता है

टोकन गायब या रेट लिमिट

सेट करें HF_TOKEN env var; सुनिश्चित करें मॉडल गेटेड नहीं है

पाइपलाइन YAML पार्स त्रुटि

अवैध सिंटैक्स

YAML वैध करें; उपयोग करें python3 -c "import yaml; yaml.safe_load(open('pipeline.yml'))"

कंटेनर तुरंत बाहर निकलता है

स्टार्टअप त्रुटि

देखें docker logs haystack; सुनिश्चित करें Dockerfile CMD सही है

पोर्ट 1416 बाहरी रूप से पहुँच योग्य नहीं है

फ़ायरवॉल / पोर्ट फ़ॉरवर्डिंग

Clore.ai ऑर्डर सेटिंग्स में पोर्ट एक्सपोज़ करें; सर्वर के खुले पोर्ट्स जांचें

डिबग कमांड्स

अधिक पढ़ने के लिए

Last updated

Was this helpful?