名称: TabbyML/tabby 地址: https://github.com/TabbyML/tabby fork: 195 star: 7.3k 开发语言: Python 简介: Self-hosted AI coding assistant
Tabby 是运行在本地的 AI 编程助手,可以作为GitHub Copilot 的替代产品,目前是开源的,不过仍然处于测试阶段。
-
独立的服务,不需要DBMS 或者是云服务支持
- 用于可视化和配置模型和 MLOps 的 Web UI。
- OpenAPI 接口,易于与现有基础设施(例如 Cloud IDE)集成。
- 支持消费级 GPU。
如上面的 demo 演示的那样,在使用时,我们只需要将想要的实现,使用注释的形式写出来,Tabby 就可以自动写出来代码帮我们实现。
Tabby 需要使用 Pascal 或者更新的 NVIDIA GPU。运行 Tabby 之前,需要安装 NVIDIA Container Toolkit,建议使用与 CUDA 版本 11.8 或更高版本兼容的 NVIDIA 驱动程序。
# Create data dir and grant owner to 1000 (Tabby run as uid 1000 in container)
mkdir -p data/hf_cache && chown -R 1000 data
docker run
--gpus all
-it --rm
-v "./data:/data"
-v "./data/hf_cache:/home/app/.cache/huggingface"
-p 5000:5000
-e MODEL_NAME=TabbyML/J-350M
-e MODEL_BACKEND=triton
--name=tabby
tabbyml/tabby
启动服务之后,我们可以访问localhost:5000/_admin,就可以使用Tabby 自带的 playground,体验 AI 编程助手。打开后的界面如下
Skypilot
支持 Skypilot 部署。 SkyPilot 是由加州大学伯克利分校的 Sky Computing 实验室发布的开源框架 ,这套框架能够在任何云环境上无缝、且经济高效地运行机器学习与数据科学批量作业,适用于多云和单云用户。SkyPilot 的目标是大大降低云使用门槛、控制运行成本,而且全程无需任何云基础设施专业知识。
根据官方介绍,只要给定一项作业及其资源需求(CPU/GPU/TPU),SkyPilot 就能自动找出哪些位置(区 / 区域 / 云)具备运行该作业的计算资源,之后将负载发送至成本最低的位置执行。
部署文档:https://github.com/TabbyML/tabby/blob/main/deployment/skypilot/README.md
Tabby 使用FastAPI 搭建了一个 API 文档的 web 服务,可以 localhost:5000地址访问。
END
