Lobe Chat – 目前最好的调用 ChatGPT API 的网页应用

指标描述
适用系统Debian 系发行版,包括 Ubuntu, Armbian,其他发行版稍改命令一般也可
走通流程时间5 分钟
图片[1]曙光博客-随笔小窝Lobe Chat – 目前最好的调用 ChatGPT API 的网页应用曙光博客-随笔小窝曙光博客

Lobe Chat 目前支持很多模型的 API,OpenAI / Claude 3 / Gemini 甚至开源可自建的 Mistral / Ollama,还支持图像和语言,另有插件系统。

GitHub: lobehub/lobe-chat: ? an open-source, modern-design LLMs/AI chat framework. Supports Multi AI Providers( OpenAI / Claude 3 / Gemini / Perplexity / Bedrock / Azure / Mistral / Ollama ), Multi-Modals (Vision/TTS) and plugin system. One-click FREE deployment of your private ChatGPT chat application. (github.com)

安装

全复制并执行,一键创建工作目录并开放端口

myserve="lobechat"sudo ufw allow 3210/tcp comment $myserve && sudo ufw reloadmkdir -p ~/myserve/$myserve && cd ~/myserve/$myserve   

根据注释自定义,然后执行,一键创建 docker-compose.yml 文件

cat > docker-compose.yml << EOF---version: '3.8' services:  lobe-chat:    image: lobehub/lobe-chat    container_name: lobe-chat    restart: always    ports:      - '3210:3210'    environment:      OPENAI_API_KEY: sk-xxx9969cFb16   # 填 API key      # 如果你使用了我推荐的商家 gptapi.us,那这里就填这个。如果用 chatgpt 官网 api,删除下行      OPENAI_PROXY_URL: https://api.gptapi.us/v1      ACCESS_CODE: password   # 访问密码,还能是多个密码 code1,code2,code3      CUSTOM_MODELS: +gpt-4,+claude-3-opus   # 自定义网页中显示的模型,不了解可删除此行      # 如果你使用 gptapi.us,加上 claude-3-opus 就能在网页直接使用这个模型了EOF   

CUSTOM_MODELS 使用 + 增加一个模型,使用 - 来隐藏一个模型,使用 模型名=展示名 来自定义模型的展示名,用英文逗号隔开。

所有环境变量: Environment Variable.zh CN · lobehub/lobe-chat Wiki (github.com)


拉取容器镜像

docker compose pull   

启动容器(这时就可以访问网页了,网址是 http://ip_addr_or_domain:3210

docker compose up -d   

关闭容器

docker compose down   

基本使用

图片[2]曙光博客-随笔小窝Lobe Chat – 目前最好的调用 ChatGPT API 的网页应用曙光博客-随笔小窝曙光博客

第一次打开网页,到左下角,进入【设置】-【通用设置】,可以填入密码。

另外,在【设置】-【语言模型】,可以自定义 chatgpt api key、代理地址和模型名称,也就是如果你使用别人搭建的 Lobe Chat,也可以填入自己的 API 使用。

【语言模型】里还能设置其他支持的模型。


实际使用时,我建议按照你常问的领域,创建“助手”,添加引导词,这样不用每次询问都输入一遍去引导模型。

在上图中的左侧栏,点击【新建助手】,然后点击右上角的三条杠,编辑助手信息。主要就两个:

  • 角色设定:(比如我询问 Linux 问题的助手)你是一个 Linux 专家,精通 Linux 的基本使用和运维,比如 ansible 的使用,以及相关的虚拟化如 docker,网络如 iptables 等的应用
  • 名称: Linux 专家
image.png

聊天时,输入框上栏要注意的有这几个

  1. 模型,选合适的模型
  2. 闹钟样式的,点击它之后可以限制每次传递多少条对话。推荐 1 或 3,可以随时按需调整。

ChatGPT 能根据上下文回答,本质是每次发送新的对话,其实是把之前的聊天记录都发送了一遍,如果不限制最大发送的聊天记录,那新对话的价格只会在上一次对话上增加,非常费钱,并且模型能接收的内容是有长度限制的,比如 GPT-4 的 8k,如果超过 8000 token,就会被截断。

“只包含 1 条会话消息” 含义就是,每次只会放松输入框的给 ChatGPT,虽然聊天框中有前文,但 ChatGPT 不会收到,也就不会表现出根据上文回答。
3 条消息只会发送上一次你发的、它回答的和这次你发的,也就是能根据上一条回答。

  1. 使用,就是这轮对话使用的 token,图片显示 49 就是因为我为助手设定了引导词,每次对话都会发送。
image.png
  1. 当一个问题问完,推荐使用这个按钮清空聊天,也就是删除本次话题的所有内容。下次循环,用新话题。这样对于网页加载是有帮助的,而且看着清爽。
  2. 输入框中,换行用 Ctrl + Enter,支持 markdown

最后,关于如何分享给周围人,这个的数据应该是存储在浏览器中的,换一个新浏览器就是全新的界面,输入访问密码只是能使用 docker compose 里预设的 API,因此完全可以多用户使用。

对应的一个问题是,我一个人使用,如何同步多个浏览器中的数据?在设置里,云端同步中,支持 WebRTC 的同步,只要设置名称、密码,并开启,在两个浏览器都在线的情况下,就能自动同步,还是有些缺陷的,看起来只适合换浏览器时使用。

© 版权声明
THE END
喜欢就支持一下吧
点赞12赞赏 分享
评论 抢沙发

    暂无评论内容