体验LobeChat搭建私人聊天应用

LobeChat是什么

LobeChat 是开源的高性能聊天机器人框架,支持语音合成、多模态、可扩展的(Function Call)插件系统。支持一键免费部署私人 ChatGPT/LLM 网页应用程序。

地址:https://github.com/lobehub/lobe-chat

LobeChat介绍

为什么要用LobeChat

有些朋友会问,这些功能大部分都可以用chatGPT plus实现,为什么还要费劲安装 LobeChat,我觉得有以下几点需求的朋友可以用到 LobeChat

  1. 有时需要在不开代理的情况下访问 ChatGPT
  2. 有些场景下语音输入很便利,可以体验到 ChatGPT 安卓版的便利;
  3. 只有一个账号的情况下想共享给朋友使用,并且要保证用户的隐私安全。
  4. 不仅体验 OpenAI ,有时需要切换其他大模型厂商;
  5. 能自定义域名并个性化使用。

LobeChat的特性

  1. GPT 视觉认知: LobeChat 支持 GPT-4-vision 的视觉识别,实现多模态对话,用户可上传图片进行智能对话。
  2. 语音互动: 支持文本转语音和语音转文本,多种声音选择,提升交流体验。
  3. 文生图功能: 结合最新 AI 技术,用户可将文本直接转换为图片。
  4. 插件系统: 扩展 ChatGPT 功能,包括实时信息获取、新闻、文档检索等。
  5. 助手市场: 提供多种助手,支持工作和学习,促进社区协作。
  6. 渐进式Web应用: 提供类似原生应用的体验,优化移动和桌面使用。
  7. 移动适配: 优化移动体验,欢迎用户反馈以改进版本。
  8. 自定义主题: 提供多种主题和颜色选择,满足个性化需求。

准备工作

需要以下准备工作提前做好,具体操作可以参考文章最后的参考文献。

  1. 一台服务器:使用 docker 部署服务时需要,使用 Vercel 时不需要。
  2. OpenAI API Key:调用 ChatGPT 提供的 API 时需要使用。
  3. API 代理:要调用 OpenAI API,无法访问外网时需要代理服务,Vercel 部署时不需要。

安装体验

LobeChat 提供了 Vercel 的 自托管版本 和 Docker 镜像,这使你可以在几分钟内构建自己的聊天机器人,无需任何基础知识。

本人搭建的LobeChat,分享给大家体验一下:https://www.coderjia.cn/chatgpt ,额度用完即停止分享~

使用 Vercel 安装

白嫖 Vercel的服务器资源,还不需要代理服务,推荐优先使用,不过个人版有限额,但够用了。

1、Fork 仓库

Fork 这个 https://github.com/lobehub/lobe-chat 仓库,为了保持和原仓库同步更新,建议执启动 Upstream Sync Action,启用之后可以设置每小时进行一次自动更新。

在自己克隆的仓库设置

开启自动同步

2、注册 vercel 账户

Vercel 是一个自动化的 Web 应用部署、预览和上线平台,结合了 Github Page Github Action 的功能。它支持应用模板,帮助开发人员快速搭建和上线应用,同时支持 Github 项目导入和联动。Vercel 专注于项目的部署和静态托管,提供 Serverless Function ,但不涉及持续集成测试等其他 CI/CD 流水线任务。此外,Vercel 支持零配置部署到全球边缘网络,提高访问速度,自动处理 CDN HTTPS 配置,且可以部署多种环境,如生产环境和预览环境。用户可以通过 Vercel 平台全自动部署个人网站,只需修改仓库中的代码并推送至 Github Vercel 便会自动触发重新部署流程。

地址:https://vercel.com/

3、新建项目

可以通过这个Deploy链接直接创建项目,参数都准备好了,也可以按照下面步骤一步步创建。

新建项目:

新建项目

选择自己git仓库中的项目,搜不到的话需要授权访问该项目:

选择克隆的项目仓库

设置环境变量:

环境变量类型描述示例
OPENAI_API_KEY必选这是你在 OpenAI 账户页面申请的 API 密钥sk-xxxxxx...xxxxxx
OPENAI_PROXY_URL可选如果你手动配置了 OpenAI 接口代理,可以使用此配置项来覆盖默认的 OpenAI API 请求基础 URLhttps://api.chatanywhere.cnhttps://aihubmix.com/v1 默认值: https://api.openai.com/v1
ACCESS_CODE可选添加访问此服务的密码,你可以设置一个长密码以防被爆破,该值用逗号分隔时为密码数组awCTe)re_r74 or rtrt_ewee3@09! or code1,code2,code3
CUSTOM_MODELS可选用来控制模型列表,使用 + 增加一个模型,使用 - 来隐藏一个模型,使用 模型名=展示名 来自定义模型的展示名,用英文逗号隔开。qwen-7b-chat,+glm-6b,-gpt-3.5-turbo

设置环境变量

部署过程需要静静等待几分钟。。。

部署成功之后,可以配置域名,也可以进一步设置:

部署成功

4、访问lobe-chat项目

点击中间图标进入,出现如下界面:

进入主界面

需要输入设置的访问密码 ACCESS_TOKEN 才能访问,也可以配置社交账号单点登录访问:

输入访问密码

可以切换 ChatGPT 版本或者其他厂商的模型:

设置->默认助手->模型

切换模型

切换成chatGPT-4

手机访问,适配也是没问题的:
手机访问

5、自定义域名

如下步骤可以设置自定义域名:

配置自定义域名

需要到域名解析服务商添加以下内容:

添加解析

使用docker安装

Docker 部署也很简单,使用以下命令即可使用一键启动 LobeChat 服务:

$ docker pull lobehub/lobe-chat
$ docker run -d -p 3210:3210 \-e OPENAI_API_KEY=sk-xxxx \-e ACCESS_CODE=lobe66 \--name lobe-chat \lobehub/lobe-chat

运行容器

如果你需要通过代理使用 OpenAI 服务,你可以使用 OPENAI_PROXY_URL 环境变量来配置代理地址:

$ docker run -d -p 3210:3210 \-e OPENAI_API_KEY=sk-xxxx \-e OPENAI_PROXY_URL=https://api-proxy.com/v1 \-e ACCESS_CODE=lobe66 \--name lobe-chat \lobehub/lobe-chat

总结

LobeChat 是一个功能强大、易于部署和使用的聊天机器人框架,为用户提供了一个创新的交互和沟通工具,可配置 OpenAI Azure OpenAI、智普 AI 等多种模型 API 。配合租赁 OpenAI API Key 即可享受 ChatGPT plus 相关功能,适用于需要部署和使用聊天机器人的个人和企业,特别是那些寻求高性能、多功能和可定制化聊天机器人解决方案的用户。

参考

ChatGPT之开通ChatGPT4

ChatGPT之充值OpenAI API

ChatGPT之搭建API代理服务

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/695707.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OpenAI Sora引领AI跳舞视频新浪潮:字节跳动发布创新舞蹈视频生成框架

OpenAI的Sora已经引起广泛关注,预计今年AI跳舞视频将在抖音平台上大放异彩。下面将为您详细介绍一款字节跳动发布的AI视频动画框架。 技术定位:这款框架采用先进的diffusion技术,专注于生成人类舞蹈视频。它不仅能够实现人体动作和表情的迁移…

2.21学习总结

1.【模板】ST 表 2.Balanced Lineup G 3.景区导游 4.最近公共祖先(LCA) 倍增思想:主要用于LCA问题,RMQ问题。在进行 递推 时,如果 状态空间很大,通常的 线性递推 无法满足 时间 与 空间复杂度 的要求&…

Chrome浏览器安装Axure-Chrome-Extension插件

Chrome浏览器打开Axure生成的HTML静态文件页面时,会显示如下图AXURE RP EXTENSION FOR CHROME,这是因为Chrome浏览器没有安装Axure插件Axure-Chrome-Extension导致的。 解决方法: 插件下载地址:https://download.csdn.net/downlo…

通过盲注脚本复习sqllabs第46关order by 注入

在MySQL支持使用ORDER BY语句对查询结果集进行排序处理,使用ORDER BY语句不仅支持对单列数据的排序,还支持对数据表中多列数据的排序。语法格式如下 select * from 表名 order by 列名(或者数字) asc;升序(默认升序) select * from 表名 or…

交换瓶子【第七届】【省赛】【A组】

题目描述 有N个瓶子,编号 1 ~ N,放在架子上。 比如有5个瓶子: 2 1 3 5 4 要求每次拿起2个瓶子,交换它们的位置。 经过若干次后,使得瓶子的序号为: 1 2 3 4 5 对于这么简单的情况,显然&#…

Java练习(第3天)使用StringJoiner类进行字符串连接

一、问题描述 给定2个或多个字符串,将其连接成为一个字符串,并输出连接后字符串的长度。字符串之间用逗号或引号分隔。 样例输入1: Ram Shyam 样例输出1: Ram,Shyam 9 样例输入2(要求接在输出1之后):…

C#_索引器

索引器的作用:令对象可像数组一般被索引 索引器 internal class TestClass {public int[] arr { 1, 2, 3, 4, 5 };public string this[int index] // 前者为返回类型,后者为索引类型// 返回类型代表get函数的返回值类型、set函数的value类型&#xff0…

(done) 什么是正定矩阵?Positive Definite Matrices

正定矩阵的定义:https://baike.baidu.com/item/%E6%AD%A3%E5%AE%9A%E7%9F%A9%E9%98%B5/11030459 正定矩阵的作用、验证视频:https://www.bilibili.com/video/BV1Ag411M76G/?spm_id_from333.337.search-card.all.click&vd_source7a1a0bc74158c6993c…

下一代自动化爬虫神器--playwright,所见即所得,不用逆向不要太香!!!

文章目录 1.Playwright介绍2.与 Selenium 和 pyppeteer 相比,Playwright 具有以下几个区别和优势3.在爬虫中使用 Playwright 的好处4.环境安装5.屏幕录制6.保留记录cookie信息7.playwright代码编写详解1.第一个Playwright脚本(1)同步模式&…

【鼎捷数字化生意经】总说数字化转型?!怎么做才能带来远超你的想象的经济效益呢?他们来告诉你!

编者按: 转型一直在提,2018—2023年,实现数字化转型的企业仅占中国企业的10%,其中实现领军重塑的企业仅占2%。数据看起来并没有那么乐观! 新竞争格局下,企业需要直面挑战,定义新前沿&#xff0…

C++动态分配内存知识点!

个人主页:PingdiGuo_guo 收录专栏:C干货专栏 大家好呀,又是分享干货的时间,今天我们来学习一下动态分配内存。 文章目录 1.动态分配内存的思想 2.动态分配内存的概念 2.1内存分配函数 2.2动态内存的申请和释放 2.3内存碎片问…

⭐北邮复试刷题LCR 018. 验证回文串__双指针 (力扣119经典题变种挑战)

LCR 018. 验证回文串 给定一个字符串 s ,验证 s 是否是 回文串 ,只考虑字母和数字字符,可以忽略字母的大小写。 本题中,将空字符串定义为有效的 回文串 。 示例 1: 输入: s “A man, a plan, a canal: Panama” 输出: true 解释…

如何选择护眼台灯?孩子学习必选五大宝藏台灯推荐!

因为护眼台灯能提供充足明亮的光照,以及很好的保护眼睛预防近视效果,所以现在的儿童青少年书桌上都会有一盏护眼台灯。但是也有很多家长为孩子选择护眼台灯后,反馈护眼台灯的质量参差不齐,很难避免会购买到劣质产品,这…

2023年12月 Python(五级)真题解析#中国电子学会#全国青少年软件编程等级考试

Python等级考试(1~6级)全部真题・点这里 一、单选题(共25题,共50分) 第1题 下面代码的输出结果是?( ) dict1 = {1: 10, 2: 20, 3: 30} dict2 <

【安卓基础1】初识Android

&#x1f3c6;作者简介&#xff1a;|康有为| &#xff0c;大四在读&#xff0c;目前在小米安卓实习&#xff0c;毕业入职 &#x1f3c6;本文收录于 安卓学习大全&#xff0c;欢迎关注 &#x1f3c6;安卓学习资料推荐&#xff1a; 视频&#xff1a;b站搜动脑学院 视频链接 &…

Git笔记——2

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言 一、撤销修改__情况一 二、撤销修改__情况二 三、撤销修改__情况三 四、删除文件 五、理解分支 六、创建、切换和合并分支初体验 七、删除分支 八、合并冲突 总…

idea maven创建kotlin项目

第一步&#xff1a;打开idea 第二步&#xff1a;添加依赖 <repositories><repository><id>mavenCentral</id><url>https://repo1.maven.org/maven2/</url></repository></repositories><build><sourceDirectory>…

ElasticSearch DSL查询、排序 、分页的原理及语法

1. DSL查询分类和基本语法 ElasticSearch提供了基于Json的DSL来定义查询&#xff0c;常见的查询类型包括&#xff1a; • 查询所有&#xff1a;查询出所有数据&#xff0c;一般测试用&#xff0c;一般不是查出所有&#xff0c;一次性查询20条。例如 match_all • 全文检索(ful…

【webrtc】m77 PacedSender

mediasoup是m77的代码,m77的代码并没有paced controller ,而且与paced sender 的逻辑混在了一起。结合大神们的代码分析,对照m77 进行 理解。m77 有ProbeController。给pacersender 更新飞行数据:PacedSender::InsertPacket(size_t bytes) 对应的是 PacingController::OnPa…

虹科技术丨PTP时钟源设备全攻略:从普通时钟到透明时钟的进阶之路

来源&#xff1a;虹科工业智能互联 虹科技术丨PTP时钟源设备全攻略&#xff1a;从普通时钟到透明时钟的进阶之路 原文链接&#xff1a;https://mp.weixin.qq.com/s/ArBtuLpU6mXax4QWmZDKfQ 欢迎关注虹科&#xff0c;为您提供最新资讯&#xff01; #PTP #普通时钟 #透明时钟 …