@lobehub/chat 1.111.3 → 1.111.5
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.
- package/CHANGELOG.md +51 -0
- package/changelog/v1.json +14 -0
- package/docs/self-hosting/advanced/s3/cloudflare-r2.mdx +5 -1
- package/docs/self-hosting/advanced/s3/cloudflare-r2.zh-CN.mdx +5 -1
- package/locales/ar/hotkey.json +4 -0
- package/locales/bg-BG/hotkey.json +4 -0
- package/locales/de-DE/hotkey.json +4 -0
- package/locales/en-US/hotkey.json +4 -0
- package/locales/es-ES/hotkey.json +4 -0
- package/locales/fa-IR/hotkey.json +4 -0
- package/locales/fr-FR/hotkey.json +4 -0
- package/locales/it-IT/hotkey.json +4 -0
- package/locales/ja-JP/hotkey.json +4 -0
- package/locales/ko-KR/hotkey.json +4 -0
- package/locales/nl-NL/hotkey.json +4 -0
- package/locales/pl-PL/hotkey.json +4 -0
- package/locales/pt-BR/hotkey.json +4 -0
- package/locales/ru-RU/hotkey.json +4 -0
- package/locales/tr-TR/hotkey.json +4 -0
- package/locales/vi-VN/hotkey.json +4 -0
- package/locales/zh-CN/hotkey.json +4 -0
- package/locales/zh-TW/hotkey.json +4 -0
- package/package.json +4 -4
- package/src/components/Thinking/index.tsx +15 -12
- package/src/config/aiModels/openai.ts +4 -4
package/CHANGELOG.md
CHANGED
@@ -2,6 +2,57 @@
|
|
2
2
|
|
3
3
|
# Changelog
|
4
4
|
|
5
|
+
### [Version 1.111.5](https://github.com/lobehub/lobe-chat/compare/v1.111.4...v1.111.5)
|
6
|
+
|
7
|
+
<sup>Released on **2025-08-10**</sup>
|
8
|
+
|
9
|
+
#### 💄 Styles
|
10
|
+
|
11
|
+
- **misc**: Add mask effect to thinking scroll, update i18n.
|
12
|
+
|
13
|
+
<br/>
|
14
|
+
|
15
|
+
<details>
|
16
|
+
<summary><kbd>Improvements and Fixes</kbd></summary>
|
17
|
+
|
18
|
+
#### Styles
|
19
|
+
|
20
|
+
- **misc**: Add mask effect to thinking scroll, closes [#8729](https://github.com/lobehub/lobe-chat/issues/8729) ([4cefafd](https://github.com/lobehub/lobe-chat/commit/4cefafd))
|
21
|
+
- **misc**: Update i18n, closes [#8734](https://github.com/lobehub/lobe-chat/issues/8734) ([327a564](https://github.com/lobehub/lobe-chat/commit/327a564))
|
22
|
+
|
23
|
+
</details>
|
24
|
+
|
25
|
+
<div align="right">
|
26
|
+
|
27
|
+
[](#readme-top)
|
28
|
+
|
29
|
+
</div>
|
30
|
+
|
31
|
+
### [Version 1.111.4](https://github.com/lobehub/lobe-chat/compare/v1.111.3...v1.111.4)
|
32
|
+
|
33
|
+
<sup>Released on **2025-08-09**</sup>
|
34
|
+
|
35
|
+
#### 🐛 Bug Fixes
|
36
|
+
|
37
|
+
- **pricing**: Adjust cachedInput values for GPT-5 models.
|
38
|
+
|
39
|
+
<br/>
|
40
|
+
|
41
|
+
<details>
|
42
|
+
<summary><kbd>Improvements and Fixes</kbd></summary>
|
43
|
+
|
44
|
+
#### What's fixed
|
45
|
+
|
46
|
+
- **pricing**: Adjust cachedInput values for GPT-5 models, closes [#8723](https://github.com/lobehub/lobe-chat/issues/8723) ([652bf08](https://github.com/lobehub/lobe-chat/commit/652bf08))
|
47
|
+
|
48
|
+
</details>
|
49
|
+
|
50
|
+
<div align="right">
|
51
|
+
|
52
|
+
[](#readme-top)
|
53
|
+
|
54
|
+
</div>
|
55
|
+
|
5
56
|
### [Version 1.111.3](https://github.com/lobehub/lobe-chat/compare/v1.111.2...v1.111.3)
|
6
57
|
|
7
58
|
<sup>Released on **2025-08-09**</sup>
|
package/changelog/v1.json
CHANGED
@@ -1,4 +1,18 @@
|
|
1
1
|
[
|
2
|
+
{
|
3
|
+
"children": {
|
4
|
+
"improvements": [
|
5
|
+
"Add mask effect to thinking scroll, update i18n."
|
6
|
+
]
|
7
|
+
},
|
8
|
+
"date": "2025-08-10",
|
9
|
+
"version": "1.111.5"
|
10
|
+
},
|
11
|
+
{
|
12
|
+
"children": {},
|
13
|
+
"date": "2025-08-09",
|
14
|
+
"version": "1.111.4"
|
15
|
+
},
|
2
16
|
{
|
3
17
|
"children": {
|
4
18
|
"improvements": [
|
@@ -84,12 +84,16 @@ We need to configure an S3 storage service in the server-side database to store
|
|
84
84
|
|
85
85
|
<Image alt={'Configure allowed site domain'} src={'https://github.com/lobehub/lobe-chat/assets/28616219/dfcc2cb3-2958-4498-a8a4-51bec584fe7d'} />
|
86
86
|
|
87
|
+
<Callout type={'info'}>
|
88
|
+
If you also plan to use the desktop client, add <code>http://localhost:3015</code> to <code>AllowedOrigins</code> so the desktop client (running locally) can access R2.
|
89
|
+
</Callout>
|
90
|
+
|
87
91
|
Example configuration is as follows:
|
88
92
|
|
89
93
|
```json
|
90
94
|
[
|
91
95
|
{
|
92
|
-
"AllowedOrigins": ["https://your-project.vercel.app"],
|
96
|
+
"AllowedOrigins": ["https://your-project.vercel.app", "http://localhost:3015"],
|
93
97
|
"AllowedMethods": ["GET", "PUT", "HEAD", "POST", "DELETE"],
|
94
98
|
"AllowedHeaders": ["*"]
|
95
99
|
}
|
@@ -82,13 +82,17 @@ tags:
|
|
82
82
|
添加跨域规则,允许你的域名(在上文是 `https://your-project.vercel.app`)来源的请求:
|
83
83
|
|
84
84
|
<Image alt={'配置允许你的站点域名'} src={'https://github.com/lobehub/lobe-chat/assets/28616219/dfcc2cb3-2958-4498-a8a4-51bec584fe7d'} />
|
85
|
+
<Callout type={'info'}>
|
86
|
+
如果你还需要在桌面端使用,请在 <code>AllowedOrigins</code> 中额外添加 <code>http://localhost:3015</code>,以便桌面端(本地运行)能够访问 R2。
|
87
|
+
</Callout>
|
88
|
+
|
85
89
|
|
86
90
|
示例配置如下:
|
87
91
|
|
88
92
|
```json
|
89
93
|
[
|
90
94
|
{
|
91
|
-
"AllowedOrigins": ["https://your-project.vercel.app"],
|
95
|
+
"AllowedOrigins": ["https://your-project.vercel.app", "http://localhost:3015"],
|
92
96
|
"AllowedMethods": ["GET", "PUT", "HEAD", "POST", "DELETE"],
|
93
97
|
"AllowedHeaders": ["*"]
|
94
98
|
}
|
package/locales/ar/hotkey.json
CHANGED
@@ -21,6 +21,10 @@
|
|
21
21
|
"desc": "الدخول إلى وضع التحرير عن طريق الضغط على مفتاح Alt والنقر المزدوج على الرسالة",
|
22
22
|
"title": "تحرير الرسالة"
|
23
23
|
},
|
24
|
+
"navigateToChat": {
|
25
|
+
"desc": "التبديل إلى علامة تبويب المحادثة والدخول إلى دردشة عشوائية",
|
26
|
+
"title": "التبديل إلى المحادثة الافتراضية"
|
27
|
+
},
|
24
28
|
"openChatSettings": {
|
25
29
|
"desc": "عرض وتعديل إعدادات المحادثة الحالية",
|
26
30
|
"title": "فتح إعدادات المحادثة"
|
@@ -21,6 +21,10 @@
|
|
21
21
|
"desc": "Влезте в режим на редактиране, като задържите Alt и два пъти кликнете върху съобщението",
|
22
22
|
"title": "Редактиране на съобщение"
|
23
23
|
},
|
24
|
+
"navigateToChat": {
|
25
|
+
"desc": "Превключване към раздела за разговори и влизане в случайна беседа",
|
26
|
+
"title": "Превключване към стандартния разговор"
|
27
|
+
},
|
24
28
|
"openChatSettings": {
|
25
29
|
"desc": "Прегледайте и променете настройките на текущия разговор",
|
26
30
|
"title": "Отворете настройките на чата"
|
@@ -21,6 +21,10 @@
|
|
21
21
|
"desc": "Treten Sie in den Bearbeitungsmodus, indem Sie die Alt-Taste gedrückt halten und auf die Nachricht doppelklicken",
|
22
22
|
"title": "Nachricht bearbeiten"
|
23
23
|
},
|
24
|
+
"navigateToChat": {
|
25
|
+
"desc": "Zum Chat-Tab wechseln und einfach plaudern",
|
26
|
+
"title": "Zum Standard-Chat wechseln"
|
27
|
+
},
|
24
28
|
"openChatSettings": {
|
25
29
|
"desc": "Aktuelle Sitzungseinstellungen anzeigen und ändern",
|
26
30
|
"title": "Chat-Einstellungen öffnen"
|
@@ -21,6 +21,10 @@
|
|
21
21
|
"desc": "Enter edit mode by holding Alt and double-clicking the message",
|
22
22
|
"title": "Edit Message"
|
23
23
|
},
|
24
|
+
"navigateToChat": {
|
25
|
+
"desc": "Switch to the chat tab and start a casual conversation",
|
26
|
+
"title": "Switch to Default Chat"
|
27
|
+
},
|
24
28
|
"openChatSettings": {
|
25
29
|
"desc": "View and modify the settings for the current conversation",
|
26
30
|
"title": "Open Chat Settings"
|
@@ -21,6 +21,10 @@
|
|
21
21
|
"desc": "Entrar en modo de edición manteniendo presionada la tecla Alt y haciendo doble clic en el mensaje",
|
22
22
|
"title": "Editar mensaje"
|
23
23
|
},
|
24
|
+
"navigateToChat": {
|
25
|
+
"desc": "Cambiar a la pestaña de conversación y entrar en charla casual",
|
26
|
+
"title": "Cambiar a la conversación predeterminada"
|
27
|
+
},
|
24
28
|
"openChatSettings": {
|
25
29
|
"desc": "Ver y modificar la configuración de la conversación actual",
|
26
30
|
"title": "Abrir configuración de la conversación"
|
@@ -21,6 +21,10 @@
|
|
21
21
|
"desc": "با نگه داشتن کلید Alt و دوبار کلیک بر روی پیام وارد حالت ویرایش شوید",
|
22
22
|
"title": "ویرایش پیام"
|
23
23
|
},
|
24
|
+
"navigateToChat": {
|
25
|
+
"desc": "تغییر به برگه گفتگو و ورود به چت آزاد",
|
26
|
+
"title": "تغییر به گفتگو پیشفرض"
|
27
|
+
},
|
24
28
|
"openChatSettings": {
|
25
29
|
"desc": "مشاهده و ویرایش تنظیمات کنونی گفتگو",
|
26
30
|
"title": "باز کردن تنظیمات گفتگو"
|
@@ -21,6 +21,10 @@
|
|
21
21
|
"desc": "Entrez en mode édition en maintenant la touche Alt enfoncée et en double-cliquant sur le message",
|
22
22
|
"title": "Éditer le message"
|
23
23
|
},
|
24
|
+
"navigateToChat": {
|
25
|
+
"desc": "Basculer vers l'onglet de conversation et commencer une discussion libre",
|
26
|
+
"title": "Passer à la conversation par défaut"
|
27
|
+
},
|
24
28
|
"openChatSettings": {
|
25
29
|
"desc": "Voir et modifier les paramètres de la conversation actuelle",
|
26
30
|
"title": "Ouvrir les paramètres de la conversation"
|
@@ -21,6 +21,10 @@
|
|
21
21
|
"desc": "Entra in modalità di modifica tenendo premuto Alt e facendo doppio clic sul messaggio",
|
22
22
|
"title": "Modifica messaggio"
|
23
23
|
},
|
24
|
+
"navigateToChat": {
|
25
|
+
"desc": "Passa alla scheda della conversazione e inizia una chiacchierata casuale",
|
26
|
+
"title": "Passa alla conversazione predefinita"
|
27
|
+
},
|
24
28
|
"openChatSettings": {
|
25
29
|
"desc": "Visualizza e modifica le impostazioni della conversazione attuale",
|
26
30
|
"title": "Apri impostazioni chat"
|
@@ -21,6 +21,10 @@
|
|
21
21
|
"desc": "Ga naar de bewerkingsmodus door Alt ingedrukt te houden en op het bericht te dubbelklikken",
|
22
22
|
"title": "Bewerk bericht"
|
23
23
|
},
|
24
|
+
"navigateToChat": {
|
25
|
+
"desc": "Schakel over naar het gesprekstabblad en begin een willekeurig gesprek",
|
26
|
+
"title": "Schakel over naar het standaardgesprek"
|
27
|
+
},
|
24
28
|
"openChatSettings": {
|
25
29
|
"desc": "Bekijk en wijzig de instellingen van de huidige sessie",
|
26
30
|
"title": "Open gespreksinstellingen"
|
@@ -21,6 +21,10 @@
|
|
21
21
|
"desc": "Wejdź w tryb edycji, przytrzymując klawisz Alt i podwójnie klikając wiadomość",
|
22
22
|
"title": "Edytuj wiadomość"
|
23
23
|
},
|
24
|
+
"navigateToChat": {
|
25
|
+
"desc": "Przełącz na kartę rozmowy i rozpocznij swobodną rozmowę",
|
26
|
+
"title": "Przełącz na domyślną rozmowę"
|
27
|
+
},
|
24
28
|
"openChatSettings": {
|
25
29
|
"desc": "Zobacz i zmodyfikuj ustawienia bieżącej rozmowy",
|
26
30
|
"title": "Otwórz ustawienia czatu"
|
@@ -21,6 +21,10 @@
|
|
21
21
|
"desc": "Entre no modo de edição pressionando Alt e clicando duas vezes na mensagem",
|
22
22
|
"title": "Editar mensagem"
|
23
23
|
},
|
24
|
+
"navigateToChat": {
|
25
|
+
"desc": "Mudar para a aba de conversas e entrar em bate-papo casual",
|
26
|
+
"title": "Mudar para a conversa padrão"
|
27
|
+
},
|
24
28
|
"openChatSettings": {
|
25
29
|
"desc": "Ver e modificar as configurações da conversa atual",
|
26
30
|
"title": "Abrir configurações de conversa"
|
@@ -21,6 +21,10 @@
|
|
21
21
|
"desc": "Войти в режим редактирования, удерживая Alt и дважды щелкнув по сообщению",
|
22
22
|
"title": "Редактировать сообщение"
|
23
23
|
},
|
24
|
+
"navigateToChat": {
|
25
|
+
"desc": "Переключиться на вкладку чата и начать свободное общение",
|
26
|
+
"title": "Переключиться на стандартный чат"
|
27
|
+
},
|
24
28
|
"openChatSettings": {
|
25
29
|
"desc": "Просмотреть и изменить настройки текущего чата",
|
26
30
|
"title": "Открыть настройки чата"
|
@@ -21,6 +21,10 @@
|
|
21
21
|
"desc": "Mesaja çift tıklayıp Alt tuşuna basarak düzenleme moduna geçin",
|
22
22
|
"title": "Mesajı düzenle"
|
23
23
|
},
|
24
|
+
"navigateToChat": {
|
25
|
+
"desc": "Sohbet sekmesine geç ve rastgele sohbet et",
|
26
|
+
"title": "Varsayılan sohbete geç"
|
27
|
+
},
|
24
28
|
"openChatSettings": {
|
25
29
|
"desc": "Mevcut oturumun ayarlarını görüntüle ve değiştir",
|
26
30
|
"title": "Sohbet ayarlarını aç"
|
@@ -21,6 +21,10 @@
|
|
21
21
|
"desc": "Vào chế độ chỉnh sửa bằng cách giữ phím Alt và nhấp đúp vào tin nhắn",
|
22
22
|
"title": "Chỉnh sửa tin nhắn"
|
23
23
|
},
|
24
|
+
"navigateToChat": {
|
25
|
+
"desc": "Chuyển sang tab trò chuyện và bắt đầu cuộc trò chuyện ngẫu nhiên",
|
26
|
+
"title": "Chuyển sang cuộc trò chuyện mặc định"
|
27
|
+
},
|
24
28
|
"openChatSettings": {
|
25
29
|
"desc": "Xem và chỉnh sửa cài đặt của cuộc trò chuyện hiện tại",
|
26
30
|
"title": "Mở cài đặt cuộc trò chuyện"
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@lobehub/chat",
|
3
|
-
"version": "1.111.
|
3
|
+
"version": "1.111.5",
|
4
4
|
"description": "Lobe Chat - an open-source, high-performance chatbot framework that supports speech synthesis, multimodal, and extensible Function Call plugin system. Supports one-click free deployment of your private ChatGPT/LLM web application.",
|
5
5
|
"keywords": [
|
6
6
|
"framework",
|
@@ -204,7 +204,7 @@
|
|
204
204
|
"langfuse": "^3.38.4",
|
205
205
|
"langfuse-core": "^3.38.4",
|
206
206
|
"lodash-es": "^4.17.21",
|
207
|
-
"lucide-react": "^0.
|
207
|
+
"lucide-react": "^0.539.0",
|
208
208
|
"mammoth": "^1.10.0",
|
209
209
|
"markdown-to-txt": "^2.0.1",
|
210
210
|
"mdast-util-to-markdown": "^2.1.2",
|
@@ -245,7 +245,7 @@
|
|
245
245
|
"react-lazy-load": "^4.0.1",
|
246
246
|
"react-pdf": "^9.2.1",
|
247
247
|
"react-rnd": "^10.5.2",
|
248
|
-
"react-scan": "^0.
|
248
|
+
"react-scan": "^0.4.0",
|
249
249
|
"react-virtuoso": "^4.13.0",
|
250
250
|
"react-wrap-balancer": "^1.1.1",
|
251
251
|
"remark": "^15.0.1",
|
@@ -260,7 +260,7 @@
|
|
260
260
|
"stripe": "^17.7.0",
|
261
261
|
"superjson": "^2.2.2",
|
262
262
|
"svix": "^1.70.1",
|
263
|
-
"swr": "
|
263
|
+
"swr": "2.3.4",
|
264
264
|
"systemjs": "^6.15.1",
|
265
265
|
"tokenx": "^0.4.1",
|
266
266
|
"ts-md5": "^1.3.1",
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { ActionIcon, CopyButton, Icon, Markdown } from '@lobehub/ui';
|
1
|
+
import { ActionIcon, CopyButton, Icon, Markdown, ScrollShadow } from '@lobehub/ui';
|
2
2
|
import { createStyles } from 'antd-style';
|
3
3
|
import { AnimatePresence, motion } from 'framer-motion';
|
4
4
|
import { AtomIcon, ChevronDown, ChevronRight } from 'lucide-react';
|
@@ -17,14 +17,9 @@ const useStyles = createStyles(({ css, token }) => ({
|
|
17
17
|
transition: all 0.2s ${token.motionEaseOut};
|
18
18
|
`,
|
19
19
|
contentScroll: css`
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
overscroll-behavior: contain;
|
24
|
-
|
25
|
-
max-height: 40vh;
|
26
|
-
padding-block-end: 12px;
|
27
|
-
padding-inline: 12px;
|
20
|
+
max-height: min(40vh, 320px);
|
21
|
+
padding-block-end: 8px;
|
22
|
+
padding-inline: 8px;
|
28
23
|
`,
|
29
24
|
expand: css`
|
30
25
|
color: ${token.colorTextTertiary};
|
@@ -190,18 +185,26 @@ const Thinking = memo<ThinkingProps>((props) => {
|
|
190
185
|
open: { opacity: 1, width: 'auto' },
|
191
186
|
}}
|
192
187
|
>
|
193
|
-
<
|
188
|
+
<ScrollShadow
|
194
189
|
className={styles.contentScroll}
|
195
190
|
ref={contentRef as unknown as RefObject<HTMLDivElement>}
|
191
|
+
size={12}
|
196
192
|
>
|
197
193
|
{typeof content === 'string' ? (
|
198
|
-
<Markdown
|
194
|
+
<Markdown
|
195
|
+
animated={thinkingAnimated}
|
196
|
+
citations={citations}
|
197
|
+
style={{
|
198
|
+
overflow: 'unset',
|
199
|
+
}}
|
200
|
+
variant={'chat'}
|
201
|
+
>
|
199
202
|
{content}
|
200
203
|
</Markdown>
|
201
204
|
) : (
|
202
205
|
content
|
203
206
|
)}
|
204
|
-
</
|
207
|
+
</ScrollShadow>
|
205
208
|
</motion.div>
|
206
209
|
)}
|
207
210
|
</AnimatePresence>
|
@@ -37,7 +37,7 @@ export const openaiChatModels: AIChatModelCard[] = [
|
|
37
37
|
units: [
|
38
38
|
{ name: 'textInput', rate: 1.25, strategy: 'fixed', unit: 'millionTokens' },
|
39
39
|
{ name: 'textOutput', rate: 10, strategy: 'fixed', unit: 'millionTokens' },
|
40
|
-
{ name: 'textInput_cacheRead', rate: 0.
|
40
|
+
{ name: 'textInput_cacheRead', rate: 0.125, strategy: 'fixed', unit: 'millionTokens' },
|
41
41
|
],
|
42
42
|
},
|
43
43
|
releasedAt: '2025-08-07',
|
@@ -65,7 +65,7 @@ export const openaiChatModels: AIChatModelCard[] = [
|
|
65
65
|
units: [
|
66
66
|
{ name: 'textInput', rate: 0.25, strategy: 'fixed', unit: 'millionTokens' },
|
67
67
|
{ name: 'textOutput', rate: 2, strategy: 'fixed', unit: 'millionTokens' },
|
68
|
-
{ name: 'textInput_cacheRead', rate: 0.
|
68
|
+
{ name: 'textInput_cacheRead', rate: 0.025, strategy: 'fixed', unit: 'millionTokens' },
|
69
69
|
],
|
70
70
|
},
|
71
71
|
releasedAt: '2025-08-07',
|
@@ -90,7 +90,7 @@ export const openaiChatModels: AIChatModelCard[] = [
|
|
90
90
|
units: [
|
91
91
|
{ name: 'textInput', rate: 0.05, strategy: 'fixed', unit: 'millionTokens' },
|
92
92
|
{ name: 'textOutput', rate: 0.4, strategy: 'fixed', unit: 'millionTokens' },
|
93
|
-
{ name: 'textInput_cacheRead', rate: 0.
|
93
|
+
{ name: 'textInput_cacheRead', rate: 0.005, strategy: 'fixed', unit: 'millionTokens' },
|
94
94
|
],
|
95
95
|
},
|
96
96
|
releasedAt: '2025-08-07',
|
@@ -111,7 +111,7 @@ export const openaiChatModels: AIChatModelCard[] = [
|
|
111
111
|
units: [
|
112
112
|
{ name: 'textInput', rate: 1.25, strategy: 'fixed', unit: 'millionTokens' },
|
113
113
|
{ name: 'textOutput', rate: 10, strategy: 'fixed', unit: 'millionTokens' },
|
114
|
-
{ name: 'textInput_cacheRead', rate: 0.
|
114
|
+
{ name: 'textInput_cacheRead', rate: 0.125, strategy: 'fixed', unit: 'millionTokens' },
|
115
115
|
],
|
116
116
|
},
|
117
117
|
releasedAt: '2025-08-07',
|