@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.
- package/CHANGELOG.md +25 -0
- package/changelog/v1.json +9 -0
- package/docs/self-hosting/advanced/feature-flags.mdx +0 -1
- package/docs/self-hosting/advanced/feature-flags.zh-CN.mdx +0 -1
- package/package.json +1 -1
- package/packages/types/src/serverConfig.ts +2 -6
- package/src/app/[variants]/(auth)/signup/[[...signup]]/page.tsx +1 -8
- package/src/app/[variants]/(main)/(mobile)/me/(home)/features/UserBanner.tsx +3 -6
- package/src/app/[variants]/(main)/labs/components/LabCard.tsx +3 -1
- package/src/app/[variants]/(main)/settings/provider/detail/azure/index.tsx +5 -7
- package/src/components/InvalidAPIKey/APIKeyForm/Bedrock.tsx +8 -13
- package/src/config/featureFlags/schema.test.ts +0 -2
- package/src/config/featureFlags/schema.ts +0 -6
- package/src/config/modelProviders/ai21.ts +1 -16
- package/src/config/modelProviders/ai302.ts +1 -128
- package/src/config/modelProviders/ai360.ts +1 -32
- package/src/config/modelProviders/anthropic.ts +1 -71
- package/src/config/modelProviders/azure.ts +1 -51
- package/src/config/modelProviders/baichuan.ts +1 -57
- package/src/config/modelProviders/bedrock.ts +1 -276
- package/src/config/modelProviders/cloudflare.ts +1 -64
- package/src/config/modelProviders/deepseek.ts +1 -19
- package/src/config/modelProviders/fireworksai.ts +1 -174
- package/src/config/modelProviders/giteeai.ts +1 -135
- package/src/config/modelProviders/github.ts +1 -254
- package/src/config/modelProviders/google.ts +1 -130
- package/src/config/modelProviders/groq.ts +1 -119
- package/src/config/modelProviders/higress.ts +1 -1713
- package/src/config/modelProviders/huggingface.ts +1 -54
- package/src/config/modelProviders/hunyuan.ts +1 -83
- package/src/config/modelProviders/infiniai.ts +1 -74
- package/src/config/modelProviders/internlm.ts +1 -20
- package/src/config/modelProviders/mistral.ts +1 -95
- package/src/config/modelProviders/modelscope.ts +1 -27
- package/src/config/modelProviders/moonshot.ts +1 -29
- package/src/config/modelProviders/novita.ts +1 -105
- package/src/config/modelProviders/ollama.ts +1 -325
- package/src/config/modelProviders/openai.ts +1 -242
- package/src/config/modelProviders/openrouter.ts +1 -240
- package/src/config/modelProviders/perplexity.ts +1 -45
- package/src/config/modelProviders/ppio.ts +1 -152
- package/src/config/modelProviders/qiniu.ts +1 -18
- package/src/config/modelProviders/qwen.ts +1 -245
- package/src/config/modelProviders/search1api.ts +1 -34
- package/src/config/modelProviders/sensenova.ts +1 -69
- package/src/config/modelProviders/siliconcloud.ts +1 -417
- package/src/config/modelProviders/spark.ts +1 -59
- package/src/config/modelProviders/stepfun.ts +1 -98
- package/src/config/modelProviders/taichu.ts +1 -18
- package/src/config/modelProviders/togetherai.ts +1 -274
- package/src/config/modelProviders/upstage.ts +1 -28
- package/src/config/modelProviders/wenxin.ts +1 -140
- package/src/config/modelProviders/xai.ts +1 -38
- package/src/config/modelProviders/zeroone.ts +1 -81
- package/src/config/modelProviders/zhipu.ts +1 -108
- package/src/helpers/isCanUseFC.ts +0 -8
- package/src/hooks/useEnabledChatModels.ts +0 -8
- package/src/hooks/useModelContextWindowTokens.ts +0 -8
- package/src/hooks/useModelHasContextWindowToken.ts +1 -10
- package/src/hooks/useModelSupportFiles.ts +1 -11
- package/src/hooks/useModelSupportReasoning.ts +1 -11
- package/src/hooks/useModelSupportToolUse.ts +1 -11
- package/src/hooks/useModelSupportVision.ts +1 -11
- package/src/layout/AuthProvider/Clerk/index.tsx +2 -16
- package/src/server/globalConfig/index.ts +0 -23
- package/src/server/routers/lambda/config/__snapshots__/index.test.ts.snap +175 -12
- package/src/server/routers/lambda/config/index.test.ts +36 -28
- package/src/services/chat/chat.test.ts +12 -0
- package/src/services/chat/helper.ts +7 -31
- package/src/services/models.ts +2 -11
- package/src/store/chat/slices/aiChat/actions/generateAIChat.ts +41 -14
- package/src/store/global/store.ts +1 -7
- package/src/store/user/initialState.ts +1 -7
- package/src/store/user/selectors.ts +1 -5
- package/src/store/user/slices/common/action.ts +5 -4
- package/src/store/user/slices/settings/selectors/index.ts +1 -0
- package/src/store/user/slices/settings/selectors/keyVaults.ts +21 -0
- package/src/store/user/store.ts +0 -3
- package/src/tools/web-browsing/Render/Search/ConfigForm/Form.tsx +1 -1
- package/packages/utils/src/_deprecated/__snapshots__/parseModels.test.ts.snap +0 -104
- package/packages/utils/src/_deprecated/parseModels.test.ts +0 -287
- package/packages/utils/src/_deprecated/parseModels.ts +0 -165
- package/src/hooks/_header.ts +0 -23
- package/src/server/globalConfig/_deprecated.test.ts +0 -92
- package/src/server/globalConfig/_deprecated.ts +0 -41
- package/src/store/global/actions/clientDb.ts +0 -67
- package/src/store/user/slices/modelList/__snapshots__/action.test.ts.snap +0 -12
- package/src/store/user/slices/modelList/action.test.ts +0 -359
- package/src/store/user/slices/modelList/action.ts +0 -223
- package/src/store/user/slices/modelList/initialState.ts +0 -15
- package/src/store/user/slices/modelList/reducers/customModelCard.test.ts +0 -204
- package/src/store/user/slices/modelList/reducers/customModelCard.ts +0 -64
- package/src/store/user/slices/modelList/selectors/index.ts +0 -3
- package/src/store/user/slices/modelList/selectors/keyVaults.test.ts +0 -201
- package/src/store/user/slices/modelList/selectors/keyVaults.ts +0 -50
- package/src/store/user/slices/modelList/selectors/modelConfig.test.ts +0 -219
- package/src/store/user/slices/modelList/selectors/modelConfig.ts +0 -95
- package/src/store/user/slices/modelList/selectors/modelProvider.test.ts +0 -138
- 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
|
+
[](#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
|
@@ -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.
|
|
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
|
|
18
|
+
* the model lists defined in server
|
|
19
19
|
*/
|
|
20
|
-
|
|
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
|
|
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
|
-
{
|
|
29
|
-
<
|
|
30
|
-
|
|
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 &&
|
|
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 =
|
|
39
|
-
const
|
|
36
|
+
const checkModel = useAiInfraStore((s) => {
|
|
37
|
+
const modelList = aiModelSelectors.enabledAiProviderModelList(s);
|
|
40
38
|
|
|
41
|
-
if (
|
|
42
|
-
return
|
|
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 {
|
|
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
|
|
19
|
-
|
|
20
|
-
|
|
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解决方案。',
|