Show HN: Khoj - Llama 2 के साथ दूसरा दिमाग और ऑफ़लाइन चैट
(github.com/khoj-ai)- Khoj एक पर्सनल AI ऐप है जो उपयोगकर्ता की क्षमताओं का विस्तार करता है, और on-device personal AI से लेकर cloud-scale enterprise AI तक स्केल होने वाली संरचना रखता है
- आप लोकल या ऑनलाइन LLM के साथ चैट कर सकते हैं; उदाहरण मॉडल हैं llama3, qwen, gemma, mistral, gpt, claude, gemini, deepseek
- इंटरनेट और दस्तावेज़ों से जवाब पाए जा सकते हैं, और समर्थित दस्तावेज़ फ़ॉर्मैट में image, PDF, Markdown, org-mode, Word, Notion files आदि शामिल हैं
- Browser, Obsidian, Emacs, Desktop, Phone, Whatsapp से एक्सेस किया जा सकता है, और कस्टम knowledge, persona, chat model, और tools वाले agents बनाने का समर्थन करता है
- दोहराए जाने वाले research का automation, personal newsletter और smart alerts को inbox में डिलीवरी, उन्नत semantic search के ज़रिए संबंधित दस्तावेज़ों की खोज, image generation, voice conversation और message playback का समर्थन
- यह open source है और self-hosting संभव है, और उपयोगकर्ता के कंप्यूटर पर निजी तौर पर चलाया जा सकता है या cloud app में इस्तेमाल किया जा सकता है
- Enterprise रूप cloud service, on-premise, और hybrid solution के रूप में उपलब्ध है
1 टिप्पणियां
Hacker News की राय
वेबसाइट के landing page पर Llama या offline use case बिल्कुल नहीं दिख रहे, और लगता है कि सिर्फ OpenAI के जरिए online इस्तेमाल का ज़िक्र है
यह भी जानना चाहूंगा कि कौन-सा model size और fine-tuning इस्तेमाल हो रही है, और इस use case में performance कैसी दिखी
Llama 2 को 7B और 13B size में थोड़ा इस्तेमाल करके देखा है, और consumer machines पर यह RAM काफ़ी खाता हुआ लगा, इसलिए संभावना वाकई रोमांचक है
यह भी जानना चाहूंगा कि search embeddings और vector DB पर date commands जैसी अतिरिक्त metadata filtering जोड़कर किया गया है या नहीं
Khoj TheBloke का Llama 7B 4-bit quantized GGML इस्तेमाल कर रहा है
notes को context के रूप में देने पर user queries के coherent जवाब देने वाला यह शायद पहला offline chat model है, और GPT-3.5+ की तुलना में इसका ज़्यादा conversational होना भी दिलचस्प है
अगर self-host करने पर यह guarantee हो कि personal information remote service को बिल्कुल नहीं भेजी जाती, तो उस privacy guarantee को बहुत साफ़ तौर पर लिख देना मददगार होगा
इसे देखकर सच में बहुत अच्छा लगा, और मेरे हिसाब से local execution ही AI का असली भविष्य है
छोटे M2 MacBook Air पर चलाकर देखा तो वह पूरी तरह freeze हो गया
पुराने PC में virus लगने पर mouse हिलाने के 45 seconds बाद cursor हिलता था, वह दौर याद आ गया और अजीब-सी nostalgia भी महसूस हुई
लगता है इस Air से performance expectations कम रखनी होंगी; मेरे साथ ऐसा पहली बार हुआ है
7B model आम तौर पर unified memory 16GB या उससे ज़्यादा होने पर ठीक चलता है, लेकिन 8GB Mac को काफी struggle करते देखा है
क्या यह दिन भर की web history लेकर उन चीज़ों को notes में summarize भी कर सकता है जिन पर मैंने research की?
यह personal AI के ideal रूप के और करीब होता जा रहा है
लगता है कुछ सालों में मेरे पास एक digital brain होगा जो मेरी सारी जानकारी से भरा होगा; इसका इंतज़ार है
daily web history summarize करने वाला browser extension बनाना इतना बड़ा काम नहीं लगता, और शायद ऐसा कुछ पहले से भी हो
अपनी सभी digital trails को index करके आसानी से digestible बनाना सच में बहुत valuable होगा
उम्मीद है Khoj ऐसा बन पाए
जानना चाहूंगा कि क्या ऐसे feature वाले tools की कोई recommendation है
या फिर कोई साथ मिलकर इसे बनाना चाहे तो भी ढूंढना चाहूंगा
PostHog telemetry किसलिए इस्तेमाल हो रही है?
समझ नहीं आता कि docs में इसके बारे में कुछ क्यों नहीं है, और clear opt-out method क्यों नहीं है
उदाहरण के लिए, लोग Markdown इस्तेमाल करते हैं या org, जैसी चीज़ें जानने के लिए
सारा data पूरी तरह anonymize करके collect होता है, और identifiable information telemetry server को नहीं भेजी जाती
opt out करने के लिए
khoj.ymlमेंshould-log-telemetryvalue को false set कर देंक्या collect होता है और कैसे, यह docs में जोड़ दिया है: https://docs.khoj.dev/#/telemetry
इसके अलावा project हैरान करने वाली हद तक अच्छी तरह काम करता है
project बढ़िया दिखता है
अगर PDF directory indexing भी कर सके, और scanned documents को index करने के लिए PDF पर OCR तक कर दे, तो सच में बहुत अच्छा होगा
यह अभी project scope से बाहर हो सकता है, लेकिन बस कुछ दिन पहले ही मैंने सोचा था कि ऐसा tool होता तो अच्छा होता
Khoj search और chat के लिए PDF directories index कर सकता है
हालांकि अभी यह scanned PDF files handle नहीं कर पाता जिनमें selectable text नहीं है
अच्छा होगा अगर ऐसे files तक भी support हो जाए; बस implementation की ज़रूरत है
उम्मीद है जल्द हो पाएगा
PDF, downloads, screenshots, photos आदि crawl करके file organization का logical tree दिखाए, और फिर मैं उसे इस तरह modify कर सकूं: “इस topic से जुड़े PDFs यहां जोड़ो और source/author के हिसाब से organize करो, फिर screenshots को date order में यहां move करो”
मैं हमेशा ऐसा computer चाहता था जिसे बस “COMPUTER.” कहकर बुलाया जा सके
“COMPUTER!” कहा तो जवाब मिला, “Sir, you have to use the keyboard”; अरे keyboard, कितना पुरातन है
लगता है यह gpt4all इस्तेमाल कर रहा है, और जानना चाहूंगा कि local inference model बदलने का official supported तरीका है या नहीं
OpenAI के completion/chat API के लिए design किए गए कई apps सिर्फ llama-cpp-python [0] द्वारा दिए गए endpoint की ओर point करने पर भी लगभग उसी तरह काम करते हैं, और llama.cpp द्वारा support किए गए कई models और quantizations इस्तेमाल कर सकते हैं
इससे Apple Silicon के Metal acceleration या NVIDIA GPU सहित अपनी पसंद के hardware पर बड़े models चला सकते हैं, और openrouter.io जैसे दूसरे proxies भी इस्तेमाल कर सकते हैं
निजी तौर पर मैं openrouter.io खूब इस्तेमाल करता हूं क्योंकि यह Anthropic के 100k model को support करता है
[0]: https://github.com/abetlen/llama-cpp-python
इस line https://github.com/khoj-ai/khoj/blob/master/src/khoj/process... को अपनी पसंद के model से बदल देना शायद काफी होगा
docker-composeसे खुद local image build करनी होगी, लेकिन यह अपेक्षाकृत आसान होना चाहिएकई developers अलग-अलग models आज़माना चाहते हैं, लेकिन हम ऐसा रास्ता चाहते हैं जो इस्तेमाल में आसान हो और गहरी मदद भी दे
resources सीमित हैं, इसलिए किस पर focus करें इसे लेकर थोड़ा सोच रहे हैं
Obsidian इस्तेमाल करना शुरू करने और chat AI के साथ प्रयोग करने के नज़रिए से, यह वाकई शानदार है
अभी तक इस्तेमाल नहीं किया है, लेकिन ऐसी चीज़ का होना तय है
अगर आपके पास पर्याप्त अच्छा GPU नहीं है, तो शायद अभी यह consumer hardware पर बहुत उपयोगी न हो, लेकिन मुझे भरोसा है कि कुछ वर्षों में या उससे भी पहले यह संभव हो जाएगा
Logo भी सुंदर है और रंग भी पसंद आए
ऐसे use case में Llama 2 काफ़ी सक्षम है, इसलिए खासकर जब privacy महत्वपूर्ण हो, तब ChatGPT के लिए पैसे देने का आकर्षण कम हो सकता है
इसे अच्छे से आगे बनाते रहें
मैंने एक दिन तक Khoj इस्तेमाल किया और यह वाकई साफ़-सुथरा और अच्छी तरह बनाया गया है
कुछ observations हैं
इससे जुड़ा issue और सुझाव मैंने यहाँ छोड़ा है: https://github.com/khoj-ai/khoj/issues/389
ऊपर वाले GitHub issue में भी note जोड़ा है
उदाहरण के लिए, क्या huggingface/gpt4all model सेट किया जा सकता है; अगर हाँ, तो क्या यह नाम के आधार पर auto-download होता है, या
.binऔर YAML को किसी volume में रखना होगा—यह जानना चाहूँगाdocs में जैसा लिखा है, आप telemetry server[1] खुद देख सकते हैं
अगर कुछ अजीब दिखे तो बताइए, मैं तुरंत hotfix कर दूँगा
सभी telemetry metadata भी यहाँ देख सकते हैं[2]
[1]: https://github.com/khoj-ai/khoj/tree/master/src/telemetry
[2]: https://github.com/khoj-ai/khoj/blob/master/src/khoj/routers...
docker-composeconfig थोड़ा खास है, इसलिए details के लिए उस issue को देखेंGPU integration से जुड़े pointers के लिए भी धन्यवाद, और स्पष्ट कर दूँ कि indexing के लिए हम GPU optimizations इस्तेमाल करते हैं, लेकिन Llama-based local chat के लिए अभी नहीं
उस हिस्से को काम कराने पर हम काम कर रहे हैं
./serverचलाने पर मिलता है, क्या local models के लिए custom URL support किया जा सकता है?अगर search context को पहले से tokenize कर रहे हैं, तो यह थोड़ा मुश्किल भी हो सकता है
Project वाकई शानदार है
C-sका ज़िक्र मज़ेदार हैisearch-forwardआम तौर पर कम latency वाली literal match search के लिए इस्तेमाल होता हैउत्सुक हूँ कि किस workflow में Khoj, isearch के विकल्प के रूप में स्वीकार्य latency या बेहतर उपयोगिता दे सकता है
docs explore करते समय आप इसे कैसे इस्तेमाल करते हैं, इसका कोई example है?
यह keywords के बजाय natural language search interface से type करते ही search करने का अनुभव देती है
मेरा workflow ऐसा है
C-c s sRETn n o 2[1]:
C-c skhojtransient menu से bound है[2] https://orgmode.org/manual/Speed-Keys.html