记得我的学生时代,我管理着院系的服务器,服务器运行的是Windows Server 操作系统,部署网站使用的是IIS,开发使用的是C#以及ASP。我现在还记得我时常需要去机房做一些操作,远程上传和部署并不那么可靠。
随着技术的进步,我自己的网站开始使用wordpress,因为部署很快速,自动化而且可以远程发布。之后随着静态网站的流行,我开始使用hugo等静态网页,速度优化,版本管理的概念慢慢建立起来。
现在我又回归到了wordpress,我打算自己总结下我接触网页开发的过程。
回归正题,部署应用这件事自从容器(Container)出现后变得简单,可靠以及批量。在自购的服务器上安装容器很简单,以centos 为例子,docker 的官网有详细的教程 https://docs.docker.com/engine/install/centos/。
今天Steve’s Practice 是利用Docker 部署lobechat,现在AI 模型的中层就像前端的框架模版一样,将API 调用,Prompt 的传递,Agent 的聚合放到了一个程序里进行分发。对lobechat 的详细介绍我相信官网是最新最全的,移步github README。我看中的是下面几点:
- 已支持最新的模态,图片,语音接口完整。
- 对非AI 行业,普通开发者和用户友好,可以利用自身只是构建详细的Prompt。
- 可扩展,由于是开源,API 也比较友好,所以对资深开发者可玩性也兼顾,我可以作为一个使用者,渐渐了解如何开发更定制化功能。
- 界面友好,不过这个越来越同质化了
- 支持PWA,应用界面和使用流畅度更接近本地应用
获取docker image
下面的命令可以拉取官方的image,来自https://hub.docker.com/r/lobehub/lobe-chat
如果安装了Docker 管理的可视化界面,下面以宝塔为例,直接利用Web UI 进行操作。
运行容器
直接使用docker command 来运行刚刚获得的image。
-d
(后台运行容器)--name
(给容器起一个名字方便管理)-p 10084:3210
(将容器的3210端口映射到主机的10084端口, 同时指定TCP协议)-e OPENAI_API_KEY=your_openai_api_key
(OpenAI API Key)-e OPENAI_PROXY_URL=https://api.openai.com/v1
(OpenAI 接口代理, 默认为官方接口)-e ACCESS_CODE=your_access_key
(访问 LobeChat 服务的密码)
反向代理
如果你有二级域名,比如chat.icsteve.com,可以设置反向代理,这样https://chat.icsteve.com 就可以访问你自己部署的lobechat了。
现在你可通过域名或者IP+端口访问lobechat 服务了。
使用lobechat
在第一次访问前需要输入Access Key,就是在Docker 启动时设置的环境变量,your_access_key. 可以在Setting > Common Setting > System Setting 中键入,或者在你第一次使用的时候会提示输入Access Key。
你可以在对话的时候选择不同的模型,比如我这里选择了gpt-4-vision-preview.
用途 | 模型推进按 |
---|---|
日常对话、翻译插件、YouTube总结/搜索总结插件等场景 | gpt-3.5-turbo |
需要较高的推理能力, 如写代码、协助写论文等场景 | gpt-4 |
需要模型接收图片并回答与之相关的问题 | gpt-4-vision |
4K, 8K, 16K, 32K
token 长度的缩写, 4K 表示 4096 个 token, 以此类推。其中, 1 个汉字约为 2 个 token, 因此 4K 的接口约能处理 2000 个汉字, 以此类推。
我测试问了图片的内容,如果智能眼镜配合GPT,我觉得以后AI 和生活是会密不可分的,比如你可以问它你面前的是什么名字,喜好,最近社交网络上有什么更新,等等。曾经的“科幻”不在科幻。
插件
插件一直是我作为CAD 的一个必须预先埋的点,所以插件是扩展现有功能,或者缩小应用范围的一个很好的方式。对话菜单的最后一个图标,点击可呼出插件,你也可以写自己的插件。
更多玩法请参考官方文档,作者更新很快。
隐藏内容只做测试,并没有内容含金量,可以当做对文章的赞助。
如何更新: