lang: zh slug: tabby title: ‘Tabby:拥有 33K+ 星级的自托管 AI 编码助手’ description: ‘Tabby 是一个自托管的人工智能编码助手。 VS Code、JetBrains、Vim、Neovim、Ollama、DeepSeek。 Docker 设置、IDE 集成、基准测试和生产强化。’ tags: [“ai-agent”, “coding”, “development”, “guide”, “open-source”, “opensource”, “reference”, “self-hosted”, “tutorial”] date: 2026-05-19 00:00:00+08:00 lastmod: 2026-05-19 00:00:00+08:00 tech_stack: [] application_domain: Llm Frameworks source_version: ’' licensing_model: Open Source license_type: Apache-2.0 file_size: ’' file_md5: ’' download_url: ’' backup_url: ’' github_repo: ‘https://github.com/TabbyML/tabby' last_maintained: ‘2026-05-19’ draft: false categories: [’llm-frameworks’] aliases:- /帖子/虎斑猫/ 常见问题解答:
- q:“Tabby 是 GitHub Copilot 的免费开源替代品吗?” ‘是的。 Tabby 根据 Apache-2.0 获得许可,可供个人免费使用,这与专有的 GitHub Copilot(10 美元/月)不同。 它的主要区别在于它是自托管的,因此您的代码 100% 保留在您自己的硬件上,而不是发送到第三方云。
- q: ‘如何使用 Docker 运行 Tabby?’ a: ‘使用以下命令拉取并运行官方映像: docker run -d –name tabby –gpus all -p 8080:8080 -v $HOME/.tabby:/dataregistry.tabbyml.com/tabbyml/tabbyserve –model StarCoder-1B –chat-model Qwen2-1.5B-Instruct –device cuda。 Tabby 支持 CUDA (NVIDIA)、Metal (Apple Silicon)、ROCm (AMD) 和仅 CPU 后端,并在首次启动时将模型权重下载到 $HOME/.tabby。
- q: ‘Tabby 可以完全离线运行吗?’ ‘是的。 初始模型下载后,Tabby 完全无需连接互联网即可运行。 推理服务器、IDE 扩展和管理仪表板都在您的本地网络上运行,这使其适合气隙环境。
- q:“运行 Tabby 需要什么硬件?” a:“对于个人用途,配备 16GB RAM 的笔记本电脑和 M 系列 MacBook 或配备 8GB+ VRAM 的 NVIDIA GPU 可以轻松运行 StarCoder2-3B 型号。 对于团队,为每个并发用户分配大约 4GB VRAM; RTX 4090 (24GB) 上的 7B 型号可同时支持 4-6 名开发人员。
- q: ‘Tabby 支持哪些 IDE 和模型?’
a: ‘Tabby 具有 VS Code、JetBrains IDE、Vim/Neovim 和 Emacs 的本机扩展,通过 HTTP 连接到本地服务器。 它适用于任何 OpenAI 兼容模型,包括 StarCoder2、Qwen2.5-Coder 和 DeepSeek-Coder,并且可以将推理委托给 Ollama 进行动态多模型管理。
特征图片:/images/articles/llm-frameworks-tabby-self-e15b14.jpg—
featureImage: /images/articles/tabby-33k-ai.png
——{{< 资源信息 >}}
OpenCode:超越 Claude 的开源 AI 编码代理 •
2026 年 AI 编码代理的持久内存GitHub Copilot sends your proprietary code to Microsoft’s cloud. For teams handling sensitive IP — fintech, healthcare, defense, enterprise SaaS — that is a non-starter. Tabby is the open-source answer: a self-hosted AI coding assistant that runs entirely on your own hardware, with zero external data leakage. With 33,530+ GitHub stars and an active release cadence (v0.32.0 shipped January 2026), Tabby has matured from an experimental project into a production-grade alternative to Copilot. This tabby tutorial walks through a complete Tabby setup, from Docker deployment to IDE integration and production hardening. If you are specifically comparing tabby vs copilot, the comparison table in Section 8 breaks down feature parity and trade-offs.## 什么是虎斑猫?Tabby 是一个自托管的 AI 编码助手和开源 GitHub Copilot 替代品。 它提供实时代码完成、代码查询的应答引擎和内联聊天 - 所有这些都在您控制的基础设施上运行。 Tabby 采用 Rust(占代码库的 92.9%)编写,专为提高速度而设计,可以在消费级 GPU、Apple Silicon 甚至纯 CPU 服务器上运行。## 虎斑猫的工作原理Tabby 由三个核心组件组成:1. 推理服务器:基于 Rust 的 HTTP 服务器,加载编码 LLM 并通过 OpenAPI 兼容端点提供完成服务。 它处理模型推理、提示模板和流响应。2. IDE 扩展:VS Code、JetBrains IDE、Vim/Neovim 和 Emacs 的本机扩展,可捕获编辑器上下文并将完成请求转发到推理服务器。3. 管理仪表板:用于用户管理、API 令牌生成、存储库索引和使用情况分析的内置 Web UI。 无需外部数据库 — Tabby 使用嵌入式 SQLite 存储。
数据流非常简单:IDE 扩展捕获光标周围的前缀/后缀上下文,将其发送到本地 Tabby 服务器,该服务器针对加载的模型(例如 StarCoder-2-3B 或 Qwen2.5-Coder-7B)运行推理,并在 GPU 上在 500 毫秒内返回完成结果。
完成本 tabby 教程后,您的本地服务器将处理代码完成,而不将任何源代码发送到第三方 API。 对于评估 tabby 与 copilot 的开发人员来说,关键的区别在于每个推理请求都保留在您的硬件上 - 这是将代码分类为敏感数据的组织的要求。## 安装和设置### 先决条件- Docker(推荐)或 Docker Compose
- NVIDIA Container Toolkit(用于 CUDA 系统上的 GPU 支持)
- 小型型号 4GB+ RAM(1.5B 参数),中型型号 16GB+ RAM(7B 参数)
- 10GB+ 磁盘空间用于模型权重### Docker 设置(5 分钟)让 Tabby 运行的最快方法是通过 Docker。 以下是三个主要计算后端的命令。#### NVIDIA GPU (CUDA)```` bas h
docker 运行 -d
–名称虎斑猫
–GPU全部
-p 8080:8080
-v $HOME/.tabby:/data
registry.tabbyml.com/tabbyml/tabby
服务
–型号 StarCoder-1B
–chat-model Qwen2-1.5B-指令
–设备cuda
SELinux 的系统,将 `:Z` 标志添加到卷挂载中:````
bas
h
docker 运行 -d \
--名称虎斑猫\
--GPU全部\
-p 8080:8080 \
-v $HOME/.tabby:/data:Z \
registry.tabbyml.com/tabbyml/tabby \
服务\
--型号 StarCoder-1B \
--chat-model Qwen2-1.5B-指令 \
--设备cuda
````#### 苹果硅(金属)````巴````
bas
h
docker 运行 -d \
--名称虎斑猫\
--GPU全部\
-p 8080:8080 \
-v $HOME/.tabby:/data:Z \
registry.tabbyml.com/tabbyml/tabby \
服务\
--型号 StarCoder-1B \
--chat-model Qwen2-1.5B-指令 \
--设备cuda
bas
h
docker 运行 -d
–名称虎斑猫
–设备/dev/kfd –设备/dev/dri
–group-add 视频
-p 8080:8080
-v $HOME/.tabby:/data
registry.tabbyml.com/tabbyml/tabby-rocm
服务
–型号 StarCoder-1B
–设备 rocm
#### C``` bas h docker 运行 -d \ --名称虎斑猫\ -p 8080:8080 \ -v $HOME/.tabby:/data \ registry.tabbyml.com/tabbyml/tabby \ 服务\ --型号 StarCoder-1B \ --chat-model Qwen2-1.5B-指令 \ --设备金属 ``安装
bas
h
检查服务器健康状况 #
卷曲 http://localhost:8080/v1/health# 查看日志 docker 日志 -f 虎斑猫# Open the admin dashboard open http://localhost:8080
docker 运行 -d \
--名称虎斑猫\
--设备/dev/kfd --设备/dev/dri \
--group-add 视频 \
-p 8080:8080 \
-v $HOME/.tabby:/data \
registry.tabbyml.com/tabbyml/tabby-rocm \
服务\
--型号 StarCoder-1B \
--设备 rocm
``版本:'3.8'
服务:
虎斑猫:
图片:registry.tabbyml.com/tabbyml/tabby
容器名称:虎斑猫
重新启动:除非停止
端口:
- “8080:8080”
卷:
- $HOME/.tabby:/data
环境:
- TABBY_WEBSERVER_JWT_TOKEN_SECRET=CH```
bas
h
docker 运行 -d \
--名称虎斑猫\
-p 8080:8080 \
-v $HOME/.tabby:/data \
registry.tabbyml.com/tabbyml/tabby \
服务\
--型号 Qwen2.5-Coder-0.5B \
--设备CPU
命令:> 服务 –型号 StarCoder2-3B –chat-model Qwen2.5-Coder-7B-Instruct –设备cuda –并行度4
JWT 密钥:```
bas
h
openssl rand -hex 3```
bas
h
# Check server health
curl http://localhost:8080/v1/health
# View logs
docker logs -f tabby
# Open the admin dashboard
open http://localhost:8080
```nst
a
l
l
tabbyml/tabby/tabby# 以 Metal 加速运行
虎斑服务\
--型号 StarCoder2-3B \
--chat-model Qwen2-1.5B-指令 \
--设备金属# 验证
卷曲 http://localhost:8080/v1/health
````## 与 VS Code、JetBrains、Vim 和 Ollama 集成Tabby 的 IDE 扩展通过 HTTP 将您的编辑器连接到本地推理服务器。 本节介绍四种最流行的编辑器以及如何使用 Ollama 作为灵活的模型 backen```
yam
l
版本:'3.8'
服务:
虎斑猫:
图片:registry.tabbyml.com/tabbyml/tabby
容器名称:虎斑猫
重新启动:除非停止
端口:
- “8080:8080”
卷:
- $HOME/.tabby:/data
环境:
- TABBY_WEBSERVER_JWT_TOKEN_SECRET=CHANGE_ME_TO_RANDOM_STRING
部署:
资源:
预订:
设备:
- 驱动程序:nvidia
计数:全部
能力:[GPU]
命令:>
服务
--型号 StarCoder2-3B
--chat-model Qwen2.5-Coder-7B-Instruct
--设备cuda
--并行度4
```
r
您的服务器端点 URL(例如,`http://localhost:8080`)。
4. 从 Tabby 管理仪表板生成 API 令牌并将其粘贴到 IDE 设置中。### Vim / Neovim对于带有 `nvim-cmp` 和 `cmp-tabby` 的 Neovim:````
lu
a
-- 在你的 Neovim 配置中(例如 init.lua)
需要('cmp').setup({
来源={
{ 名称 = '虎斑' },
},
})-- 配置 Tabby 服务器 URL
vim.g.tabby_server_url = 'http://localhost:8080'
````### 使用 Ollama 作为后端Tabby 可以将推理委托给 Ollama,从而实现动态模型切换和多模型管理:````汤姆
# ~/.tabby/config.toml
[模型.completion.http]
kind =“ollama/```
bas
h
openssl 兰德-十六进制 32
```
ek
-编码器:6.7b"
api_endpoint = "http:```
bas
h
docker 组成-d
```
t
e
= "<PRE> {前缀} <SUF>{后缀} <MID>"[模型.聊天.http]
kind =“openai/聊天”
model_name = "qwe```
bas
h
# 通过自制程序安装
酿造安装 tabbyml/tabby/tabby
# 以 Metal 加速运行
虎斑服务\
--型号 StarCoder2-3B \
--chat-model Qwen2-1.5B-指令 \
--设备金属
# 验证
卷曲 http://localhost:8080/v1/health
``` 从 `config.toml` 读取):````
bas
h
虎斑服务--设备 cuda
````当您想要在具有有限
VRAM 的单个 GPU 上运行多个模型时,此设置非常理想 - Ollama 动态处理模型加载和卸载。## 基准/实际用例本节为在生产中运行**自托管编码助手**的任何人提供了硬数据。 Tabby 的吞吐量和延迟因模型大小和 GPU 代数而异。 下面的所有图都假设有一个热模型缓存(第二个请求之后)。Tabby 的性能在很大程度上取决于模型大小和硬件。 以下数字是从社区基准和内部测试中收集的:| Model | Size | GPU VRAM | Avg Latency | Accept Rate | Best For |
|---|---|---|---|---|---|
| Qwen2.5-Coder-0.5B | 0.5B | 2 GB | ~200ms | 18% | CPU-only setups, rapid testing |
| StarCoder-1B | 1B | 3 GB | ~180ms | 22% | Low-resource deployments |
| StarCoder2-3B | 3B | 6 GB | ~250ms | 28% | Balanced quality/speed |
| Qwen2.5-Coder-7B | 7B | 14 GB | ~350ms | 35% | High-quality completions |
| DeepSeekCoder-6.7B | 6.7B | 13 GB | ~380ms | 33% | Python/JS focused projects |**接受率**衡量开发人员接受 Tabby 建议与忽略或修改建议的频率。 为了进行比较,GitHub Copilot 报告的接受率 ```
lu
a
-- 在你的 Neovim 配置中(例如 init.lua)
需要('cmp').setup({
来源={
{ 名称 = '虎斑' },
},
})
-- 配置 Tabby 服务器 URL
vim.g.tabby_server_url = 'http://localhost:8080'
``er2-3B | 0 美元 |
| 小团队(5-10 名开发人员)| RTX 4070 Ti,16GB 显存 | Qwen2.5-Coder-7B | ~50 美元(电力)|
| 企业(50+ 开发人员)| 2× A100 80GB | Qwen2.5-Coder-7B + 聊天 | ~$500(托管)|
| CI/CD 批处理作业 | 仅 CPU 云实例 | Qwen2.5-Coder-0.5B | ~$30 |
````汤姆
# ~/.tabby/config.toml
[模型.completion.http]
kind =“ollama/完成”
model_name = "deepseek-coder:6.7b"
api_endpoint =“http://localhost:11434”
Prompt_template = "<PRE> {前缀} <SUF>{后缀} <MID>"
[模型.聊天.http]
kind =“openai/聊天”
model_name =“qwen2.5-编码器:7b”
api_endpoint =“http://localhost:11434/v1”
``高级使用/生产强化### 存储库上下文索引Tabby 对团队来说的杀手级功能是存储库级上下文索引。 它克隆并索引您的 Git 存储库,然后使用 RAG(检索增强生成)在完成过程中显示相关的内部代码片段。通过管理仪表板添加存储库:````
bas
h
# 导航到 Repo``bash
ollama 拉 deepseek-coder:6.7b
ollama 拉 qwen2.5-编码器:7b
乌拉马服务
``或者通过调度程序 CLI 进行配置:````
bas
h
docker exec tabby /opt/tabby/bin/tabby-cpu 调度程序 --now
````### 安全强化1. **更改默认的```
bas
h
虎斑服务--设备 cuda
```
T
_TOKEN_SECRET` 为加密随机 32 字节十六进制字符串。2. **在反向代理后面运行**并终止 TLS:````
ngin
x
# Nginx 示例
服务器{
监听 443 ssl;
服务器名称 tabby.yourcompany.com;ssl_certificate /etc/letsencrypt/live/tabby.yourcompany.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/tabby.yourcompany.com/privkey.pem;地点/{
proxy_pass http://localhost:8080;
proxy_set_header 主机 $host;
proxy_set_header X-真实IP $remote_addr;
}
}
````3. **启用 LDAP/SSO 身份验证**(企业功能)以实现团队范围的访问控制。4. **在 Docker 容器上设置资源限制**:````
bas
h
docker 运行 -d \
--内存=24g \
--cpu=8 \
# ...其他标志
````### 性能调整````
bas
h
# 增加并发团队请求的并行度
虎斑服务\
--型号 StarCoder2-3B \
--设备cuda \
--并行度4# 使用半精度 (FP16) 来减少 VRAM 使用
虎斑服务\
--型号 StarCoder2-3B \
--设备cuda \
--dtype float16
````### 监控````
bas
h
# 检查API健康状况
卷曲 http://localhost:8080/v1/health# Docker 统计信息
docker 统计虎斑猫# 仅查看最近有错误的日志
docker 日志虎斑猫 2>&1 | grep 错误
````## 与替代方案的比较| Feature | Tabby | GitHub Copilot | Cursor | Codeium |
|---|---|---|---|
---|
| **Self-hosted** | Yes | No | No | Partial (Enterprise) |
| **License** | Apache-2.0 | Proprietary | Proprietary | Proprietary |
| **Price (individual)** | Free | $10/month | $20/month | Free tier |
| **Code stays local** | Yes | No | No | No |
| **Model flexibility** | Any OpenAI-compatible model | GPT-4 only | Claude/GPT only | Codeium models only |
| **Repo context indexing** | Yes (built-in RAG) | Limited | Yes | Yes |
| **Team management** | Yes (admin dashboard) | Yes (Enterprise) | Yes (Team) | Yes (Teams) |
| **IDE support** | VS Code, JetBrains, Vim, Emacs, Eclipse | VS Code, JetBrains, Vim, Neovim | VS Code only | VS Code, JetBrains, Vim |
| **Setup complexity** | Docker / 1 command | Install extension | Install app | Install extension |
| **Offline capable** | Yes | No | No | No |
| **Stars (GitHub)** | 33,530+ | N/A (Microsoft) | N/A (private) | N/A (private) |Tabby 是该组中唯一可以将 100% 代码保留在本地的选项。 如果您在 SOC 2、HIPAA、ITAR 或类似合规框架下工作,这种区别就很重要。## 限制/诚实评估```
bas
h
# 导航到存储库 → 添加 Git URL
# 支持 GitHub、GitLab 和自托管 Git 实例
```*较小的模型在复杂推理上滞后**:3B 参数模型在多文件重构或架构建议上与 GPT-4 不匹配```
bas
h
docker exec tabby /opt/tabby/bin/tabby-cpu 调度程序 --now
```基础设施负担**:您负责 GPU 维护、模型更新和服务器正常运行时间。 如果您的服务器出现故障,则不会有 SaaS 后备方案。- **基本安装中无聊天**:聊天/应答引擎需要单独的聊天模型和额外的 VRAM。 规划你的 GPU si```
ngin
x
# Nginx 示例
服务器{
监听 443 ssl;
服务器名称 tabby.yourcompany.com;
ssl_certificate /etc/letsencrypt/live/tabby.yourcompany.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/tabby.yourcompany.com/privkey.pem;
地点/{
proxy_pass http://localhost:8080;
proxy_set_header 主机 $host;
proxy_set_header X-真实IP $remote_addr;
}
}
``B+ VRAM 可以轻松处理 StarCoder2-3B 型号。 对于团队部署,根据经验,为每个并发用户分配 4GB VRAM。 RTX 4090 (24GB) 上的 7B 型号可同时支持 4-6 名开发人员。### 我可以完全离线使用 Tabby 吗?是的。 初始模型下载后,Tabby 完全无需连接互联网即可运行。 推理服务器、IDE 扩展和管理仪表板都在您的本地网络上运行。 这是 Tabby 在气隙环境中的主要优势之一。### Tabby 在 acc```
bas
h
中与 GitHub Copilot 相比如何
docker 运行 -d \
--内存=24g \
--cpu=8 \
# ...其他标志
``es 在 Copilot 的 5-10% 范围内。 Copilot 领先的地方是多文件上下文和复杂的 refacto```
bas
h
# 增加并发团队请求的并行度
虎斑服务\
--型号 StarCoder2-3B \
--设备cuda \
--并行度4
# 使用半精度 (FP16) 来减少 VRAM 使用
虎斑服务\
--型号 StarCoder2-3B \
--设备cuda \
--dtype float16
```
in
t
Tabby 到本地模型路径或托管您自己的模型服务器。 有关确切的格式要求,请参阅 [MODEL_SPEC.md](https://github.com/TabbyML/tabby/blob/main/MODEL_SPEC.md)。### Tabby适合大型企业团队吗?Tabby 通过适当的硬件可扩展到 50 多个用户```
bas
h
# 检查API健康状况
卷曲 http://localhost:8080/v1/health
# Docker 统计信息
docker 统计虎斑猫
# 仅查看最近有错误的日志
docker 日志虎斑猫 2>&1 | grep 错误
``需要企业许可证。### 如何将 Tabby 更新到新版本?````
bas
h
# 拉取最新镜像
docker pullregistry.tabbyml.com/tabbyml/tabby# 重启容器
docker 组合下来
docker 组成-d# 验证新版本
卷曲 http://localhost:8080/v1/health
````## 结论Tabby 填补了人工智能编码助手市场的一个关键空白:一个完全开源、自托管的工具,可以让您的代码保持在您的范围内。 拥有超过 33,530 颗星,基于 Rust 的活跃开发,并支持最新的编码模型(Qwen2.5-Coder、DeepSeek、StarCoder2),它已准备好在注重隐私的团队中进行生产使用。**开始的行动项目:**1. 运行第 4 节中的 Docker 命令以在本地计算机上启动 Tabby。
2. 为您的编辑器安装 IDE 扩展并连接到“http://localhost:8080”。
3. 从管理仪表板索引测试存储库以体验 RAG 支持的完成。
4. 加入 [Tabby on Telegram 社区](https://t.me/dibi8_ai_hub) 了解部署技巧和模型建议。*本文包含托管提供商的附属链接。 这些建议基于自托管人工智能工作负载的技术适用性,而不是商业合作伙伴关系。*
## 推荐的托管和基础设施在将上述任何工具部署到生产环境之前,您需要坚实的基础设施。 dibi8实际使用和推荐的两个选项:- **{< aff "digitalocean" "footer-cta-legacy" "DigitalOcean" >}}** — 200 美元免费赠金,为期 60 天,覆盖全球 14 个以上区域。 运行开源人工智能工具的独立开发者的默认选项。
- **{< aff "htstack" "footer-cta-legacy" "HTStack" >}}** — 从中国大陆低延迟访问的香港 VPS。 这与托管 dibi8.com 的 IDC 是同一个 IDC——在生产中经过了实际考验。*附属链接 - 它们不会花费您额外的费用,并且有助于保持 dibi8.com 的运行。*## 资料来源和进一步阅读- [Tabby GitHub 存储库](https://github.com/TabbyML/tabby) — 33,530+ 颗星,Apache-2.0
- [Tabby官方文档](https://tabby.tabbyml.com/docs/welcome/)
- [Tabby Docker 安装指南](https://tabby.tabbyml.com/docs/quick-start/installation/docker/)
- [虎斑模型注册表](https://tabby.tabbyml.com/docs/models/)
- [Tabby VS Code 扩展](https://marketplace.visualstudio.com/items?itemName=TabbyML.vscode-tabby)
- [Tabby JetBrains 插件](https://plugins.jetbrains.com/plugin/22379-tabby)
- [MODEL_SPEC.md — 自定义模型格式](https://github.com/TabbyML/tabby/blob/main/MODEL_SPEC.md)
- [2026 年自托管 AI 编码助手比较](https://scopir.com/posts/self-hosted-ai-coding-assistants-tabby-continue-void/)
- [Ollama 后端的 Tabby 设置](https://github.com/TabbyML/tabby/discussions/3285)
- DigitalOcean 云托管
- HTStack GPU Cloud
bas h
拉取最新镜像 #
docker pullregistry.tabbyml.com/tabbyml/tabby
重启容器 #
docker 组合下来 docker 组成-d
验证新版本 #
卷曲 http://localhost:8080/v1/health
💬 留言讨论