feat: add qiniu ai provider

This commit is contained in:
kangfenmao 2025-04-06 18:50:30 +08:00
parent 90424808ab
commit 581ad5fbda
10 changed files with 41 additions and 12 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -2013,7 +2013,8 @@ export const SYSTEM_MODELS: Record<string, Model[]> = {
name: 'rerank-2-lite', name: 'rerank-2-lite',
group: 'Voyage Rerank V2' group: 'Voyage Rerank V2'
} }
] ],
qiniu: []
} }
export const TEXT_TO_IMAGES_MODELS = [ export const TEXT_TO_IMAGES_MODELS = [

View File

@ -32,6 +32,7 @@ import OpenAiProviderLogo from '@renderer/assets/images/providers/openai.png'
import OpenRouterProviderLogo from '@renderer/assets/images/providers/openrouter.png' import OpenRouterProviderLogo from '@renderer/assets/images/providers/openrouter.png'
import PerplexityProviderLogo from '@renderer/assets/images/providers/perplexity.png' import PerplexityProviderLogo from '@renderer/assets/images/providers/perplexity.png'
import PPIOProviderLogo from '@renderer/assets/images/providers/ppio.png' import PPIOProviderLogo from '@renderer/assets/images/providers/ppio.png'
import QiniuProviderLogo from '@renderer/assets/images/providers/qiniu.webp'
import SiliconFlowProviderLogo from '@renderer/assets/images/providers/silicon.png' import SiliconFlowProviderLogo from '@renderer/assets/images/providers/silicon.png'
import StepProviderLogo from '@renderer/assets/images/providers/step.png' import StepProviderLogo from '@renderer/assets/images/providers/step.png'
import TencentCloudProviderLogo from '@renderer/assets/images/providers/tencent-cloud-ti.png' import TencentCloudProviderLogo from '@renderer/assets/images/providers/tencent-cloud-ti.png'
@ -86,7 +87,8 @@ const PROVIDER_LOGO_MAP = {
'tencent-cloud-ti': TencentCloudProviderLogo, 'tencent-cloud-ti': TencentCloudProviderLogo,
gpustack: GPUStackProviderLogo, gpustack: GPUStackProviderLogo,
alayanew: AlayaNewProviderLogo, alayanew: AlayaNewProviderLogo,
voyageai: VoyageAIProviderLogo voyageai: VoyageAIProviderLogo,
qiniu: QiniuProviderLogo
} as const } as const
export function getProviderLogo(providerId: string) { export function getProviderLogo(providerId: string) {
@ -123,10 +125,9 @@ export const PROVIDER_CONFIG = {
url: 'https://api.ppinfra.com/v3/openai' url: 'https://api.ppinfra.com/v3/openai'
}, },
websites: { websites: {
official: official: 'https://ppinfra.com/user/register?invited_by=JYT9GD&utm_source=github_cherry-studio',
'https://ppinfra.com/model-api/product/llm-api?utm_source=github_cherry-studio&utm_medium=github_readme&utm_campaign=link', apiKey: 'https://ppinfra.com/user/register?invited_by=JYT9GD&utm_source=github_cherry-studio',
apiKey: 'https://ppinfra.com/settings/key-management', docs: 'https://docs.cherry-ai.com/pre-basic/providers/ppio?invited_by=JYT9GD&utm_source=github_cherry-studio',
docs: 'https://ppinfra.com/docs/model-api/reference/llm/llm.html',
models: models:
'https://ppinfra.com/model-api/product/llm-api?utm_source=github_cherry-studio&utm_medium=github_readme&utm_campaign=link' 'https://ppinfra.com/model-api/product/llm-api?utm_source=github_cherry-studio&utm_medium=github_readme&utm_campaign=link'
} }
@ -148,7 +149,7 @@ export const PROVIDER_CONFIG = {
}, },
websites: { websites: {
official: 'https://www.siliconflow.cn/', official: 'https://www.siliconflow.cn/',
apiKey: 'https://cloud.siliconflow.cn/account/ak?referrer=clxty1xuy0014lvqwh5z50i88', apiKey: 'https://cloud.siliconflow.cn/i/d1nTBKXU',
docs: 'https://docs.siliconflow.cn/', docs: 'https://docs.siliconflow.cn/',
models: 'https://docs.siliconflow.cn/docs/model-names' models: 'https://docs.siliconflow.cn/docs/model-names'
} }
@ -571,5 +572,16 @@ export const PROVIDER_CONFIG = {
docs: 'https://docs.voyageai.com/docs', docs: 'https://docs.voyageai.com/docs',
models: 'https://docs.voyageai.com/docs' models: 'https://docs.voyageai.com/docs'
} }
},
qiniu: {
api: {
url: 'https://api.qnaigc.com'
},
websites: {
official: 'https://qiniu.com',
apiKey: 'https://marketing.qiniu.com/activity/2025_newspring?cps_key=1h4vzfbkxobiq#deepseek-title',
docs: 'https://developer.qiniu.com/aitokenapi',
models: 'https://developer.qiniu.com/aitokenapi/12883/model-list'
}
} }
} }

View File

@ -737,7 +737,8 @@
"yi": "Yi", "yi": "Yi",
"zhinao": "360AI", "zhinao": "360AI",
"zhipu": "ZHIPU AI", "zhipu": "ZHIPU AI",
"voyageai": "Voyage AI" "voyageai": "Voyage AI",
"qiniu": "Qiniu"
}, },
"restore": { "restore": {
"confirm": "Are you sure you want to restore data?", "confirm": "Are you sure you want to restore data?",

View File

@ -737,7 +737,8 @@
"yi": "零一万物", "yi": "零一万物",
"zhinao": "360智脳", "zhinao": "360智脳",
"zhipu": "智譜AI", "zhipu": "智譜AI",
"voyageai": "Voyage AI" "voyageai": "Voyage AI",
"qiniu": "七牛云"
}, },
"restore": { "restore": {
"confirm": "データを復元しますか?", "confirm": "データを復元しますか?",

View File

@ -737,7 +737,8 @@
"yi": "Yi", "yi": "Yi",
"zhinao": "360AI", "zhinao": "360AI",
"zhipu": "ZHIPU AI", "zhipu": "ZHIPU AI",
"voyageai": "Voyage AI" "voyageai": "Voyage AI",
"qiniu": "Qiniu"
}, },
"restore": { "restore": {
"confirm": "Вы уверены, что хотите восстановить данные?", "confirm": "Вы уверены, что хотите восстановить данные?",

View File

@ -737,7 +737,8 @@
"yi": "零一万物", "yi": "零一万物",
"zhinao": "360智脑", "zhinao": "360智脑",
"zhipu": "智谱AI", "zhipu": "智谱AI",
"voyageai": "Voyage AI" "voyageai": "Voyage AI",
"qiniu": "七牛云"
}, },
"restore": { "restore": {
"confirm": "确定要恢复数据吗?", "confirm": "确定要恢复数据吗?",

View File

@ -737,7 +737,8 @@
"yi": "零一萬物", "yi": "零一萬物",
"zhinao": "360 智腦", "zhinao": "360 智腦",
"zhipu": "智譜 AI", "zhipu": "智譜 AI",
"voyageai": "Voyage AI" "voyageai": "Voyage AI",
"qiniu": "七牛雲"
}, },
"restore": { "restore": {
"confirm": "確定要復原資料嗎?", "confirm": "確定要復原資料嗎?",

View File

@ -136,6 +136,16 @@ export const INITIAL_PROVIDERS: Provider[] = [
isSystem: true, isSystem: true,
enabled: false enabled: false
}, },
{
id: 'qiniu',
name: 'Qiniu',
type: 'openai',
apiKey: '',
apiHost: 'https://api.qnaigc.com',
models: SYSTEM_MODELS.qiniu,
isSystem: true,
enabled: false
},
{ {
id: 'baidu-cloud', id: 'baidu-cloud',
name: 'Baidu Cloud', name: 'Baidu Cloud',

View File

@ -1193,6 +1193,7 @@ const migrateConfig = {
state.settings.codeCacheMaxSize = 1000 state.settings.codeCacheMaxSize = 1000
state.settings.codeCacheTTL = 15 state.settings.codeCacheTTL = 15
state.settings.codeCacheThreshold = 2 state.settings.codeCacheThreshold = 2
addProvider(state, 'qiniu')
return state return state
} catch (error) { } catch (error) {
return state return state