@lobehub/lobehub 2.0.0-next.15 → 2.0.0-next.16

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 (99) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/changelog/v1.json +9 -0
  3. package/docs/self-hosting/advanced/feature-flags.mdx +0 -1
  4. package/docs/self-hosting/advanced/feature-flags.zh-CN.mdx +0 -1
  5. package/package.json +1 -1
  6. package/packages/types/src/serverConfig.ts +2 -6
  7. package/src/app/[variants]/(auth)/signup/[[...signup]]/page.tsx +1 -8
  8. package/src/app/[variants]/(main)/(mobile)/me/(home)/features/UserBanner.tsx +3 -6
  9. package/src/app/[variants]/(main)/labs/components/LabCard.tsx +3 -1
  10. package/src/app/[variants]/(main)/settings/provider/detail/azure/index.tsx +5 -7
  11. package/src/components/InvalidAPIKey/APIKeyForm/Bedrock.tsx +8 -13
  12. package/src/config/featureFlags/schema.test.ts +0 -2
  13. package/src/config/featureFlags/schema.ts +0 -6
  14. package/src/config/modelProviders/ai21.ts +1 -16
  15. package/src/config/modelProviders/ai302.ts +1 -128
  16. package/src/config/modelProviders/ai360.ts +1 -32
  17. package/src/config/modelProviders/anthropic.ts +1 -71
  18. package/src/config/modelProviders/azure.ts +1 -51
  19. package/src/config/modelProviders/baichuan.ts +1 -57
  20. package/src/config/modelProviders/bedrock.ts +1 -276
  21. package/src/config/modelProviders/cloudflare.ts +1 -64
  22. package/src/config/modelProviders/deepseek.ts +1 -19
  23. package/src/config/modelProviders/fireworksai.ts +1 -174
  24. package/src/config/modelProviders/giteeai.ts +1 -135
  25. package/src/config/modelProviders/github.ts +1 -254
  26. package/src/config/modelProviders/google.ts +1 -130
  27. package/src/config/modelProviders/groq.ts +1 -119
  28. package/src/config/modelProviders/higress.ts +1 -1713
  29. package/src/config/modelProviders/huggingface.ts +1 -54
  30. package/src/config/modelProviders/hunyuan.ts +1 -83
  31. package/src/config/modelProviders/infiniai.ts +1 -74
  32. package/src/config/modelProviders/internlm.ts +1 -20
  33. package/src/config/modelProviders/mistral.ts +1 -95
  34. package/src/config/modelProviders/modelscope.ts +1 -27
  35. package/src/config/modelProviders/moonshot.ts +1 -29
  36. package/src/config/modelProviders/novita.ts +1 -105
  37. package/src/config/modelProviders/ollama.ts +1 -325
  38. package/src/config/modelProviders/openai.ts +1 -242
  39. package/src/config/modelProviders/openrouter.ts +1 -240
  40. package/src/config/modelProviders/perplexity.ts +1 -45
  41. package/src/config/modelProviders/ppio.ts +1 -152
  42. package/src/config/modelProviders/qiniu.ts +1 -18
  43. package/src/config/modelProviders/qwen.ts +1 -245
  44. package/src/config/modelProviders/search1api.ts +1 -34
  45. package/src/config/modelProviders/sensenova.ts +1 -69
  46. package/src/config/modelProviders/siliconcloud.ts +1 -417
  47. package/src/config/modelProviders/spark.ts +1 -59
  48. package/src/config/modelProviders/stepfun.ts +1 -98
  49. package/src/config/modelProviders/taichu.ts +1 -18
  50. package/src/config/modelProviders/togetherai.ts +1 -274
  51. package/src/config/modelProviders/upstage.ts +1 -28
  52. package/src/config/modelProviders/wenxin.ts +1 -140
  53. package/src/config/modelProviders/xai.ts +1 -38
  54. package/src/config/modelProviders/zeroone.ts +1 -81
  55. package/src/config/modelProviders/zhipu.ts +1 -108
  56. package/src/helpers/isCanUseFC.ts +0 -8
  57. package/src/hooks/useEnabledChatModels.ts +0 -8
  58. package/src/hooks/useModelContextWindowTokens.ts +0 -8
  59. package/src/hooks/useModelHasContextWindowToken.ts +1 -10
  60. package/src/hooks/useModelSupportFiles.ts +1 -11
  61. package/src/hooks/useModelSupportReasoning.ts +1 -11
  62. package/src/hooks/useModelSupportToolUse.ts +1 -11
  63. package/src/hooks/useModelSupportVision.ts +1 -11
  64. package/src/layout/AuthProvider/Clerk/index.tsx +2 -16
  65. package/src/server/globalConfig/index.ts +0 -23
  66. package/src/server/routers/lambda/config/__snapshots__/index.test.ts.snap +175 -12
  67. package/src/server/routers/lambda/config/index.test.ts +36 -28
  68. package/src/services/chat/chat.test.ts +12 -0
  69. package/src/services/chat/helper.ts +7 -31
  70. package/src/services/models.ts +2 -11
  71. package/src/store/chat/slices/aiChat/actions/generateAIChat.ts +41 -14
  72. package/src/store/global/store.ts +1 -7
  73. package/src/store/user/initialState.ts +1 -7
  74. package/src/store/user/selectors.ts +1 -5
  75. package/src/store/user/slices/common/action.ts +5 -4
  76. package/src/store/user/slices/settings/selectors/index.ts +1 -0
  77. package/src/store/user/slices/settings/selectors/keyVaults.ts +21 -0
  78. package/src/store/user/store.ts +0 -3
  79. package/src/tools/web-browsing/Render/Search/ConfigForm/Form.tsx +1 -1
  80. package/packages/utils/src/_deprecated/__snapshots__/parseModels.test.ts.snap +0 -104
  81. package/packages/utils/src/_deprecated/parseModels.test.ts +0 -287
  82. package/packages/utils/src/_deprecated/parseModels.ts +0 -165
  83. package/src/hooks/_header.ts +0 -23
  84. package/src/server/globalConfig/_deprecated.test.ts +0 -92
  85. package/src/server/globalConfig/_deprecated.ts +0 -41
  86. package/src/store/global/actions/clientDb.ts +0 -67
  87. package/src/store/user/slices/modelList/__snapshots__/action.test.ts.snap +0 -12
  88. package/src/store/user/slices/modelList/action.test.ts +0 -359
  89. package/src/store/user/slices/modelList/action.ts +0 -223
  90. package/src/store/user/slices/modelList/initialState.ts +0 -15
  91. package/src/store/user/slices/modelList/reducers/customModelCard.test.ts +0 -204
  92. package/src/store/user/slices/modelList/reducers/customModelCard.ts +0 -64
  93. package/src/store/user/slices/modelList/selectors/index.ts +0 -3
  94. package/src/store/user/slices/modelList/selectors/keyVaults.test.ts +0 -201
  95. package/src/store/user/slices/modelList/selectors/keyVaults.ts +0 -50
  96. package/src/store/user/slices/modelList/selectors/modelConfig.test.ts +0 -219
  97. package/src/store/user/slices/modelList/selectors/modelConfig.ts +0 -95
  98. package/src/store/user/slices/modelList/selectors/modelProvider.test.ts +0 -138
  99. package/src/store/user/slices/modelList/selectors/modelProvider.ts +0 -170
package/CHANGELOG.md CHANGED
@@ -2,6 +2,31 @@
2
2
 
3
3
  # Changelog
4
4
 
5
+ ## [Version 2.0.0-next.16](https://github.com/lobehub/lobe-chat/compare/v2.0.0-next.15...v2.0.0-next.16)
6
+
7
+ <sup>Released on **2025-11-03**</sup>
8
+
9
+ #### ♻ Code Refactoring
10
+
11
+ - **misc**: Remove deperated code.
12
+
13
+ <br/>
14
+
15
+ <details>
16
+ <summary><kbd>Improvements and Fixes</kbd></summary>
17
+
18
+ #### Code refactoring
19
+
20
+ - **misc**: Remove deperated code, closes [#10001](https://github.com/lobehub/lobe-chat/issues/10001) ([4ee4590](https://github.com/lobehub/lobe-chat/commit/4ee4590))
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
+
5
30
  ## [Version 2.0.0-next.15](https://github.com/lobehub/lobe-chat/compare/v2.0.0-next.14...v2.0.0-next.15)
6
31
 
7
32
  <sup>Released on **2025-11-03**</sup>
package/changelog/v1.json CHANGED
@@ -1,4 +1,13 @@
1
1
  [
2
+ {
3
+ "children": {
4
+ "improvements": [
5
+ "Remove deperated code."
6
+ ]
7
+ },
8
+ "date": "2025-11-03",
9
+ "version": "2.0.0-next.16"
10
+ },
2
11
  {
3
12
  "children": {},
4
13
  "date": "2025-11-03",
@@ -49,7 +49,6 @@ You can achieve various feature combinations using the above configuration synta
49
49
  | `token_counter` | Reserved for token counter display. | Enabled |
50
50
  | `welcome_suggest` | Displays welcome suggestions. | Enabled |
51
51
  | `changelog` | Controls changelog modal/page display. | Enabled |
52
- | `clerk_sign_up` | Enables the Clerk SignUp functionality. | Enabled |
53
52
  | `market` | Enables the assistant market functionality. | Enabled |
54
53
  | `knowledge_base` | Enables the knowledge base functionality. | Enabled |
55
54
  | `rag_eval` | Controls RAG evaluation feature (/repos/\[id]/evals). | Disabled |
@@ -46,7 +46,6 @@ tags:
46
46
  | `token_counter` | 保留用于令牌计数器显示。 | 开启 |
47
47
  | `welcome_suggest` | 显示欢迎建议。 | 开启 |
48
48
  | `changelog` | 控制更新日志弹窗 / 页面的显示。 | 开启 |
49
- | `clerk_sign_up` | 启用 Clerk 注册功能。 | 开启 |
50
49
  | `market` | 启用助手市场功能。 | 开启 |
51
50
  | `knowledge_base` | 启用知识库功能。 | 开启 |
52
51
  | `rag_eval` | 控制 RAG 评估功能 (/repos/\[id]/evals)。 | 关闭 |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lobehub/lobehub",
3
- "version": "2.0.0-next.15",
3
+ "version": "2.0.0-next.16",
4
4
  "description": "LobeHub - an open-source,comprehensive AI Agent 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",
@@ -15,9 +15,9 @@ export interface ServerModelProviderConfig {
15
15
  enabledModels?: string[];
16
16
  fetchOnClient?: boolean;
17
17
  /**
18
- * the model cards defined in server
18
+ * the model lists defined in server
19
19
  */
20
- serverModelCards?: ChatModelCard[];
20
+ serverModelLists?: ChatModelCard[];
21
21
  }
22
22
 
23
23
  export type ServerLanguageModel = Partial<Record<GlobalLLMProviderKey, ServerModelProviderConfig>>;
@@ -32,10 +32,6 @@ export interface GlobalServerConfig {
32
32
  */
33
33
  enabledOAuthSSO?: boolean;
34
34
  image?: PartialDeep<UserImageConfig>;
35
- /**
36
- * @deprecated
37
- */
38
- languageModel?: ServerLanguageModel;
39
35
  oAuthSSOProviders?: string[];
40
36
  systemAgent?: PartialDeep<UserSystemAgentConfig>;
41
37
  telemetry: {
@@ -1,7 +1,6 @@
1
1
  import { SignUp } from '@clerk/nextjs';
2
- import { notFound, redirect } from 'next/navigation';
2
+ import { notFound } from 'next/navigation';
3
3
 
4
- import { serverFeatureFlags } from '@/config/featureFlags';
5
4
  import { enableClerk } from '@/const/auth';
6
5
  import { metadataModule } from '@/server/metadata';
7
6
  import { translation } from '@/server/translation';
@@ -21,12 +20,6 @@ export const generateMetadata = async (props: DynamicLayoutProps) => {
21
20
  const Page = () => {
22
21
  if (!enableClerk) return notFound();
23
22
 
24
- const enableClerkSignUp = serverFeatureFlags().enableClerkSignUp;
25
-
26
- if (!enableClerkSignUp) {
27
- redirect('/login');
28
- }
29
-
30
23
  return <SignUp path="/signup" />;
31
24
  };
32
25
 
@@ -6,7 +6,6 @@ import { memo } from 'react';
6
6
  import { Flexbox } from 'react-layout-kit';
7
7
 
8
8
  import { enableAuth, enableNextAuth } from '@/const/auth';
9
- import { isDeprecatedEdition } from '@/const/version';
10
9
  import DataStatistics from '@/features/User/DataStatistics';
11
10
  import UserInfo from '@/features/User/UserInfo';
12
11
  import UserLoginOrSignup from '@/features/User/UserLoginOrSignup/Community';
@@ -25,11 +24,9 @@ const UserBanner = memo(() => {
25
24
  <Link href={'/profile'} style={{ color: 'inherit' }}>
26
25
  <UserInfo />
27
26
  </Link>
28
- {!isDeprecatedEdition && (
29
- <Link href={'/profile/stats'} style={{ color: 'inherit' }}>
30
- <DataStatistics paddingInline={12} />
31
- </Link>
32
- )}
27
+ <Link href={'/profile/stats'} style={{ color: 'inherit' }}>
28
+ <DataStatistics paddingInline={12} />
29
+ </Link>
33
30
  </>
34
31
  ) : (
35
32
  <UserLoginOrSignup
@@ -71,7 +71,9 @@ const LabCard = memo<PropsWithChildren<LabCardProps>>(
71
71
  <div className={styles.card}>
72
72
  <div className={styles.row}>
73
73
  <div className={styles.thumb}>
74
- {cover && <Image alt={title} fill src={cover} style={{ objectFit: 'cover' }} />}
74
+ {cover && (
75
+ <Image alt={title} fill src={cover} style={{ objectFit: 'cover' }} unoptimized />
76
+ )}
75
77
  </div>
76
78
  <Flexbox gap={6}>
77
79
  <div className={styles.title}>{title}</div>
@@ -7,9 +7,7 @@ import { useTranslation } from 'react-i18next';
7
7
 
8
8
  import { FormInput, FormPassword } from '@/components/FormInput';
9
9
  import { AzureProviderCard } from '@/config/modelProviders';
10
- import { aiProviderSelectors, useAiInfraStore } from '@/store/aiInfra';
11
- import { useUserStore } from '@/store/user';
12
- import { modelProviderSelectors } from '@/store/user/selectors';
10
+ import { aiModelSelectors, aiProviderSelectors, useAiInfraStore } from '@/store/aiInfra';
13
11
 
14
12
  import { KeyVaultsConfigKey, LLMProviderApiTokenKey, LLMProviderBaseUrlKey } from '../../const';
15
13
  import { SkeletonInput } from '../../features/ProviderConfig';
@@ -35,11 +33,11 @@ const useProviderCard = (): ProviderItem => {
35
33
  const { styles } = useStyles();
36
34
 
37
35
  // Get the first model card's deployment name as the check model
38
- const checkModel = useUserStore((s) => {
39
- const chatModelCards = modelProviderSelectors.getModelCardsById(providerKey)(s);
36
+ const checkModel = useAiInfraStore((s) => {
37
+ const modelList = aiModelSelectors.enabledAiProviderModelList(s);
40
38
 
41
- if (chatModelCards.length > 0) {
42
- return chatModelCards[0].deploymentName;
39
+ if (modelList.length > 0) {
40
+ return modelList[0].id;
43
41
  }
44
42
 
45
43
  return 'gpt-35-turbo';
@@ -7,21 +7,16 @@ import { memo, useState } from 'react';
7
7
  import { useTranslation } from 'react-i18next';
8
8
 
9
9
  import { FormAction } from '@/features/Conversation/Error/style';
10
- import { useUserStore } from '@/store/user';
11
- import { keyVaultsConfigSelectors } from '@/store/user/selectors';
10
+ import { aiProviderSelectors, useAiInfraStore } from '@/store/aiInfra';
12
11
 
13
12
  const BedrockForm = memo<{ description: string }>(({ description }) => {
14
13
  const { t } = useTranslation('modelProvider');
15
14
  const [showRegion, setShow] = useState(false);
16
15
  const [showSessionToken, setShowSessionToken] = useState(false);
17
16
 
18
- const [accessKeyId, secretAccessKey, sessionToken, region, setConfig] = useUserStore((s) => [
19
- keyVaultsConfigSelectors.bedrockConfig(s).accessKeyId,
20
- keyVaultsConfigSelectors.bedrockConfig(s).secretAccessKey,
21
- keyVaultsConfigSelectors.bedrockConfig(s).sessionToken,
22
- keyVaultsConfigSelectors.bedrockConfig(s).region,
23
- s.updateKeyVaultConfig,
24
- ]);
17
+ const config = useAiInfraStore(aiProviderSelectors.providerKeyVaults(ModelProvider.Bedrock));
18
+ const setConfig = useAiInfraStore((s) => s.updateAiProviderConfig);
19
+ const { accessKeyId, secretAccessKey, sessionToken, region } = config || {};
25
20
 
26
21
  const theme = useTheme();
27
22
  return (
@@ -33,7 +28,7 @@ const BedrockForm = memo<{ description: string }>(({ description }) => {
33
28
  <InputPassword
34
29
  autoComplete={'new-password'}
35
30
  onChange={(e) => {
36
- setConfig(ModelProvider.Bedrock, { accessKeyId: e.target.value });
31
+ setConfig(ModelProvider.Bedrock, { keyVaults: { accessKeyId: e.target.value } });
37
32
  }}
38
33
  placeholder={'Aws Access Key Id'}
39
34
  value={accessKeyId}
@@ -42,7 +37,7 @@ const BedrockForm = memo<{ description: string }>(({ description }) => {
42
37
  <InputPassword
43
38
  autoComplete={'new-password'}
44
39
  onChange={(e) => {
45
- setConfig(ModelProvider.Bedrock, { secretAccessKey: e.target.value });
40
+ setConfig(ModelProvider.Bedrock, { keyVaults: { secretAccessKey: e.target.value } });
46
41
  }}
47
42
  placeholder={'Aws Secret Access Key'}
48
43
  value={secretAccessKey}
@@ -52,7 +47,7 @@ const BedrockForm = memo<{ description: string }>(({ description }) => {
52
47
  <InputPassword
53
48
  autoComplete={'new-password'}
54
49
  onChange={(e) => {
55
- setConfig(ModelProvider.Bedrock, { sessionToken: e.target.value });
50
+ setConfig(ModelProvider.Bedrock, { keyVaults: { sessionToken: e.target.value } });
56
51
  }}
57
52
  placeholder={'Aws Session Token'}
58
53
  value={sessionToken}
@@ -73,7 +68,7 @@ const BedrockForm = memo<{ description: string }>(({ description }) => {
73
68
  {showRegion ? (
74
69
  <Select
75
70
  onChange={(region) => {
76
- setConfig('bedrock', { region });
71
+ setConfig('bedrock', { keyVaults: { region } });
77
72
  }}
78
73
  options={['us-east-1', 'us-west-2', 'ap-southeast-1', 'eu-central-1'].map((i) => ({
79
74
  label: i,
@@ -111,7 +111,6 @@ describe('mapFeatureFlagsEnvToState', () => {
111
111
  plugins: true,
112
112
  knowledge_base: false,
113
113
  rag_eval: true,
114
- clerk_sign_up: false,
115
114
  market: true,
116
115
  speech_to_text: true,
117
116
  changelog: false,
@@ -140,7 +139,6 @@ describe('mapFeatureFlagsEnvToState', () => {
140
139
  showWelcomeSuggest: true,
141
140
  enableKnowledgeBase: false,
142
141
  enableRAGEval: true,
143
- enableClerkSignUp: false,
144
142
  showMarket: true,
145
143
  enableSTT: true,
146
144
  showPinList: true,
@@ -30,8 +30,6 @@ export const FeatureFlagsSchema = z.object({
30
30
  welcome_suggest: FeatureFlagValue.optional(),
31
31
  changelog: FeatureFlagValue.optional(),
32
32
 
33
- clerk_sign_up: FeatureFlagValue.optional(),
34
-
35
33
  market: FeatureFlagValue.optional(),
36
34
  knowledge_base: FeatureFlagValue.optional(),
37
35
 
@@ -93,8 +91,6 @@ export const DEFAULT_FEATURE_FLAGS: IFeatureFlags = {
93
91
  knowledge_base: true,
94
92
  rag_eval: false,
95
93
 
96
- clerk_sign_up: true,
97
-
98
94
  cloud_promotion: false,
99
95
 
100
96
  market: true,
@@ -133,8 +129,6 @@ export const mapFeatureFlagsEnvToState = (config: IFeatureFlags, userId?: string
133
129
  enableCheckUpdates: evaluateFeatureFlag(config.check_updates, userId),
134
130
  showWelcomeSuggest: evaluateFeatureFlag(config.welcome_suggest, userId),
135
131
 
136
- enableClerkSignUp: evaluateFeatureFlag(config.clerk_sign_up, userId),
137
-
138
132
  enableKnowledgeBase: evaluateFeatureFlag(config.knowledge_base, userId),
139
133
  enableRAGEval: evaluateFeatureFlag(config.rag_eval, userId),
140
134
 
@@ -2,22 +2,7 @@ import { ModelProviderCard } from '@/types/llm';
2
2
 
3
3
  // ref https://docs.ai21.com/reference/jamba-15-api-ref
4
4
  const Ai21: ModelProviderCard = {
5
- chatModels: [
6
- {
7
- contextWindowTokens: 256_000,
8
- displayName: 'Jamba 1.5 Mini',
9
- enabled: true,
10
- functionCall: true,
11
- id: 'jamba-1.5-mini',
12
- },
13
- {
14
- contextWindowTokens: 256_000,
15
- displayName: 'Jamba 1.5 Large',
16
- enabled: true,
17
- functionCall: true,
18
- id: 'jamba-1.5-large',
19
- },
20
- ],
5
+ chatModels: [],
21
6
  checkModel: 'jamba-mini',
22
7
  description: 'AI21 Labs 为企业构建基础模型和人工智能系统,加速生成性人工智能在生产中的应用。',
23
8
  id: 'ai21',
@@ -3,134 +3,7 @@ import { ModelProviderCard } from '@/types/llm';
3
3
  // ref: https://302.ai/pricing/
4
4
  const Ai302: ModelProviderCard = {
5
5
  apiKeyUrl: 'https://lobe.li/Oizw5sN',
6
- chatModels: [
7
- {
8
- contextWindowTokens: 32_000,
9
- displayName: 'deepseek-chat',
10
- enabled: true,
11
- id: 'deepseek-chat',
12
- },
13
- {
14
- contextWindowTokens: 128_000,
15
- displayName: 'gpt-4o',
16
- enabled: true,
17
- id: 'gpt-4o',
18
- },
19
- {
20
- contextWindowTokens: 128_000,
21
- displayName: 'chatgpt-4o-latest',
22
- enabled: true,
23
- id: 'chatgpt-4o-latest',
24
- },
25
- {
26
- contextWindowTokens: 128_000,
27
- displayName: 'llama3.3-70b',
28
- enabled: true,
29
- id: 'llama3.3-70b',
30
- },
31
- {
32
- contextWindowTokens: 64_000,
33
- displayName: 'deepseek-reasoner',
34
- enabled: true,
35
- id: 'deepseek-reasoner',
36
- },
37
- {
38
- contextWindowTokens: 1_000_000,
39
- displayName: 'gemini-2.0-flash',
40
- enabled: true,
41
- id: 'gemini-2.0-flash',
42
- },
43
- {
44
- contextWindowTokens: 200_000,
45
- displayName: 'claude-3-7-sonnet-20250219',
46
- enabled: true,
47
- id: 'claude-3-7-sonnet-20250219',
48
- },
49
- {
50
- contextWindowTokens: 200_000,
51
- displayName: 'claude-3-7-sonnet-latest',
52
- enabled: true,
53
- id: 'claude-3-7-sonnet-latest',
54
- },
55
- {
56
- contextWindowTokens: 131_072,
57
- displayName: 'grok-3-beta',
58
- enabled: true,
59
- id: 'grok-3-beta',
60
- },
61
- {
62
- contextWindowTokens: 131_072,
63
- displayName: 'grok-3-mini-beta',
64
- enabled: true,
65
- id: 'grok-3-mini-beta',
66
- },
67
- {
68
- contextWindowTokens: 1_000_000,
69
- displayName: 'gpt-4.1',
70
- enabled: true,
71
- id: 'gpt-4.1',
72
- },
73
- {
74
- contextWindowTokens: 200_000,
75
- displayName: 'o3',
76
- enabled: true,
77
- id: 'o3',
78
- },
79
- {
80
- contextWindowTokens: 200_000,
81
- displayName: 'o4-mini',
82
- enabled: true,
83
- id: 'o4-mini',
84
- },
85
- {
86
- contextWindowTokens: 128_000,
87
- displayName: 'qwen3-235b-a22b',
88
- enabled: true,
89
- id: 'qwen3-235b-a22b',
90
- },
91
- {
92
- contextWindowTokens: 128_000,
93
- displayName: 'qwen3-32b',
94
- enabled: true,
95
- id: 'qwen3-32b',
96
- },
97
- {
98
- contextWindowTokens: 1_000_000,
99
- displayName: 'gemini-2.5-pro-preview-05-06',
100
- enabled: true,
101
- id: 'gemini-2.5-pro-preview-05-06',
102
- },
103
- {
104
- contextWindowTokens: 128_000,
105
- displayName: 'llama-4-maverick',
106
- enabled: true,
107
- id: 'llama-4-maverick',
108
- },
109
- {
110
- contextWindowTokens: 1_000_000,
111
- displayName: 'gemini-2.5-flash',
112
- enabled: true,
113
- id: 'gemini-2.5-flash',
114
- },
115
- {
116
- contextWindowTokens: 200_000,
117
- displayName: 'claude-sonnet-4-20250514',
118
- enabled: true,
119
- id: 'claude-sonnet-4-20250514',
120
- },
121
- {
122
- contextWindowTokens: 200_000,
123
- displayName: 'claude-opus-4-20250514',
124
- enabled: true,
125
- id: 'claude-opus-4-20250514',
126
- },
127
- {
128
- contextWindowTokens: 1_000_000,
129
- displayName: 'gemini-2.5-pro',
130
- enabled: true,
131
- id: 'gemini-2.5-pro',
132
- },
133
- ],
6
+ chatModels: [],
134
7
  checkModel: 'gpt-4o',
135
8
  description: '302.AI 是一个按需付费的 AI 应用平台,提供市面上最全的 AI API 和 AI 在线应用',
136
9
  id: 'ai302',
@@ -2,38 +2,7 @@ import { ModelProviderCard } from '@/types/llm';
2
2
 
3
3
  // ref: https://ai.360.cn/platform/docs/overview
4
4
  const Ai360: ModelProviderCard = {
5
- chatModels: [
6
- {
7
- contextWindowTokens: 8000,
8
- description:
9
- '360gpt2-o1 使用树搜索构建思维链,并引入了反思机制,使用强化学习训练,模型具备自我反思与纠错的能力。',
10
- displayName: '360GPT2 o1',
11
- enabled: true,
12
- id: '360gpt2-o1',
13
- },
14
- {
15
- contextWindowTokens: 8000,
16
- description: '360智脑系列效果最好的主力千亿级大模型,广泛适用于各领域复杂任务场景。',
17
- displayName: '360GPT2 Pro',
18
- enabled: true,
19
- id: '360gpt2-pro',
20
- },
21
- {
22
- contextWindowTokens: 8000,
23
- description: '360智脑系列效果最好的主力千亿级大模型,广泛适用于各领域复杂任务场景。',
24
- displayName: '360GPT Pro',
25
- enabled: true,
26
- functionCall: true,
27
- id: '360gpt-pro',
28
- },
29
- {
30
- contextWindowTokens: 7000,
31
- description: '兼顾性能和效果的百亿级大模型,适合对性能/成本要求较高 的场景。',
32
- displayName: '360GPT Turbo',
33
- enabled: true,
34
- id: '360gpt-turbo',
35
- },
36
- ],
5
+ chatModels: [],
37
6
  checkModel: '360gpt-turbo',
38
7
  description:
39
8
  '360 AI 是 360 公司推出的 AI 模型和服务平台,提供多种先进的自然语言处理模型,包括 360GPT2 Pro、360GPT Pro、360GPT Turbo 和 360GPT Turbo Responsibility 8K。这些模型结合了大规模参数和多模态能力,广泛应用于文本生成、语义理解、对话系统与代码生成等领域。通过灵活的定价策略,360 AI 满足多样化用户需求,支持开发者集成,推动智能化应用的革新和发展。',
@@ -1,77 +1,7 @@
1
1
  import { ModelProviderCard } from '@/types/llm';
2
2
 
3
3
  const Anthropic: ModelProviderCard = {
4
- chatModels: [
5
- {
6
- contextWindowTokens: 200_000,
7
- description:
8
- 'Claude 4 Opus 是 Anthropic 最强大的下一代模型,具有卓越的推理能力和创造力,适用于最复杂的任务和高级分析。',
9
- displayName: 'Claude 4 Opus',
10
- enabled: true,
11
- functionCall: true,
12
- id: 'claude-opus-4-20250514',
13
- maxOutput: 32_000,
14
- releasedAt: '2025-05-14',
15
- vision: true,
16
- },
17
- {
18
- contextWindowTokens: 200_000,
19
- description:
20
- 'Claude 4 Sonnet 提供了优异的性能和速度平衡,是新一代模型中的理想选择,适用于广泛的企业和创意任务。',
21
- displayName: 'Claude 4 Sonnet',
22
- enabled: true,
23
- functionCall: true,
24
- id: 'claude-sonnet-4-20250514',
25
- maxOutput: 64_000,
26
- releasedAt: '2025-05-14',
27
- vision: true,
28
- },
29
- {
30
- contextWindowTokens: 200_000,
31
- description:
32
- 'Claude 3.7 sonnet 是 Anthropic 最快的下一代模型。与 Claude 3 Haiku 相比,Claude 3.7 Sonnet 在各项技能上都有所提升,并在许多智力基准测试中超越了上一代最大的模型 Claude 3 Opus。',
33
- displayName: 'Claude 3.7 Sonnet',
34
- enabled: true,
35
- functionCall: true,
36
- id: 'claude-3-7-sonnet-20250219',
37
- maxOutput: 64_000,
38
- releasedAt: '2025-02-24',
39
- },
40
- {
41
- contextWindowTokens: 200_000,
42
- description:
43
- 'Claude 3.5 Haiku 是 Anthropic 最快的下一代模型。与 Claude 3 Haiku 相比,Claude 3.5 Haiku 在各项技能上都有所提升,并在许多智力基准测试中超越了上一代最大的模型 Claude 3 Opus。',
44
- displayName: 'Claude 3.5 Haiku',
45
- enabled: true,
46
- functionCall: true,
47
- id: 'claude-3-5-haiku-20241022',
48
- maxOutput: 8192,
49
- releasedAt: '2024-11-05',
50
- },
51
- {
52
- contextWindowTokens: 200_000,
53
- description:
54
- 'Claude 3 Haiku 是 Anthropic 的最快且最紧凑的模型,旨在实现近乎即时的响应。它具有快速且准确的定向性能。',
55
- displayName: 'Claude 3 Haiku',
56
- functionCall: true,
57
- id: 'claude-3-haiku-20240307',
58
- maxOutput: 4096,
59
- releasedAt: '2024-03-07',
60
- vision: true,
61
- },
62
- {
63
- contextWindowTokens: 200_000,
64
- description:
65
- 'Claude 3 Opus 是 Anthropic 用于处理高度复杂任务的最强大模型。它在性能、智能、流畅性和理解力方面表现卓越。',
66
- displayName: 'Claude 3 Opus',
67
- enabled: true,
68
- functionCall: true,
69
- id: 'claude-3-opus-20240229',
70
- maxOutput: 4096,
71
- releasedAt: '2024-02-29',
72
- vision: true,
73
- },
74
- ],
4
+ chatModels: [],
75
5
  checkModel: 'claude-3-haiku-20240307',
76
6
  description:
77
7
  'Anthropic 是一家专注于人工智能研究和开发的公司,提供了一系列先进的语言模型,如 Claude 3.5 Sonnet、Claude 3 Sonnet、Claude 3 Opus 和 Claude 3 Haiku。这些模型在智能、速度和成本之间取得了理想的平衡,适用于从企业级工作负载到快速响应的各种应用场景。Claude 3.5 Sonnet 作为其最新模型,在多项评估中表现优异,同时保持了较高的性价比。',
@@ -2,57 +2,7 @@ import { ModelProviderCard } from '@/types/llm';
2
2
 
3
3
  // ref: https://learn.microsoft.com/azure/ai-services/openai/concepts/models
4
4
  const Azure: ModelProviderCard = {
5
- chatModels: [
6
- {
7
- contextWindowTokens: 16_385,
8
- deploymentName: 'gpt-35-turbo',
9
- description:
10
- 'GPT 3.5 Turbo,OpenAI提供的高效模型,适用于聊天和文本生成任务,支持并行函数调用。',
11
- displayName: 'GPT 3.5 Turbo',
12
- enabled: true,
13
- functionCall: true,
14
- id: 'gpt-35-turbo',
15
- maxOutput: 4096,
16
- },
17
- {
18
- contextWindowTokens: 16_384,
19
- deploymentName: 'gpt-35-turbo-16k',
20
- description: 'GPT 3.5 Turbo 16k,高容量文本生成模型,适合复杂任务。',
21
- displayName: 'GPT 3.5 Turbo',
22
- functionCall: true,
23
- id: 'gpt-35-turbo-16k',
24
- },
25
- {
26
- contextWindowTokens: 128_000,
27
- deploymentName: 'gpt-4-turbo',
28
- description: 'GPT 4 Turbo,多模态模型,提供杰出的语言理解和生成能力,同时支持图像输入。',
29
- displayName: 'GPT 4 Turbo',
30
- enabled: true,
31
- functionCall: true,
32
- id: 'gpt-4',
33
- vision: true,
34
- },
35
- {
36
- contextWindowTokens: 128_000,
37
- deploymentName: 'gpt-4o-mini',
38
- description: 'GPT-4o Mini,小型高效模型,具备与GPT-4o相似的卓越性能。',
39
- displayName: 'GPT 4o Mini',
40
- enabled: true,
41
- functionCall: true,
42
- id: 'gpt-4o-mini',
43
- vision: true,
44
- },
45
- {
46
- contextWindowTokens: 128_000,
47
- deploymentName: 'gpt-4o',
48
- description: 'GPT-4o 是最新的多模态模型,结合高级文本和图像处理能力。',
49
- displayName: 'GPT 4o',
50
- enabled: true,
51
- functionCall: true,
52
- id: 'gpt-4o',
53
- vision: true,
54
- },
55
- ],
5
+ chatModels: [],
56
6
  defaultShowBrowserRequest: true,
57
7
  description:
58
8
  'Azure 提供多种先进的AI模型,包括GPT-3.5和最新的GPT-4系列,支持多种数据类型和复杂任务,致力于安全、可靠和可持续的AI解决方案。',