Skip to content

Commit e41be6d

Browse files
authored
💄 style: add SILICONCLOUD_MODEL_LIST & SILICONCLOUD_PROXY_URL support for SiliconCloud (#3492)
* ✨ feat: add SILICONCLOUD_MODEL_LIST support for SiliconCloud * ✨ feat: add proxy url support for SiliconCloud * ✨ feat: add baseURL support
1 parent cccd089 commit e41be6d

File tree

6 files changed

+25
-3
lines changed

6 files changed

+25
-3
lines changed

‎Dockerfile

+2
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,8 @@ ENV \
138138
PERPLEXITY_API_KEY="" PERPLEXITY_PROXY_URL="" \
139139
# Qwen
140140
QWEN_API_KEY="" \
141+
# SiliconCloud
142+
SILICONCLOUD_API_KEY="" SILICONCLOUD_MODEL_LIST="" SILICONCLOUD_PROXY_URL="" \
141143
# Stepfun
142144
STEPFUN_API_KEY="" \
143145
# Taichu

‎Dockerfile.database

+2
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,8 @@ ENV \
166166
PERPLEXITY_API_KEY="" PERPLEXITY_PROXY_URL="" \
167167
# Qwen
168168
QWEN_API_KEY="" \
169+
# SiliconCloud
170+
SILICONCLOUD_API_KEY="" SILICONCLOUD_MODEL_LIST="" SILICONCLOUD_PROXY_URL="" \
169171
# Stepfun
170172
STEPFUN_API_KEY="" \
171173
# Taichu

‎src/app/api/chat/agentRuntime.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -201,11 +201,12 @@ const getLlmOptionsFromPayload = (provider: string, payload: JWTPayload) => {
201201
return { apiKey };
202202
}
203203
case ModelProvider.SiliconCloud: {
204-
const { SILICONCLOUD_API_KEY } = getLLMConfig();
204+
const { SILICONCLOUD_API_KEY, SILICONCLOUD_PROXY_URL } = getLLMConfig();
205205

206206
const apiKey = apiKeyManager.pick(payload?.apiKey || SILICONCLOUD_API_KEY);
207+
const baseURL = payload?.endpoint || SILICONCLOUD_PROXY_URL;
207208

208-
return { apiKey };
209+
return { apiKey, baseURL };
209210
}
210211
}
211212
};

‎src/config/llm.ts

+4
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,8 @@ export const getLLMConfig = () => {
9090

9191
ENABLED_SILICONCLOUD: z.boolean(),
9292
SILICONCLOUD_API_KEY: z.string().optional(),
93+
SILICONCLOUD_MODEL_LIST: z.string().optional(),
94+
SILICONCLOUD_PROXY_URL: z.string().optional(),
9395
},
9496
runtimeEnv: {
9597
API_KEY_SELECT_MODE: process.env.API_KEY_SELECT_MODE,
@@ -177,6 +179,8 @@ export const getLLMConfig = () => {
177179

178180
ENABLED_SILICONCLOUD: !!process.env.SILICONCLOUD_API_KEY,
179181
SILICONCLOUD_API_KEY: process.env.SILICONCLOUD_API_KEY,
182+
SILICONCLOUD_MODEL_LIST: process.env.SILICONCLOUD_MODEL_LIST,
183+
SILICONCLOUD_PROXY_URL: process.env.SILICONCLOUD_PROXY_URL,
180184
},
181185
});
182186
};

‎src/config/modelProviders/siliconcloud.ts

+3
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,9 @@ const SiliconCloud: ModelProviderCard = {
122122
id: 'siliconcloud',
123123
modelList: { showModelFetcher: true },
124124
name: 'SiliconCloud',
125+
proxyUrl: {
126+
placeholder: 'https://api.siliconflow.cn/v1',
127+
},
125128
};
126129

127130
export default SiliconCloud;

‎src/server/globalConfig/index.ts

+11-1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import {
77
OllamaProviderCard,
88
OpenAIProviderCard,
99
OpenRouterProviderCard,
10+
SiliconCloudProviderCard,
1011
TogetherAIProviderCard,
1112
} from '@/config/modelProviders';
1213
import { enableNextAuth } from '@/const/auth';
@@ -39,7 +40,9 @@ export const getServerGlobalConfig = () => {
3940
ENABLED_BAICHUAN,
4041
ENABLED_TAICHU,
4142
ENABLED_AI360,
43+
4244
ENABLED_SILICONCLOUD,
45+
SILICONCLOUD_MODEL_LIST,
4346

4447
ENABLED_AZURE_OPENAI,
4548
AZURE_MODEL_LIST,
@@ -113,7 +116,14 @@ export const getServerGlobalConfig = () => {
113116
},
114117
perplexity: { enabled: ENABLED_PERPLEXITY },
115118
qwen: { enabled: ENABLED_QWEN },
116-
siliconcloud: { enabled: ENABLED_SILICONCLOUD },
119+
siliconcloud: {
120+
enabled: ENABLED_SILICONCLOUD,
121+
enabledModels: extractEnabledModels(SILICONCLOUD_MODEL_LIST),
122+
serverModelCards: transformToChatModelCards({
123+
defaultChatModels: SiliconCloudProviderCard.chatModels,
124+
modelString: SILICONCLOUD_MODEL_LIST,
125+
}),
126+
},
117127
stepfun: { enabled: ENABLED_STEPFUN },
118128

119129
taichu: { enabled: ENABLED_TAICHU },

0 commit comments

Comments
 (0)