@lobehub/chat 0.65.0 → 0.66.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -15,8 +15,8 @@ jobs:
15
15
  with:
16
16
  token: ${{ secrets.GH_TOKEN }}
17
17
  style: 'simple'
18
- update-files: 'README.md'
19
- update-places: '<!-- CONTRIBUTION GROUP -->/<!-- CONTRIBUTION END -->'
18
+ update-files: 'README.md, README-zh_CN.md'
19
+ update-places: '<!-- CONTRIBUTION GROUP -->/<!-- CONTRIBUTION END -->, <!-- CONTRIBUTION GROUP -->/<!-- CONTRIBUTION END -->'
20
20
 
21
21
  - name: Commit and push if changed
22
22
  run: |-
package/CHANGELOG.md CHANGED
@@ -2,6 +2,56 @@
2
2
 
3
3
  # Changelog
4
4
 
5
+ ## [Version 0.66.0](https://github.com/lobehub/lobe-chat/compare/v0.65.1...v0.66.0)
6
+
7
+ <sup>Released on **2023-09-02**</sup>
8
+
9
+ #### ✨ Features
10
+
11
+ - **misc**: Add russian localy.
12
+
13
+ <br/>
14
+
15
+ <details>
16
+ <summary><kbd>Improvements and Fixes</kbd></summary>
17
+
18
+ #### What's improved
19
+
20
+ - **misc**: Add russian localy, closes [#137](https://github.com/lobehub/lobe-chat/issues/137) ([785d50f](https://github.com/lobehub/lobe-chat/commit/785d50f))
21
+
22
+ </details>
23
+
24
+ <div align="right">
25
+
26
+ [![](https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square)](#readme-top)
27
+
28
+ </div>
29
+
30
+ ### [Version 0.65.1](https://github.com/lobehub/lobe-chat/compare/v0.65.0...v0.65.1)
31
+
32
+ <sup>Released on **2023-09-01**</sup>
33
+
34
+ #### 🐛 Bug Fixes
35
+
36
+ - **misc**: 修正 defaultAgent 无法正常变更的问题.
37
+
38
+ <br/>
39
+
40
+ <details>
41
+ <summary><kbd>Improvements and Fixes</kbd></summary>
42
+
43
+ #### What's fixed
44
+
45
+ - **misc**: 修正 defaultAgent 无法正常变更的问题 ([788d94b](https://github.com/lobehub/lobe-chat/commit/788d94b))
46
+
47
+ </details>
48
+
49
+ <div align="right">
50
+
51
+ [![](https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square)](#readme-top)
52
+
53
+ </div>
54
+
5
55
  ## [Version 0.65.0](https://github.com/lobehub/lobe-chat/compare/v0.64.1...v0.65.0)
6
56
 
7
57
  <sup>Released on **2023-08-29**</sup>
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 LobeHub
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,303 @@
1
+ <a name="readme-top"></a>
2
+
3
+ <div align="center">
4
+
5
+ <img height="120" src="https://registry.npmmirror.com/@lobehub/assets-logo/1.0.0/files/assets/logo-3d.webp">
6
+ <img height="120" src="https://gw.alipayobjects.com/zos/kitchen/qJ3l3EPsdW/split.svg">
7
+ <img height="120" src="https://registry.npmmirror.com/@lobehub/assets-emoji/1.3.0/files/assets/robot.webp">
8
+
9
+ <h1>Lobe Chat</h1>
10
+
11
+ LobeChat 是一个开源的、可扩展的([Function Calling][fc-url])高性能聊天机器人框架。<br/> 它支持一键免费部署私人 ChatGPT/LLM 网页应用程序。
12
+
13
+ [English](./README.md) · **简体中文** · [更新日志](./CHANGELOG.md) · [报告问题][issues-url] · [请求功能][issues-url]
14
+
15
+ <!-- SHIELD GROUP -->
16
+
17
+ [![release][release-shield]][release-url]
18
+ [![releaseDate][release-date-shield]][release-date-url]
19
+ [![ciTest][ci-test-shield]][ci-test-url]
20
+ [![ciRelease][ci-release-shield]][ci-release-url] <br/>
21
+ [![contributors][contributors-shield]][contributors-url]
22
+ [![forks][forks-shield]][forks-url]
23
+ [![stargazers][stargazers-shield]][stargazers-url]
24
+ [![issues][issues-shield]][issues-url]
25
+
26
+ [![Deploy with Vercel][deploy-button-image]][deploy-url]
27
+
28
+ ![](https://gw.alipayobjects.com/zos/kitchen/3uH7fYVvfO/lobechat.webp)
29
+
30
+ </div>
31
+
32
+ <details>
33
+ <summary><kbd>目录树</kbd></summary>
34
+
35
+ #### TOC
36
+
37
+ - [👋🏻 开始使用 & 交流](#-开始使用--交流)
38
+ - [✨ 功能特性](#-功能特性)
39
+ - [🛳 开箱即用](#-开箱即用)
40
+ - [📦 生态系统](#-生态系统)
41
+ - [🧩 插件体系](#-插件体系)
42
+ - [⌨️ 本地开发](#️-本地开发)
43
+ - [🤝 参与贡献](#-参与贡献)
44
+ - [🔗 更多工具](#-更多工具)
45
+
46
+ ####
47
+
48
+ <br/>
49
+
50
+ </details>
51
+
52
+ ## 👋🏻 开始使用 & 交流
53
+
54
+ 我们是一群充满热情的设计工程师,希望为 AIGC 提供现代化的设计组件和工具,并以开源的方式分享,以促进它们在更广泛的社区中的发展和采用,LobeChat 目前正在积极开发中,有需求或者问题,欢迎提交 [issues][issues-url]
55
+
56
+ | [![][official-shield]][official-url] | 无需安装或注册!访问我们的网站,快速体验 |
57
+ | :----------------------------------- | :---------------------------------------------- |
58
+ | [![][discord-shield]][discord-url] | 加入我们的 Discord 社区!这是你可以与开发者和其他 LobeHub 热衷用户交流的地方 |
59
+
60
+ ![](https://gw.alipayobjects.com/zos/kitchen/0hcO8QiU9c/star.webp)
61
+
62
+ > **⭐️ 给我们点赞:** 你将从 GitHub 上无延迟地接收所有发布通知!
63
+
64
+ ## ✨ 功能特性
65
+
66
+ - [x] 💨 **快速部署**:使用 Vercel 平台,只需点击一键部署按钮,即可在 1 分钟内完成部署,无需复杂的配置过程;
67
+ - [x] 💎 **精致 UI 设计**:经过精心设计的界面,具有优雅的外观和流畅的交互效果,支持亮暗色主题,适配移动端。支持 PWA,提供更加接近原生应用的体验;
68
+ - [x] 🗣️ **流畅的对话体验**:流式响应带来流畅的对话体验,并且支持完整的 Markdown 渲染,包括代码高亮、LaTex 公式、Mermaid 流程图等;
69
+ - [x] 🧩 **支持插件与自定义插件开发**:会话支持插件扩展,用户可以安装和使用各种插件,例如搜索引擎、网页提取等,同时也支持自定义插件的开发,满足自定义需求;
70
+ - [x] 🔒 **隐私安全**:所有数据保存在用户浏览器本地,保证用户的隐私安全;
71
+ - [x] 🤖 **自定义助手角色**:用户可以根据自己的需求创建、分享和调试个性化的对话助手角色,提供更加灵活和个性化的对话功能;
72
+ - [x] 🌐 **自定义域名**:如果用户拥有自己的域名,可以将其绑定到平台上,方便在任何地方快速访问对话助手。
73
+ - [ ] 🏬 **角色市场**(WIP):提供角色市场,用户可以在市场上选择自己喜欢的对话助手角色,丰富对话的内容和风格;
74
+
75
+ > **👉 Roadmap:** 你可以在 Projects 中找到我们后续的 [Roadmap][project-url] 计划
76
+
77
+ <div align="right">
78
+
79
+ [![][back-to-top]](#readme-top)
80
+
81
+ </div>
82
+
83
+ ## 🛳 开箱即用
84
+
85
+ LobeChat 提供了 Vercel 的 [自托管版本][deploy-url]。这使你可以在几分钟内构建自己的聊天机器人,无需任何基础知识。如果想自己部署该服务,可以按照以下步骤进行操作:
86
+
87
+ - 准备好你的 [OpenAI API Key](https://platform.openai.com/account/api-keys) 。
88
+ - 点击下方按钮开始部署: Deploy with Vercel,直接使用 Github 账号登录即可,记得在环境变量页填入 API Key 和页面访问密码 CODE;
89
+ - 部署完毕后,即可开始使用;
90
+ - 绑定自定义域名(可选):Vercel 分配的域名 DNS 在某些区域被污染了,绑定自定义域名即可直连。
91
+
92
+ [![使用 Vercel 部署][deploy-button-image]][deploy-url]
93
+
94
+ > **👉 提示:** 本项目提供了一些额外的配置项,使用环境变量进行设置:
95
+
96
+ | 环境变量 | 类型 | 描述 | 示例 |
97
+ | ------------------ | -- | ------------------------------------------------------- | ------------------------------------------------------------------- |
98
+ | `OPENAI_API_KEY` | 必选 | 这是你在 OpenAI 账户页面申请的 API 密钥 | `sk-xxxxxx...xxxxxx` |
99
+ | `OPENAI_PROXY_URL` | 可选 | 如果你手动配置了 OpenAI 接口代理,可以使用此配置项来覆盖默认的 OpenAI API 请求基础 URL | `https://api.chatanywhere.cn`<br/>默认值:<br/>`https://api.openai.com` |
100
+ | `ACCESS_CODE` | 可选 | 添加访问此服务的密码,密码应为 6 位数字或字母 | `awCT74` 或 `e3@09!` |
101
+
102
+ <div align="right">
103
+
104
+ [![][back-to-top]](#readme-top)
105
+
106
+ </div>
107
+
108
+ ## 📦 生态系统
109
+
110
+ | NPM | 代码库 | 描述 | 版本 |
111
+ | ------------------------------ | ------------------------------------- | ----------------------------------------------------------------------------------------- | -------------------------------------- |
112
+ | [@lobehub/ui][lobe-ui-url] | [lobehub/lobe-ui][lobe-ui-github] | Lobe UI 是一个专为构建 AIGC 网页应用程序而设计的开源 UI 组件库。 | [![][lobe-ui-shield]][lobe-ui-url] |
113
+ | [@lobehub/lint][lobe-lint-url] | [lobehub/lobe-lint][lobe-lint-github] | LobeLint 为 LobeHub 提供 ESlint,Stylelint,Commitlint,Prettier,Remark 和 Semantic Release 的配置。 | [![][lobe-lint-shield]][lobe-lint-url] |
114
+ | @lobehub/assets | [lobehub/assets][lobe-assets-github] | LobeHub 的 Logo 资源、favicon、网页字体。 | |
115
+
116
+ <div align="right">
117
+
118
+ [![][back-to-top]](#readme-top)
119
+
120
+ </div>
121
+
122
+ ## 🧩 插件体系
123
+
124
+ 插件提供了扩展 LobeChat [Function Calling][fc-url] 能力的方法。可以用于引入新的 Function Calling,甚至是新的消息结果渲染方式。
125
+
126
+ > **👉 提示:** 插件系统目前正在进行重大开发。您可以在 <https://github.com/lobehub/lobe-chat/issues/97> 中了解更多信息。
127
+
128
+ - [@lobehub/lobe-chat-plugins][lobe-chat-plugins]:这是 LobeChat 的插件索引。它从该仓库的 index.json 中获取插件列表并显示给用户。
129
+ - [@lobehub/chat-plugin-sdk][chat-plugin-sdk]:LobeChat 插件 SDK 可帮助您创建出色的 Lobe Chat 插件。
130
+ - [@lobehub/chat-plugins-gateway][chat-plugins-gateway]:LobeChat 插件网关是一个后端服务,作为 LobeChat 插件的网关。我们使用 Vercel 部署此服务。主要的 API POST /api/v1/runner 被部署为 Edge Function。
131
+
132
+ | 官方插件 | 描述 |
133
+ | ------------------------------------ | -------------------------------------- |
134
+ | [搜索引擎][chat-plugin-search-engine] | 此插件允许使用 SerpApi 搜索引擎。 |
135
+ | [实时天气][chat-plugin-realtime-weather] | 此插件通过获取实时天气数据提供实用的天气信息,并可以根据用户的位置自动更新。 |
136
+ | [网站爬虫][chat-plugin-web-crawler] | 此插件自动爬取指定 URL 网页的主要内容,并将其用作上下文输入。 |
137
+
138
+ <div align="right">
139
+
140
+ [![][back-to-top]](#readme-top)
141
+
142
+ </div>
143
+
144
+ ## ⌨️ 本地开发
145
+
146
+ 可以使用 Gitpod 进行在线开发:
147
+
148
+ [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)][gitpod-url]
149
+
150
+ 或者使用以下命令进行本地开发:
151
+
152
+ ```bash
153
+ $ git clone https://github.com/lobehub/lobe-chat.git
154
+ $ cd lobe-chat
155
+ $ pnpm install
156
+ $ pnpm dev
157
+ ```
158
+
159
+ <div align="right">
160
+
161
+ [![][back-to-top]](#readme-top)
162
+
163
+ </div>
164
+
165
+ ## 🤝 参与贡献
166
+
167
+ 我们非常欢迎各种形式的贡献。如果你对贡献代码感兴趣,可以查看我们的 GitHub [Issues][issues-url] 和 [Projects][project-url],大展身手,向我们展示你的奇思妙想。
168
+
169
+ <!-- CONTRIBUTION GROUP -->
170
+
171
+ > 📊 Total: <kbd>**4**</kbd>
172
+
173
+ <a href="https://github.com/arvinxx" title="arvinxx">
174
+ <img src="https://avatars.githubusercontent.com/u/28616219?v=4" width="50" />
175
+ </a>
176
+ <a href="https://github.com/canisminor1990" title="canisminor1990">
177
+ <img src="https://avatars.githubusercontent.com/u/17870709?v=4" width="50" />
178
+ </a>
179
+ <a href="https://github.com/apps/dependabot" title="dependabot[bot]">
180
+ <img src="https://avatars.githubusercontent.com/in/29110?v=4" width="50" />
181
+ </a>
182
+ <a href="https://github.com/actions-user" title="actions-user">
183
+ <img src="https://avatars.githubusercontent.com/u/65916846?v=4" width="50" />
184
+ </a>
185
+
186
+ <!-- CONTRIBUTION END -->
187
+
188
+ <div align="right">
189
+
190
+ [![][back-to-top]](#readme-top)
191
+
192
+ </div>
193
+
194
+ ## 🔗 更多工具
195
+
196
+ - [🤯 Lobe Theme][lobe-theme] : Stable Diffusion WebUI 的现代主题,精致的界面设计,高度可定制的 UI,以及提高效率的功能。
197
+ - [🌏 Lobe i18n][lobe-i18n] : Lobe i18n 是一个由 ChatGPT 驱动的 i18n(国际化)翻译过程的自动化工具。它支持自动分割大文件、增量更新,以及为 OpenAI 模型、API 代理和温度提供定制选项的功能。
198
+ - [💌 Lobe Commit][lobe-commit] : Lobe Commit 是一个 CLI 工具,它利用 Langchain/ChatGPT 生成基于 Gitmoji 的提交消息。
199
+
200
+ <div align="right">
201
+
202
+ [![][back-to-top]](#readme-top)
203
+
204
+ </div>
205
+
206
+ ---
207
+
208
+ #### 📝 License
209
+
210
+ Copyright © 2023 [LobeHub][profile-url]. <br />
211
+ This project is [MIT](./LICENSE) licensed.
212
+
213
+ <!-- LINK GROUP -->
214
+
215
+ [official-shield]: https://img.shields.io/website?down_message=offline&label=🤯%20Try%20LobeChat&up_message=online&url=https%3A%2F%2Flobe-chat.vercel.app&style=for-the-badge
216
+ [official-url]: https://lobe-chat.vercel.app
217
+ [discord-shield]: https://dcbadge.vercel.app/api/server/AYFPHvv2jT?style=for-the-badge
218
+ [discord-url]: https://discord.gg/AYFPHvv2jT
219
+ [fc-url]: https://sspai.com/post/81986
220
+ [profile-url]: https://github.com/lobehub
221
+ [issues-url]: https://github.com/lobehub/lobe-chat/issues/new/choose
222
+ [project-url]: https://github.com/lobehub/lobe-chat/projects
223
+ [gitpod-url]: https://gitpod.io/#https://github.com/lobehub/lobe-chat
224
+
225
+ <!-- SHIELD LINK GROUP -->
226
+
227
+ [back-to-top]: https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square
228
+
229
+ <!-- release -->
230
+
231
+ [release-shield]: https://img.shields.io/npm/v/@lobehub/chat?label=%F0%9F%A4%AF%20Chat
232
+ [release-url]: https://www.npmjs.com/package/@lobehub/chat
233
+
234
+ <!-- releaseDate -->
235
+
236
+ [release-date-shield]: https://img.shields.io/github/release-date/lobehub/lobe-chat?style=flat
237
+ [release-date-url]: https://github.com/lobehub/lobe-chat/releases
238
+
239
+ <!-- ciTest -->
240
+
241
+ [ci-test-shield]: https://github.com/lobehub/lobe-chat/workflows/Test%20CI/badge.svg
242
+ [ci-test-url]: https://github.com/lobehub/lobe-chat/actions/workflows/test.yml
243
+
244
+ <!-- ciRelease -->
245
+
246
+ [ci-release-shield]: https://github.com/lobehub/lobe-chat/workflows/Release%20CI/badge.svg
247
+ [ci-release-url]: https://github.com/lobehub/lobe-chat/actions?query=workflow%3ARelease%20CI
248
+
249
+ <!-- contributors -->
250
+
251
+ [contributors-shield]: https://img.shields.io/github/contributors/lobehub/lobe-chat.svg?style=flat
252
+ [contributors-url]: https://github.com/lobehub/lobe-chat/graphs/contributors
253
+
254
+ <!-- forks -->
255
+
256
+ [forks-shield]: https://img.shields.io/github/forks/lobehub/lobe-chat.svg?style=flat
257
+ [forks-url]: https://github.com/lobehub/lobe-chat/network/members
258
+
259
+ <!-- stargazers -->
260
+
261
+ [stargazers-shield]: https://img.shields.io/github/stars/lobehub/lobe-chat.svg?style=flat
262
+ [stargazers-url]: https://github.com/lobehub/lobe-chat/stargazers
263
+
264
+ <!-- issues -->
265
+
266
+ [issues-shield]: https://img.shields.io/github/issues/lobehub/lobe-chat.svg?style=flat
267
+ [issues-url]: https://img.shields.io/github/issues/lobehub/lobe-chat.svg?style=flat
268
+
269
+ <!-- deploy -->
270
+
271
+ [deploy-button-image]: https://vercel.com/button
272
+ [deploy-url]: https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Flobehub%2Flobe-chat&env=OPENAI_API_KEY&envDescription=Find%20your%20OpenAI%20API%20Key%20by%20click%20the%20right%20Learn%20More%20button.%20%20&envLink=https%3A%2F%2Fplatform.openai.com%2Faccount%2Fapi-keys&project-name=lobe-chat&repository-name=lobe-chat
273
+
274
+ <!-- @lobe/assets -->
275
+
276
+ [lobe-assets-github]: https://github.com/lobehub/lobe-assets
277
+
278
+ <!-- @lobehub/ui -->
279
+
280
+ [lobe-ui-shield]: https://img.shields.io/npm/v/@lobehub/ui?label=%F0%9F%A4%AF%20NPM
281
+ [lobe-ui-url]: https://www.npmjs.com/package/@lobehub/ui
282
+ [lobe-ui-github]: https://github.com/lobehub/lobe-ui
283
+
284
+ <!-- @lobehub/lint -->
285
+
286
+ [lobe-lint-shield]: https://img.shields.io/npm/v/@lobehub/lint?label=%F0%9F%A4%AF%20NPM
287
+ [lobe-lint-url]: https://www.npmjs.com/package/@lobehub/lint
288
+ [lobe-lint-github]: https://github.com/lobehub/lobe-lint
289
+
290
+ <!-- plugins -->
291
+
292
+ [lobe-chat-plugins]: https://github.com/lobehub/lobe-chat-plugins
293
+ [chat-plugin-sdk]: https://github.com/lobehub/chat-plugin-sdk
294
+ [chat-plugins-gateway]: https://github.com/lobehub/chat-plugins-gateway
295
+ [chat-plugin-search-engine]: https://github.com/lobehub/chat-plugin-search-engine
296
+ [chat-plugin-realtime-weather]: https://github.com/lobehub/chat-plugin-realtime-weather
297
+ [chat-plugin-web-crawler]: https://github.com/lobehub/chat-plugin-web-crawler
298
+
299
+ <!-- products -->
300
+
301
+ [lobe-theme]: https://github.com/lobehub/sd-webui-lobe-theme
302
+ [lobe-commit]: https://github.com/lobehub/lobe-commit/tree/master/packages/lobe-commit
303
+ [lobe-i18n]: https://github.com/lobehub/lobe-commit/tree/master/packages/lobe-i18n
package/README.md CHANGED
@@ -8,9 +8,9 @@
8
8
 
9
9
  <h1>Lobe Chat</h1>
10
10
 
11
- Lobe Chat is an open-source chatbot client using OpenAI and Next.js
11
+ LobeChat is a open-source, extensible ([Function Calling][fc-url]), high-performance chatbot framework. <br/> It supports one-click free deployment of your private ChatGPT/LLM web application.
12
12
 
13
- [Changelog](./CHANGELOG.md) · [Report Bug][issues-url] · [Request Feature][issues-url]
13
+ **English** · [简体中文](./README-zh_CN.md) · [Changelog](./CHANGELOG.md) · [Report Bug][issues-url] · [Request Feature][issues-url]
14
14
 
15
15
  <!-- SHIELD GROUP -->
16
16
 
@@ -24,7 +24,8 @@ Lobe Chat is an open-source chatbot client using OpenAI and Next.js
24
24
  [![issues][issues-shield]][issues-url]
25
25
 
26
26
  [![Deploy with Vercel][deploy-button-image]][deploy-url]
27
- ![](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png)
27
+
28
+ ![](https://gw.alipayobjects.com/zos/kitchen/3uH7fYVvfO/lobechat.webp)
28
29
 
29
30
  </div>
30
31
 
@@ -33,34 +34,112 @@ Lobe Chat is an open-source chatbot client using OpenAI and Next.js
33
34
 
34
35
  #### TOC
35
36
 
37
+ - [👋🏻 Getting Started & Join Our Community](#-getting-started--join-our-community)
38
+ - [✨ Features](#-features)
36
39
  - [🛳 Self Hosting](#-self-hosting)
37
-
38
- - [Deploy to Vercel](#deploy-to-vercel)
39
-
40
+ - [📦 Ecosystem](#-ecosystem)
41
+ - [🧩 Plugins](#-plugins)
40
42
  - [⌨️ Local Development](#️-local-development)
41
-
42
43
  - [🤝 Contributing](#-contributing)
44
+ - [🔗 More Products](#-more-products)
43
45
 
44
46
  ####
45
47
 
48
+ <br/>
49
+
46
50
  </details>
47
51
 
48
- ## 🛳 Self Hosting
52
+ ## 👋🏻 Getting Started & Join Our Community
53
+
54
+ Please be aware that LobeChat is currently under active development,feedback is welcome for any [issues][issues-url] encountered.
55
+
56
+ | [![][official-shield]][official-url] | No installation or registration necessary! Visit our website to experience it firsthand. |
57
+ | :----------------------------------- | :----------------------------------------------------------------------------------------------------------------- |
58
+ | [![][discord-shield]][discord-url] | Join our Discord community! This is where you can connect with developers and other enthusiastic users of LobeHub. |
59
+
60
+ ![](https://gw.alipayobjects.com/zos/kitchen/0hcO8QiU9c/star.webp)
61
+
62
+ > **⭐️ Star Us:** You will receive all releases notifications from GitHub without any delay!
63
+
64
+ ## ✨ Features
65
+
66
+ - [x] 💨 **Quick Deployment**: Using the Vercel platform, you can deploy with just one click and complete the process within 1 minute, without any complex configuration;
67
+ - [x] 💎 **Exquisite UI Design**: With a carefully designed interface, it offers an elegant appearance and smooth interaction. It supports light and dark themes and is mobile-friendly. PWA support provides a more native-like experience;
68
+ - [x] 🗣️ **Smooth Conversation Experience**: Fluid responses ensure a smooth conversation experience. It fully supports Markdown rendering, including code highlighting, LaTex formulas, Mermaid flowcharts, and more;
69
+ - [x] 🧩 **Plugin Support & Custom Plugin Development**: Conversations are extendable with plugins. Users can install and use various plugins, such as search engines, web extraction, etc. It also supports the development of custom plugins to meet custom needs;
70
+ - [x] 🔒 **Privacy Protection**: All data is stored locally in the user's browser, ensuring user privacy;
71
+ - [x] 🤖 **Customizable Assistant Roles**: Users can create, share, and debug personalized dialogue assistant roles according to their needs, providing more flexible and personalized dialogue functions;
72
+ - [x] 🌐 **Custom Domain**: If users have their own domain, they can bind it to the platform for quick access to the dialogue assistant from anywhere.
73
+ - [ ] 🏬 **Role Market** (WIP): A Role Market is provided where users can select their preferred dialogue assistant roles, enriching the content and style of the dialogue;
74
+
75
+ > **👉 Roadmap:** You can find our upcoming [Roadmap][project-url] plans in the Projects section.
76
+
77
+ <div align="right">
78
+
79
+ [![][back-to-top]](#readme-top)
80
+
81
+ </div>
49
82
 
50
- If you want to deploy this service by yourself, you can follow the steps below.
83
+ ## 🛳 Self Hosting
51
84
 
52
- ### Deploy to Vercel
85
+ LobeChat provides a [self-hosted version][deploy-url] with Vercel. This allows you to build your own chatbot within a few minutes, without any prior knowledge. If you want to deploy this service yourself, you can follow these steps:
53
86
 
54
- Click button below to deploy your private plugins' gateway.
87
+ - Prepare your [OpenAI API Key](https://platform.openai.com/account/api-keys).
88
+ - Click the button below to start deployment: Deploy with Vercel. Log in directly with your Github account and remember to fill in the API Key and access code CODE on the environment variable page;
89
+ - After deployment, you can start using it;
90
+ - Bind a custom domain (optional): The DNS of the domain assigned by Vercel is polluted in some areas, binding a custom domain can connect directly.
55
91
 
56
92
  [![Deploy with Vercel][deploy-button-image]][deploy-url]
57
93
 
58
- If you want to make some customization, you can add environment variable:
94
+ > **👉 Note:** This project provides some additional configuration items, set with environment variables:
95
+
96
+ | Environment Variable | Required | Description | Example |
97
+ | -------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
98
+ | `OPENAI_API_KEY` | Yes | This is the API key you apply on the OpenAI account page | `sk-xxxxxx...xxxxxx` |
99
+ | `OPENAI_PROXY_URL` | No | If you manually configure the OpenAI interface proxy, you can use this configuration item to override the default OpenAI API request base URL | `https://api.chatanywhere.cn`<br/>The default value is<br/>`https://api.openai.com` |
100
+ | `ACCESS_CODE` | No | Add a password to access this service, the password should be a 6-digit number or letter | `awCT74` or `e3@09!` |
101
+
102
+ <div align="right">
103
+
104
+ [![][back-to-top]](#readme-top)
105
+
106
+ </div>
107
+
108
+ ## 📦 Ecosystem
109
+
110
+ | NPM | Repository | Description | Version |
111
+ | ------------------------------ | ------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | -------------------------------------- |
112
+ | [@lobehub/ui][lobe-ui-url] | [lobehub/lobe-ui][lobe-ui-github] | Lobe UI is an open-source UI component library dedicated to building AIGC web applications. | [![][lobe-ui-shield]][lobe-ui-url] |
113
+ | [@lobehub/lint][lobe-lint-url] | [lobehub/lobe-lint][lobe-lint-github] | LobeLint provides configurations for ESlint, Stylelint, Commitlint, Prettier, Remark, and Semantic Release for LobeHub. | [![][lobe-lint-shield]][lobe-lint-url] |
114
+ | @lobehub/assets | [lobehub/assets][lobe-assets-github] | Logo assets, favicons, webfonts for LobeHub. | |
115
+
116
+ <div align="right">
117
+
118
+ [![][back-to-top]](#readme-top)
119
+
120
+ </div>
121
+
122
+ ## 🧩 Plugins
123
+
124
+ Plugins provide a means to extend the [Function Calling][fc-url] capabilities of LobeChat. They can be used to introduce new function calls, and even new ways to render message results.
125
+
126
+ > **👉 Note:** The plugin system is currently undergoing significant development. You can expect to see it in <https://github.com/lobehub/lobe-chat/issues/97>.
127
+
128
+ - [@lobehub/lobe-chat-plugins][lobe-chat-plugins]: This is the plugin index for LobeChat. It accesses index.json from this repository to display a list of available plugins for LobeChat to the user.
129
+ - [@lobehub/chat-plugin-sdk][chat-plugin-sdk]: The LobeChat Plugin SDK assists you in creating exceptional chat plugins for Lobe Chat.
130
+ - [@lobehub/chat-plugins-gateway][chat-plugins-gateway]: The LobeChat Plugins Gateway is a backend service that serves as a gateway for LobeChat plugins. We deploy this service using Vercel. The primary API POST /api/v1/runner is deployed as an Edge Function.
131
+
132
+ | Official Plugin | Description |
133
+ | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
134
+ | [SearchEngine][chat-plugin-search-engine] | This plugin allows for the use of the SerpApi search engine. |
135
+ | [RealtimeWeather][chat-plugin-realtime-weather] | This plugin provides practical weather information by obtaining real-time weather data and can automatically update based on the user's location. |
136
+ | [WebsiteCrawler][chat-plugin-web-crawler] | This plugin automatically crawls the main content of a specified URL webpage and uses it as context input. |
59
137
 
60
- | Environment variable | Description | Example |
61
- | -------------------- | --------------------------------------------------------------------------------- | ----------------------------- |
62
- | `OPENAI_PROXY_URL` | OpenAI API 代理 URL,例如:`https://api.chatanywhere.cn` | `https://api.chatanywhere.cn` |
63
- | `ACCESS_CODE` | Add Password to access this service, the password should be 6 digits or alphabets | `awCT74` \| `e3@09!` |
138
+ <div align="right">
139
+
140
+ [![][back-to-top]](#readme-top)
141
+
142
+ </div>
64
143
 
65
144
  ## ⌨️ Local Development
66
145
 
@@ -85,6 +164,8 @@ $ pnpm dev
85
164
 
86
165
  ## 🤝 Contributing
87
166
 
167
+ Contributions of all types are more than welcome, if you are interested in contributing code, feel free to check out our GitHub [Issues][issues-url] and [Projects][project-url] to get stuck in to show us what you’re made of.
168
+
88
169
  <!-- CONTRIBUTION GROUP -->
89
170
 
90
171
  > 📊 Total: <kbd>**4**</kbd>
@@ -110,6 +191,18 @@ $ pnpm dev
110
191
 
111
192
  </div>
112
193
 
194
+ ## 🔗 More Products
195
+
196
+ - **[🤯 Lobe Theme][lobe-theme] :** The modern theme for stable diffusion webui, exquisite interface design, highly customizable UI, and efficiency boosting features.
197
+ - **[🌏 Lobe i18n][lobe-i18n] :** Lobe i18n is an automation tool for the i18n (internationalization) translation process, powered by ChatGPT. It supports features such as automatic splitting of large files, incremental updates, and customization options for the OpenAI model, API proxy, and temperature.
198
+ - **[💌 Lobe Commit][lobe-commit] :** Lobe Commit is a CLI tool that leverages Langchain/ChatGPT to generate Gitmoji-based commit messages.
199
+
200
+ <div align="right">
201
+
202
+ [![][back-to-top]](#readme-top)
203
+
204
+ </div>
205
+
113
206
  ---
114
207
 
115
208
  #### 📝 License
@@ -119,8 +212,14 @@ This project is [MIT](./LICENSE) licensed.
119
212
 
120
213
  <!-- LINK GROUP -->
121
214
 
215
+ [official-shield]: https://img.shields.io/website?down_message=offline&label=🤯%20Try%20LobeChat&up_message=online&url=https%3A%2F%2Flobe-chat.vercel.app&style=for-the-badge
216
+ [official-url]: https://lobe-chat.vercel.app
217
+ [discord-shield]: https://dcbadge.vercel.app/api/server/AYFPHvv2jT?style=for-the-badge
218
+ [discord-url]: https://discord.gg/AYFPHvv2jT
219
+ [fc-url]: https://sspai.com/post/81986
122
220
  [profile-url]: https://github.com/lobehub
123
221
  [issues-url]: https://github.com/lobehub/lobe-chat/issues/new/choose
222
+ [project-url]: https://github.com/lobehub/lobe-chat/projects
124
223
  [gitpod-url]: https://gitpod.io/#https://github.com/lobehub/lobe-chat
125
224
 
126
225
  <!-- SHIELD LINK GROUP -->
@@ -171,3 +270,34 @@ This project is [MIT](./LICENSE) licensed.
171
270
 
172
271
  [deploy-button-image]: https://vercel.com/button
173
272
  [deploy-url]: https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Flobehub%2Flobe-chat&env=OPENAI_API_KEY&envDescription=Find%20your%20OpenAI%20API%20Key%20by%20click%20the%20right%20Learn%20More%20button.%20%20&envLink=https%3A%2F%2Fplatform.openai.com%2Faccount%2Fapi-keys&project-name=lobe-chat&repository-name=lobe-chat
273
+
274
+ <!-- @lobe/assets -->
275
+
276
+ [lobe-assets-github]: https://github.com/lobehub/lobe-assets
277
+
278
+ <!-- @lobehub/ui -->
279
+
280
+ [lobe-ui-shield]: https://img.shields.io/npm/v/@lobehub/ui?label=%F0%9F%A4%AF%20NPM
281
+ [lobe-ui-url]: https://www.npmjs.com/package/@lobehub/ui
282
+ [lobe-ui-github]: https://github.com/lobehub/lobe-ui
283
+
284
+ <!-- @lobehub/lint -->
285
+
286
+ [lobe-lint-shield]: https://img.shields.io/npm/v/@lobehub/lint?label=%F0%9F%A4%AF%20NPM
287
+ [lobe-lint-url]: https://www.npmjs.com/package/@lobehub/lint
288
+ [lobe-lint-github]: https://github.com/lobehub/lobe-lint
289
+
290
+ <!-- plugins -->
291
+
292
+ [lobe-chat-plugins]: https://github.com/lobehub/lobe-chat-plugins
293
+ [chat-plugin-sdk]: https://github.com/lobehub/chat-plugin-sdk
294
+ [chat-plugins-gateway]: https://github.com/lobehub/chat-plugins-gateway
295
+ [chat-plugin-search-engine]: https://github.com/lobehub/chat-plugin-search-engine
296
+ [chat-plugin-realtime-weather]: https://github.com/lobehub/chat-plugin-realtime-weather
297
+ [chat-plugin-web-crawler]: https://github.com/lobehub/chat-plugin-web-crawler
298
+
299
+ <!-- products -->
300
+
301
+ [lobe-theme]: https://github.com/lobehub/sd-webui-lobe-theme
302
+ [lobe-commit]: https://github.com/lobehub/lobe-commit/tree/master/packages/lobe-commit
303
+ [lobe-i18n]: https://github.com/lobehub/lobe-commit/tree/master/packages/lobe-i18n
@@ -0,0 +1,85 @@
1
+ {
2
+ "about": "Наш Github",
3
+ "advanceSettings": "Дополнительные настройки",
4
+ "agentDefaultMessage": "Здравствуйте, я **{{name}}**. Вы можете начать общаться со мной прямо сейчас или перейти на [Assistant Settings](/chat/{{id}}/setting) для моей настройки.",
5
+ "agentDefaultMessageWithSystemRole": "Здравствуйте, Я **{{name}}**, {{systemRole}}. Давайте начнем общаться!",
6
+ "agentMaxToken": "Максимальная длина запроса",
7
+ "agentModel": "Модель",
8
+ "agentProfile": "Информация о помощнике",
9
+ "appInitializing": "LobeChat запускается, пожалуйста, подождите...",
10
+ "archive": "Архив",
11
+ "autoGenerate": "Автогенерация",
12
+ "autoGenerateTooltip": "Автогенерация описания помощника на основе подсказок",
13
+ "backToBottom": "Перейти к последним сообщениям",
14
+ "cancel": "Отмена",
15
+ "changelog": "Журнал изменений",
16
+ "clearCurrentMessages": "Очистить сообщения текущего сеанса",
17
+ "close": "Закрывать",
18
+ "confirmClearCurrentMessages": "Вы собираетесь удалить сообщения текущего сеанса? После очистки их невозможно восстановить. Пожалуйста, подтвердите вашу операцию.",
19
+ "confirmRemoveSessionItemAlert": "Вы собираетесь удалить этого помощника? После удаления его невозможно восстановить. Пожалуйста, подтвердите вашу операцию.",
20
+ "copy": "Копировать",
21
+ "copySuccess": "Скопировано",
22
+ "defaultAgent": "Пользовательский ассистент",
23
+ "defaultSession": "Пользовательский ассистент",
24
+ "delete": "Удалить",
25
+ "edit": "Редактировать",
26
+ "export": "Экспорт конфига",
27
+ "exportType": {
28
+ "agent": "Экспорт настроек помощника",
29
+ "agentWithMessage": "Экспорт помощника и переписки",
30
+ "all": "Экспорт глобальных настроек и всех данных ассистента",
31
+ "allAgent": "Экспорт всех настроек ассистента",
32
+ "allAgentWithMessage": "Экспорт всех помощников и переписок",
33
+ "globalSetting": "Экспорт глобальных настроек"
34
+ },
35
+ "feedback": "Обратная связь",
36
+ "import": "Импорт конфига",
37
+ "inbox": {
38
+ "defaultMessage": "Hello, I'm your intelligent assistant. You can ask me any questions and I will do my best to answer you. If you need a more professional or customized assistant, you can click <kbd>+</kbd> to create a custom assistant.",
39
+ "desc": "Activate the brain cluster and spark your thinking. Your intelligent assistant is here to communicate with you about everything.",
40
+ "title": "Chat Freely"
41
+ },
42
+ "message": {
43
+ "function_loading": "Запрос плагина в процессе..."
44
+ },
45
+ "moreSetting": "Больше настроек...",
46
+ "newAgent": "Новый ассистент",
47
+ "noDescription": "Нет описания",
48
+ "ok": "ОК",
49
+ "pin": "Закрепить",
50
+ "pinOff": "Открепить",
51
+ "regenerate": "Ре-генерация",
52
+ "rename": "Переименовать",
53
+ "reset": "Сброс",
54
+ "retry": "Повторить",
55
+ "roleAndArchive": "Роли и архивы",
56
+ "searchAgentPlaceholder": "Поисковые помощники и беседы...",
57
+ "send": "Отправить",
58
+ "sendPlaceholder": "Введите ваше сообщение...",
59
+ "sessionList": "Список помощников",
60
+ "setting": "Настройки",
61
+ "share": "Поделиться",
62
+ "stop": "Остановить",
63
+ "tab": {
64
+ "chat": "Чат",
65
+ "market": "Магазин ассистентов",
66
+ "setting": "Настройки"
67
+ },
68
+ "temp": "Временный",
69
+ "tokenDetail": "Установление ролей: {{systemRoleToken}} · История сообщений: {{chatsToken}}",
70
+ "tokenTag": {
71
+ "overload": "Превышение лимита",
72
+ "remained": "Осталось",
73
+ "used": "Использовано"
74
+ },
75
+ "topic": {
76
+ "confirmRemoveTopic": "Вы собираетесь удалить эту тему? После удаления он не может быть восстановлен. Пожалуйста, действуйте с осторожностью.",
77
+ "defaultTitle": "Default",
78
+ "saveCurrentMessages": "Сохранить текущую сессию в качестве темы",
79
+ "searchPlaceholder": "Поиск тем...",
80
+ "title": "Тема"
81
+ },
82
+ "updateAgent": "Обновление информации о помощнике",
83
+ "updatePrompt": "Обновление подсказок",
84
+ "warp": "Разрыв строки"
85
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "topic": {
3
+ "desc": "Нажмите кнопку слева, чтобы сохранить текущий разговор как историческую тему и начать новый разговор",
4
+ "title": "Список тем"
5
+ }
6
+ }
@@ -0,0 +1,41 @@
1
+ {
2
+ "pluginSettings": {
3
+ "desc": "Чтобы начать использовать этот плагин, выполните следующую конфигурацию",
4
+ "title": "{{name}} Конфигурация плагина"
5
+ },
6
+ "response": {
7
+ "400": "Извините, сервер не понимает ваш запрос. Убедитесь в правильности параметров запроса",
8
+ "401": "Извините, сервер отклонил ваш запрос, возможно, из-за недостаточного количества разрешений или недействительной аутентификации.",
9
+ "403": "Извините, сервер отклонил ваш запрос. У вас нет разрешения на доступ к этому содержимому",
10
+ "404": "Извините, сервер не может найти запрошенную вами страницу или ресурс. Убедитесь, что ваш URL-адрес указан правильно.",
11
+ "405": "К сожалению, сервер не поддерживает используемый вами метод запроса. Убедитесь, что ваш метод запроса правильный.",
12
+ "429": "Извините, ваш запрос слишком частый, и сервер немного устал. Повторите попытку позже.",
13
+ "500": "К сожалению, сервер, похоже, испытывает некоторые трудности и временно не может выполнить ваш запрос. Повторите попытку позже.",
14
+ "502": "К сожалению, сервер, похоже, потерян и временно не может предоставлять услуги. Повторите попытку позже.",
15
+ "503": "К сожалению, сервер в настоящее время не может обработать ваш запрос, возможно, из-за перегрузки или технического обслуживания. Повторите попытку позже.",
16
+ "504": "К сожалению, сервер не получил ответа от вышестоящего сервера. Повторите попытку позже.",
17
+ "InvalidAccessCode": "Пароль неверен или пуст. Введите правильный пароль доступа или добавьте собственный ключ API OpenAI.",
18
+ "OpenAIBizError": "Ошибка запроса службы OpenAI. Устраните неполадку или повторите попытку, основываясь на следующей информации.",
19
+ "PluginMarketIndexNotFound": "К сожалению, сервер не смог найти индекс плагина. Пожалуйста, проверьте правильность адреса индекса",
20
+ "PluginMarketIndexInvalid": "К сожалению, проверка индекса плагина не удалась. Пожалуйста, проверьте правильность формата индексного файла",
21
+ "PluginMetaNotFound": "К сожалению, плагин не найден в индексе. Пожалуйста, проверьте информацию о конфигурации плагина в индексе",
22
+ "PluginMetaInvalid": "К сожалению, проверка метаданных плагина не удалась. Пожалуйста, проверьте правильность формата метаданных плагина",
23
+ "PluginManifestNotFound": "К сожалению, серверу не удалось найти файл манифеста плагина (manifest.json). Пожалуйста, проверьте правильность адреса файла манифеста плагина",
24
+ "PluginManifestInvalid": "К сожалению, проверка манифеста плагина не удалась. Пожалуйста, проверьте правильность формата манифеста",
25
+ "PluginApiNotFound": "К сожалению, API не существует в манифесте плагина. Пожалуйста, проверьте, соответствует ли ваш метод запроса API манифеста плагина",
26
+ "PluginApiParamsError": "К сожалению, проверка входных параметров для запроса плагина не удалась. Пожалуйста, проверьте, соответствуют ли входные параметры описанию API",
27
+ "PluginSettingsInvalid": "Этот плагин необходимо правильно настроить, прежде чем его можно будет использовать. Пожалуйста, проверьте правильность вашей конфигурации",
28
+ "PluginServerError": "Запрос сервера плагина возвратил ошибку. Проверьте файл манифеста плагина, конфигурацию плагина или реализацию сервера на основе информации об ошибке ниже"
29
+ },
30
+ "unlock": {
31
+ "apikey": {
32
+ "description": "Введите свой ключ API OpenAI, чтобы обойти проверку пароля. Приложение не будет записывать ваш ключ API.",
33
+ "title": "Использовать собственный ключ API"
34
+ },
35
+ "confirm": "Подтвердить и повторить попытку",
36
+ "password": {
37
+ "description": "Шифрование приложения включено администратором. Введите пароль приложения, чтобы разблокировать приложение. Пароль необходимо ввести только один раз.",
38
+ "title": "Введите пароль для разблокировки приложения"
39
+ }
40
+ }
41
+ }
@@ -0,0 +1,111 @@
1
+ {
2
+ "debug": {
3
+ "arguments": "Аргументы",
4
+ "function_call": "Вызов функции",
5
+ "response": "Ответ"
6
+ },
7
+ "dev": {
8
+ "confirmDeleteDevPlugin": "Вы уверены, что хотите удалить этот локальный плагин? После удаления он не может быть восстановлен.",
9
+ "deleteSuccess": "Плагин успешно удален",
10
+ "manifest": {
11
+ "identifier": {
12
+ "desc": "Уникальный идентификатор плагина",
13
+ "label": "Идентификатор"
14
+ },
15
+ "mode": {
16
+ "local": "Визуальная конфигурация",
17
+ "local-tooltip": "Визуальная конфигурация в настоящее время не поддерживается",
18
+ "url": "Онлайн-ссылка"
19
+ },
20
+ "name": {
21
+ "desc": "Название плагина",
22
+ "label": "Название",
23
+ "placeholder": "Поисковая система"
24
+ }
25
+ },
26
+ "meta": {
27
+ "author": {
28
+ "desc": "Автор плагина",
29
+ "label": "Автор"
30
+ },
31
+ "avatar": {
32
+ "desc": "Иконка плагина, может представлять собой Emoji или URL",
33
+ "label": "Иконка"
34
+ },
35
+ "description": {
36
+ "desc": "Описание плагина",
37
+ "label": "Описание",
38
+ "placeholder": "Получение информации из поисковых систем"
39
+ },
40
+ "formFieldRequired": "Это поле обязательно для заполнения",
41
+ "homepage": {
42
+ "desc": "Домашняя страница плагина",
43
+ "label": "Homepage"
44
+ },
45
+ "identifier": {
46
+ "desc": "Уникальный идентификатор плагина, поддерживаются только буквенно-цифровые символы, дефис - и символ подчеркивания _",
47
+ "errorDuplicate": "Идентификатор уже используется другим плагином, пожалуйста, измените идентификатор",
48
+ "label": "Идентификатор",
49
+ "pattenErrorMessage": "Допускаются только алфавитно-цифровые символы, дефис - и символ подчеркивания _"
50
+ },
51
+ "manifest": {
52
+ "desc": "LobeChat установит плагин по этой ссылке",
53
+ "invalid": "Входная ссылка манифеста недействительна или не соответствует спецификации",
54
+ "label": "URL-адрес манифеста плагина",
55
+ "urlError": "Пожалуйста, введите действительный URL"
56
+ },
57
+ "title": {
58
+ "desc": "Название плагина",
59
+ "label": "Название",
60
+ "placeholder": "Поисковая система"
61
+ }
62
+ },
63
+ "metaConfig": "Конфигурация метаданных плагина",
64
+ "modalDesc": "После добавления пользовательского плагина его можно использовать для проверки разработки плагина или непосредственно в разговорах. Более подробная информация приведена в документации по разработке плагина.",
65
+ "preview": {
66
+ "card": "Предварительный просмотр отображения плагина",
67
+ "desc": "Предварительный просмотр описания плагина",
68
+ "title": "Предварительный просмотр имени плагина"
69
+ },
70
+ "save": "Сохранить",
71
+ "saveSuccess": "Настройки плагина успешно сохранены",
72
+ "tabs": {
73
+ "manifest": "Описание функции Манифест (Manifest)",
74
+ "meta": "Метаданные плагина"
75
+ },
76
+ "title": "Добавить пользовательский плагин"
77
+ },
78
+ "list": {
79
+ "item": {
80
+ "local.config": "Конфигурация",
81
+ "local.title": "Местный"
82
+ }
83
+ },
84
+ "loading": {
85
+ "content": "Загрузка...",
86
+ "plugin": "Плагин запущен..."
87
+ },
88
+ "pluginList": "Список плагинов",
89
+ "plugins": {
90
+ "realtimeWeather": "Погода в реальном времени",
91
+ "searchEngine": "Поисковая система",
92
+ "undefined": "Обнаружение плагина...",
93
+ "websiteCrawler": "Website Crawler",
94
+ "неизвестно": "Идет обнаружение плагина..."
95
+ },
96
+ "realtimeWeather": {
97
+ "data": {
98
+ "дата": "Дата",
99
+ "daytemp_float": "Дневная температура",
100
+ "dayweather": "Погода в дневное время",
101
+ "Дневной ветер": "Дневной ветер",
102
+ "nighttemp_float": "Температура в ночное время",
103
+ "nightweather": "Погода в ночное время",
104
+ "ночной ветер": "Ночной ветер",
105
+ "week": "Неделя"
106
+ },
107
+ "title": "Данные о погоде на ближайшие 7 дней ({{city}})",
108
+ "updateAt": "Последнее обновление"
109
+ },
110
+ "responseData": "Ответные данные"
111
+ }
@@ -0,0 +1,175 @@
1
+ {
2
+ "danger": {
3
+ "clear": {
4
+ "action": "Очистить все",
5
+ "confirm": "Подтвердить очистку всех данных чата?",
6
+ "desc": "Очистить все данные сессии",
7
+ "success": "Все сообщения сессии были очищены",
8
+ "title": "Очистить все сообщения сессии"
9
+ },
10
+ "reset": {
11
+ "action": "Сбросить настройки",
12
+ "confirm": "Подтвердить сброс всех настроек?",
13
+ "currentVersion": "Текущая версия",
14
+ "desc": "Сброс всех настроек к значениям по умолчанию",
15
+ "title": "Сброс всех настроек"
16
+ }
17
+ },
18
+ "header": {
19
+ "global": "Глобальные настройки",
20
+ "session": "Настройки сессии",
21
+ "sessionWithName": "Настройки сессии · {{name}}"
22
+ },
23
+ "settingAgent": {
24
+ "avatar": {
25
+ "title": "Аватар"
26
+ },
27
+ "backgroundColor": {
28
+ "title": "Цвет фона"
29
+ },
30
+ "description": {
31
+ "placeholder": "Пожалуйста, введите описание помощника",
32
+ "title": "Описание помощника"
33
+ },
34
+ "name": {
35
+ "placeholder": "Пожалуйста, введите имя ассистента",
36
+ "title": "Название"
37
+ },
38
+ "prompt": {
39
+ "placeholder": "Пожалуйста, введите роль",
40
+ "title": "Промт роли"
41
+ },
42
+ "tag": {
43
+ "placeholder": "Пожалуйста, введите тег",
44
+ "title": "Тег"
45
+ },
46
+ "title": "Информация о помощнике"
47
+ },
48
+ "settingChat": {
49
+ "chatStyleType": {
50
+ "title": "Стиль окна чата",
51
+ "type": {
52
+ "chat": "Режим чата",
53
+ "docs": "Режим документа"
54
+ }
55
+ },
56
+ "compressThreshold": {
57
+ "desc": "Когда количество несжатых сообщений истории превысит это значение, будет произведено сжатие",
58
+ "title": "Порог сжатия длины истории сообщений"
59
+ },
60
+ "enableCompressThreshold": {
61
+ "title": "Включить порог сжатия длины сообщений истории"
62
+ },
63
+ "enableHistoryCount": {
64
+ "alias": "Неограниченный",
65
+ "limited": "Включать только {{number}} сообщение(й) сессии",
66
+ "title": "Ограничить количество истории сообщений",
67
+ "unlimited": "Неограниченное количество истории сообщений"
68
+ },
69
+ "historyCount": {
70
+ "desc": "Количество сообщений, передаваемых в каждом запросе из истории",
71
+ "title": "Количество сообщений в прикрепленной истории"
72
+ },
73
+ "inputTemplate": {
74
+ "desc": "В этот шаблон будет залито последнее сообщение пользователя",
75
+ "placeholder": "{{text}} будут заменены входной информацией, поступающей в режиме реального времени",
76
+ "title": "Предварительная обработка пользовательского ввода"
77
+ },
78
+ "title": "Настройки чата"
79
+ },
80
+ "settingModel": {
81
+ "enableMaxTokens": {
82
+ "title": "Включить ограничение токенов на один ответ"
83
+ },
84
+ "frequencyPenalty": {
85
+ "desc": "Чем больше значение, тем больше вероятность сокращения повторяющихся слов",
86
+ "title": "Штраф за частоту"
87
+ },
88
+ "maxTokens": {
89
+ "desc": "Максимальное количество токенов, используемых в одном взаимодействии",
90
+ "title": "Лимит на один ответ"
91
+ },
92
+ "model": {
93
+ "desc": "Модель ChatGPT",
94
+ "list": {
95
+ "gpt-3.5-turbo": "GPT 3.5",
96
+ "gpt-3.5-turbo-16k": "GPT 3.5 (16K)",
97
+ "gpt-4": "GPT 4",
98
+ "gpt-4-32k": "GPT 4 (32K)"
99
+ },
100
+ "title": "Модель"
101
+ },
102
+ "presencePenalty": {
103
+ "desc": "Чем больше значение, тем больше вероятность общение на левые темы",
104
+ "title": "Точность темы"
105
+ },
106
+ "temperature": {
107
+ "desc": "Чем больше значение, тем более случайным будет ответ",
108
+ "title": "Случайность",
109
+ "titleWithValue": "Случайность {{value}}"
110
+ },
111
+ "title": "Настройки модели",
112
+ "topP": {
113
+ "desc": "Аналогично случайности, но не изменяются вместе со случайностью",
114
+ "title": "Ядерное сэмплирование"
115
+ }
116
+ },
117
+ "settingOpenAI": {
118
+ "endpoint": {
119
+ "desc": "Должен включать http(s):// в дополнение к адресу по умолчанию.",
120
+ "placeholder": "https://api.openai.com/v1",
121
+ "title": "Адрес прокси API"
122
+ },
123
+ "title": "Настройки OpenAI",
124
+ "token": {
125
+ "desc": "Используйте свой собственный ключ OpenAI",
126
+ "placeholder": "API-ключ OpenAI",
127
+ "title": "API-ключ"
128
+ }
129
+ },
130
+ "settingPlugin": {
131
+ "title": "Список плагинов",
132
+ "add": "Добавить",
133
+ "addTooltip": "Добавить кастомный плагин",
134
+ "config": "{{id}} Конфигурация плагина"
135
+ },
136
+ "settingSystem": {
137
+ "accessCode": {
138
+ "desc": "Шифрование доступа включено администратором",
139
+ "placeholder": "Пожалуйста, введите пароль доступа",
140
+ "title": "Пароль доступа"
141
+ },
142
+ "title": "Настройки системы"
143
+ },
144
+ "settingTheme": {
145
+ "avatar": {
146
+ "title": "Аватар"
147
+ },
148
+ "fontSize": {
149
+ "desc": "Размер шрифта содержимого чата",
150
+ "title": "Размер шрифта"
151
+ },
152
+ "lang": {
153
+ "title": "Языковые настройки"
154
+ },
155
+ "neutralColor": {
156
+ "desc": "Пользовательская шкала серого для различных цветовых тенденций",
157
+ "title": "Нейтральный цвет"
158
+ },
159
+ "primaryColor": {
160
+ "desc": "Пользовательский цвет темы",
161
+ "title": "Цвет темы"
162
+ },
163
+ "themeMode": {
164
+ "auto": "Авто",
165
+ "dark": "Темная",
166
+ "light": "Светлая",
167
+ "title": "Тема"
168
+ },
169
+ "title": "Настройки темы"
170
+ },
171
+ "tab": {
172
+ "agent": "Помощник по умолчанию",
173
+ "common": "Общие настройки"
174
+ }
175
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "button": {
3
+ "import": "Импорт конфига",
4
+ "start": "Начать"
5
+ },
6
+ "header": "Привет",
7
+ "pickAgent": "Или выберите один из следующих шаблонов помощника",
8
+ "skip": "Пропустить создание",
9
+ "slogan": {
10
+ "desc1": "Раскройте силу своего мозга и разожгите свой творческий потенциал. Ваш умный помощник всегда под рукой.",
11
+ "desc2": "Создайте своего первого помощника и приступим~",
12
+ "title": "Используйте свой мозг более продуктивно"
13
+ }
14
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lobehub/chat",
3
- "version": "0.65.0",
3
+ "version": "0.66.0",
4
4
  "description": "Lobe Chat is an open-source chatbot client using LangChain, Typescript and Next.js",
5
5
  "keywords": [
6
6
  "chatbot",
@@ -66,7 +66,7 @@
66
66
  "@emoji-mart/data": "^1",
67
67
  "@emoji-mart/react": "^1",
68
68
  "@icons-pack/react-simple-icons": "^9",
69
- "@lobehub/chat-plugin-sdk": "^1.13.0",
69
+ "@lobehub/chat-plugin-sdk": "^1.13.1",
70
70
  "@lobehub/chat-plugins-gateway": "^1.5.0",
71
71
  "@lobehub/ui": "latest",
72
72
  "@vercel/analytics": "^1",
@@ -16,4 +16,8 @@ export const options: LocaleOptions = [
16
16
  label: 'English',
17
17
  value: 'en-US',
18
18
  },
19
+ {
20
+ label: 'Russian',
21
+ value: 'ru-RU',
22
+ },
19
23
  ] as LocaleOptions;
@@ -1,8 +1,10 @@
1
1
  import en_US from './en_US';
2
+ import ru_RU from './ru_RU';
2
3
  import zh_CN from './zh_CN';
3
4
 
4
5
  const resources = {
5
6
  'en-US': en_US,
7
+ 'ru-RU': ru_RU,
6
8
  'zh-CN': zh_CN,
7
9
  } as const;
8
10
  export default resources;
@@ -0,0 +1,17 @@
1
+ import common from '../../../locales/ru_RU/common.json';
2
+ import empty from '../../../locales/ru_RU/empty.json';
3
+ import error from '../../../locales/ru_RU/error.json';
4
+ import plugin from '../../../locales/ru_RU/plugin.json';
5
+ import setting from '../../../locales/ru_RU/setting.json';
6
+ import welcome from '../../../locales/ru_RU/welcome.json';
7
+
8
+ const resources = {
9
+ common,
10
+ empty,
11
+ error,
12
+ plugin,
13
+ setting,
14
+ welcome,
15
+ } as const;
16
+
17
+ export default resources;
@@ -1,5 +1,4 @@
1
1
  import { produce } from 'immer';
2
- import { merge } from 'lodash-es';
3
2
  import type { StateCreator } from 'zustand/vanilla';
4
3
 
5
4
  import { LobeAgentSettings } from '@/types/session';
@@ -25,8 +24,7 @@ export const createAgentSlice: StateCreator<
25
24
  > = (set, get) => ({
26
25
  updateDefaultAgent: (agent) => {
27
26
  const settings = produce(get().settings, (draft: GlobalSettings) => {
28
- const oldAgent = draft.defaultAgent as LobeAgentSettings;
29
- draft.defaultAgent = merge({}, oldAgent, agent);
27
+ draft.defaultAgent = { ...draft.defaultAgent, ...agent };
30
28
  });
31
29
 
32
30
  set({ settings }, false, t('updateDefaultAgent', agent));