- Tabby adalah asisten coding AI yang di-host sendiri, disediakan sebagai alternatif open-source dan on-premises untuk GitHub Copilot, dengan tujuan alur operasional tanpa layanan cloud
- Servernya mengusung konfigurasi mandiri yang tidak memerlukan DBMS atau layanan cloud, dan dirancang agar mudah diintegrasikan dengan infrastruktur yang sudah ada seperti Cloud IDE melalui antarmuka OpenAPI
- Lingkungan eksekusinya mendukung GPU kelas konsumen, dan server dapat dijalankan dengan satu perintah Docker menggunakan model kode
StarCoder-1B dan model chat Qwen2-1.5B-Instruct
- Pembaruan terbaru mencakup v0.30 yang mengindeks GitLab Merge Request sebagai konteks, v0.29 yang menambahkan dokumentasi sendiri melalui REST API, serta v0.28 yang mengubah pesan Answer Engine menjadi Pages yang dapat dibagikan
- Tersedia dokumentasi untuk ekstensi IDE/Editor, instalasi, konfigurasi, dan panduan kontribusi; dengan menyiapkan lingkungan Rust serta beberapa dependensi, pengguna dapat membangun langsung dengan
cargo build
Peran dan fitur dasar Tabby
- Tabby adalah asisten coding AI yang di-host sendiri, sekaligus alternatif open-source dan on-premises untuk GitHub Copilot
- Fitur utamanya dapat dirangkum menjadi tiga hal
- Bersifat mandiri, sehingga tidak memerlukan DBMS atau layanan cloud
- Menyediakan antarmuka OpenAPI, sehingga mudah diintegrasikan dengan infrastruktur yang sudah ada seperti Cloud IDE
- Mendukung GPU kelas konsumen
- Proyek ini menyediakan tautan ke dokumentasi, Slack, dan roadmap
- Demo live dapat dibuka di situs web Tabby
Perubahan terbaru
- 2025-12-12: Tersedia
vscode@0.20.0 yang menghubungkan GitHub issue ke pekerjaan Pochi untuk implementasi, serta memungkinkan pembuatan PR dari sidebar bersama analisis hasil CI/Lint/Test
- 2025-07-02: v0.30 mendukung fitur untuk mengindeks GitLab Merge Request sebagai konteks
- 2025-05-25: Tersedia panduan untuk bergabung dalam daftar tunggu private preview Agent
- 2025-05-20: Di v0.29, pengguna dapat menambahkan dokumentasi sendiri ke Tabby melalui REST API
- 2025-05-01: v0.28 mengonversi pesan Answer Engine menjadi Pages yang persisten dan dapat dibagikan
- 2025-03-31: v0.27 menyediakan menu
@ yang lebih kaya di panel samping chat
Cakupan fitur yang terlihat dari pembaruan sebelumnya
- Answer Engine diperkenalkan di v0.13.0 sebagai mesin pengetahuan terpusat untuk tim engineering internal, dan memberikan jawaban dengan berintegrasi dengan data internal tim pengembang
- Tabby telah menambahkan berbagai fitur integrasi dan konfigurasi seperti GitLab SSO, GitHub/GitLab yang di-host sendiri, integrasi HTTP API, serta repo-context pada Code Browser
- Alur plugin IDE mencakup pembaruan VSCode/Vim/IntelliJ, panel samping chat VSCode, pengeditan melalui perintah chat, beberapa pilihan untuk inline completion, serta pesan commit yang dibuat otomatis
- Code completion memanfaatkan snippet lokal yang relevan seperti deklarasi LSP lokal dan kode yang baru-baru ini diubah; di v0.3.0, code completion berbasis RAG diaktifkan secara default
- Dari sisi dukungan model, disebutkan dukungan untuk CodeGemma, CodeQwen, Codestral, dukungan eksperimental CodeLlama 7B, serta dukungan inferensi Apple M1/M2 Metal
Cara memulai dan contoh menjalankan
- Dokumentasi awal tersedia di Getting Started
- Cara paling mudah untuk menjalankan server adalah menggunakan perintah Docker
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
- Opsi tambahan mencakup pengaturan seperti tipe inferensi dan paralelisme, dan dapat dilihat di halaman dokumentasi terpisah
Kontribusi dan build
- Panduan kontribusi lengkap tersedia di CONTRIBUTING.md
- Source code di-clone bersama submodule
git clone --recurse-submodules https://github.com/TabbyML/tabby
cd tabby
- Jika repositori sudah di-clone, semua submodule dapat diambil dengan perintah
git submodule update --recursive --init
- Persiapan sebelum build adalah sebagai berikut
- Menyiapkan lingkungan Rust
- macOS:
brew install protobuf
- Ubuntu/Debian:
apt install protobuf-compiler libopenblas-dev
- Alat bantu berguna untuk Ubuntu:
apt install make sqlite3 graphviz
- Setelah persiapan selesai, Tabby dapat dibangun dengan
cargo build
- Alur kontribusi berlanjut ke pengiriman Pull Request setelah melakukan perubahan
1 komentar
Opini Hacker News
Demo penyelesaian fungsi
findMaxElementdi halaman beranda terasa seperti contoh yang menunjukkan seperti apa masa depan, atau mungkin bahkan kondisi saat ini, dengan cukup baikEnam baris Python yang diusulkan untuk fungsi itu sebenarnya bisa diganti dengan
return max(arr), dan meski berfungsi, itu sepenuhnya kode level juniorKode mengerikan seperti ini saja sudah menakutkan, tapi yang lebih mengkhawatirkan adalah orang-orang yang secara membabi buta melakukan autocomplete terhadapnya mungkin akan berhenti berkembang kemampuannya
Mereka mungkin bisa mendapat story point, tapi apakah mereka benar-benar menjadi lebih baik sebagai developer patut dipertanyakan
Namun untuk memahami 20% itu, kita juga harus memahami 80% yang ditangani LLM, jadi saya tidak terlalu khawatir karena LLM tidak akan menggantikan sampai tahap deployment
Seperti bahasa mesin → assembly → C → Python → LLM (bahasa alami), prompt manusia dikompilasi menjadi kode perantara seperti Python
Versi awal CPython juga pasti tidak sempurna, dan para engineer mungkin merasa gelisah. Jika beruntung, “compiler” baru ini juga akan makin baik dan efisien, tetapi tidak akan sempurna
Meski begitu, kita mungkin akan membayar biaya yang mirip dengan biaya yang sudah kita terima karena orang-orang tidak lagi menangani assembly secara langsung
Sekarang AI muncul, kita bertanya agar ia melakukannya untuk kita, dan pada akhirnya kita tidak tahu apa-apa dan tidak bisa melakukan apa-apa
Saya tidak menyangka proyek kami akan masuk halaman depan HN pada hari Minggu
Tabby telah berkembang pesat sejak dirilis 2 tahun lalu https://www.tabbyml.com, dan kini telah menjadi platform developer AI yang menyeluruh dengan penyelesaian kode dan chat codebase
Untuk penggunaan tim/perusahaan, Tabby juga mendukung SSO, kontrol akses, dan autentikasi pengguna https://demo.tabbyml.com/search/how-to-add-an-embedding-api-...
Para pengguna yang mengadopsinya menemukan bahwa Tabby adalah satu-satunya platform yang menyediakan onboarding self-service penuh dalam model penyediaan on-premise, dan performanya juga sebanding dengan opsi lain di pasar, jadi jika penasaran kami sarankan mencobanya
https://www.reddit.com/r/LocalLLaMA/s/lznmkWJhAZ
https://www.linkedin.com/posts/kelvinmu_last-week-i-introduc...
Sebagai orang yang tidak terlalu paham AI lokal tetapi ingin mencobanya, saya penasaran seberapa jauh “run tabby in 1 minute” https://github.com/TabbyML/tabby#run-tabby-in-1-minute jika dibandingkan, misalnya, dengan ChatGPT gratis 4o-mini
Jika menjalankan perintah Docker di bawah ini pada MacBook Pro spesifikasi menengah, apakah kita bisa memakai AI dengan kecepatan dan kemampuan yang mirip, atau masih belum sampai ke level itu?
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-InstructTernyata ada halaman panduan terpisah untuk MacBook dan konteks tambahan https://tabby.tabbyml.com/docs/quick-start/installation/appl...
Di sana tertulis, “Kemampuan komputasi M1/M2 terbatas, sehingga mungkin cukup untuk penggunaan pribadi, tetapi jika membutuhkan instance bersama untuk tim, pertimbangkan hosting Docker berbasis CUDA atau ROCm”
Model yang sangat kecil seperti 1.5B cukup bodoh sehingga tidak bagus untuk menghasilkan kode secara interaktif, tetapi model di bawah 3B pun bisa cukup baik untuk saran penyelesaian dengan tombol Tab
Ada juga model “open” yang lebih besar yang bisa dijalankan secara lokal, dan model di kisaran 32B–70B bisa jauh lebih baik daripada gpt-4o-mini dalam hampir semua hal, termasuk menulis kode. Misalnya
llama3.3-70b-instructdanqwen2.5-coder-32b-instructcukup bagusJika RAM benar-benar terbatas,
qwen2.5-coder-7b-instructataucodegemma-7b-itjuga masih bisa dipakai untuk tugas sederhanaUngkapan “MacBook Pro spesifikasi menengah” saja tidak cukup; yang penting adalah berapa banyak RAM-nya. Sebagai aturan praktis, dibutuhkan sekitar 1GB RAM per 1B parameter
Dengan kuantisasi kuat bisa 500MB, sedangkan model tanpa kuantisasi sekitar 2GB, tetapi kuantisasi 8-bit biasanya sekitar 1GB dan umumnya baik-baik saja
“Toggle telemetri IDE / ekstensi” tidak bisa dimatikan di Community Edition. Jadi penasaran apa saja yang termasuk dalam data telemetri jarak jauh ini
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...
Saya memakai Continue.dev dan ollama untuk tujuan serupa, dan selalu senang melihat makin banyak alat di bidang ini
Namun seperti biasa, untuk menjalankan model yang benar-benar bagus, misalnya Qwen2.5-coder 32B, dibutuhkan hardware yang cukup kuat
Semua contohnya pada dasarnya adalah kode yang biasanya dicari di library, dan kualitas sebagian kodenya juga meragukan
Apakah LLM akan menjadi bot spam untuk codebase?
Menurut “cara memanfaatkan beberapa GPU NVIDIA”, Tabby hanya mendukung satu GPU, dan jika ingin memakai beberapa GPU, disarankan menjalankan beberapa instance Tabby lalu mengatur
CUDA_VISIBLE_DEVICESuntuk CUDA danHIP_VISIBLE_DEVICESuntuk ROCmKalau begitu, saya penasaran apakah penggunaan 2 GPU yang terhubung dengan NVLink untuk inferensi tidak didukung, ataukah ini situasi berbeda karena NVLink memperlakukan dua GPU seperti satu GPU
Contohnya bisa dilihat di https://tabby.tabbyml.com/docs/references/models-http-api/vl...
Proyek yang keren. Saya terutama suka idenya bahwa kita tidak perlu mengirim data ke perusahaan besar dan percaya pada ketentuan mereka
Efektivitas coding assistant berbanding langsung dengan panjang konteks, sementara model terbuka yang bisa dijalankan di komputer pribadi biasanya jauh lebih kecil
Akan bagus jika ada data yang menguantifikasi seberapa berguna ini pada codebase yang lebih kompleks
Saya penasaran dengan hardware yang direkomendasikan. Apakah perlu GPU? Apakah bisa berjalan cukup baik di Ryzen APU lama (Zen 3 dan grafis Vega 7)?
Ada atau tidaknya grafis terintegrasi tidak membuat perbedaan besar, dan jika dijalankan hanya dengan CPU, model tetap akan berjalan sangat lambat
Alasan Mac lumayan oke untuk LLM adalah karena bandwidth memori Apple Silicon luar biasa tinggi, tetapi masih jauh dari kecepatan GPU kelas atas dengan VRAM yang sangat cepat
Untuk model yang sangat kecil yang dipakai untuk tab completion, CPU AMD lama mungkin masih bisa menanganinya dengan cukup baik
Sangat keren. Terutama senang karena ada klien Eclipse https://github.com/TabbyML/tabby/tree/3bd73a8c59a1c21312e812...
Namun saya harus agak mengulik untuk menemukan informasi tentang klien Eclipse. Tidak ada di README utama maupun di daftar ekstensi IDE pada dokumentasi
Entah ini sekadar terlewat, atau memang belum siap untuk “dipublikasikan secara resmi”