diff --git a/src/assets/providers-logo/ai360.svg b/src/assets/providers-logo/ai360.svg
new file mode 100644
index 00000000..2f940981
--- /dev/null
+++ b/src/assets/providers-logo/ai360.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/azureai.svg b/src/assets/providers-logo/azureai.svg
new file mode 100644
index 00000000..41f503f5
--- /dev/null
+++ b/src/assets/providers-logo/azureai.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/baichuan.svg b/src/assets/providers-logo/baichuan.svg
new file mode 100644
index 00000000..32dc1556
--- /dev/null
+++ b/src/assets/providers-logo/baichuan.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/baiducloud.svg b/src/assets/providers-logo/baiducloud.svg
new file mode 100644
index 00000000..40565efc
--- /dev/null
+++ b/src/assets/providers-logo/baiducloud.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/bedrock.svg b/src/assets/providers-logo/bedrock.svg
new file mode 100644
index 00000000..e0f929a7
--- /dev/null
+++ b/src/assets/providers-logo/bedrock.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/claude.svg b/src/assets/providers-logo/claude.svg
new file mode 100644
index 00000000..62dc0db1
--- /dev/null
+++ b/src/assets/providers-logo/claude.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/cloudflare.svg b/src/assets/providers-logo/cloudflare.svg
new file mode 100644
index 00000000..d555b6f2
--- /dev/null
+++ b/src/assets/providers-logo/cloudflare.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/cohere.svg b/src/assets/providers-logo/cohere.svg
new file mode 100644
index 00000000..94bcb82c
--- /dev/null
+++ b/src/assets/providers-logo/cohere.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/coze.svg b/src/assets/providers-logo/coze.svg
new file mode 100644
index 00000000..743f6d6a
--- /dev/null
+++ b/src/assets/providers-logo/coze.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/deepl.svg b/src/assets/providers-logo/deepl.svg
new file mode 100644
index 00000000..91fb560f
--- /dev/null
+++ b/src/assets/providers-logo/deepl.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/deepseek.svg b/src/assets/providers-logo/deepseek.svg
new file mode 100644
index 00000000..3fc23024
--- /dev/null
+++ b/src/assets/providers-logo/deepseek.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/dify.svg b/src/assets/providers-logo/dify.svg
new file mode 100644
index 00000000..4cea9034
--- /dev/null
+++ b/src/assets/providers-logo/dify.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/doubao.svg b/src/assets/providers-logo/doubao.svg
new file mode 100644
index 00000000..e2511454
--- /dev/null
+++ b/src/assets/providers-logo/doubao.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/fireworks.svg b/src/assets/providers-logo/fireworks.svg
new file mode 100644
index 00000000..a23445cf
--- /dev/null
+++ b/src/assets/providers-logo/fireworks.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/gemini.svg b/src/assets/providers-logo/gemini.svg
new file mode 100644
index 00000000..f1cf3575
--- /dev/null
+++ b/src/assets/providers-logo/gemini.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/github.svg b/src/assets/providers-logo/github.svg
new file mode 100644
index 00000000..7a51b8e0
--- /dev/null
+++ b/src/assets/providers-logo/github.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/grok.svg b/src/assets/providers-logo/grok.svg
new file mode 100644
index 00000000..efb1a618
--- /dev/null
+++ b/src/assets/providers-logo/grok.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/groq.svg b/src/assets/providers-logo/groq.svg
new file mode 100644
index 00000000..7294646b
--- /dev/null
+++ b/src/assets/providers-logo/groq.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/hunyuan.svg b/src/assets/providers-logo/hunyuan.svg
new file mode 100644
index 00000000..42edd6cd
--- /dev/null
+++ b/src/assets/providers-logo/hunyuan.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/longcat.svg b/src/assets/providers-logo/longcat.svg
new file mode 100644
index 00000000..fde6c8a3
--- /dev/null
+++ b/src/assets/providers-logo/longcat.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/minimax.svg b/src/assets/providers-logo/minimax.svg
new file mode 100644
index 00000000..2a60bd47
--- /dev/null
+++ b/src/assets/providers-logo/minimax.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/mistral.svg b/src/assets/providers-logo/mistral.svg
new file mode 100644
index 00000000..8e03e244
--- /dev/null
+++ b/src/assets/providers-logo/mistral.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/moonshot.svg b/src/assets/providers-logo/moonshot.svg
new file mode 100644
index 00000000..fb56ac10
--- /dev/null
+++ b/src/assets/providers-logo/moonshot.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/nvidia.svg b/src/assets/providers-logo/nvidia.svg
new file mode 100644
index 00000000..a9683c2e
--- /dev/null
+++ b/src/assets/providers-logo/nvidia.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/ollama.svg b/src/assets/providers-logo/ollama.svg
new file mode 100644
index 00000000..cc887e3d
--- /dev/null
+++ b/src/assets/providers-logo/ollama.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/openai.svg b/src/assets/providers-logo/openai.svg
new file mode 100644
index 00000000..50d94d6c
--- /dev/null
+++ b/src/assets/providers-logo/openai.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/openrouter.svg b/src/assets/providers-logo/openrouter.svg
new file mode 100644
index 00000000..e6cca2a8
--- /dev/null
+++ b/src/assets/providers-logo/openrouter.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/qwen.svg b/src/assets/providers-logo/qwen.svg
new file mode 100644
index 00000000..33b3f645
--- /dev/null
+++ b/src/assets/providers-logo/qwen.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/spark.svg b/src/assets/providers-logo/spark.svg
new file mode 100644
index 00000000..50c8faea
--- /dev/null
+++ b/src/assets/providers-logo/spark.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/stepfun.svg b/src/assets/providers-logo/stepfun.svg
new file mode 100644
index 00000000..70989521
--- /dev/null
+++ b/src/assets/providers-logo/stepfun.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/together.svg b/src/assets/providers-logo/together.svg
new file mode 100644
index 00000000..bb460ab5
--- /dev/null
+++ b/src/assets/providers-logo/together.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/yi.svg b/src/assets/providers-logo/yi.svg
new file mode 100644
index 00000000..8d0c6470
--- /dev/null
+++ b/src/assets/providers-logo/yi.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/providers-logo/zhipu.svg b/src/assets/providers-logo/zhipu.svg
new file mode 100644
index 00000000..0c6e61ce
--- /dev/null
+++ b/src/assets/providers-logo/zhipu.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/locales/en-US/ai.ts b/src/locales/en-US/ai.ts
new file mode 100644
index 00000000..610733ac
--- /dev/null
+++ b/src/locales/en-US/ai.ts
@@ -0,0 +1,35 @@
+export default {
+ 'ai.provider.ai360': 'AI360',
+ 'ai.provider.azure': 'Azure',
+ 'ai.provider.baichuan': 'Baichuan',
+ 'ai.provider.baidu': 'Baidu',
+ 'ai.provider.bedrock': 'Bedrock',
+ 'ai.provider.claude': 'Claude',
+ 'ai.provider.cloudflare': 'Cloudflare',
+ 'ai.provider.cohere': 'Cohere',
+ 'ai.provider.coze': 'Coze',
+ 'ai.provider.deepl': 'DeepL',
+ 'ai.provider.deepseek': 'Deepseek',
+ 'ai.provider.dify': 'Dify',
+ 'ai.provider.doubao': 'Doubao',
+ 'ai.provider.fireworks': 'Fireworks',
+ 'ai.provider.gemini': 'Gemini',
+ 'ai.provider.github': 'GitHub',
+ 'ai.provider.grok': 'Grok',
+ 'ai.provider.groq': 'Groq',
+ 'ai.provider.hunyuan': 'Hunyuan',
+ 'ai.provider.longcat': 'Longcat',
+ 'ai.provider.minimax': 'Minimax',
+ 'ai.provider.mistral': 'Mistral',
+ 'ai.provider.moonshot': 'Moonshot',
+ 'ai.provider.ollama': 'Ollama',
+ 'ai.provider.openai': 'OpenAI',
+ 'ai.provider.openrouter': 'OpenRouter',
+ 'ai.provider.qwen': 'Qwen',
+ 'ai.provider.spark': 'Spark',
+ 'ai.provider.stepfun': 'StepFun',
+ 'ai.provider.together-ai': 'TogetherAI',
+ 'ai.provider.triton': 'Triton',
+ 'ai.provider.yi': 'Yi',
+ 'ai.provider.zhipuai': 'ZhipuAI'
+};
diff --git a/src/locales/ja-JP/ai.ts b/src/locales/ja-JP/ai.ts
new file mode 100644
index 00000000..610733ac
--- /dev/null
+++ b/src/locales/ja-JP/ai.ts
@@ -0,0 +1,35 @@
+export default {
+ 'ai.provider.ai360': 'AI360',
+ 'ai.provider.azure': 'Azure',
+ 'ai.provider.baichuan': 'Baichuan',
+ 'ai.provider.baidu': 'Baidu',
+ 'ai.provider.bedrock': 'Bedrock',
+ 'ai.provider.claude': 'Claude',
+ 'ai.provider.cloudflare': 'Cloudflare',
+ 'ai.provider.cohere': 'Cohere',
+ 'ai.provider.coze': 'Coze',
+ 'ai.provider.deepl': 'DeepL',
+ 'ai.provider.deepseek': 'Deepseek',
+ 'ai.provider.dify': 'Dify',
+ 'ai.provider.doubao': 'Doubao',
+ 'ai.provider.fireworks': 'Fireworks',
+ 'ai.provider.gemini': 'Gemini',
+ 'ai.provider.github': 'GitHub',
+ 'ai.provider.grok': 'Grok',
+ 'ai.provider.groq': 'Groq',
+ 'ai.provider.hunyuan': 'Hunyuan',
+ 'ai.provider.longcat': 'Longcat',
+ 'ai.provider.minimax': 'Minimax',
+ 'ai.provider.mistral': 'Mistral',
+ 'ai.provider.moonshot': 'Moonshot',
+ 'ai.provider.ollama': 'Ollama',
+ 'ai.provider.openai': 'OpenAI',
+ 'ai.provider.openrouter': 'OpenRouter',
+ 'ai.provider.qwen': 'Qwen',
+ 'ai.provider.spark': 'Spark',
+ 'ai.provider.stepfun': 'StepFun',
+ 'ai.provider.together-ai': 'TogetherAI',
+ 'ai.provider.triton': 'Triton',
+ 'ai.provider.yi': 'Yi',
+ 'ai.provider.zhipuai': 'ZhipuAI'
+};
diff --git a/src/locales/ru-RU/ai.ts b/src/locales/ru-RU/ai.ts
new file mode 100644
index 00000000..610733ac
--- /dev/null
+++ b/src/locales/ru-RU/ai.ts
@@ -0,0 +1,35 @@
+export default {
+ 'ai.provider.ai360': 'AI360',
+ 'ai.provider.azure': 'Azure',
+ 'ai.provider.baichuan': 'Baichuan',
+ 'ai.provider.baidu': 'Baidu',
+ 'ai.provider.bedrock': 'Bedrock',
+ 'ai.provider.claude': 'Claude',
+ 'ai.provider.cloudflare': 'Cloudflare',
+ 'ai.provider.cohere': 'Cohere',
+ 'ai.provider.coze': 'Coze',
+ 'ai.provider.deepl': 'DeepL',
+ 'ai.provider.deepseek': 'Deepseek',
+ 'ai.provider.dify': 'Dify',
+ 'ai.provider.doubao': 'Doubao',
+ 'ai.provider.fireworks': 'Fireworks',
+ 'ai.provider.gemini': 'Gemini',
+ 'ai.provider.github': 'GitHub',
+ 'ai.provider.grok': 'Grok',
+ 'ai.provider.groq': 'Groq',
+ 'ai.provider.hunyuan': 'Hunyuan',
+ 'ai.provider.longcat': 'Longcat',
+ 'ai.provider.minimax': 'Minimax',
+ 'ai.provider.mistral': 'Mistral',
+ 'ai.provider.moonshot': 'Moonshot',
+ 'ai.provider.ollama': 'Ollama',
+ 'ai.provider.openai': 'OpenAI',
+ 'ai.provider.openrouter': 'OpenRouter',
+ 'ai.provider.qwen': 'Qwen',
+ 'ai.provider.spark': 'Spark',
+ 'ai.provider.stepfun': 'StepFun',
+ 'ai.provider.together-ai': 'TogetherAI',
+ 'ai.provider.triton': 'Triton',
+ 'ai.provider.yi': 'Yi',
+ 'ai.provider.zhipuai': 'ZhipuAI'
+};
diff --git a/src/locales/zh-CN/ai.ts b/src/locales/zh-CN/ai.ts
new file mode 100644
index 00000000..c69d7e86
--- /dev/null
+++ b/src/locales/zh-CN/ai.ts
@@ -0,0 +1,35 @@
+export default {
+ 'ai.provider.ai360': '360 智脑',
+ 'ai.provider.azure': 'Azure',
+ 'ai.provider.baichuan': '百川智能',
+ 'ai.provider.baidu': '百度智能云',
+ 'ai.provider.bedrock': 'Amazon Bedrock',
+ 'ai.provider.claude': 'Claude',
+ 'ai.provider.cloudflare': 'Cloudflare',
+ 'ai.provider.cohere': 'Cohere',
+ 'ai.provider.coze': '扣子',
+ 'ai.provider.deepl': 'DeepL',
+ 'ai.provider.deepseek': '深度求索',
+ 'ai.provider.dify': 'Dify',
+ 'ai.provider.doubao': '豆包',
+ 'ai.provider.fireworks': 'Fireworks AI',
+ 'ai.provider.gemini': 'Gemini',
+ 'ai.provider.github': 'GitHub',
+ 'ai.provider.grok': 'Grok',
+ 'ai.provider.groq': 'Groq',
+ 'ai.provider.hunyuan': '混元',
+ 'ai.provider.longcat': 'LongCat',
+ 'ai.provider.minimax': 'MiniMax',
+ 'ai.provider.mistral': 'Mistral AI',
+ 'ai.provider.moonshot': '月之暗面',
+ 'ai.provider.ollama': 'Ollama',
+ 'ai.provider.openai': 'OpenAI',
+ 'ai.provider.openrouter': 'OpenRouter',
+ 'ai.provider.qwen': '通义千问',
+ 'ai.provider.spark': '讯飞星火',
+ 'ai.provider.stepfun': '阶跃星辰',
+ 'ai.provider.together-ai': 'Together AI',
+ 'ai.provider.triton': 'Triton',
+ 'ai.provider.yi': '零一万物',
+ 'ai.provider.zhipuai': '智谱 AI'
+};
diff --git a/src/pages/maas-provider/components/provider-logo.tsx b/src/pages/maas-provider/components/provider-logo.tsx
new file mode 100644
index 00000000..40773dc0
--- /dev/null
+++ b/src/pages/maas-provider/components/provider-logo.tsx
@@ -0,0 +1,86 @@
+import ai360 from '@/assets/providers-logo/ai360.svg';
+import azure from '@/assets/providers-logo/azureai.svg';
+import baichuan from '@/assets/providers-logo/baichuan.svg';
+import baiduCloud from '@/assets/providers-logo/baiducloud.svg';
+import bedrock from '@/assets/providers-logo/bedrock.svg';
+import claude from '@/assets/providers-logo/claude.svg';
+import cloudflare from '@/assets/providers-logo/cloudflare.svg';
+import cohere from '@/assets/providers-logo/cohere.svg';
+import coze from '@/assets/providers-logo/coze.svg';
+import deepl from '@/assets/providers-logo/deepl.svg';
+import deepseek from '@/assets/providers-logo/deepseek.svg';
+import dify from '@/assets/providers-logo/dify.svg';
+import doubao from '@/assets/providers-logo/doubao.svg';
+import fireworks from '@/assets/providers-logo/fireworks.svg';
+import gemini from '@/assets/providers-logo/gemini.svg';
+import github from '@/assets/providers-logo/github.svg';
+import grok from '@/assets/providers-logo/grok.svg';
+import groq from '@/assets/providers-logo/groq.svg';
+import hunyuan from '@/assets/providers-logo/hunyuan.svg';
+import longcat from '@/assets/providers-logo/longcat.svg';
+import minimax from '@/assets/providers-logo/minimax.svg';
+import mistral from '@/assets/providers-logo/mistral.svg';
+import moonshot from '@/assets/providers-logo/moonshot.svg';
+import triton from '@/assets/providers-logo/nvidia.svg';
+import ollama from '@/assets/providers-logo/ollama.svg';
+import openai from '@/assets/providers-logo/openai.svg';
+import openrouter from '@/assets/providers-logo/openrouter.svg';
+import qwen from '@/assets/providers-logo/qwen.svg';
+import spark from '@/assets/providers-logo/spark.svg';
+import stepfun from '@/assets/providers-logo/stepfun.svg';
+import togetherai from '@/assets/providers-logo/together.svg';
+import yi from '@/assets/providers-logo/yi.svg';
+import zhipuai from '@/assets/providers-logo/zhipu.svg';
+import { ProviderEnum } from '../config/providers';
+
+const ProviderLogoMap: Record = {
+ [ProviderEnum.BAIDU]: baiduCloud,
+ [ProviderEnum.FIREWORKS]: fireworks,
+ [ProviderEnum.GEMINI]: gemini,
+ [ProviderEnum.YI]: yi,
+ [ProviderEnum.AI360]: ai360,
+ [ProviderEnum.AZURE]: azure,
+ [ProviderEnum.BAICHUAN]: baichuan,
+ [ProviderEnum.BEDROCK]: bedrock,
+ [ProviderEnum.CLAUDE]: claude,
+ [ProviderEnum.CLOUDFLARE]: cloudflare,
+ [ProviderEnum.COHERE]: cohere,
+ [ProviderEnum.COZE]: coze,
+ [ProviderEnum.DEEPL]: deepl,
+ [ProviderEnum.DEEPSEEK]: deepseek,
+ [ProviderEnum.DIFY]: dify,
+ [ProviderEnum.DOUBAO]: doubao,
+ [ProviderEnum.GROK]: grok,
+ [ProviderEnum.GROQ]: groq,
+ [ProviderEnum.HUNYUAN]: hunyuan,
+ [ProviderEnum.LONGCAT]: longcat,
+ [ProviderEnum.MINIMAX]: minimax,
+ [ProviderEnum.MISTRAL]: mistral,
+ [ProviderEnum.MOONSHOT]: moonshot,
+ [ProviderEnum.OLLAMA]: ollama,
+ [ProviderEnum.OPENAI]: openai,
+ [ProviderEnum.OPENROUTER]: openrouter,
+ [ProviderEnum.QWEN]: qwen,
+ [ProviderEnum.SPARK]: spark,
+ [ProviderEnum.STEPFUN]: stepfun,
+ [ProviderEnum.TOGETHERAI]: togetherai,
+ [ProviderEnum.ZHIPUAI]: zhipuai,
+ [ProviderEnum.GITHUB]: github,
+ [ProviderEnum.TRITON]: triton
+};
+
+const ProviderLogo: React.FC<{
+ provider: string;
+ style?: React.CSSProperties;
+}> = ({ provider, style }) => {
+ const logoSrc = ProviderLogoMap[provider] || '';
+ return (
+
+ );
+};
+
+export default ProviderLogo;
diff --git a/src/pages/maas-provider/config/providers.ts b/src/pages/maas-provider/config/providers.ts
index f4aa6900..4fcd3f14 100644
--- a/src/pages/maas-provider/config/providers.ts
+++ b/src/pages/maas-provider/config/providers.ts
@@ -34,11 +34,47 @@ export enum ProviderEnum {
ZHIPUAI = 'zhipuai'
}
+export const ProviderI18nKeyMap: Record = {
+ [ProviderEnum.AI360]: 'ai.provider.ai360',
+ [ProviderEnum.AZURE]: 'ai.provider.azure',
+ [ProviderEnum.BAICHUAN]: 'ai.provider.baichuan',
+ [ProviderEnum.BAIDU]: 'ai.provider.baidu',
+ [ProviderEnum.BEDROCK]: 'ai.provider.bedrock',
+ [ProviderEnum.CLAUDE]: 'ai.provider.claude',
+ [ProviderEnum.CLOUDFLARE]: 'ai.provider.cloudflare',
+ [ProviderEnum.COHERE]: 'ai.provider.cohere',
+ [ProviderEnum.COZE]: 'ai.provider.coze',
+ [ProviderEnum.DEEPL]: 'ai.provider.deepl',
+ [ProviderEnum.DEEPSEEK]: 'ai.provider.deepseek',
+ [ProviderEnum.DIFY]: 'ai.provider.dify',
+ [ProviderEnum.DOUBAO]: 'ai.provider.doubao',
+ [ProviderEnum.FIREWORKS]: 'ai.provider.fireworks',
+ [ProviderEnum.GEMINI]: 'ai.provider.gemini',
+ [ProviderEnum.GITHUB]: 'ai.provider.github',
+ [ProviderEnum.GROK]: 'ai.provider.grok',
+ [ProviderEnum.GROQ]: 'ai.provider.groq',
+ [ProviderEnum.HUNYUAN]: 'ai.provider.hunyuan',
+ [ProviderEnum.LONGCAT]: 'ai.provider.longcat',
+ [ProviderEnum.MINIMAX]: 'ai.provider.minimax',
+ [ProviderEnum.MISTRAL]: 'ai.provider.mistral',
+ [ProviderEnum.MOONSHOT]: 'ai.provider.moonshot',
+ [ProviderEnum.OLLAMA]: 'ai.provider.ollama',
+ [ProviderEnum.OPENAI]: 'ai.provider.openai',
+ [ProviderEnum.OPENROUTER]: 'ai.provider.openrouter',
+ [ProviderEnum.QWEN]: 'ai.provider.qwen',
+ [ProviderEnum.SPARK]: 'ai.provider.spark',
+ [ProviderEnum.STEPFUN]: 'ai.provider.stepfun',
+ [ProviderEnum.TOGETHERAI]: 'ai.provider.together-ai',
+ [ProviderEnum.TRITON]: 'ai.provider.triton',
+ [ProviderEnum.YI]: 'ai.provider.yi',
+ [ProviderEnum.ZHIPUAI]: 'ai.provider.zhipuai'
+};
+
// generate provider list: {label: string;value:string}[]
export const maasProviderOptions = Object.entries(ProviderEnum).map(
([key, value]) => ({
- locale: false,
- label: key,
+ locale: true,
+ label: ProviderI18nKeyMap[value],
value: value,
key: value
})
@@ -49,7 +85,7 @@ export const maasProviderLabelMap: Record = Object.entries(
ProviderEnum
).reduce(
(acc, [key, value]) => {
- acc[value] = key;
+ acc[value] = ProviderI18nKeyMap[value];
return acc;
},
{} as Record
diff --git a/src/pages/maas-provider/forms/basic.tsx b/src/pages/maas-provider/forms/basic.tsx
index 38c5c297..66d23f65 100644
--- a/src/pages/maas-provider/forms/basic.tsx
+++ b/src/pages/maas-provider/forms/basic.tsx
@@ -2,12 +2,23 @@ import SealInput from '@/components/seal-form/seal-input';
import SealSelect from '@/components/seal-form/seal-select';
import { useIntl } from '@umijs/max';
import { Form } from 'antd';
+import ProviderLogo from '../components/provider-logo';
import { maasProviderOptions } from '../config/providers';
import { FormData } from '../config/types';
const Basic = () => {
const intl = useIntl();
const form = Form.useFormInstance();
+
+ const optionRender = (option: any) => {
+ return (
+
+ );
+ };
+
return (
<>
name="name" data-field="name">
@@ -20,7 +31,10 @@ const Basic = () => {
name={['config', 'type']}>
(
<>
+
- {maasProviderLabelMap[value]}
+ {maasProviderLabelMap[value]
+ ? intl.formatMessage({ id: maasProviderLabelMap[value] })
+ : value}
>
)