为什么要部署私人"小"模型聊天工具
很多人使用过ChatGPT、智谱、豆包、Claude等等优秀的大语言模型,有深度使用需求也会购买第三方的付费服务,毕竟他们性能十分出众。比如我的主要工作场景是写文章,那么我会选择Claude。
虽然喜欢使用Claude,但是日常真的高频使用么?答案当然是否定的!
因为使用次数限制、价格因素、网络问题等使用门槛,在不必要的情况下自然会降低视使用频率。——如果工具不能在任何环境下,放在手边“捡起来就用”,那么它就有问题。
这时,使用“小”模型可能是更好的选择,为什么这么说?
"小"模型特点
gemma2、llama3.1:8b、qwen2:7b此类小模型足够日常使用,32k长上下文输入输出、绝大多数指令遵循情况,中文表达能力、回答问题,整体都不错,而且没有“文心一言”一类产品只能输入2000字的类似的限制...日常使用完全足够,遇到特殊任务我们再考虑专事转办。小模型的优势如下:
- 支持上下文尺寸不比大模型小(甚至更大)
- 日常写作任务,输出质量并不低
- 不限量使用
- 可以多个小模型并发输出答案,方便进行对比。
- 执行速度更快
何为私有部署?
一套私人使用聊天WEB界面,方便定制功能,并且自由接入“小”模型。
最经典的方案就是本地部署Ollama+Open WebUI,前者负责在本地电脑运行小模型,后者承载聊天界面。考虑外网随时随地使用,可使用cloudflare或cpolar将地址映射到外网(教程自行搜索)。
优点
- 聊天数据本地私有,私密性好
- 灵活定制本地模型
缺点
- 难以持久化运行(总要关电脑吧?),发布到外网难度大
- 对电脑硬件要求高
要解决的问题
我们要解决的就是缺点:
1.部署的AI聊天界面需要发布到外网,有稳定访问网址才可以随时随地使用
2.电脑硬件门槛主要是使用Ollama在本地运行模型,改为知名厂商的API服务即可,隐私保护相对好且免费。(一般电脑本地能运行起的小模型,网络上都有免费API)
最佳方案
1.本地/云端免费doceker部署Open WebUI+接入“小”模型API
只在本机使用,电脑硬件只需要能跑起doceker即可
2.自部署/使用三方NextChat+接入“小”模型API
自部署NextChat需要自备域名,使用三方NextChat有泄露密钥风险。
此部署方案仅供有经验的人操作,没经验的小白不建议,好好用成熟的产品吧,否则遇到异常问题耽误时间不值得。
最佳部署方案1
1.部署doceker
本地:本地部署doceker教程自行搜索
云端:云端免费doceker资源,请自行搜索,这里我使用 Koyeb。(内网无法直接访问,需科学技术)
2.在doceker中部署Open WebUI
本地:详细阅读文档,推荐以下安装命令(保持更新)
docker run --rm --volume /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --run-once open-webui
云端:注册Koyeb后,点击创建服务,输入如下命令
ghcr.io/open-webui/open-webui:main
3.启动Open WebUI
本地启动,默认访问地址:http://localhost:3000/
云端启动,在Koyeb部署完成后,可点击这里(缺点是此域名内网无法直接访问,绑定域名需要开通付费账号)
启动后,注册账号,默认第一个注册的账号即管理员账号。已经注册过,所以只有登录界面,首次访问可以看到“注册”入口
4.申请免费“小”模型API
推荐使用OpenRouter,已经用它的免费模型写了一年小说。下面讲解如何获得OpenRouter的模型API
PS:国内免费提供小模型API厂商:硅基流动
4.1创建KEY
会得到一个sk-开头的一串字符,这就是KEY,请复制好本地保存,页面关闭后无法重新复制。
4.2确认免费模型列表
4.3获取API请求网址,
进入任意模型页面即可看到,一般是:https://openrouter.ai/api/v1/chat/completions
5.进入Open WebUI配置模型
注意点击“4”,确认接口访问成功后再点击保存
6.配置默认模型
可以选择多个free模型
使用付费模型将导致账户停用
点击预设,保存常用模型
7.尝试第一次对话
最佳部署方案2
1.云端部署NextChat
免费一键云端部署,自行查看帮助:https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web
2.这里使用第一个Deploy(vercel)部署
跟着流程走即可,这里有三点要注意:
- 一定要仔细阅读帮助文档,跟着教程设置项目自动更新。
- vercel安装流程中配置好KEY变量和访问密码,建议提前配置好。
- 绑定自己的域名,可以让国内网络直接访问。
3.配置变量
它不像方案一可以自动读取模型列表,需要自己定义免费模型列表,注意接口地址的变化
BASE_URL or OpenAI Endpoint: Set this to https://openrouter.ai/api
OPENAI_API_KEY or OpenAI API Key: Enter your OpenRouter API key here.
CUSTOM_MODELS or Custom Models: Specify the model name as it is listed within OpenRouter.
4.部署完成界面
5.绑定域名
解决国内访问问题
4.可以在设置中单独配置一个模型的API KEY
可以配置一个OhMyGPT每日免费赠送少量GPT4额度,另一个稳定获取API KEY的地址(防止滥用隐藏):