2023-03-27 04:09:07 +00:00
< div align = "center" >
2023-03-27 04:45:59 +00:00
2023-03-27 04:09:07 +00:00
# 🐾 Tabby
2023-06-06 00:38:54 +00:00
[![build status ](https://img.shields.io/github/actions/workflow/status/TabbyML/tabby/ci.yml?label=build )](https://github.com/TabbyML/tabby/actions/workflows/ci.yml)
2023-04-09 10:08:07 +00:00
[![Docker pulls ](https://img.shields.io/docker/pulls/tabbyml/tabby )](https://hub.docker.com/r/tabbyml/tabby)
2023-06-06 00:38:54 +00:00
[![License ](https://img.shields.io/badge/License-Apache_2.0-blue.svg )](https://opensource.org/licenses/Apache-2.0)
2023-03-27 04:45:59 +00:00
2023-03-27 04:09:07 +00:00
< / div >
2023-03-16 09:26:43 +00:00
2023-04-06 11:18:09 +00:00
Self-hosted AI coding assistant. An opensource / on-prem alternative to GitHub Copilot.
2023-03-16 09:26:43 +00:00
> **Warning**
2023-04-06 18:51:55 +00:00
> Tabby is still in the alpha phase
2023-03-27 04:09:07 +00:00
## Features
* Self-contained, with no need for a DBMS or cloud service
* Web UI for visualizing and configuration models and MLOps.
* OpenAPI interface, easy to integrate with existing infrastructure (e.g Cloud IDE).
* Consumer level GPU supports (FP-16 weight loading with various optimization).
2023-03-16 10:23:45 +00:00
2023-04-06 16:30:35 +00:00
## Demo
2023-04-06 16:35:48 +00:00
< p align = "center" >
< a href = "https://huggingface.co/spaces/TabbyML/tabby" > < img alt = "Open in Spaces" src = "https://huggingface.co/datasets/huggingface/badges/raw/main/open-in-hf-spaces-md.svg" > < / a >
< / p >
2023-04-06 16:30:00 +00:00
< p align = "center" >
< img alt = "Demo" src = "https://user-images.githubusercontent.com/388154/230440226-9bc01d05-9f57-478b-b04d-81184eba14ca.gif" >
< / p >
2023-04-11 07:44:23 +00:00
## Get started: Server
2023-03-27 04:59:08 +00:00
### Docker
2023-05-31 23:27:55 +00:00
We recommend adding the following aliases to your `.bashrc` or `.zshrc` file:
```shell
# Save aliases to bashrc / zshrc
alias tabby="docker run -u $(id -u) -p 8080:8080 -v $HOME/.tabby:/data tabbyml/tabby"
2023-03-29 04:57:03 +00:00
2023-05-31 23:27:55 +00:00
# Alias for GPU (requires NVIDIA Container Toolkit)
alias tabby-gpu="docker run --gpus all -u $(id -u) -p 8080:8080 -v $HOME/.tabby:/data tabbyml/tabby"
2023-04-05 16:25:16 +00:00
```
2023-05-31 23:27:55 +00:00
After adding these aliases, you can use the `tabby` command as usual. Here are some examples of its usage:
```shell
# Usage
tabby --help
2023-03-27 04:54:37 +00:00
2023-05-31 23:27:55 +00:00
# Serve the model
tabby serve --model TabbyML/J-350M
```
2023-04-02 12:32:49 +00:00
2023-04-11 07:44:23 +00:00
## Getting Started: Client
We offer multiple methods to connect to Tabby Server, including using OpenAPI and editor extensions.
2023-03-27 04:59:08 +00:00
2023-04-11 07:44:23 +00:00
### API
2023-05-31 23:27:55 +00:00
Tabby has opened a FastAPI server at [localhost:8080 ](https://localhost:8080 ), which includes an OpenAPI documentation of the HTTP API. The same API documentation is also hosted at https://tabbyml.github.io/tabby
2023-04-11 07:44:23 +00:00
### Editor Extensions
2023-04-26 02:56:19 +00:00
* [VSCode Extension ](./clients/vscode ) – Install from the [marketplace ](https://marketplace.visualstudio.com/items?itemName=TabbyML.vscode-tabby ), or [open-vsx.org ](https://open-vsx.org/extension/TabbyML/vscode-tabby )
2023-04-11 09:40:43 +00:00
* [VIM Extension ](./clients/vim )