Go to file
Meng Zhang 381e88392c
refactor(scheduler): remove kv cache, using tantivy directly for incremental indexing + garbage collection (#2485)
* refactor(scheduler): remove get_source_file cache as it's no longer the bottleneck for computation

* chore: rename methods

* switch to tantivy for garbage collection

* remove legacy KV cache

* rename to source_file_key

* update

* update

* format

* update

* update

* update

* update

* update
2024-06-24 08:52:37 +00:00
.changes
.github ci: fix extension name on unix-like system (#2471) 2024-06-21 17:52:11 +08:00
ci
clients fix(agent): fix the endpoint config to always remove trailing slash. (#2472) 2024-06-21 21:32:40 +08:00
crates refactor(scheduler): remove kv cache, using tantivy directly for incremental indexing + garbage collection (#2485) 2024-06-24 08:52:37 +00:00
docker ci: install katana in docker build (#2466) 2024-06-21 16:50:06 +08:00
ee refactor(scheduler): remove kv cache, using tantivy directly for incremental indexing + garbage collection (#2485) 2024-06-24 08:52:37 +00:00
experimental
python
rules
website docs: add prompt template information to http based completion config. 2024-06-22 16:58:54 +08:00
.changie.yaml
.dockerignore
.env refactor(db): Rewrite database code to use sqlx instead of rusqlite (#1340) 2024-02-01 09:38:37 -08:00
.gitattributes
.gitignore
.gitmodules
.rustfmt.toml
Cargo.lock refactor(scheduler): remove kv cache, using tantivy directly for incremental indexing + garbage collection (#2485) 2024-06-24 08:52:37 +00:00
Cargo.toml
CHANGELOG.md
CODE_OF_CONDUCT.md
codecov.yml
CONTRIBUTING.md
LICENSE
Makefile
MODEL_SPEC.md
package.json
pnpm-lock.yaml fix(ui): search citation rendering issues (#2484) 2024-06-24 14:53:32 +08:00
pnpm-workspace.yaml
README.md docs: update readme. (#2404) 2024-06-13 22:23:39 +08:00
sgconfig.yml
turbo.json

🐾 Tabby

📚 Docs💬 Slack Live Demo

latest release PRs Welcome Docker pulls codecov

Tabby is a self-hosted AI coding assistant, offering an open-source and on-premises alternative to GitHub Copilot. It boasts several key features:

  • Self-contained, with no need for a DBMS or cloud service.
  • OpenAPI interface, easy to integrate with existing infrastructure (e.g Cloud IDE).
  • Supports consumer-grade GPUs.

Open in Playground

Demo

🔥 What's New

  • 06/13/2024 VSCode 1.7 marks a significant milestone with a versatile Chat experience throughout your coding exprience. Come and they the latest chat in side-panel and editing via chat command!
  • 06/10/2024 Latest 📃blogpost drop on an enhanced code context understanding in Tabby!
  • 06/06/2024 Tabby v0.12.0 release brings 🔗seamless integrations (Gitlab SSO, Self-hosted GitHub/GitLab, etc.), to ⚙️flexible configurations (HTTP API integration) and 🌐expanded capabilities (repo-context in Code Browser)!
  • 05/22/2024 Tabby VSCode 1.6 comes with multiple choices in inline completion, and the auto-generated commit messages🐱💻!
  • 05/11/2024 v0.11.0 brings significant enterprise upgrades, including 📊storage usage stats, 🔗GitHub & GitLab integration, 📋Activities page, and the long-awaited 🤖Ask Tabby feature!
Archived
  • 04/22/2024 v0.10.0 released, featuring the latest Reports tab with team-wise analytics for Tabby usage.
  • 04/19/2024 📣 Tabby now incorporates locally relevant snippets(declarations from local LSP, and recently modified code) for code completion!
  • 04/17/2024 CodeGemma and CodeQwen model series have now been added to the official registry!
  • 03/20/2024 v0.9 released, highlighting a full feature admin UI.
  • 12/23/2023 Seamlessly deploy Tabby on any cloud with SkyServe 🛫 from SkyPilot.
  • 12/15/2023 v0.7.0 released with team management and secured access!
  • 10/15/2023 RAG-based code completion is enabled by detail in v0.3.0🎉! Check out the blogpost explaining how Tabby utilizes repo-level context to get even smarter!
  • 11/27/2023 v0.6.0 released!
  • 11/09/2023 v0.5.5 released! With a redesign of UI + performance improvement.
  • 10/24/2023 Major updates for Tabby IDE plugins across VSCode/Vim/IntelliJ!
  • 10/04/2023 Check out the model directory for the latest models supported by Tabby.
  • 09/18/2023 Apple's M1/M2 Metal inference support has landed in v0.1.1!
  • 08/31/2023 Tabby's first stable release v0.0.1 🥳.
  • 08/28/2023 Experimental support for the CodeLlama 7B.
  • 08/24/2023 Tabby is now on JetBrains Marketplace!

👋 Getting Started

You can find our documentation here.

Run Tabby in 1 Minute

The easiest way to start a Tabby server is by using the following Docker command:

docker run -it \
  --gpus all -p 8080:8080 -v $HOME/.tabby:/data \
  tabbyml/tabby \
  serve --model TabbyML/StarCoder-1B --device cuda

For additional options (e.g inference type, parallelism), please refer to the documentation page.

🤝 Contributing

Full guide at CONTRIBUTING.md;

Get the Code

git clone --recurse-submodules https://github.com/TabbyML/tabby
cd tabby

If you have already cloned the repository, you could run the git submodule update --recursive --init command to fetch all submodules.

Build

  1. Set up the Rust environment by following this tutorial.

  2. Install the required dependencies:

# For MacOS
brew install protobuf

# For Ubuntu / Debian
apt-get install protobuf-compiler libopenblas-dev
  1. Install useful tools:
# For Ubuntu
sudo apt install make sqlite3 graphviz
  1. Now, you can build Tabby by running the command cargo build.

Start Hacking!

... and don't forget to submit a Pull Request

🌍 Community

  • 🎤 Twitter / X - engage with TabbyML for all things possible
  • 📚 LinkedIn - follow for the latest from the community
  • 💌 Newsletter - subscribe to unlock Tabby insights and secrets

🔆 Activity

Git Repository Activity

🌟 Star History

Star History Chart