在自己服务器部署chatGPT步骤

OpenAI 提供了 GPT 的 api 接口,我们可以通过开源项目提供的 Docker 项目,快速搭建自己的私有 ChatGPT/LLM 服务。

以下是我尝试过的几个服务。

lobe-chat

Lobe Chat 是一个开源的、高性能的聊天机器人框架,支持语音合成、多模态和可扩展的函数调用插件系统。

我们可以使用 Docker 来创建 Lobe Chat 容器

docker run -d \
  --name lobe-chat \
  --net mybridge \
  --restart unless-stopped \
  --ip 172.18.0.200 \
  -p 3210:3210 \
  -e OPENAI_API_KEY=sk-xxxx \ # api key, 可先不填
  -e OPENAI_PROXY_URL=https://api-proxy.com/v1 \ # 代理地址可选
  -e ACCESS_CODE=password \
  lobehub/lobe-chat

我们通过 <ip address>:3210 访问 Lobe Chat 网站,按照以下方式输入密码:

图片[1]-在自己服务器部署chatGPT步骤-不念博客

如果在部署 Lobe Chat 时没有输入 OPENAI_API_KEY 的值,则需要自行添加 API Key,按照下图所示步骤执行即可:

图片[2]-在自己服务器部署chatGPT步骤-不念博客

chatgpt-next-web

ChatGPT-Next-Web 提供了一个跨平台的 ChatGPT/Gemini 用户界面。

docker run -d \
  --name chat-next-web \
  --net mybridge \
  --restart unless-stopped \
  --ip 172.18.0.201 \
  -p 3000:3000 \
  -e OPENAI_API_KEY=sk-xxxx \
  -e CODE=password1,password2 \ # 可以使用逗号隔开多个密码
  -e PROXY_URL=http://localhost:7890 \ # 代理地址,根据需求添加
  yidadaa/chatgpt-next-web

chatgpt-web

chatgpt-web 和 chatgpt-next-web 大同小异。

docker run -d \
  --name chatgpt-web \
  --net mybridge \
  --restart unless-stopped \
  --ip 172.18.0.202 \
  -p 3002:3002 \
  -e OPENAI_API_KEY=your_api_key \
  chatgpt-web

上述 lobe-chat, chatgpt-next-web 和 chatgpt-web 配置完成后,都可以使用 nginx 反向代理。

chatgpt-on-wechat

chatgpt-on-wechat 可以在微信等程序中接入 GPT 等服务,从而搭建自己的智能对话机器人。

docker run -d \
  --name chatgpt-on-wechat \
  --net mybridge \
  --restart unless-stopped \
  --ip 172.18.0.202 \
  --security-opt seccomp:unconfined \
  -e OPEN_AI_API_KEY='YOUR API KEY' \
  -e MODEL='gpt-3.5-turbo' \
  -e PROXY='' \
  -e SINGLE_CHAT_PREFIX='["bot", "@bot"]' \
  -e SINGLE_CHAT_REPLY_PREFIX='"[bot] "' \
  -e GROUP_CHAT_PREFIX='["@bot"]' \
  -e GROUP_NAME_WHITE_LIST='["ChatGPT测试群", "ChatGPT测试群2"]' \
  -e IMAGE_CREATE_PREFIX='["画", "看", "找"]' \
  -e CONVERSATION_MAX_TOKENS=1000 \
  -e SPEECH_RECOGNITION='False' \
  -e CHARACTER_DESC="你是ChatGPT, 一个由OpenAI训练的大型语言模型, 你旨在回答并解决人们的任何问题,并且可以使用多种语言与人交流。" \
  -e EXPIRES_IN_SECONDS=3600 \
  -e USE_GLOBAL_PLUGIN_CONFIG='True' \
  -e USE_LINKAI='False' \
  -e LINKAI_API_KEY='' \
  -e LINKAI_APP_CODE='' \
  zhayujie/chatgpt-on-wechat

上述变量的解释:

  • OPEN_AI_API_KEY: OpenAI 的 api key。
  • MODEL: 模型名,包括 gpt-3.5-turbo, gpt-3.5-turbo-1106, gpt-3.5-turbo-16k, gpt-4, gpt-4-32k, gpt-4-1106-preview, gpt-4-vision-preview。
  • PROXY: 代理,例如 http://192.168.5.1:10809
  • SINGLE_CHAT_PREFIX: 单个聊天对话中激活 GPT 的前缀。
  • SINGLE_CHAT_REPLY_PREFIX: GPT 回复时给出的前缀。
  • GROUP_CHAT_PREFIX: 群聊时激活 GPT 的前缀。
  • GROUP_NAME_WHITE_LIST: 定义允许激活 GPT 的群聊名称列表。
  • IMAGE_CREATE_PREFIX: 创建图片的命令前缀。
  • CONVERSATION_MAX_TOKENS: 聊天时最大的 TOKEN 数量。
  • SPEECH_RECOGNITION: 定义是否启用语音识别。
  • CHARACTER_DESC: 定义角色描述。
  • EXPIRES_IN_SECONDS: 定义会话的过期时间。
  • USE_GLOBAL_PLUGIN_CONFIG: 是否使用全局插件配置。
  • USE_LINKAI: 决定是否启用 LinkAI 插件。
  • LINKAI_API_KEY: LinkAI API 的密钥。
  • LINKAI_APP_CODE: 用于设置 LinkAI 应用代码。

在容器配置完成后,使用以下命令打开日志并扫码:

docker logs -f chatgpt-on-wechat

注意该命令需要使用开通了微信支付的账号,否则扫码会失败。

在使用时,只需要输入 @bot 等激活词就可以让 GPT 自动回复。

图片[3]-在自己服务器部署chatGPT步骤-不念博客
© 版权声明
THE END