Mac 本地部署代码助手尝鲜

889 阅读3分钟

为什么要私有化部署代码助手?

  1. 为了数据安全,每个公司、每个人也许都有一些项目代码不适合提交给第三方的,特别是涉及到业务的代码。
  2. 市面上的代码助手,虽然现在都说个人使用不会收费。但前些年宣称自己用不收费的阿里云盘,都已经开始收费。
  3. 可以自行对模型控制。如,后期自行对模型进行微调,或者增加本地知识库,或者将自己之前的代码让机器学习。都是很好的选择。
  4. 开源的小参数模型,对写代码而言是完全够用。第二代代码助手,经过大参数的大模型调教,有更小的体积,更好的结果输出。

涉及软硬件

  • 硬件:M系列 Mac;内存 8G+;剩余磁盘空间20G+
  • 软件:ollama、docker、open webui
  • vscode 插件:CodeGPT: Chat & AI Agents

为什么是 M系列芯片的 Mac?

因为 M 系列芯片集成了神经引擎、GPU 以及统一内存架构。这架构的好处,不严谨地说,内存能当显存用。以至于,Mac 不需要外接显卡也能轻松跑起小参数的大模型。

另外 Mac 的封闭系统,提供了稳定且可靠的运行环境,可以看到很多开源大模型工具都做了适配,并且有很稳定的更新。

而整体的投入来算,如果很少外出办公,使用 mac mini + 显示器 的方式,性价比瞬间就上来了。

步骤1. 安装 Ollma 及模型

  1. 官网下载 ollama, 并安装,ollama.com/
  2. 安装模型。在 ollama 官网选择相关的模型,使用页面提示的命令行 ollama run xxxxx 即可完成。初次使用会自动下载当前模型。

截屏2024-08-15 22.30.42.png

安装完成,可以在命令行中输入问题,直接使用。

一切就是这么简单!相比去年,大模型的门槛真的低了很多!

目前常用的代码模型对比

模型名称参数量是否支持中文公司下载量最近更新时间
DeepSeek-Coder-v2236B、16B深度求索(DeepSeek)216.7K2024-06-19
CodeGemma2B、7B/Google222.1K2024-06-18
codellama7B、70B、13B、34B/Meta(原Facebook)886.9K2024-02-06
Codestral22B/Mistral AI102.1K2024-05-30

上面后面几个虽然官方没有写支持中文,但实际用起来都是支持的。

如何选择模型参数?

当前的状况是,参数B前的数字 * 2 即是需要的内存 GB 数。

反过来算,如果你的 Mac 是 8G 的内存,可以选择 4B 左右参数的;如果你的 Mac 是 16G 的内存,可以选择 8B 左右参数的。以此类推。

步骤2、在 VSCode 中接入 Ollama

这次尝试了两款插件,结果都不太成功。这里总结一下,给大家做个参考。

Local AI pilot

对话是可以的,但是让其写代码的结果反而没成功。

截屏2024-08-15 22.50.19.png

可以看出,其输出依然是 markdown 文件,并不是仅提供当前文件需要的代码,还有很多解释、如何使用的内容。

查看其开源项目源码,提示词好像并没有做特别的优化,但整体项目其实很简单,可以基于这个开源项目做二次开发。

插件开源地址:

github.com/nagaraj-rea…

CodeGPT

依然使用对话形式的代码助手,支持本地 ollama 的模型服务接口和code gpt 官方提供的模型。

然而比较奇怪的是需要登录每天才有 10次的交互机会。

截屏2024-08-15 22.44.02.png

对答完成,可以选择复制代码和插入代码,可用性还是不错的。

总结

本地进行尝试 Mac 本地部署代码助手,虽然最后没有成功,但是其实离成功并不远。

后续持续关注相关的插件更新,再给大家做尝鲜分享。