Skip to content

Latest commit

 

History

History
855 lines (612 loc) · 55.9 KB

README.zh-CN.md

File metadata and controls

855 lines (612 loc) · 55.9 KB

Lobe Chat

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

English · 简体中文 · 日本語 · 官网 · 更新日志 · 文档 · 博客 · 反馈问题




分享 LobeChat 给你的好友

探索私人生产力的未来。在个体崛起的时代中为你打造.

目录树

TOC


👋🏻 开始使用 & 交流

我们是一群充满热情的设计工程师,希望为 AIGC 提供现代化的设计组件和工具,并以开源的方式分享。 同时通过 Bootstrapping 的方式,我们希望能够为开发者和用户提供一个更加开放、更加透明友好的产品生态。

不论普通用户与专业开发者,LobeHub 旨在成为所有人的 AI Agent 实验场。LobeChat 目前正在积极开发中,有任何需求或者问题,欢迎提交 issues

无需安装或注册!访问我们的网站,快速体验
加入我们的 Discord 社区!这是你可以与开发者和其他 LobeHub 热衷用户交流的地方

Important

收藏项目,你将从 GitHub 上无延迟地接收所有发布通知~⭐️

Star History

✨ 特性一览

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

chat.pdf.mp4

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

通过这种方式,LobeChat 能够更灵活地适应不同用户的需求,同时也为开发者提供了更为广泛的选择空间。

已支持的模型服务商

我们已经实现了对以下模型服务商的支持:

  • 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 3GemmaMistralLlama2Cohere等模型路由,支持智能路由优化,提升使用效率,开放且灵活。了解更多
  • Minimax: 接入了 Minimax 的 AI 模型,包括 MoE 模型 abab6,提供了更多的选择空间。了解更多
  • DeepSeek: 接入了 DeepSeek 的 AI 模型,包括最新的 DeepSeek-V2,提供兼顾性能与价格的模型。了解更多
  • Qwen: 接入了 Qwen 的 AI 模型,包括最新的 qwen-turboqwen-plusqwen-max 等模型。了解更多

同时,我们也在计划支持更多的模型服务商,如 Replicate 和 Perplexity 等,以进一步丰富我们的服务商库。如果你希望让 LobeChat 支持你喜爱的服务商,欢迎加入我们的社区讨论

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

Tip

查阅 📘 在 LobeChat 中使用 Ollama 获得更多信息

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

这一特性打开了新的互动方式,使得交流不再局限于文字,而是可以涵盖丰富的视觉元素。无论是日常使用中的图片分享,还是在特定行业内的图像解读,助手都能提供出色的对话体验。

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

在 LobeChat 中,我们精心挑选了一系列高品质的声音选项 (OpenAI Audio, Microsoft Edge Speech),以满足不同地域和文化背景用户的需求。用户可以根据个人喜好或者特定场景来选择合适的语音,从而获得个性化的交流体验。

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

LobeChat 的插件生态系统是其核心功能的重要扩展,它极大地增强了 ChatGPT 的实用性和灵活性。

Plugin-Demo.mp4

通过利用插件,ChatGPT 能够实现实时信息的获取和处理,例如自动获取最新新闻头条,为用户提供即时且相关的资讯。

此外,这些插件不仅局限于新闻聚合,还可以扩展到其他实用的功能,如快速检索文档、生成图象、获取电商平台数据,以及其他各式各样的第三方服务。

通过文档了解更多 📘 插件使用

最近新增 插件描述
通义万象图像生成器
By YoungTx on 2024-08-09
此插件使用阿里巴巴的通义万象模型根据文本提示生成图像。
图像 通义 万象
购物工具
By shoppingtools on 2024-07-19
在 eBay 和 AliExpress 上搜索产品,查找 eBay 活动和优惠券。获取快速示例。
购物 e-bay ali-express 优惠券
Savvy Trader AI
By savvytrader on 2024-06-27
实时股票、加密货币和其他投资数据。
股票 分析
社交搜索
By say-apps on 2024-06-02
社交搜索提供访问推文、用户、关注者、图片、媒体等功能。
社交 推特 x 搜索

📊 Total plugins: 51

在 LobeChat 的助手市场中,创作者们可以发现一个充满活力和创新的社区,它汇聚了众多精心设计的助手,这些助手不仅在工作场景中发挥着重要作用,也在学习过程中提供了极大的便利。 我们的市场不仅是一个展示平台,更是一个协作的空间。在这里,每个人都可以贡献自己的智慧,分享个人开发的助手。

Tip

通过 🤖/🏪 提交助手 ,你可以轻松地将你的助手作品提交到我们的平台。我们特别强调的是,LobeChat 建立了一套精密的自动化国际化(i18n)工作流程, 它的强大之处在于能够无缝地将你的助手转化为多种语言版本。 这意味着,不论你的用户使用何种语言,他们都能无障碍地体验到你的助手。

Important

我欢迎所有用户加入这个不断成长的生态系统,共同参与到助手的迭代与优化中来。共同创造出更多有趣、实用且具有创新性的助手,进一步丰富助手的多样性和实用性。

最近新增 助手说明
国际歌词创作人
By mnector on 2024-08-29
专注于为西班牙语、英语和法语歌曲创作歌词,着重于叙事和所提供内容的情感。
歌词创作 翻译 音乐
后退提问专家
By tiny656 on 2024-08-27
你好!我是世界知识的专家,擅长用后退提问策略来帮助你更深入地理解和分析问题。请你输入一个问题,我会根据以下流程回答你的问题:
  1. 给出至少 3 个符合策略的可选后退提问。
  2. 分别回答这些后退提问。
  3. 将上述回答作为论据,有逻辑、条理地,使用可视化图表辅助对你的问题进行最终作答。

请告诉我你想要探讨的问题是什么?
后退提问 思考策略 问题分析 | | 虚幻引擎大师
By thedivergentai on 2024-08-27 | 虚幻游戏开发助手
游戏开发 虚幻引擎 软件工程 | | TypeScript 解决方案架构师
By swarfte on 2024-08-24 | 精通 TypeScript、Node.js、Vue.js 3、Nuxt.js 3、Express.js、React.js 和现代 UI 库。
类型脚本 java-script 网页开发 编码标准 最佳实践 |

📊 Total agents: 321

LobeChat 支持同时使用服务端数据库和本地数据库。根据您的需求,您可以选择合适的部署方案:

  • 本地数据库:适合希望对数据有更多掌控感和隐私保护的用户。LobeChat 采用了 CRDT (Conflict-Free Replicated Data Type) 技术,实现了多端同步功能。这是一项实验性功能,旨在提供无缝的数据同步体验。
  • 服务端数据库:适合希望更便捷使用体验的用户。LobeChat 支持 PostgreSQL 作为服务端数据库。关于如何配置服务端数据库的详细文档,请前往 配置服务端数据库

无论您选择哪种数据库,LobeChat 都能为您提供卓越的用户体验。

LobeChat 支持多用户管理,提供了两种主要的用户认证和管理方案,以满足不同需求:

  • next-auth:LobeChat 集成了 next-auth,一个灵活且强大的身份验证库,支持多种身份验证方式,包括 OAuth、邮件登录、凭证登录等。通过 next-auth,您可以轻松实现用户的注册、登录、会话管理以及社交登录等功能,确保用户数据的安全性和隐私性。

  • Clerk:对于需要更高级用户管理功能的用户,LobeChat 还支持 Clerk,一个现代化的用户管理平台。Clerk 提供了更丰富的功能,如多因素认证 (MFA)、白名单、用户管理、登录活动监控等。通过 Clerk,您可以获得更高的安全性和灵活性,轻松应对生产级的用户管理需求。

您可以根据自己的需求,选择合适的用户管理方案。

我们深知在当今多设备环境下为用户提供无缝体验的重要性。为此,我们采用了渐进式 Web 应用 PWA 技术, 这是一种能够将网页应用提升至接近原生应用体验的现代 Web 技术。通过 PWA,LobeChat 能够在桌面和移动设备上提供高度优化的用户体验,同时保持轻量级和高性能的特点。 在视觉和感觉上,我们也经过精心设计,以确保它的界面与原生应用无差别,提供流畅的动画、响应式布局和适配不同设备的屏幕分辨率。

Note

若您未熟悉 PWA 的安装过程,您可以按照以下步骤将 LobeChat 添加为您的桌面应用(也适用于移动设备):

  • 在电脑上运行 Chrome 或 Edge 浏览器 .
  • 访问 LobeChat 网页 .
  • 在地址栏的右上角,单击 安装 图标 .
  • 根据屏幕上的指示完成 PWA 的安装 .

针对移动设备进行了一系列的优化设计,以提升用户的移动体验。目前,我们正在对移动端的用户体验进行版本迭代,以实现更加流畅和直观的交互。如果您有任何建议或想法,我们非常欢迎您通过 GitHub Issues 或者 Pull Requests 提供反馈。

作为设计工程师出身,LobeChat 在界面设计上充分考虑用户的个性化体验,因此引入了灵活多变的主题模式,其中包括日间的亮色模式和夜间的深色模式。 除了主题模式的切换,还提供了一系列的颜色定制选项,允许用户根据自己的喜好来调整应用的主题色彩。无论是想要沉稳的深蓝,还是希望活泼的桃粉,或者是专业的灰白,用户都能够在 LobeChat 中找到匹配自己风格的颜色选择。

Tip

默认配置能够智能地识别用户系统的颜色模式,自动进行主题切换,以确保应用界面与操作系统保持一致的视觉体验。对于喜欢手动调控细节的用户,LobeChat 同样提供了直观的设置选项,针对聊天场景也提供了对话气泡模式和文档模式的选择。

更多特性

除了上述功能特性以外,LobeChat 所具有的设计和技术能力将为你带来更多使用保障:

  • 💎 精致 UI 设计:经过精心设计的界面,具有优雅的外观和流畅的交互效果,支持亮暗色主题,适配移动端。支持 PWA,提供更加接近原生应用的体验。
  • 🗣️ 流畅的对话体验:流式响应带来流畅的对话体验,并且支持完整的 Markdown 渲染,包括代码高亮、LaTex 公式、Mermaid 流程图等。
  • 💨 快速部署:使用 Vercel 平台或者我们的 Docker 镜像,只需点击一键部署按钮,即可在 1 分钟内完成部署,无需复杂的配置过程。
  • 🔒 隐私安全:所有数据保存在用户浏览器本地,保证用户的隐私安全。
  • 🌐 自定义域名:如果用户拥有自己的域名,可以将其绑定到平台上,方便在任何地方快速访问对话助手。

✨ 随着产品迭代持续更新,我们将会带来更多更多令人激动的功能!


Note

你可以在 Projects 中找到我们后续的 Roadmap 计划

⚡️ 性能测试

Note

完整测试报告可见 📘 Lighthouse 性能测试

Desktop Mobile
📑 Lighthouse 测试报告 📑 Lighthouse 测试报告

🛳 开箱即用

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

Tip

完整教程请查阅 📘 构建属于自己的 Lobe Chat

A 使用 Vercel、Zeabur 或 Sealos 部署

如果想在 Vercel 或 Zeabur 上部署该服务,可以按照以下步骤进行操作:

  • 准备好你的 OpenAI API Key
  • 点击下方按钮开始部署: 直接使用 GitHub 账号登录即可,记得在环境变量页填入 OPENAI_API_KEY (必填) and ACCESS_CODE(推荐);
  • 部署完毕后,即可开始使用;
  • 绑定自定义域名(可选):Vercel 分配的域名 DNS 在某些区域被污染了,绑定自定义域名即可直连。目前 Zeabur 提供的域名还未被污染,大多数地区都可以直连。
使用 Vercel 部署 使用 Zeabur 部署 使用 Sealos 部署

Fork 之后

在 Fork 后,请只保留 "upstream sync" Action 并在你 fork 的 GitHub Repo 中禁用其他 Action。

保持更新

如果你根据 README 中的一键部署步骤部署了自己的项目,你可能会发现总是被提示 “有可用更新”。这是因为 Vercel 默认为你创建新项目而非 fork 本项目,这将导致无法准确检测更新。

Tip

我们建议按照 📘 自动同步更新 步骤重新部署。


B 使用 Docker 部署

我们提供了 Docker 镜像,供你在自己的私有设备上部署 LobeChat 服务。使用以下命令即可使用一键启动 LobeChat 服务:

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

Tip

如果你需要通过代理使用 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

Note

有关 Docker 部署的详细说明,详见 📘 使用 Docker 部署


环境变量

本项目提供了一些额外的配置项,使用环境变量进行设置:

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

Note

完整环境变量可见 📘 环境变量


获取 OpenAI API Key

API Key 是使用 LobeChat 进行大语言模型会话的必要信息,本节以 OpenAI 模型服务商为例,简要介绍获取 API Key 的方式。

A 通过 OpenAI 官方渠道

  • 注册一个 OpenAI 账户,你需要使用国际手机号、非大陆邮箱进行注册;
  • 注册完毕后,前往 API Keys 页面,点击 Create new secret key 创建新的 API Key:
步骤 1:打开创建窗口 步骤 2:创建 API Key 步骤 3:获取 API Key
  • 将此 API Key 填写到 LobeChat 的 API Key 配置中,即可开始使用。

Tip

账户注册后,一般有 5 美元的免费额度,但有效期只有三个月。 如果你希望长期使用你的 API Key,你需要完成支付的信用卡绑定。由于 OpenAI 只支持外币信用卡,因此你需要找到合适的支付渠道,此处不再详细展开。


B 通过 OpenAI 第三方代理商

如果你发现注册 OpenAI 账户或者绑定外币信用卡比较麻烦,可以考虑借助一些知名的 OpenAI 第三方代理商来获取 API Key,这可以有效降低获取 OpenAI API Key 的门槛。但与此同时,一旦使用三方服务,你可能也需要承担潜在的风险, 请根据你自己的实际情况自行决策。以下是常见的第三方模型代理商列表,供你参考:

服务商 特性说明 Proxy 代理地址 链接
AiHubMix 使用 OpenAI 企业接口,全站模型价格为官方 86 折(含 GPT-4 ) https://aihubmix.com/v1 获取

Warning

免责申明: 在此推荐的 OpenAI API Key 由第三方代理商提供,所以我们不对 API Key 的 有效性安全性 负责,请你自行承担购买和使用 API Key 的风险。

Note

如果你是模型服务商,并认为自己的服务足够稳定且价格实惠,欢迎联系我们,我们会在自行体验和测试后酌情推荐。

📦 生态系统

NPM 仓库 描述 版本
@lobehub/ui lobehub/lobe-ui 构建 AIGC 网页应用程序而设计的开源 UI 组件库
@lobehub/icons lobehub/lobe-icons 主流 AI / LLM 模型和公司 SVG Logo 与 Icon 合集
@lobehub/tts lobehub/lobe-tts AI TTS / STT 语音合成 / 识别 React Hooks 库
@lobehub/lint lobehub/lobe-lint LobeHub 代码样式规范 ESlint,Stylelint,Commitlint,Prettier,Remark 和 Semantic Release

🧩 插件体系

插件提供了扩展 LobeChat Function Calling 能力的方法。可以用于引入新的 Function Calling,甚至是新的消息结果渲染方式。如果你对插件开发感兴趣,请在 Wiki 中查阅我们的 📘 插件开发指引

  • lobe-chat-plugins:插件索引从该仓库的 index.json 中获取插件列表并显示给用户。
  • chat-plugin-template:插件开发模版,你可以通过项目模版快速新建插件项目。
  • @lobehub/chat-plugin-sdk:插件 SDK 可帮助您创建出色的 Lobe Chat 插件。
  • @lobehub/chat-plugins-gateway:插件网关是一个后端服务,作为 LobeChat 插件的网关。我们使用 Vercel 部署此服务。主要的 API POST /api/v1/runner 被部署为 Edge Function。

Note

插件系统目前正在进行重大开发。您可以在以下 Issues 中了解更多信息:

  • 插件一期: 实现插件与主体分离,将插件拆分为独立仓库维护,并实现插件的动态加载
  • 插件二期: 插件的安全性与使用的稳定性,更加精准地呈现异常状态,插件架构的可维护性与开发者友好
  • 插件三期:更高阶与完善的自定义能力,支持插件鉴权与示例

⌨️ 本地开发

可以使用 GitHub Codespaces 进行在线开发:

或者使用以下命令进行本地开发:

$ git clone https://github.com/lobehub/lobe-chat.git
$ cd lobe-chat
$ pnpm install
$ pnpm run dev

如果你希望了解更多详情,欢迎可以查阅我们的 📘 开发指南

🤝 参与贡献

我们非常欢迎各种形式的贡献。如果你对贡献代码感兴趣,可以查看我们的 GitHub IssuesProjects,大展身手,向我们展示你的奇思妙想。

Tip

我们希望创建一个技术分享型社区,一个可以促进知识共享、想法交流,激发彼此鼓励和协作的环境。 同时欢迎联系我们提供产品功能和使用体验反馈,帮助我们将 LobeChat 建设得更好。

组织维护者: @arvinxx @canisminor1990




❤ 社区赞助

每一分支持都珍贵无比,汇聚成我们支持的璀璨银河!你就像一颗划破夜空的流星,瞬间点亮我们前行的道路。感谢你对我们的信任 —— 你的支持笔就像星辰导航,一次又一次地为项目指明前进的光芒。

🔗 更多工具

  • 🅰️ Lobe SD Theme: Stable Diffusion WebUI 的现代主题,精致的界面设计,高度可定制的 UI,以及提高效率的功能。
  • ⛵️ Lobe Midjourney WebUI: Midjourney WebUI, 能够根据文本提示快速生成丰富多样的图像,激发创造力,增强对话交流。
  • 🌏 Lobe i18n: Lobe i18n 是一个由 ChatGPT 驱动的 i18n(国际化)翻译过程的自动化工具。它支持自动分割大文件、增量更新,以及为 OpenAI 模型、API 代理和温度提供定制选项的功能。
  • 💌 Lobe Commit: Lobe Commit 是一个 CLI 工具,它利用 Langchain/ChatGPT 生成基于 Gitmoji 的提交消息。


📝 License

Copyright © 2023 LobeHub.
This project is Apache 2.0 licensed.