- Tabby, GitHub Copilot का open source·on-premise विकल्प, एक self-hosted AI coding assistant है, और इसका लक्ष्य cloud service के बिना चलने वाला workflow देना है
- सर्वर DBMS या cloud service की जरूरत नहीं वाली self-contained संरचना पर जोर देता है, और OpenAPI interface के साथ इस तरह डिज़ाइन किया गया है कि Cloud IDE जैसी मौजूदा infrastructure के साथ आसानी से integrate हो सके
- runtime environment consumer-grade GPU को support करता है, और एक Docker command से
StarCoder-1B code model और Qwen2-1.5B-Instruct chat model का उपयोग करके सर्वर चलाया जा सकता है
- हाल की updates में GitLab Merge Request को context के रूप में index करने वाला v0.30, REST API से अपने documents जोड़ने वाला v0.29, और Answer Engine messages को shareable Pages में बदलने वाला v0.28 शामिल हैं
- IDE/Editor extensions, installation, configuration documents और contribution guide उपलब्ध हैं, और Rust environment व कुछ dependencies तैयार होने पर
cargo build से इसे सीधे build किया जा सकता है
Tabby की भूमिका और बुनियादी विशेषताएँ
- Tabby एक self-hosted AI coding assistant है, जो GitHub Copilot का open source और on-premise विकल्प है
- इसकी मुख्य विशेषताएँ तीन बिंदुओं में समझी जा सकती हैं
- यह self-contained है, इसलिए DBMS या cloud service की जरूरत नहीं होती
- यह OpenAPI interface देता है, जिससे Cloud IDE जैसी मौजूदा infrastructure के साथ integration आसान हो जाता है
- यह consumer-grade GPU को support करता है
- प्रोजेक्ट documentation, Slack, और roadmap के लिंक देता है
- live demo Tabby वेबसाइट पर खोला जा सकता है
हाल के बदलाव
- 2025-12-12: GitHub issues को Pochi tasks से जोड़कर implementation करने और sidebar से CI/Lint/Test results analysis के साथ PR बनाने की सुविधा देने वाला
vscode@0.20.0 उपलब्ध कराया गया
- 2025-07-02: v0.30 GitLab Merge Request को context के रूप में index करने की सुविधा देता है
- 2025-05-25: Agent private preview waitlist में शामिल होने की जानकारी दी गई
- 2025-05-20: v0.29 में REST API के जरिए अपने documents Tabby में जोड़े जा सकते हैं
- 2025-05-01: v0.28 Answer Engine messages को स्थायी और shareable Pages में बदल देता है
- 2025-03-31: v0.27 chat side panel के
@ menu को और समृद्ध बनाता है
पहले के updates से दिखने वाला feature scope
- Answer Engine को v0.13.0 में internal engineering teams के लिए एक central knowledge engine के रूप में पेश किया गया था, जो development team के अंदरूनी data के साथ integrate होकर जवाब देता है
- Tabby ने GitLab SSO, self-hosted GitHub/GitLab, HTTP API integration, और Code Browser के repo-context जैसी integration और configuration क्षमताएँ जोड़ी हैं
- IDE plugin workflow में VSCode/Vim/IntelliJ updates, VSCode chat side panel, chat commands के जरिए editing, inline completion के कई विकल्प, और auto-generated commit messages शामिल हैं
- code completion local LSP declarations और हाल में बदले गए code जैसे local relevant snippets का उपयोग करता है, और v0.3.0 में RAG-based code completion default रूप से enabled था
- model support के संदर्भ में CodeGemma, CodeQwen, Codestral, CodeLlama 7B experimental support, और Apple M1/M2 Metal inference support का उल्लेख है
शुरू करने का तरीका और run example
- शुरुआत की documentation Getting Started में उपलब्ध है
- सर्वर चलाने का सबसे आसान तरीका Docker command का उपयोग है
docker run -it \
--gpus all -p 8080:8080 -v $HOME/.tabby:/data \
tabbyml/tabby \
serve --model StarCoder-1B --device cuda --chat-model Qwen2-1.5B-Instruct
- अतिरिक्त options में inference type और parallelism जैसी settings शामिल हैं, जिन्हें अलग documentation page पर देखा जा सकता है
योगदान और build
- पूरा contribution guide CONTRIBUTING.md में है
- source code को submodules सहित clone किया जाता है
git clone --recurse-submodules https://github.com/TabbyML/tabby
cd tabby
- यदि repository पहले से clone की गई है, तो
git submodule update --recursive --init command से सभी submodules लाए जा सकते हैं
- build से पहले की तैयारी इस प्रकार है
- Rust environment setup
- macOS:
brew install protobuf
- Ubuntu/Debian:
apt install protobuf-compiler libopenblas-dev
- Ubuntu उपयोगी tools:
apt install make sqlite3 graphviz
- तैयारी पूरी होने पर
cargo build से Tabby को build किया जा सकता है
- contribution workflow बदलावों के बाद Pull Request submit करने तक जाता है
1 टिप्पणियां
Hacker News की राय
होमपेज पर
findMaxElementफ़ंक्शन पूरा करने का डेमो आगे आने वाली चीज़ों—या शायद मौजूदा स्थिति—को अच्छी तरह दिखाने वाला उदाहरण लगता हैउस फ़ंक्शन के लिए सुझाई गई Python की 6 लाइनों को बस
return max(arr)से बदला जा सकता है, और वह काम तो करता है लेकिन पूरी तरह जूनियर-लेवल कोड हैऐसा भयानक कोड अपने-आप में डरावना है, लेकिन उससे ज़्यादा चिंता इस बात की है कि जो लोग इसे आँख मूंदकर autocomplete करेंगे, उनका कौशल बढ़ना रुक जाएगा
वे story points तो कमा सकते हैं, लेकिन क्या वे सच में डेवलपर के तौर पर बेहतर हुए—यह सवाल है
लेकिन उन 20% को समझने के लिए LLM द्वारा किए गए 80% को भी समझना पड़ेगा, इसलिए LLM deployment तक आपकी जगह नहीं ले सकता—इस लिहाज़ से मैं बहुत चिंतित नहीं हूँ
मशीन भाषा → assembly → C → Python → LLM (natural language) की तरह, यानी इंसान के prompt को Python जैसे intermediate code में compile करना
CPython के शुरुआती version भी शायद perfect नहीं रहे होंगे और engineers भी चिंतित रहे होंगे। किस्मत अच्छी रही तो यह नया “compiler” भी धीरे-धीरे बेहतर और अधिक efficient होगा, लेकिन perfect नहीं होगा
फिर भी लोगों को वैसी ही कीमत चुकानी पड़ सकती है जैसी वे assembly को सीधे न संभालने के बदले पहले से चुका रहे हैं
अब AI आ गया है, तो हम उससे अपने लिए करवाने को पूछने लगे हैं, और अंत में न कुछ जानते हैं न कुछ कर पाते हैं
मुझे नहीं लगा था कि हमारा project रविवार को HN के front page पर आ जाएगा
Tabby दो साल पहले launch होने के बाद से काफी आगे बढ़ चुका है https://www.tabbyml.com, और अब code completion और codebase chat वाला पूरा AI developer platform बन गया है
team/enterprise use cases के लिए SSO, access control और user authentication भी support करता है https://demo.tabbyml.com/search/how-to-add-an-embedding-api-...
इसे अपनाने वाले users ने पाया कि on-premises delivery model में पूरा self-service onboarding देने वाला Tabby इकलौता platform है, और performance भी market के दूसरे विकल्पों के बराबर है—दिलचस्पी हो तो try करने की सलाह है
https://www.reddit.com/r/LocalLLaMA/s/lznmkWJhAZ
https://www.linkedin.com/posts/kelvinmu_last-week-i-introduc...
local AI के बारे में बहुत नहीं जानता, लेकिन आज़माना चाहता हूँ; ऐसे में “run tabby in 1 minute” https://github.com/TabbyML/tabby#run-tabby-in-1-minute मसलन ChatGPT free 4o-mini की तुलना में किस स्तर का है, यह जानना चाहता हूँ
अगर medium-spec MacBook Pro पर नीचे वाला Docker command चलाऊँ, तो क्या speed और capability में समान AI मिल पाएगा, या अभी वह स्तर नहीं है?
docker run -it --gpus all -p 8080:8080 -v $HOME/.tabby:/data tabbyml/tabby serve --model StarCoder-1B --device cuda --chat-model Qwen2-1.5B-Instructदेखा कि MacBook के लिए अलग guide page है और उसमें ज़्यादा context है https://tabby.tabbyml.com/docs/quick-start/installation/appl...
उसमें लिखा है, “M1/M2 की compute क्षमता सीमित है, इसलिए personal use के लिए पर्याप्त हो सकती है, लेकिन अगर team के लिए shared instance चाहिए तो CUDA या ROCm-based Docker hosting पर विचार करें”
1.5B जैसे बहुत छोटे models काफी dumb होते हैं, इसलिए interactive तरीके से code generate करने के लिए अच्छे नहीं हैं, लेकिन 3B से कम models भी tab completion suggestions काफी अच्छी तरह दे सकते हैं
local पर चलाए जा सकने वाले बड़े “open” models भी हैं, और 32B~70B range के models code लिखने समेत लगभग हर मामले में gpt-4o-mini से काफी बेहतर हो सकते हैं। उदाहरण के लिए
llama3.3-70b-instructऔरqwen2.5-coder-32b-instructकाफी ठीक हैंअगर RAM सच में कम है, तो
qwen2.5-coder-7b-instructयाcodegemma-7b-itभी आसान कामों के लिए इस्तेमाल लायक हो सकते हैं“medium-spec MacBook Pro” कहना काफी नहीं है; RAM कितनी है, यह अहम है। अंगूठे के नियम के तौर पर प्रति 1B parameters करीब 1GB RAM चाहिए
बहुत ज़्यादा quantize करने पर 500MB, non-quantized model में लगभग 2GB लगते हैं, लेकिन 8-bit quantization आम तौर पर करीब 1GB होता है और कुल मिलाकर ठीक रहता है
“IDE / extension telemetry toggle” Community Edition में बंद नहीं होता। उत्सुकता है कि इस remote measurement डेटा में क्या-क्या शामिल होता है
struct HealthState {model: String,chat_model: Option,device: String,arch: String,cpu_info: String,cpu_count: usize,cuda_devices: Vec,version: Version,webserver: Option,}https://tabby.tabbyml.com/docs/administration/usage-collecti...
इसी तरह के उपयोग के लिए मैं Continue.dev और ollama इस्तेमाल कर रहा हूं, और इस क्षेत्र में और tools बढ़ना हमेशा अच्छा लगता है
हालांकि हमेशा की तरह, सच में अच्छे model, जैसे Qwen2.5-coder 32B, चलाने के लिए काफी शक्तिशाली hardware चाहिए
सारे examples ऐसे code हैं जो असल में किसी library में मिल जाने चाहिए, और कुछ code की quality भी संदिग्ध लगती है
क्या LLM codebase के लिए spam bot बन रहा है?
“कई NVIDIA GPU का उपयोग कैसे करें” के अनुसार Tabby सिर्फ single GPU support करता है, और कई GPU इस्तेमाल करने हों तो कई Tabby instances चलाकर CUDA के लिए
CUDA_VISIBLE_DEVICES, और ROCm के लिएHIP_VISIBLE_DEVICESसेट करने को कहा गया हैऐसे में उत्सुकता है कि क्या NVLink से जुड़े 2 GPU को inference के लिए इस्तेमाल करना supported नहीं है, या फिर NVLink दो GPU को एक जैसा treat करता है इसलिए मामला अलग है
उदाहरण के लिए https://tabby.tabbyml.com/docs/references/models-http-api/vl... देख सकते हैं
शानदार project है। खासकर यह idea पसंद आया कि किसी बड़ी company को data भेजकर उनकी terms पर भरोसा नहीं करना पड़ता
coding assistant की effectiveness सीधे context length के proportional होती है, लेकिन personal computer पर चल सकने वाले open models आम तौर पर काफी छोटे होते हैं
अच्छा होगा अगर यह quantify करने वाला data हो कि यह ज्यादा complex codebase में कितना उपयोगी है
recommended hardware को लेकर उत्सुकता है। क्या GPU चाहिए? क्या पुराने Ryzen APU (Zen 3 और Vega 7 graphics) पर भी यह ठीक-ठाक चल सकता है?
integrated graphics हो या न हो, बड़ा फर्क नहीं पड़ता, और सिर्फ CPU पर चलाने पर model वैसे ही बहुत धीमा चलेगा
Mac LLM के लिए ठीक-ठाक इसलिए है क्योंकि Apple Silicon की memory bandwidth असामान्य रूप से ज्यादा है, लेकिन यह बहुत तेज VRAM वाले high-end GPU की speed से काफी पीछे है
tab completion के लिए इस्तेमाल होने वाला बहुत छोटा model हो तो पुराना AMD CPU भी शायद ठीक से संभाल सकता है
बहुत बढ़िया। खासकर Eclipse client देखकर खुशी हुई https://github.com/TabbyML/tabby/tree/3bd73a8c59a1c21312e812...
हालांकि Eclipse client की जानकारी खोजने के लिए थोड़ा खंगालना पड़ा। यह main README में भी नहीं था, और docs की IDE extensions list में भी नहीं था
पता नहीं यह बस छूटी हुई चीज है, या अभी “properly public” करने के लिए तैयार नहीं है