@lobehub/chat 1.79.7 → 1.79.9

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.
Files changed (121) hide show
  1. package/.eslintrc.js +1 -0
  2. package/CHANGELOG.md +58 -0
  3. package/changelog/v1.json +18 -0
  4. package/docs/development/database-schema.dbml +119 -0
  5. package/locales/ar/models.json +12 -0
  6. package/locales/ar/oauth.json +40 -0
  7. package/locales/bg-BG/models.json +12 -0
  8. package/locales/bg-BG/oauth.json +40 -0
  9. package/locales/de-DE/models.json +12 -0
  10. package/locales/de-DE/oauth.json +40 -0
  11. package/locales/en-US/models.json +12 -0
  12. package/locales/en-US/oauth.json +40 -0
  13. package/locales/es-ES/models.json +12 -0
  14. package/locales/es-ES/oauth.json +40 -0
  15. package/locales/fa-IR/models.json +12 -0
  16. package/locales/fa-IR/oauth.json +40 -0
  17. package/locales/fr-FR/models.json +12 -0
  18. package/locales/fr-FR/oauth.json +40 -0
  19. package/locales/it-IT/models.json +12 -0
  20. package/locales/it-IT/oauth.json +40 -0
  21. package/locales/ja-JP/models.json +12 -0
  22. package/locales/ja-JP/oauth.json +40 -0
  23. package/locales/ko-KR/models.json +12 -0
  24. package/locales/ko-KR/oauth.json +40 -0
  25. package/locales/nl-NL/models.json +12 -0
  26. package/locales/nl-NL/oauth.json +40 -0
  27. package/locales/pl-PL/models.json +12 -0
  28. package/locales/pl-PL/oauth.json +40 -0
  29. package/locales/pt-BR/models.json +12 -0
  30. package/locales/pt-BR/oauth.json +40 -0
  31. package/locales/ru-RU/models.json +12 -0
  32. package/locales/ru-RU/oauth.json +40 -0
  33. package/locales/tr-TR/models.json +12 -0
  34. package/locales/tr-TR/oauth.json +40 -0
  35. package/locales/vi-VN/models.json +12 -0
  36. package/locales/vi-VN/oauth.json +40 -0
  37. package/locales/zh-CN/models.json +12 -0
  38. package/locales/zh-CN/oauth.json +40 -0
  39. package/locales/zh-TW/models.json +12 -0
  40. package/locales/zh-TW/oauth.json +40 -0
  41. package/package.json +4 -1
  42. package/scripts/generate-oidc-jwk.mjs +59 -0
  43. package/scripts/migrateServerDB/index.ts +3 -1
  44. package/src/app/(backend)/oidc/[...oidc]/route.ts +96 -0
  45. package/src/app/(backend)/oidc/consent/route.ts +131 -0
  46. package/src/app/(backend)/trpc/async/[trpc]/route.ts +1 -1
  47. package/src/app/(backend)/trpc/edge/[trpc]/route.ts +2 -2
  48. package/src/app/(backend)/trpc/lambda/[trpc]/route.ts +2 -2
  49. package/src/app/(backend)/trpc/tools/[trpc]/route.ts +2 -2
  50. package/src/app/[variants]/(main)/files/[id]/page.tsx +1 -1
  51. package/src/app/[variants]/oauth/consent/[uid]/Client.tsx +224 -0
  52. package/src/app/[variants]/oauth/consent/[uid]/ClientError.tsx +46 -0
  53. package/src/app/[variants]/oauth/consent/[uid]/failed/page.tsx +36 -0
  54. package/src/app/[variants]/oauth/consent/[uid]/page.tsx +69 -0
  55. package/src/app/[variants]/oauth/consent/[uid]/success/page.tsx +30 -0
  56. package/src/components/Branding/ProductLogo/index.tsx +6 -1
  57. package/src/config/aiModels/openai.ts +63 -41
  58. package/src/database/client/migrations.json +27 -8
  59. package/src/database/migrations/0020_add_oidc.sql +124 -0
  60. package/src/database/migrations/meta/0020_snapshot.json +4975 -0
  61. package/src/database/migrations/meta/_journal.json +7 -0
  62. package/src/database/repositories/tableViewer/index.test.ts +1 -1
  63. package/src/database/schemas/index.ts +1 -0
  64. package/src/database/schemas/oidc.ts +158 -0
  65. package/src/database/server/models/__tests__/adapter.test.ts +499 -0
  66. package/src/envs/oidc.ts +18 -0
  67. package/src/libs/agent-runtime/azureOpenai/index.ts +4 -1
  68. package/src/libs/agent-runtime/utils/streams/protocol.ts +2 -4
  69. package/src/libs/oidc-provider/adapter.ts +541 -0
  70. package/src/libs/oidc-provider/config.ts +52 -0
  71. package/src/libs/oidc-provider/http-adapter.ts +311 -0
  72. package/src/libs/oidc-provider/interaction-policy.ts +37 -0
  73. package/src/libs/oidc-provider/provider.ts +288 -0
  74. package/src/libs/trpc/async/init.ts +1 -1
  75. package/src/{server → libs/trpc/edge}/context.ts +2 -2
  76. package/src/libs/trpc/{index.ts → edge/index.ts} +8 -8
  77. package/src/libs/trpc/{init.ts → edge/init.ts} +2 -2
  78. package/src/libs/trpc/{middleware → edge/middleware}/jwtPayload.test.ts +3 -3
  79. package/src/libs/trpc/{middleware → edge/middleware}/jwtPayload.ts +3 -2
  80. package/src/libs/trpc/lambda/context.ts +70 -0
  81. package/src/libs/trpc/lambda/index.ts +39 -1
  82. package/src/libs/trpc/lambda/init.ts +26 -0
  83. package/src/libs/trpc/lambda/middleware/index.ts +2 -0
  84. package/src/libs/trpc/{middleware → lambda/middleware}/keyVaults.ts +2 -1
  85. package/src/libs/trpc/lambda/{serverDatabase.ts → middleware/serverDatabase.ts} +2 -1
  86. package/src/libs/trpc/middleware/userAuth.test.ts +3 -3
  87. package/src/libs/trpc/middleware/userAuth.ts +1 -1
  88. package/src/libs/trpc/mock.ts +7 -0
  89. package/src/locales/default/index.ts +2 -0
  90. package/src/locales/default/oauth.ts +43 -0
  91. package/src/middleware.ts +94 -6
  92. package/src/server/routers/edge/appStatus.ts +1 -1
  93. package/src/server/routers/edge/config/index.test.ts +2 -3
  94. package/src/server/routers/edge/config/index.ts +1 -1
  95. package/src/server/routers/edge/index.ts +1 -1
  96. package/src/server/routers/edge/upload.ts +1 -1
  97. package/src/server/routers/lambda/_template.ts +2 -2
  98. package/src/server/routers/lambda/agent.ts +2 -2
  99. package/src/server/routers/lambda/aiModel.ts +2 -2
  100. package/src/server/routers/lambda/aiProvider.ts +2 -2
  101. package/src/server/routers/lambda/chunk.ts +2 -3
  102. package/src/server/routers/lambda/exporter.ts +2 -2
  103. package/src/server/routers/lambda/file.ts +2 -2
  104. package/src/server/routers/lambda/importer.ts +2 -2
  105. package/src/server/routers/lambda/index.ts +1 -1
  106. package/src/server/routers/lambda/knowledgeBase.ts +2 -2
  107. package/src/server/routers/lambda/message.ts +2 -2
  108. package/src/server/routers/lambda/plugin.ts +2 -2
  109. package/src/server/routers/lambda/ragEval.ts +2 -3
  110. package/src/server/routers/lambda/session.ts +2 -2
  111. package/src/server/routers/lambda/sessionGroup.ts +2 -2
  112. package/src/server/routers/lambda/thread.ts +2 -2
  113. package/src/server/routers/lambda/topic.ts +2 -2
  114. package/src/server/routers/lambda/user.ts +2 -2
  115. package/src/server/routers/tools/__tests__/search.test.ts +2 -2
  116. package/src/server/routers/tools/index.ts +1 -1
  117. package/src/server/routers/tools/search.ts +2 -1
  118. package/src/server/services/oidc/index.ts +64 -0
  119. package/src/server/services/oidc/oidcProvider.ts +25 -0
  120. package/src/server/mock.ts +0 -8
  121. /package/src/{server/asyncContext.ts → libs/trpc/async/context.ts} +0 -0
package/.eslintrc.js CHANGED
@@ -17,6 +17,7 @@ config.rules['unicorn/prefer-spread'] = 0;
17
17
  config.rules['unicorn/catch-error-name'] = 0;
18
18
  config.rules['unicorn/no-array-for-each'] = 0;
19
19
  config.rules['unicorn/prefer-number-properties'] = 0;
20
+ config.rules['unicorn/no-array-callback-reference'] = 0;
20
21
 
21
22
  config.overrides = [
22
23
  {
package/CHANGELOG.md CHANGED
@@ -2,6 +2,64 @@
2
2
 
3
3
  # Changelog
4
4
 
5
+ ### [Version 1.79.9](https://github.com/lobehub/lobe-chat/compare/v1.79.8...v1.79.9)
6
+
7
+ <sup>Released on **2025-04-15**</sup>
8
+
9
+ #### ♻ Code Refactoring
10
+
11
+ - **misc**: Refactor trpc to have a clear obligation.
12
+
13
+ #### 💄 Styles
14
+
15
+ - **misc**: Add GPT-4.1 models.
16
+
17
+ <br/>
18
+
19
+ <details>
20
+ <summary><kbd>Improvements and Fixes</kbd></summary>
21
+
22
+ #### Code refactoring
23
+
24
+ - **misc**: Refactor trpc to have a clear obligation, closes [#7412](https://github.com/lobehub/lobe-chat/issues/7412) ([01c0120](https://github.com/lobehub/lobe-chat/commit/01c0120))
25
+
26
+ #### Styles
27
+
28
+ - **misc**: Add GPT-4.1 models, closes [#7410](https://github.com/lobehub/lobe-chat/issues/7410) ([3c4d7df](https://github.com/lobehub/lobe-chat/commit/3c4d7df))
29
+
30
+ </details>
31
+
32
+ <div align="right">
33
+
34
+ [![](https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square)](#readme-top)
35
+
36
+ </div>
37
+
38
+ ### [Version 1.79.8](https://github.com/lobehub/lobe-chat/compare/v1.79.7...v1.79.8)
39
+
40
+ <sup>Released on **2025-04-12**</sup>
41
+
42
+ #### 🐛 Bug Fixes
43
+
44
+ - **misc**: Fix Azure OpenAI unable to process image messages in local s3.
45
+
46
+ <br/>
47
+
48
+ <details>
49
+ <summary><kbd>Improvements and Fixes</kbd></summary>
50
+
51
+ #### What's fixed
52
+
53
+ - **misc**: Fix Azure OpenAI unable to process image messages in local s3, closes [#7385](https://github.com/lobehub/lobe-chat/issues/7385) ([c98c0f8](https://github.com/lobehub/lobe-chat/commit/c98c0f8))
54
+
55
+ </details>
56
+
57
+ <div align="right">
58
+
59
+ [![](https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square)](#readme-top)
60
+
61
+ </div>
62
+
5
63
  ### [Version 1.79.7](https://github.com/lobehub/lobe-chat/compare/v1.79.6...v1.79.7)
6
64
 
7
65
  <sup>Released on **2025-04-11**</sup>
package/changelog/v1.json CHANGED
@@ -1,4 +1,22 @@
1
1
  [
2
+ {
3
+ "children": {
4
+ "improvements": [
5
+ "Add GPT-4.1 models."
6
+ ]
7
+ },
8
+ "date": "2025-04-15",
9
+ "version": "1.79.9"
10
+ },
11
+ {
12
+ "children": {
13
+ "fixes": [
14
+ "Fix Azure OpenAI unable to process image messages in local s3."
15
+ ]
16
+ },
17
+ "date": "2025-04-12",
18
+ "version": "1.79.8"
19
+ },
2
20
  {
3
21
  "children": {
4
22
  "improvements": [
@@ -349,6 +349,125 @@ table nextauth_verificationtokens {
349
349
  }
350
350
  }
351
351
 
352
+ table oidc_access_tokens {
353
+ id varchar(255) [pk, not null]
354
+ data jsonb [not null]
355
+ expires_at "timestamp with time zone" [not null]
356
+ consumed_at "timestamp with time zone"
357
+ user_id text [not null]
358
+ client_id varchar(255) [not null]
359
+ grant_id varchar(255)
360
+ accessed_at "timestamp with time zone" [not null, default: `now()`]
361
+ created_at "timestamp with time zone" [not null, default: `now()`]
362
+ updated_at "timestamp with time zone" [not null, default: `now()`]
363
+ }
364
+
365
+ table oidc_authorization_codes {
366
+ id varchar(255) [pk, not null]
367
+ data jsonb [not null]
368
+ expires_at "timestamp with time zone" [not null]
369
+ consumed_at "timestamp with time zone"
370
+ user_id text [not null]
371
+ client_id varchar(255) [not null]
372
+ grant_id varchar(255)
373
+ accessed_at "timestamp with time zone" [not null, default: `now()`]
374
+ created_at "timestamp with time zone" [not null, default: `now()`]
375
+ updated_at "timestamp with time zone" [not null, default: `now()`]
376
+ }
377
+
378
+ table oidc_clients {
379
+ id varchar(255) [pk, not null]
380
+ name text [not null]
381
+ description text
382
+ client_secret varchar(255)
383
+ redirect_uris text[] [not null]
384
+ grants text[] [not null]
385
+ response_types text[] [not null]
386
+ scopes text[] [not null]
387
+ token_endpoint_auth_method varchar(20)
388
+ application_type varchar(20)
389
+ client_uri text
390
+ logo_uri text
391
+ policy_uri text
392
+ tos_uri text
393
+ is_first_party boolean [default: false]
394
+ accessed_at "timestamp with time zone" [not null, default: `now()`]
395
+ created_at "timestamp with time zone" [not null, default: `now()`]
396
+ updated_at "timestamp with time zone" [not null, default: `now()`]
397
+ }
398
+
399
+ table oidc_consents {
400
+ user_id text [not null]
401
+ client_id varchar(255) [not null]
402
+ scopes text[] [not null]
403
+ expires_at "timestamp with time zone"
404
+ accessed_at "timestamp with time zone" [not null, default: `now()`]
405
+ created_at "timestamp with time zone" [not null, default: `now()`]
406
+ updated_at "timestamp with time zone" [not null, default: `now()`]
407
+
408
+ indexes {
409
+ (user_id, client_id) [pk]
410
+ }
411
+ }
412
+
413
+ table oidc_device_codes {
414
+ id varchar(255) [pk, not null]
415
+ data jsonb [not null]
416
+ expires_at "timestamp with time zone" [not null]
417
+ consumed_at "timestamp with time zone"
418
+ user_id text
419
+ client_id varchar(255) [not null]
420
+ grant_id varchar(255)
421
+ user_code varchar(255)
422
+ accessed_at "timestamp with time zone" [not null, default: `now()`]
423
+ created_at "timestamp with time zone" [not null, default: `now()`]
424
+ updated_at "timestamp with time zone" [not null, default: `now()`]
425
+ }
426
+
427
+ table oidc_grants {
428
+ id varchar(255) [pk, not null]
429
+ data jsonb [not null]
430
+ expires_at "timestamp with time zone" [not null]
431
+ consumed_at "timestamp with time zone"
432
+ user_id text [not null]
433
+ client_id varchar(255) [not null]
434
+ accessed_at "timestamp with time zone" [not null, default: `now()`]
435
+ created_at "timestamp with time zone" [not null, default: `now()`]
436
+ updated_at "timestamp with time zone" [not null, default: `now()`]
437
+ }
438
+
439
+ table oidc_interactions {
440
+ id varchar(255) [pk, not null]
441
+ data jsonb [not null]
442
+ expires_at "timestamp with time zone" [not null]
443
+ accessed_at "timestamp with time zone" [not null, default: `now()`]
444
+ created_at "timestamp with time zone" [not null, default: `now()`]
445
+ updated_at "timestamp with time zone" [not null, default: `now()`]
446
+ }
447
+
448
+ table oidc_refresh_tokens {
449
+ id varchar(255) [pk, not null]
450
+ data jsonb [not null]
451
+ expires_at "timestamp with time zone" [not null]
452
+ consumed_at "timestamp with time zone"
453
+ user_id text [not null]
454
+ client_id varchar(255) [not null]
455
+ grant_id varchar(255)
456
+ accessed_at "timestamp with time zone" [not null, default: `now()`]
457
+ created_at "timestamp with time zone" [not null, default: `now()`]
458
+ updated_at "timestamp with time zone" [not null, default: `now()`]
459
+ }
460
+
461
+ table oidc_sessions {
462
+ id varchar(255) [pk, not null]
463
+ data jsonb [not null]
464
+ expires_at "timestamp with time zone" [not null]
465
+ user_id text [not null]
466
+ accessed_at "timestamp with time zone" [not null, default: `now()`]
467
+ created_at "timestamp with time zone" [not null, default: `now()`]
468
+ updated_at "timestamp with time zone" [not null, default: `now()`]
469
+ }
470
+
352
471
  table chunks {
353
472
  id uuid [pk, not null, default: `gen_random_uuid()`]
354
473
  text text
@@ -1109,6 +1109,18 @@
1109
1109
  "grok-2-vision-1212": {
1110
1110
  "description": "لقد تم تحسين هذا النموذج في الدقة، والامتثال للتعليمات، والقدرة على التعامل مع لغات متعددة."
1111
1111
  },
1112
+ "grok-3-beta": {
1113
+ "description": "نموذج رائد، يتفوق في استخراج البيانات، البرمجة، وتلخيص النصوص في التطبيقات المؤسسية، ويملك معرفة عميقة في مجالات المالية، الطب، القانون، والعلوم."
1114
+ },
1115
+ "grok-3-fast-beta": {
1116
+ "description": "نموذج رائد، يتفوق في استخراج البيانات، البرمجة، وتلخيص النصوص في التطبيقات المؤسسية، ويملك معرفة عميقة في مجالات المالية، الطب، القانون، والعلوم."
1117
+ },
1118
+ "grok-3-mini-beta": {
1119
+ "description": "نموذج خفيف الوزن، يفكر قبل بدء المحادثة. يعمل بسرعة وذكاء، مناسب للمهام المنطقية التي لا تتطلب معرفة عميقة في المجالات، ويمكنه الحصول على مسارات التفكير الأصلية."
1120
+ },
1121
+ "grok-3-mini-fast-beta": {
1122
+ "description": "نموذج خفيف الوزن، يفكر قبل بدء المحادثة. يعمل بسرعة وذكاء، مناسب للمهام المنطقية التي لا تتطلب معرفة عميقة في المجالات، ويمكنه الحصول على مسارات التفكير الأصلية."
1123
+ },
1112
1124
  "grok-beta": {
1113
1125
  "description": "يمتلك أداءً يعادل Grok 2، ولكنه يتمتع بكفاءة وسرعة ووظائف أعلى."
1114
1126
  },
@@ -0,0 +1,40 @@
1
+ {
2
+ "consent": {
3
+ "buttons": {
4
+ "accept": "موافقة",
5
+ "deny": "رفض"
6
+ },
7
+ "description": "تطبيق {{clientName}} يطلب إذن حسابك",
8
+ "error": {
9
+ "sessionInvalid": {
10
+ "message": "جلسة التفويض منتهية أو غير صالحة، يرجى إعادة بدء عملية التفويض.",
11
+ "title": "جلسة التفويض غير صالحة"
12
+ },
13
+ "title": "حدث خطأ",
14
+ "unsupportedInteraction": {
15
+ "message": "نوع التفاعل غير مدعوم: {promptName}",
16
+ "title": "نوع التفاعل غير مدعوم"
17
+ }
18
+ },
19
+ "permissionsTitle": "طلب الأذونات التالية:",
20
+ "redirectUri": "سيتم إعادة التوجيه إلى بعد نجاح التفويض",
21
+ "scope": {
22
+ "email": "الوصول إلى عنوان بريدك الإلكتروني",
23
+ "offline_access": "السماح للتطبيق بالوصول إلى بياناتك",
24
+ "openid": "استخدام حسابك في LobeChat للتحقق من الهوية",
25
+ "profile": "الوصول إلى معلومات ملفك الشخصي الأساسية (الاسم، الصورة، إلخ)",
26
+ "sync-read": "قراءة بيانات المزامنة الخاصة بك",
27
+ "sync-write": "كتابة وتحديث بيانات المزامنة الخاصة بك"
28
+ },
29
+ "title": "تفويض {{clientName}}"
30
+ },
31
+ "failed": {
32
+ "backToHome": "العودة إلى الصفحة الرئيسية",
33
+ "subTitle": "لقد رفضت منح التطبيق الوصول إلى حسابك في LobeChat",
34
+ "title": "تم رفض التفويض"
35
+ },
36
+ "success": {
37
+ "subTitle": "لقد منحت التطبيق الوصول إلى حسابك في LobeChat بنجاح، يمكنك إغلاق هذه الصفحة الآن",
38
+ "title": "تم التفويض بنجاح"
39
+ }
40
+ }
@@ -1109,6 +1109,18 @@
1109
1109
  "grok-2-vision-1212": {
1110
1110
  "description": "Този модел е подобрен по отношение на точност, спазване на инструкции и многоезични способности."
1111
1111
  },
1112
+ "grok-3-beta": {
1113
+ "description": "Флагмански модел, специализиран в извличането на данни, програмирането и обобщаването на текстове за корпоративни приложения, с дълбоки познания в области като финанси, здравеопазване, право и наука."
1114
+ },
1115
+ "grok-3-fast-beta": {
1116
+ "description": "Флагмански модел, специализиран в извличането на данни, програмирането и обобщаването на текстове за корпоративни приложения, с дълбоки познания в области като финанси, здравеопазване, право и наука."
1117
+ },
1118
+ "grok-3-mini-beta": {
1119
+ "description": "Лек модел, който обмисля преди разговор. Работи бързо и интелигентно, подходящ за логически задачи, които не изискват дълбоки познания в областта, и може да улови оригиналните мисловни процеси."
1120
+ },
1121
+ "grok-3-mini-fast-beta": {
1122
+ "description": "Лек модел, който обмисля преди разговор. Работи бързо и интелигентно, подходящ за логически задачи, които не изискват дълбоки познания в областта, и може да улови оригиналните мисловни процеси."
1123
+ },
1112
1124
  "grok-beta": {
1113
1125
  "description": "С производителност, сравнима с Grok 2, но с по-висока ефективност, скорост и функции."
1114
1126
  },
@@ -0,0 +1,40 @@
1
+ {
2
+ "consent": {
3
+ "buttons": {
4
+ "accept": "Разреши",
5
+ "deny": "Отказ"
6
+ },
7
+ "description": "Приложението {{clientName}} иска разрешение за вашия акаунт",
8
+ "error": {
9
+ "sessionInvalid": {
10
+ "message": "Сесията за разрешение е изтекла или невалидна, моля, стартирайте отново процеса на разрешение.",
11
+ "title": "Невалидна сесия за разрешение"
12
+ },
13
+ "title": "Възникна грешка",
14
+ "unsupportedInteraction": {
15
+ "message": "Неподдържан тип взаимодействие: {promptName}",
16
+ "title": "Неподдържан тип взаимодействие"
17
+ }
18
+ },
19
+ "permissionsTitle": "Искаме следните разрешения:",
20
+ "redirectUri": "Ще бъдете пренасочени след успешното разрешение",
21
+ "scope": {
22
+ "email": "Достъп до вашия имейл адрес",
23
+ "offline_access": "Позволете на клиента да получи достъп до вашите данни",
24
+ "openid": "Аутентификация с вашия LobeChat акаунт",
25
+ "profile": "Достъп до основната ви информация (име, аватар и др.)",
26
+ "sync-read": "Четене на вашите синхронизирани данни",
27
+ "sync-write": "Записване и актуализиране на вашите синхронизирани данни"
28
+ },
29
+ "title": "Разрешаване на {{clientName}}"
30
+ },
31
+ "failed": {
32
+ "backToHome": "Върнете се на началната страница",
33
+ "subTitle": "Вие отказахте разрешение на приложението да получи достъп до вашия LobeChat акаунт",
34
+ "title": "Разрешението е отказано"
35
+ },
36
+ "success": {
37
+ "subTitle": "Успешно разрешихте на приложението достъп до вашия LobeChat акаунт, можете да затворите тази страница",
38
+ "title": "Успешно разрешение"
39
+ }
40
+ }
@@ -1109,6 +1109,18 @@
1109
1109
  "grok-2-vision-1212": {
1110
1110
  "description": "Dieses Modell hat Verbesserungen in Bezug auf Genauigkeit, Befolgung von Anweisungen und Mehrsprachigkeit erfahren."
1111
1111
  },
1112
+ "grok-3-beta": {
1113
+ "description": "Flaggschiff-Modell, das sich auf Datenextraktion, Programmierung und Textzusammenfassungen für Unternehmensanwendungen spezialisiert hat und über umfassendes Wissen in den Bereichen Finanzen, Gesundheitswesen, Recht und Wissenschaft verfügt."
1114
+ },
1115
+ "grok-3-fast-beta": {
1116
+ "description": "Flaggschiff-Modell, das sich auf Datenextraktion, Programmierung und Textzusammenfassungen für Unternehmensanwendungen spezialisiert hat und über umfassendes Wissen in den Bereichen Finanzen, Gesundheitswesen, Recht und Wissenschaft verfügt."
1117
+ },
1118
+ "grok-3-mini-beta": {
1119
+ "description": "Leichtgewichtiges Modell, das vor dem Gespräch nachdenkt. Es läuft schnell und intelligent und eignet sich für logische Aufgaben, die kein tiefes Fachwissen erfordern, und kann die ursprünglichen Denkprozesse erfassen."
1120
+ },
1121
+ "grok-3-mini-fast-beta": {
1122
+ "description": "Leichtgewichtiges Modell, das vor dem Gespräch nachdenkt. Es läuft schnell und intelligent und eignet sich für logische Aufgaben, die kein tiefes Fachwissen erfordern, und kann die ursprünglichen Denkprozesse erfassen."
1123
+ },
1112
1124
  "grok-beta": {
1113
1125
  "description": "Bietet eine Leistung, die mit Grok 2 vergleichbar ist, jedoch mit höherer Effizienz, Geschwindigkeit und Funktionalität."
1114
1126
  },
@@ -0,0 +1,40 @@
1
+ {
2
+ "consent": {
3
+ "buttons": {
4
+ "accept": "Zustimmen",
5
+ "deny": "Ablehnen"
6
+ },
7
+ "description": "Die Anwendung {{clientName}} beantragt die Autorisierung Ihres Kontos",
8
+ "error": {
9
+ "sessionInvalid": {
10
+ "message": "Die Autorisierungssitzung ist abgelaufen oder ungültig. Bitte starten Sie den Autorisierungsprozess erneut.",
11
+ "title": "Ungültige Autorisierungssitzung"
12
+ },
13
+ "title": "Ein Fehler ist aufgetreten",
14
+ "unsupportedInteraction": {
15
+ "message": "Nicht unterstützter Interaktionstyp: {promptName}",
16
+ "title": "Nicht unterstützter Interaktionstyp"
17
+ }
18
+ },
19
+ "permissionsTitle": "Anforderung der folgenden Berechtigungen:",
20
+ "redirectUri": "Nach erfolgreicher Autorisierung werden Sie umgeleitet zu",
21
+ "scope": {
22
+ "email": "Zugriff auf Ihre E-Mail-Adresse",
23
+ "offline_access": "Erlauben Sie dem Client, auf Ihre Daten zuzugreifen",
24
+ "openid": "Authentifizierung mit Ihrem LobeChat-Konto",
25
+ "profile": "Zugriff auf Ihre Profilinformationen (Name, Avatar usw.)",
26
+ "sync-read": "Lesen Sie Ihre synchronisierten Daten",
27
+ "sync-write": "Schreiben und Aktualisieren Sie Ihre synchronisierten Daten"
28
+ },
29
+ "title": "Autorisierung von {{clientName}}"
30
+ },
31
+ "failed": {
32
+ "backToHome": "Zurück zur Startseite",
33
+ "subTitle": "Sie haben die Autorisierung für die Anwendung zum Zugriff auf Ihr LobeChat-Konto abgelehnt",
34
+ "title": "Autorisierung abgelehnt"
35
+ },
36
+ "success": {
37
+ "subTitle": "Sie haben der Anwendung erfolgreich Zugriff auf Ihr LobeChat-Konto gewährt. Sie können diese Seite jetzt schließen.",
38
+ "title": "Autorisierung erfolgreich"
39
+ }
40
+ }
@@ -1109,6 +1109,18 @@
1109
1109
  "grok-2-vision-1212": {
1110
1110
  "description": "This model has improved in accuracy, instruction adherence, and multilingual capabilities."
1111
1111
  },
1112
+ "grok-3-beta": {
1113
+ "description": "A flagship model, proficient in data extraction, programming, and text summarization for enterprise applications, with deep knowledge in fields such as finance, healthcare, law, and science."
1114
+ },
1115
+ "grok-3-fast-beta": {
1116
+ "description": "A flagship model, proficient in data extraction, programming, and text summarization for enterprise applications, with deep knowledge in fields such as finance, healthcare, law, and science."
1117
+ },
1118
+ "grok-3-mini-beta": {
1119
+ "description": "A lightweight model that thinks before responding. It operates quickly and intelligently, suitable for logical tasks that do not require deep domain knowledge, while capturing the raw thought process."
1120
+ },
1121
+ "grok-3-mini-fast-beta": {
1122
+ "description": "A lightweight model that thinks before responding. It operates quickly and intelligently, suitable for logical tasks that do not require deep domain knowledge, while capturing the raw thought process."
1123
+ },
1112
1124
  "grok-beta": {
1113
1125
  "description": "Offers performance comparable to Grok 2 but with higher efficiency, speed, and functionality."
1114
1126
  },
@@ -0,0 +1,40 @@
1
+ {
2
+ "consent": {
3
+ "buttons": {
4
+ "accept": "Authorize",
5
+ "deny": "Deny"
6
+ },
7
+ "description": "The application {{clientName}} is requesting authorization for your account",
8
+ "error": {
9
+ "sessionInvalid": {
10
+ "message": "The authorization session has expired or is invalid. Please restart the authorization process.",
11
+ "title": "Invalid Authorization Session"
12
+ },
13
+ "title": "An Error Occurred",
14
+ "unsupportedInteraction": {
15
+ "message": "Unsupported interaction type: {promptName}",
16
+ "title": "Unsupported Interaction Type"
17
+ }
18
+ },
19
+ "permissionsTitle": "Requesting the following permissions:",
20
+ "redirectUri": "You will be redirected to after successful authorization",
21
+ "scope": {
22
+ "email": "Access your email address",
23
+ "offline_access": "Allow the client to access your data",
24
+ "openid": "Authenticate using your LobeChat account",
25
+ "profile": "Access your basic profile information (name, avatar, etc.)",
26
+ "sync-read": "Read your synchronized data",
27
+ "sync-write": "Write and update your synchronized data"
28
+ },
29
+ "title": "Authorize {{clientName}}"
30
+ },
31
+ "failed": {
32
+ "backToHome": "Back to Home",
33
+ "subTitle": "You have denied the application access to your LobeChat account",
34
+ "title": "Authorization Denied"
35
+ },
36
+ "success": {
37
+ "subTitle": "You have successfully authorized the application to access your LobeChat account. You can close this page now.",
38
+ "title": "Authorization Successful"
39
+ }
40
+ }
@@ -1109,6 +1109,18 @@
1109
1109
  "grok-2-vision-1212": {
1110
1110
  "description": "Este modelo ha mejorado en precisión, cumplimiento de instrucciones y capacidades multilingües."
1111
1111
  },
1112
+ "grok-3-beta": {
1113
+ "description": "Modelo insignia, experto en extracción de datos, programación y resúmenes de texto para aplicaciones empresariales, con un profundo conocimiento en campos como finanzas, salud, derecho y ciencia."
1114
+ },
1115
+ "grok-3-fast-beta": {
1116
+ "description": "Modelo insignia, experto en extracción de datos, programación y resúmenes de texto para aplicaciones empresariales, con un profundo conocimiento en campos como finanzas, salud, derecho y ciencia."
1117
+ },
1118
+ "grok-3-mini-beta": {
1119
+ "description": "Modelo ligero, que reflexiona antes de la conversación. Rápido e inteligente, adecuado para tareas lógicas que no requieren un conocimiento profundo del dominio, y capaz de capturar la trayectoria de pensamiento original."
1120
+ },
1121
+ "grok-3-mini-fast-beta": {
1122
+ "description": "Modelo ligero, que reflexiona antes de la conversación. Rápido e inteligente, adecuado para tareas lógicas que no requieren un conocimiento profundo del dominio, y capaz de capturar la trayectoria de pensamiento original."
1123
+ },
1112
1124
  "grok-beta": {
1113
1125
  "description": "Ofrece un rendimiento comparable al de Grok 2, pero con mayor eficiencia, velocidad y funcionalidad."
1114
1126
  },
@@ -0,0 +1,40 @@
1
+ {
2
+ "consent": {
3
+ "buttons": {
4
+ "accept": "Autorizar",
5
+ "deny": "Denegar"
6
+ },
7
+ "description": "La aplicación {{clientName}} solicita autorización para su cuenta",
8
+ "error": {
9
+ "sessionInvalid": {
10
+ "message": "La sesión de autorización ha expirado o es inválida, por favor inicie nuevamente el proceso de autorización.",
11
+ "title": "Sesión de autorización inválida"
12
+ },
13
+ "title": "Ocurrió un error",
14
+ "unsupportedInteraction": {
15
+ "message": "Tipo de interacción no soportado: {promptName}",
16
+ "title": "Tipo de interacción no soportado"
17
+ }
18
+ },
19
+ "permissionsTitle": "Solicitar los siguientes permisos:",
20
+ "redirectUri": "Se redirigirá a después de la autorización exitosa",
21
+ "scope": {
22
+ "email": "Acceder a su dirección de correo electrónico",
23
+ "offline_access": "Permitir que el cliente acceda a sus datos",
24
+ "openid": "Autenticarse con su cuenta de LobeChat",
25
+ "profile": "Acceder a su información básica de perfil (nombre, foto, etc.)",
26
+ "sync-read": "Leer sus datos sincronizados",
27
+ "sync-write": "Escribir y actualizar sus datos sincronizados"
28
+ },
29
+ "title": "Autorizar {{clientName}}"
30
+ },
31
+ "failed": {
32
+ "backToHome": "Volver a la página de inicio",
33
+ "subTitle": "Ha denegado el acceso de la aplicación a su cuenta de LobeChat",
34
+ "title": "Autorización denegada"
35
+ },
36
+ "success": {
37
+ "subTitle": "Ha autorizado con éxito a la aplicación para acceder a su cuenta de LobeChat, puede cerrar esta página",
38
+ "title": "Autorización exitosa"
39
+ }
40
+ }
@@ -1109,6 +1109,18 @@
1109
1109
  "grok-2-vision-1212": {
1110
1110
  "description": "این مدل در دقت، پیروی از دستورات و توانایی چند زبانه بهبود یافته است."
1111
1111
  },
1112
+ "grok-3-beta": {
1113
+ "description": "مدل پرچمدار، متخصص در استخراج داده، برنامه‌نویسی و خلاصه‌سازی متن برای کاربردهای سازمانی، با دانش عمیق در زمینه‌های مالی، پزشکی، حقوقی و علمی."
1114
+ },
1115
+ "grok-3-fast-beta": {
1116
+ "description": "مدل پرچمدار، متخصص در استخراج داده، برنامه‌نویسی و خلاصه‌سازی متن برای کاربردهای سازمانی، با دانش عمیق در زمینه‌های مالی، پزشکی، حقوقی و علمی."
1117
+ },
1118
+ "grok-3-mini-beta": {
1119
+ "description": "مدل سبک‌وزن، قبل از گفتگو فکر می‌کند. سریع و هوشمند است و برای وظایف منطقی که به دانش عمیق حوزه نیاز ندارند مناسب است و می‌تواند مسیر تفکر اولیه را به دست آورد."
1120
+ },
1121
+ "grok-3-mini-fast-beta": {
1122
+ "description": "مدل سبک‌وزن، قبل از گفتگو فکر می‌کند. سریع و هوشمند است و برای وظایف منطقی که به دانش عمیق حوزه نیاز ندارند مناسب است و می‌تواند مسیر تفکر اولیه را به دست آورد."
1123
+ },
1112
1124
  "grok-beta": {
1113
1125
  "description": "عملکردی معادل Grok 2 دارد، اما با کارایی، سرعت و قابلیت‌های بالاتر."
1114
1126
  },
@@ -0,0 +1,40 @@
1
+ {
2
+ "consent": {
3
+ "buttons": {
4
+ "accept": "اجازه",
5
+ "deny": "رد"
6
+ },
7
+ "description": "برنامه {{clientName}} درخواست مجوز حساب شما را دارد",
8
+ "error": {
9
+ "sessionInvalid": {
10
+ "message": "جلسه مجوز منقضی یا نامعتبر است، لطفاً فرآیند مجوز را دوباره آغاز کنید.",
11
+ "title": "جلسه مجوز نامعتبر"
12
+ },
13
+ "title": "خطا رخ داده است",
14
+ "unsupportedInteraction": {
15
+ "message": "نوع تعامل پشتیبانی نمی‌شود: {promptName}",
16
+ "title": "نوع تعامل پشتیبانی نمی‌شود"
17
+ }
18
+ },
19
+ "permissionsTitle": "درخواست مجوزهای زیر:",
20
+ "redirectUri": "پس از موفقیت در مجوز، به آدرس زیر هدایت می‌شوید",
21
+ "scope": {
22
+ "email": "دسترسی به آدرس ایمیل شما",
23
+ "offline_access": "اجازه دسترسی به داده‌های شما توسط کلاینت",
24
+ "openid": "احراز هویت با حساب LobeChat شما",
25
+ "profile": "دسترسی به اطلاعات پروفایل شما (نام، تصویر پروفایل و غیره)",
26
+ "sync-read": "خواندن داده‌های همگام‌سازی شده شما",
27
+ "sync-write": "نوشتن و به‌روزرسانی داده‌های همگام‌سازی شده شما"
28
+ },
29
+ "title": "مجوز {{clientName}}"
30
+ },
31
+ "failed": {
32
+ "backToHome": "بازگشت به صفحه اصلی",
33
+ "subTitle": "شما دسترسی برنامه به حساب LobeChat خود را رد کرده‌اید",
34
+ "title": "دسترسی رد شد"
35
+ },
36
+ "success": {
37
+ "subTitle": "شما با موفقیت به برنامه دسترسی به حساب LobeChat خود را داده‌اید، می‌توانید این صفحه را ببندید",
38
+ "title": "دسترسی موفقیت‌آمیز"
39
+ }
40
+ }
@@ -1109,6 +1109,18 @@
1109
1109
  "grok-2-vision-1212": {
1110
1110
  "description": "Ce modèle a été amélioré en termes de précision, de respect des instructions et de capacités multilingues."
1111
1111
  },
1112
+ "grok-3-beta": {
1113
+ "description": "Modèle phare, spécialisé dans l'extraction de données, la programmation et le résumé de texte pour des applications d'entreprise, avec une connaissance approfondie des domaines financier, médical, juridique et scientifique."
1114
+ },
1115
+ "grok-3-fast-beta": {
1116
+ "description": "Modèle phare, spécialisé dans l'extraction de données, la programmation et le résumé de texte pour des applications d'entreprise, avec une connaissance approfondie des domaines financier, médical, juridique et scientifique."
1117
+ },
1118
+ "grok-3-mini-beta": {
1119
+ "description": "Modèle léger, qui réfléchit avant de répondre. Rapide et intelligent, il est adapté aux tâches logiques ne nécessitant pas de connaissances approfondies dans un domaine, tout en permettant de capturer les pensées brutes."
1120
+ },
1121
+ "grok-3-mini-fast-beta": {
1122
+ "description": "Modèle léger, qui réfléchit avant de répondre. Rapide et intelligent, il est adapté aux tâches logiques ne nécessitant pas de connaissances approfondies dans un domaine, tout en permettant de capturer les pensées brutes."
1123
+ },
1112
1124
  "grok-beta": {
1113
1125
  "description": "Offre des performances comparables à Grok 2, mais avec une efficacité, une vitesse et des fonctionnalités supérieures."
1114
1126
  },
@@ -0,0 +1,40 @@
1
+ {
2
+ "consent": {
3
+ "buttons": {
4
+ "accept": "Autoriser",
5
+ "deny": "Refuser"
6
+ },
7
+ "description": "L'application {{clientName}} demande l'autorisation de votre compte",
8
+ "error": {
9
+ "sessionInvalid": {
10
+ "message": "La session d'autorisation a expiré ou est invalide, veuillez relancer le processus d'autorisation.",
11
+ "title": "Session d'autorisation invalide"
12
+ },
13
+ "title": "Une erreur s'est produite",
14
+ "unsupportedInteraction": {
15
+ "message": "Type d'interaction non pris en charge : {promptName}",
16
+ "title": "Type d'interaction non pris en charge"
17
+ }
18
+ },
19
+ "permissionsTitle": "Demander les autorisations suivantes :",
20
+ "redirectUri": "Vous serez redirigé vers après une autorisation réussie",
21
+ "scope": {
22
+ "email": "Accéder à votre adresse e-mail",
23
+ "offline_access": "Autoriser le client à accéder à vos données",
24
+ "openid": "S'authentifier avec votre compte LobeChat",
25
+ "profile": "Accéder à vos informations de profil (nom, photo, etc.)",
26
+ "sync-read": "Lire vos données synchronisées",
27
+ "sync-write": "Écrire et mettre à jour vos données synchronisées"
28
+ },
29
+ "title": "Autoriser {{clientName}}"
30
+ },
31
+ "failed": {
32
+ "backToHome": "Retour à l'accueil",
33
+ "subTitle": "Vous avez refusé d'autoriser l'application à accéder à votre compte LobeChat",
34
+ "title": "Autorisation refusée"
35
+ },
36
+ "success": {
37
+ "subTitle": "Vous avez réussi à autoriser l'application à accéder à votre compte LobeChat, vous pouvez fermer cette page",
38
+ "title": "Autorisation réussie"
39
+ }
40
+ }