Skip to content

Latest commit

 

History

History
492 lines (343 loc) · 32.4 KB

README.zh-CN.md

File metadata and controls

492 lines (343 loc) · 32.4 KB

Lobe Chat

LobeChat 是一个开源的、可扩展的(Function Calling)高性能聊天机器人框架。
它支持一键免费部署私人 ChatGPT/LLM 网页应用程序。

English · 简体中文 · 更新日志 · 文档 · 报告问题 · 请求功能



分享 LobeChat 给你的好友

目录树

TOC


👋🏻 开始使用 & 交流

我们是一群充满热情的设计工程师,希望为 AIGC 提供现代化的设计组件和工具,并以开源的方式分享,以促进它们在更广泛的社区中的发展和采用,LobeChat 目前正在积极开发中,有需求或者问题,欢迎提交 issues

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

Important

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

Star History

✨ 功能特性

  • 💎 精致 UI 设计:经过精心设计的界面,具有优雅的外观和流畅的交互效果,支持亮暗色主题,适配移动端。支持 PWA,提供更加接近原生应用的体验 .
  • 🗣️ 流畅的对话体验:流式响应带来流畅的对话体验,并且支持完整的 Markdown 渲染,包括代码高亮、LaTex 公式、Mermaid 流程图等 .
  • 🧩 支持插件与自定义插件开发:会话支持插件扩展,用户可以安装和使用各种插件,例如搜索引擎、网页提取等,同时也支持自定义插件的开发,满足自定义需求 .
  • 🤖 自定义助手角色:用户可以根据自己的需求创建、分享和调试个性化的对话助手角色,提供更加灵活和个性化的对话功能 .
  • 🏬 角色市场:提供角色市场,用户可以在市场上选择自己喜欢的对话助手角色,丰富对话的内容和风格 .
  • 👁️ 视觉识别: 通过集成视觉识别能力,AI 助手现在可以分析和理解对话过程中提供的图像。这使得对话代理能够进行更具交互性和上下文感知的对话,根据视觉内容提供相关和准确的回答。
  • (WIP)📢 文本转语音(TTS)对话: 我们正在支持文本转语音技术,允许用户与对话代理进行语音对话。这个功能通过提供更自然和沉浸式的对话环境来增强用户体验。用户可以选择多种声音并调整语速以适应自己的偏好。

Note

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


除了上述功能特性以外,我们的底层技术方案为你带来了更多使用保障:

  • 💨 快速部署:使用 Vercel 平台或者我们的 Docker 镜像,只需点击一键部署按钮,即可在 1 分钟内完成部署,无需复杂的配置过程 .
  • 🔒 隐私安全:所有数据保存在用户浏览器本地,保证用户的隐私安全 .
  • 🌐 自定义域名:如果用户拥有自己的域名,可以将其绑定到平台上,方便在任何地方快速访问对话助手 .

📸 快照预览

1 Function Calling 插件系统

通过构建强大的插件生态,ChatGPT 不仅能够实时获取最新新闻,还能助你一臂之力,轻松查询文档、访问各大电商数据。这使得 ChatGPT 在更广泛的领域中发挥其关键作用。如果你对编写插件有所兴趣,我们在下文的 🧩 插件体系 中提供了详尽的组件开发文档、SDK、以及样板文件,让我们一起让助手变得更加好用和强大~

Plugin-Demo.mp4

2 助手市场

在我们的助手市场中,我们积累了大量实用的助手,这些都是在日常工作和学习中得到实际应用的。你也可以在这里分享你的助手,与更多的人一起迭代和优化你的助手提示词。你可以通过 🤖/🏪 提交助手 来提交你的助手,我们构建的自动化 i18n 工作流将会自动将你的助手翻译成多语言版本,让多语种用户都能享受到你的智慧成果。

最近新增 助手说明
短视频脚本助手
By aihoom on 2023-11-17
旨在帮助用户编写吸引人、潮流的短视频剧本
短视频 tkitok 编剧
专家代理人导师
By tcmonster on 2023-11-16
调用完全适合任务的专家代理人来支持您的目标
任务指导 执行计划 沟通 支持
全栈开发人员
By cloverfield11 on 2023-11-15
具有 HTML、CSS、JavaScript、Python、Java、Ruby 和 React、Angular、Vue.js、Express、Django、Next.js、Flask 或 Ruby on Rails 框架经验的全栈 Web 开发人员。具备数据库、应用架构、安全性和测试经验。
web开发 前端 后端 编程 数据库
图形创意大师
By yingxirz on 2023-11-15
擅长平面创意设计与图形创意
图形 创意 设计 平面

📊 Total agents: 48


3 PWA 渐进式 Web 应用

我们利用了渐进式 Web 应用 PWA 技术,使得您可在电脑或移动设备上实现接近原生的 LobeChat 体验。

Note

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

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

4 主题模式选择

LobeChat 提供了丰富的主题模式 - 亮色/深色模式 与丰富的颜色定制选项,以满足您的个性化需求。默认情况下,我们的主题会智能地跟随您的系统设置进行切换,但如果您希望进行手动控制,也可以轻松在设置中进行切换。


5 移动设备适配

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

6 图片识别

LobeChat 已经支持 OpenAI 最新的 gpt-4-vsion 支持视觉识别的模型。你可以上传图片,或者直接粘贴图片,与助手进行对话。

🚧 更多快照和演示正在陆续添加中...

⚡️ 性能测试

Note

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

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

🛳 开箱即用

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


A 使用 Vercel 部署

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

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

保持更新

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

Tip

我们建议按照 📘 LobeChat 自部署保持更新 步骤重新部署。


B 使用 Docker 部署

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

$ docker run -d -p 3210:3210 \
  -e OPENAI_API_KEY=sk-xxxx \
  -e ACCESS_CODE=lobe66 \
  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 \
  lobehub/lobe-chat

Note

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


环境变量

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

环境变量 类型 描述 示例
OPENAI_API_KEY 必选 这是你在 OpenAI 账户页面申请的 API 密钥 sk-xxxxxx...xxxxxx
OPENAI_PROXY_URL 可选 如果你手动配置了 OpenAI 接口代理,可以使用此配置项来覆盖默认的 OpenAI API 请求基础 URL https://api.chatanywhere.cn/v1
默认值:
https://api.openai.com/v1
ACCESS_CODE 可选 添加访问此服务的密码,密码应为 6 位数字或字母 awCT74e3@09!

Note

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

📦 生态系统

NPM 仓库 描述 版本
@lobehub/ui lobehub/lobe-ui Lobe UI 是一个专为构建 AIGC 网页应用程序而设计的开源 UI 组件库。
@lobehub/lint lobehub/lobe-lint LobeLint 为 LobeHub 提供 ESlint,Stylelint,Commitlint,Prettier,Remark 和 Semantic Release 的配置。
@lobehub/assets lobehub/assets LobeHub 的 Logo 资源、favicon、网页字体。

🧩 插件体系

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

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

Note

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

  • 插件一期: 实现插件与主体分离,将插件拆分为独立仓库维护,并实现插件的动态加载
  • 插件二期: 插件的安全性与使用的稳定性,更加精准地呈现异常状态,插件架构的可维护性与开发者友好
  • 插件三期:更高阶与完善的自定义能力,支持插件鉴权与示例
官方插件 仓库 插件描述
时钟时间
By LobeHub on 2023-11-01
lobehub/chat-plugin-clock-time 显示一个时钟来展示当前时间
时钟 时间
网站爬虫
By LobeHub on 2023-08-17
lobehub/chat-plugin-web-crawler 从网页链接中提取内容
网页 内容爬取器
搜索引擎
By LobeHub on 2023-08-15
lobehub/chat-plugin-search-engine 查询搜索引擎以获取信息
网络 搜索
实时天气
By LobeHub on 2023-08-12
lobehub/chat-plugin-realtime-weather 获取实时天气信息
天气 实时

📊 Total plugins: 4

⌨️ 本地开发

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

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

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

🤝 参与贡献

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

🔗 更多工具

  • 🤯 Lobe Theme : Stable Diffusion WebUI 的现代主题,精致的界面设计,高度可定制的 UI,以及提高效率的功能。
  • 🌏 Lobe i18n : Lobe i18n 是一个由 ChatGPT 驱动的 i18n(国际化)翻译过程的自动化工具。它支持自动分割大文件、增量更新,以及为 OpenAI 模型、API 代理和温度提供定制选项的功能。
  • 💌 Lobe Commit : Lobe Commit 是一个 CLI 工具,它利用 Langchain/ChatGPT 生成基于 Gitmoji 的提交消息。


📝 License

Copyright © 2023 LobeHub.
This project is MIT licensed.