部署开源 ChatGPT/LLMs 聊天应用 LobeChat

电子说

1.3w人已加入

描述

一、Flexus 云服务器 X 实例介绍

在数字化时代,云服务器已成为企业发展的重要基石。它提供灵活的资源扩展和高效的计算能力,帮助企业降低成本、提升效率。无论是数据存储还是业务创新,云服务器都能满足多样化需求,是各行业不可或缺的技术支持。

华为云下一代云服务器 Flexus X 实例焕新上线,新产品首创大模型加持,智能全域调度;X-Turbo 加速,常见应用性能最高可达业界同规格 6 倍,可搭载多版本主机安全服务,历经极度严苛的网络安全挑战,全面保障主机整体安全,覆盖大多数通用工作负载场景。

大模型

Flexus X 实例通过和其他服务组合,具备计算、镜像安装、网络、存储、安全等能力,您可根据业务需要灵活配置各资源。

大模型

本次测评使用的规格是:4 核 12G-100G-3M 规格的 Flexus X 实例基础模式

大模型

二、Flexus 云服务器 X 实例配置

2.1 重置密码

购买服务器的时候可以提前设置用户名和密码,因为我这里跳过了,所以购买完成后需要重置密码,会短信或站内消息通过你的云服务器信息,重点是公网 IP 地址和用户名,首先打开你的服务器控制台,选择重置密码

大模型

勾选自动重启,点击确定即可

大模型

2.2 服务器连接

华为云服务器提供了多种链接方式,如使用控制台提供的 VNC 方式登录、使用 Linux/Mac OS 系统主机登录 Linux 弹性云服务器(即 ssh root@192.168.48.78 命令)或者使用 Putty、Xshell 等工具登录 Linux 弹性云服务器。

我个人习惯使用 MobaXterm 这款软件,添加 SSH 连接,输出公网 IP、用户名和端口(默认 22),连接即可。

大模型

2.3 安全组配置

安全组是一个逻辑上的分组,为同一个 VPC 内的云服务器提供访问策略。用户可以在安全组中定义各种访问规则,当云服务器加入该安全组后,即受到这些访问规则的保护。

系统为每个网卡默认创建一个默认安全组,默认安全组的规则是对出方向上的数据报文全部放行,入方向访问受限。您可以使用默认安全组,也可以根据需要创建自定义的安全组。

大模型

主要需要填写优先级(默认填 1 即可)、协议端口(协议一般为 TCP 或 UDP,端口一般选择你项目需要暴露的端口即可),描述(选填,一般会填写此端口的用途以免忘记了),其他默认点击确定即可。安全组配置主要是暴露端口可以给外网访问。

大模型

如果还不清楚可以参考文档:安全组配置示例
 

2.4 Docker 环境搭建

本次服务器环境是 ubuntu 系统镜像,需要自己安装 docker 环境

使用 apt-get 命令安装 docker 及其配置

#安装必要工具包 $ sudo apt-get install     apt-transport-https     ca-certificates     curl     gnupg-agent     software-properties-common#添加 Docker GPG 秘钥 $ sudo curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -#配置仓库源 $ sudo add-apt-repository       "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu       $(lsb_release -cs)       stable" #更新 apt 包索引 $ sudo apt-get update#安装 docker$ sudo apt-get install docker-ce docker-ce-cli containerd.io#添加 docker 镜像源 $ sudo vim /etc/docker/daemon.json{    "registry-mirrors": [        "https://ustc-edu-cn.mirror.aliyuncs.com/",        "https://docker.mirrors.ustc.edu.cn",        "https://docker.nju.edu.cn",        "https://ccr.ccs.tencentyun.com/",        "https://docker.m.daocloud.io/",        "https://dockerproxy.com",    ]}#重启 $ sudo systemctl daemon-reload$ sudo systemctl restart docker

 测试 docker 安装是否成功

root@flexusx-c6b3:~# docker -vDocker version 27.2.0, build 3ab4256```

检查 docker 服务状态

root@flexusx-c6b3:~# systemctl status docker* docker.service - Docker Application Container Engine     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)     Active: active (running) since Fri 2024-08-30 15:53:45 CST; 17h agoTriggeredBy: * docker.socket       Docs: https://docs.docker.com   Main PID: 24912 (dockerd)      Tasks: 13     Memory: 24.7M        CPU: 3.778s     CGroup: /system.slice/docker.service             `-24912 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

检查 docker compose 版本

root@flexusx-c6b3:~# docker compose versionDocker Compose version v2.29.2

三、Flexus 云服务器 X 实例部署 LobeChat

3.1 LobeChat 介绍

LobeChat 是现代化设计的开源 ChatGPT/LLMs 聊天应用与开发框架,支持语音合成、多模态、可扩展的(function call)插件系统,一键免费拥有你自己的 ChatGPT/Gemini/Claude/Ollama 应用。

• 文件上传/知识库 LobeChat 支持文件上传与知识库功能,你可以上传文件、图片、音频、视频等多种类型的文件,以及创建知识库,方便用户管理和查找文件。同时在对话中使用文件和知识库功能,实现更加丰富的对话体验。

• 多模型服务商支持在 LobeChat 的不断发展过程中,我们深刻理解到在提供 AI 会话服务时模型服务商的多样性对于满足社区需求的重要性。因此,我们不再局限于单一的模型服务商,而是拓展了对多种模型服务商的支持,以便为用户提供更为丰富和多样化的会话选择。

• 支持本地大语言模型(LLM)为了满足特定用户的需求,LobeChat 还基于 Ollama 支持了本地模型的使用,让用户能够更灵活地使用自己的或第三方的模型。

• 模型视觉识别(Model Visual)LobeChat 已经支持 OpenAI 最新的 gpt-4-vision 支持视觉识别的模型,这是一个具备视觉识别能力的多模态应用。 用户可以轻松上传图片或者拖拽图片到对话框中,助手将能够识别图片内容,并在此基础上进行智能对话,构建更智能、更多元化的聊天场景。

• TTS & STT 语音会话 LobeChat 支持文字转语音(Text-to-Speech,TTS)和语音转文字(Speech-to-Text,STT)技术,这使得我们的应用能够将文本信息转化为清晰的语音输出,用户可以像与真人交谈一样与我们的对话助手进行交流。用户可以从多种声音中选择,给助手搭配合适的音源。同时,对于那些倾向于听觉学习或者想要在忙碌中获取信息的用户来说,TTS 提供了一个极佳的解决方案。

• Text to Image 文生图支持最新的文本到图片生成技术,LobeChat 现在能够让用户在与助手对话中直接调用文生图工具进行创作。 通过利用 DALL-E 3、MidJourney 和 Pollinations 等 AI 工具的能力, 助手们现在可以将你的想法转化为图像。同时可以更私密和沉浸式地完成你的创作过程。

大模型

LobeChat 是经过精心设计的界面,具有优雅的外观和流畅的交互效果,支持亮暗色主题,适配移动端。支持 PWA,提供更加接近原生应用的体验。流式响应带来流畅的对话体验,并且支持完整的 Markdown 渲染,包括代码高亮、LaTex 公式、Mermaid 流程图等。使用 我们的 Docker 镜像,只需点击一键部署按钮,即可在 1 分钟内完成部署,无需复杂的配置过程,很适合构建自己 AI 对话应用。

• 官网:https://lobechat.com/welcome
 

• Github:https://github.com/lobehub/lobe-chat
 

3.2 LobeChat 部署

• 创建 docker-compose.yml

version: '3.5'services:  lobe-chat:    image: lobehub/lobe-chat    container_name: lobe-chat    restart: always    ports:      - '3210:3210'    environment:      OLLAMA_PROXY_URL: http://123.60.144.170:11434/
 

• ports:映射主机的 3210 端口到容器的 3210 端口

• OLLAMAPROXYURL: Ollama 服务地址

如果将上述代码片段保存在名为 docker-compose.yml 的文件中,则只需从同一文件夹中运行 docker compose up -d 即可自动拉取 LobeChat 镜像,并创建并启动一个容器。up 表示启动服务,-d 表示在后台执行。docker-compose down 命令用于停止和清理由 docker-compose up 启动的服务。

• 启动服务

进入项目目录,执行 docker-compose up -d 启动命令,会自动拉取容器并运行

从 Dockerhub 拉取 LobeChat 镜像,地址:https://hub.docker.com/r/lobehub/lobe-chat
 

root@flexusx-c6b3:~/lobechat# docker-compose up -dCreating network "lobechat_default" with the default driverPulling lobe-chat (lobehub/lobe-chat:latest)...latest: Pulling from lobehub/lobe-chata2318d6c47ec: Pull complete00e35d36405a: Pull complete225fba03fa1f: Pull complete447f637b003c: Pull completedd1be0639854: Pull complete9db807b569f9: Pull complete7d6120d566fb: Pull completeDigest: sha256:2b1663efad8125c5e428fa371a6b2d324f582d9010bae1a3e526df2b2b11dd3cStatus: Downloaded newer image for lobehub/lobe-chat:latestCreating lobe-chat ... Creating lobe-chat ... done

• 配置安全组

在 Flexus 云服务器 X 实例的安全组管理页面,添加入方向规则,接下来我们启动服务需要监听 3210 端口,所以添加安全组为 TCP:3210 协议端口。

大模型

• 检查容器状态

检查 LobeChat 容器状态,确保容器正常启动

root@flexusx-c6b3:~/lobechat# docker psCONTAINER ID   IMAGE                COMMAND                  CREATED         STATUS              PORTS                                                 NAMES1b8d6fa19e28   lobehub/lobe-chat    "docker-entrypoint.s…"   2 minutes ago   Up About a minute   0.0.0.0:3210->3210/tcp, :::3210->3210/tcp             lobe-chat

• 访问地址

内网:http://localhost:3210 外网:http://公网 IP:3210

• 访问结果

大模型

若出现此页面,则部署 lobechat server 成功。

3.3 LobeChat 使用

应用启动完成后,进入主页面,头像是设置菜单,左侧显示会话、文件、发现模块,左下角有 Github 地址和使用文档链接,

大模型

点击头像进入设置应用,这里包含通用设置、系统助手、语言模型、语音服务、默认助手,可配置的选项很多,主要是集成其他模型的 API Key

大模型

支持超多模型服务商

• AWS Bedrock:集成了 AWS Bedrock 服务,支持了 Claude / LLama2 等模型,提供了强大的自然语言处理能力。

• Google AI (Gemini Pro、Gemini Vision):接入了 Google 的 Gemini 系列模型,包括 Gemini 和 Gemini Pro,以支持更高级的语言理解和生成。

• Anthropic (Claude):接入了 Anthropic 的 Claude 系列模型,包括 Claude 3 和 Claude 2,多模态突破,超长上下文,树立行业新基准。

• ChatGLM:加入了智谱的 ChatGLM 系列模型(GLM-4/GLM-4-vision/GLM-3-turbo),为用户提供了另一种高效的会话模型选择。

• Moonshot AI (月之暗面):集成了 Moonshot 系列模型,这是一家来自中国的创新性 AI 创业公司,旨在提供更深层次的会话理解。

• Together.ai:集成部署了数百种开源模型和向量模型,无需本地部署即可随时访问这些模型。

• 01.AI (零一万物):集成了零一万物模型,系列 API 具备较快的推理速度,这不仅缩短了处理时间,同时也保持了出色的模型效果。

• Groq:接入了 Groq 的 AI 模型,高效处理消息序列,生成回应,胜任多轮对话及单次交互任务。

• OpenRouter:其支持包括 Claude 3,Gemma,Mistral,Llama2 和 Cohere 等模型路由,支持智能路由优化,提升使用效率,开放且灵活。

• Minimax:接入了 Minimax 的 AI 模型,包括 MoE 模型 abab6,提供了更多的选择空间。了解更多

• DeepSeek:接入了 DeepSeek 的 AI 模型,包括最新的 DeepSeek-V2,提供兼顾性能与价格的模型。

• Qwen:接入了 Qwen 的 AI 模型,包括最新的 qwen-turbo,qwen-plus 和 qwen-max 等模型。

大模型

我这里配置的是 Ollama 的本地模型服务,填写 Ollama 服务地址,并测试下联通性,通过即可

大模型

选择会话菜单,进入会话界面,和常见的大模型会话界面差不多,左侧列表显示不同的助手,对话框输入消息,可选择模型、图片、知识库、随机性、不限历史消息数、语音输入、函数调用等选项,需要当前模型支持时才可用,否则是置灰状态

大模型

使用 Ollama llama2 模型测试下效果,貌似中文不太行

大模型

当前部署模式不支持文件管理,当前部署实例为客户端数据库模式,无法使用文件管理功能

大模型

发现页展示助手、插件、模型和模型服务商四大分类的内容

大模型

这里有很多优化好的针对专门需求的助手,当然需要添加 OpenAI API Key,这些助手都是基于 OpenAI 的模型输出的

大模型

丰富的插件市场

大模型

列表展示超多的模型,按照模型服务商分类展示其旗下的各种模型

大模型

模型服务商分类,介绍各个模型服务商的信息,

大模型

点击 OpenAI 查看,会介绍旗下的多个模型及其价格

大模型

下面还有介绍在 LobeChat 中使用 OpenAI 的步骤

大模型

点击配置服务商,直接进入语言模型设置

大模型

LobeChat 打开了对话助手的新世界,在不断优化自身和扩展功能的过程中,LobeChat 努力为用户带来更加智能、灵活、多样化的对话体验。LobeChat 是一个开源、可扩展(函数调用)、高性能的聊天机器人框架,它支持一键免费部署您的私人 ChatGPT/LLM Web 应用程序。作为集成大模型的聊天应用的使用就是这些了,配置模型、使用模型并开启对话,还有更多有趣的设置和功能就需要自行探索了。

四、总结

LobeChat,是一个集成了语音合成、多模态、可扩展插件系统的聊天框架。这一平台最显著的特性之一便是其多模型服务商的支持性,包括 AWS Bedrock、Google AI、Anthropic、ChatGLM 及其他多个全球知名模型服务商。此次使用的 Flexus X 实例配置还是很高的 4 核 12G-100G-3M 规格的基础模式,此项目并不进行大模型的推理过程,而是一个聊天网站,主要通过集成其他大模型服务来输出对话,整体占用的 CPU 和内存都不高,能够很流畅的运行。

华为云服务器正值 828 B2B 企业节,限时促销,性能卓越,安全可靠。现在购买,享受超值优惠,还有专业技术支持,助力企业腾飞。抓紧机会,立即行动!

审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分