feat: 模型服务添加天翼云模型 (#2238)
* feat: 模型服务添加天翼云模型 * feat:add website * fix: id is duplicate --------- Co-authored-by: 李保成 <libaocheng@cndatacom.com>
This commit is contained in:
parent
f489b034b5
commit
f3f32cc591
BIN
src/renderer/src/assets/images/models/xirang.png
Normal file
BIN
src/renderer/src/assets/images/models/xirang.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 13 KiB |
BIN
src/renderer/src/assets/images/models/xirang_dark.png
Normal file
BIN
src/renderer/src/assets/images/models/xirang_dark.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 12 KiB |
BIN
src/renderer/src/assets/images/providers/xirang.png
Normal file
BIN
src/renderer/src/assets/images/providers/xirang.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 13 KiB |
@ -126,6 +126,8 @@ import WenxinModelLogo from '@renderer/assets/images/models/wenxin.png'
|
||||
import WenxinModelLogoDark from '@renderer/assets/images/models/wenxin_dark.png'
|
||||
import YiModelLogo from '@renderer/assets/images/models/yi.png'
|
||||
import YiModelLogoDark from '@renderer/assets/images/models/yi_dark.png'
|
||||
import XirangModelLogo from '@renderer/assets/images/models/xirang.png'
|
||||
import XirangModelLogoDark from '@renderer/assets/images/models/xirang_dark.png'
|
||||
import { getProviderByModel } from '@renderer/services/AssistantService'
|
||||
import { Assistant, Model } from '@renderer/types'
|
||||
import OpenAI from 'openai'
|
||||
@ -276,6 +278,7 @@ export function getModelLogo(modelId: string) {
|
||||
rakutenai: isLight ? RakutenaiModelLogo : RakutenaiModelLogoDark,
|
||||
ibm: isLight ? IbmModelLogo : IbmModelLogoDark,
|
||||
'google/': isLight ? GoogleModelLogo : GoogleModelLogoDark,
|
||||
xirang: isLight ? XirangModelLogo : XirangModelLogoDark,
|
||||
hugging: isLight ? HuggingfaceModelLogo : HuggingfaceModelLogoDark,
|
||||
embedding: isLight ? EmbeddingModelLogo : EmbeddingModelLogoDark,
|
||||
perplexity: isLight ? PerplexityModelLogo : PerplexityModelLogoDark,
|
||||
@ -1714,6 +1717,20 @@ export const SYSTEM_MODELS: Record<string, Model[]> = {
|
||||
name: 'jina-embeddings-v2-base-code',
|
||||
group: 'Jina'
|
||||
}
|
||||
],
|
||||
xirang: [
|
||||
{
|
||||
id: 'xirang-1',
|
||||
name: 'DeepSeek-R1',
|
||||
provider: 'xirang',
|
||||
group: 'xirang'
|
||||
},
|
||||
{
|
||||
id: 'xirang-2',
|
||||
name: 'DeepSeek-V3',
|
||||
provider: 'xirang',
|
||||
group: 'xirang'
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
@ -37,6 +37,7 @@ import TogetherProviderLogo from '@renderer/assets/images/providers/together.png
|
||||
import BytedanceProviderLogo from '@renderer/assets/images/providers/volcengine.png'
|
||||
import ZeroOneProviderLogo from '@renderer/assets/images/providers/zero-one.png'
|
||||
import ZhipuProviderLogo from '@renderer/assets/images/providers/zhipu.png'
|
||||
import XirangProviderLogo from '@renderer/assets/images/providers/xirang.png'
|
||||
export function getProviderLogo(providerId: string) {
|
||||
switch (providerId) {
|
||||
case 'openai':
|
||||
@ -67,6 +68,8 @@ export function getProviderLogo(providerId: string) {
|
||||
return BailianProviderLogo
|
||||
case 'modelscope':
|
||||
return ModelScopeProviderLogo
|
||||
case 'xirang':
|
||||
return XirangProviderLogo
|
||||
case 'anthropic':
|
||||
return AnthropicProviderLogo
|
||||
case 'aihubmix':
|
||||
@ -323,6 +326,17 @@ export const PROVIDER_CONFIG = {
|
||||
models: 'https://modelscope.cn/models'
|
||||
}
|
||||
},
|
||||
xirang: {
|
||||
api: {
|
||||
url: 'https://wishub-x1.ctyun.cn/v1/'
|
||||
},
|
||||
websites: {
|
||||
official: 'https://www.ctyun.cn',
|
||||
apiKey: 'https://www.ctyun.cn/act/xirang/deepseek',
|
||||
docs: 'https://www.ctyun.cn/document',
|
||||
models: 'https://www.ctyun.cn/act/xirang/deepseek'
|
||||
}
|
||||
},
|
||||
dashscope: {
|
||||
api: {
|
||||
url: 'https://dashscope.aliyuncs.com/compatible-mode/v1/'
|
||||
|
||||
@ -559,7 +559,8 @@
|
||||
"together": "Together",
|
||||
"yi": "Yi",
|
||||
"zhinao": "360AI",
|
||||
"zhipu": "ZHIPU AI"
|
||||
"zhipu": "ZHIPU AI",
|
||||
"xirang": "TyyCloud Xirang"
|
||||
},
|
||||
"settings": {
|
||||
"about": "About & Feedback",
|
||||
|
||||
@ -559,7 +559,8 @@
|
||||
"together": "Together",
|
||||
"yi": "零一万物",
|
||||
"zhinao": "360智脳",
|
||||
"zhipu": "智譜AI"
|
||||
"zhipu": "智譜AI",
|
||||
"xirang": "天翼クラウド 息壤"
|
||||
},
|
||||
"settings": {
|
||||
"about": "について",
|
||||
|
||||
@ -559,7 +559,8 @@
|
||||
"together": "Together",
|
||||
"yi": "Yi",
|
||||
"zhinao": "360AI",
|
||||
"zhipu": "ZHIPU AI"
|
||||
"zhipu": "ZHIPU AI",
|
||||
"xirang": "TyyCloud Xirang"
|
||||
},
|
||||
"settings": {
|
||||
"about": "О программе и обратная связь",
|
||||
|
||||
@ -559,7 +559,8 @@
|
||||
"together": "Together",
|
||||
"yi": "零一万物",
|
||||
"zhinao": "360智脑",
|
||||
"zhipu": "智谱AI"
|
||||
"zhipu": "智谱AI",
|
||||
"xirang": "天翼云 息壤"
|
||||
},
|
||||
"settings": {
|
||||
"about": "关于我们",
|
||||
|
||||
@ -559,7 +559,8 @@
|
||||
"together": "Together",
|
||||
"yi": "零一萬物",
|
||||
"zhinao": "360智腦",
|
||||
"zhipu": "智譜AI"
|
||||
"zhipu": "智譜AI",
|
||||
"xirang": "天翼雲 息壤"
|
||||
},
|
||||
"settings": {
|
||||
"about": "關於與回饋",
|
||||
|
||||
@ -406,6 +406,16 @@ const initialState: LlmState = {
|
||||
models: SYSTEM_MODELS.modelscope,
|
||||
isSystem: true,
|
||||
enabled: false
|
||||
},
|
||||
{
|
||||
id: 'xirang',
|
||||
name: 'Xirang',
|
||||
type: 'openai',
|
||||
apiKey: '',
|
||||
apiHost: 'https://wishub-x1.ctyun.cn',
|
||||
models: SYSTEM_MODELS.xirang,
|
||||
isSystem: true,
|
||||
enabled: false
|
||||
}
|
||||
],
|
||||
settings: {
|
||||
|
||||
@ -1122,6 +1122,29 @@ const migrateConfig = {
|
||||
return state
|
||||
},
|
||||
'73': (state: RootState) => {
|
||||
const tempProviders = state.llm.providers
|
||||
const xirangProvider = tempProviders.find((provider) => provider.id === 'xirang')
|
||||
if (!xirangProvider) {
|
||||
tempProviders.unshift({
|
||||
id: 'xirang',
|
||||
name: 'Xirang',
|
||||
type: 'openai',
|
||||
apiKey: '',
|
||||
apiHost: 'https://wishub-x1.ctyun.cn',
|
||||
models: SYSTEM_MODELS.xirang,
|
||||
isSystem: true,
|
||||
enabled: false
|
||||
})
|
||||
}
|
||||
return {
|
||||
...state,
|
||||
llm: {
|
||||
...state.llm,
|
||||
providers: tempProviders
|
||||
}
|
||||
}
|
||||
},
|
||||
'74': (state: RootState) => {
|
||||
if (state.websearch) {
|
||||
state.websearch.searchWithTime = true
|
||||
state.websearch.maxResults = 5
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user