当前位置:   article > 正文

基于GitHub代码库训练模型本地化AI代码自动补全 - Tabby Windows10_tabby代码补全

tabby代码补全

参考:

https://github.com/TabbyML/tabby

1.为什么选择Tabby

已经有好几款类似强劲的代码补全工具,如GitHub Copilot,Codeium等,为什么还要选择Tabby?

Tabby除了和其他工具一样支持联网直接使用之外,还支持本地化部署

即对内部代码安全性要求很高时,可以采取Tabby项目模型的本地化部署,不用担心本地项目代码隐私泄露,同时有很好的享受GitHub代码库的建议。

部署完成后,如简单粗暴断开外部网络,甚至拔掉网线,依然可以使用。

可以单机使用,也可以公司内部网、局域网内共同使用。

2.安装winget,方便命令行安装git

微软商店,搜索winget,安装App Installer

  1. PS C:\Windows\system32> winget install --id Git.Git -e --source winget
  2. Found Git [Git.Git] Version 2.41.0.2
  3. This application is licensed to you by its owner.
  4. Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
  5. Downloading https://github.com/git-for-windows/git/releases/download/v2.41.0.windows.2/Git-2.41.0.2-64-bit.exe
  6. 0.00 B / 58.3 MB

或者直接下载git.exe图像化安装

Git - Downloads (git-scm.com)

3.Git Clone tabby项目代码到本地

git clone https://github.com/TabbyML/tabby.git

4.Windows 10虚拟化设置

控制面板,程序

打开Windows功能,勾选上Hyper-V和虚拟机平台

wsl(Windows Subsystem for Linux)更新

管理员权限打开Windows Power Shell

执行命令查看相关子系统

  1. PS C:\Windows\system32> wsl --list --online
  2. The following is a list of valid distributions that can be installed.
  3. The default distribution is denoted by '*'.
  4. Install using 'wsl --install -d <Distro>'.
  5. NAME FRIENDLY NAME
  6. * Ubuntu Ubuntu
  7. Debian Debian GNU/Linux
  8. kali-linux Kali Linux Rolling
  9. openSUSE-42 openSUSE Leap 42
  10. SLES-12 SUSE Linux Enterprise Server v12
  11. Ubuntu-16.04 Ubuntu 16.04 LTS
  12. Ubuntu-18.04 Ubuntu 18.04 LTS
  13. Ubuntu-20.04 Ubuntu 20.04 LTS

不指定参数默认安装第一个星号标记的Ubuntu

> wsl --install

 输出:

  1. PS C:\Windows\system32> wsl --install
  2. Installing: Windows Subsystem for Linux
  3. Windows Subsystem for Linux has been installed.
  4. Downloading: WSL Kernel
  5. Installing: WSL Kernel
  6. WSL Kernel has been installed.
  7. Downloading: Ubuntu
  8. The requested operation is successful. Changes will not be effective until the system is rebooted.

重启电脑

5.下载并安装Docker

Docker: Accelerated, Containerized Application Development

6.Docker Desktop打开运行 

7.Docker Run下载镜像

Docker | Tabby

本文选择了CPU,打开PowerShell,在clone下来的tabby根目录下,执行下面的命令

docker run -p 8080:8080 -v $HOME/.tabby:/data tabbyml/tabby serve --model TabbyML/SantaCoder-1B

输出

如果遇到如下问题

  1. ERROR tabby::serve: crates/tabby/src/serve/mod.rs:116: Failed to fetch model due to 'error sending request for url (https://huggingface.co/TabbyML/SantaCoder-1B/resolve/main/ctranslate2/shared_vocabulary.txt): error trying to connect: Connection reset by peer (os error 104)', is 'TabbyML/SantaCoder-1B' a valid model id?

解决方法

手动下载模型 

TabbyML/SantaCoder-1B at main

 

  1. git lfs install
  2. git clone https://huggingface.co/TabbyML/SantaCoder-1B

 大文件也可以直接网页手动下载

最后将上述SantaCoder完整目录文件移动到

$HOME/.tabby/models/TabbyML/目录下

 然后再重新执行

docker run -p 8080:8080 -v $HOME/.tabby:/data tabbyml/tabby serve --model TabbyML/SantaCoder-1B

8.模型部署过程中

 部署过程中需要等待,没有log可以显示进度,可以通过查看容器Container的stats的网络流量蓝色的数据接收一直在增长,表示部署中

 9. 部署成功

(时间取决设备性能)

2023-07-19 08:36:57 2023-07-19T08:36:56.481802Z  INFO tabby::serve: crates/tabby/src/serve/mod.rs:131: Listening at 0.0.0.0:8080

 

 检查是否部署成功

浏览器本地访问 http://localhost:8080/

 或者在网络中使用   http://PC_IP:8080/

下载并安装VS Code(Visual Studio Code)

direct download link.Download Visual Studio Code - Mac, Linux, Windowsdirect download link.

  

 打开VS Code,扩展种搜索Tabby并安装

Tabby的管理里面设置上面本地部署的Tabby服务

 VS Code右下角显示Tabby已经可以提供服务

 

 10. 开始高效编码吧

输入注释或者编码时,会自动补全,即灰色斜体部分,如果接收就直接按Tab键,采纳建议,否则正常进行编码

 

运行过程中可以查看下电脑的CPU内存使用情况,调用时资源消耗很大,所以体验效果还取决于设备性能,最好使用GPU设备。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/运维做开发/article/detail/797746
推荐阅读
相关标签
  

闽ICP备14008679号