mirror of
https://github.com/CherryHQ/cherry-studio.git
synced 2025-12-26 03:31:24 +08:00
feat: support 302ai provider (#7044)
* feat(porvider): add provider 302ai * style(provider): change provider name 302AI to 302.AI * style(provider): system models replacement of 302.AI provider --------- Co-authored-by: 亢奋猫 <kangfenmao@qq.com>
This commit is contained in:
parent
902dc88251
commit
1d3c9b3f3b
BIN
src/renderer/src/assets/images/providers/302ai.png
Normal file
BIN
src/renderer/src/assets/images/providers/302ai.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 41 KiB |
@ -429,7 +429,86 @@ export const SYSTEM_MODELS: Record<string, Model[]> = {
|
||||
group: 'deepseek-ai'
|
||||
}
|
||||
],
|
||||
|
||||
'302ai': [
|
||||
{
|
||||
id: 'deepseek-chat',
|
||||
name: 'deepseek-chat',
|
||||
provider: '302ai',
|
||||
group: 'DeepSeek'
|
||||
},
|
||||
{
|
||||
id: 'deepseek-reasoner',
|
||||
name: 'deepseek-reasoner',
|
||||
provider: '302ai',
|
||||
group: 'DeepSeek'
|
||||
},
|
||||
{
|
||||
id: 'chatgpt-4o-latest',
|
||||
name: 'chatgpt-4o-latest',
|
||||
provider: '302ai',
|
||||
group: 'OpenAI'
|
||||
},
|
||||
{
|
||||
id: 'gpt-4.1',
|
||||
name: 'gpt-4.1',
|
||||
provider: '302ai',
|
||||
group: 'OpenAI'
|
||||
},
|
||||
{
|
||||
id: 'o3',
|
||||
name: 'o3',
|
||||
provider: '302ai',
|
||||
group: 'OpenAI'
|
||||
},
|
||||
{
|
||||
id: 'o4-mini',
|
||||
name: 'o4-mini',
|
||||
provider: '302ai',
|
||||
group: 'OpenAI'
|
||||
},
|
||||
{
|
||||
id: 'qwen3-235b-a22b',
|
||||
name: 'qwen3-235b-a22b',
|
||||
provider: '302ai',
|
||||
group: 'Qwen'
|
||||
},
|
||||
{
|
||||
id: 'gemini-2.5-flash-preview-05-20',
|
||||
name: 'gemini-2.5-flash-preview-05-20',
|
||||
provider: '302ai',
|
||||
group: 'Gemini'
|
||||
},
|
||||
{
|
||||
id: 'gemini-2.5-pro-preview-06-05',
|
||||
name: 'gemini-2.5-pro-preview-06-05',
|
||||
provider: '302ai',
|
||||
group: 'Gemini'
|
||||
},
|
||||
{
|
||||
id: 'claude-sonnet-4-20250514',
|
||||
provider: '302ai',
|
||||
name: 'claude-sonnet-4-20250514',
|
||||
group: 'Anthropic'
|
||||
},
|
||||
{
|
||||
id: 'claude-opus-4-20250514',
|
||||
provider: '302ai',
|
||||
name: 'claude-opus-4-20250514',
|
||||
group: 'Anthropic'
|
||||
},
|
||||
{
|
||||
id: 'jina-clip-v2',
|
||||
name: 'jina-clip-v2',
|
||||
provider: '302ai',
|
||||
group: 'Jina AI'
|
||||
},
|
||||
{
|
||||
id: 'jina-reranker-m0',
|
||||
name: 'jina-reranker-m0',
|
||||
provider: '302ai',
|
||||
group: 'Jina AI'
|
||||
}
|
||||
],
|
||||
aihubmix: [
|
||||
{
|
||||
id: 'gpt-4o',
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
import ZhinaoProviderLogo from '@renderer/assets/images/models/360.png'
|
||||
import HunyuanProviderLogo from '@renderer/assets/images/models/hunyuan.png'
|
||||
import AzureProviderLogo from '@renderer/assets/images/models/microsoft.png'
|
||||
import Ai302ProviderLogo from '@renderer/assets/images/providers/302ai.png'
|
||||
import AiHubMixProviderLogo from '@renderer/assets/images/providers/aihubmix.webp'
|
||||
import AlayaNewProviderLogo from '@renderer/assets/images/providers/alayanew.webp'
|
||||
import AnthropicProviderLogo from '@renderer/assets/images/providers/anthropic.png'
|
||||
@ -49,6 +50,7 @@ import CephalonProviderLogo from '@renderer/assets/images/providers/cephalon.jpe
|
||||
import { TOKENFLUX_HOST } from './constant'
|
||||
|
||||
const PROVIDER_LOGO_MAP = {
|
||||
'302ai': Ai302ProviderLogo,
|
||||
openai: OpenAiProviderLogo,
|
||||
silicon: SiliconFlowProviderLogo,
|
||||
deepseek: DeepSeekProviderLogo,
|
||||
@ -108,6 +110,17 @@ export const NOT_SUPPORTED_REANK_PROVIDERS = ['ollama']
|
||||
export const ONLY_SUPPORTED_DIMENSION_PROVIDERS = ['ollama', 'infini']
|
||||
|
||||
export const PROVIDER_CONFIG = {
|
||||
'302ai': {
|
||||
api: {
|
||||
url: 'https://api.302.ai'
|
||||
},
|
||||
websites: {
|
||||
official: 'https://302.ai',
|
||||
apiKey: 'https://dash.302.ai/apis/list',
|
||||
docs: 'https://302ai.apifox.cn/api-147522039',
|
||||
models: 'https://302.ai/pricing/'
|
||||
}
|
||||
},
|
||||
openai: {
|
||||
api: {
|
||||
url: 'https://api.openai.com'
|
||||
|
||||
@ -1019,7 +1019,8 @@
|
||||
"zhipu": "ZHIPU AI",
|
||||
"voyageai": "Voyage AI",
|
||||
"qiniu": "Qiniu AI",
|
||||
"tokenflux": "TokenFlux"
|
||||
"tokenflux": "TokenFlux",
|
||||
"302ai": "302.AI"
|
||||
},
|
||||
"restore": {
|
||||
"confirm": "Are you sure you want to restore data?",
|
||||
|
||||
@ -1017,7 +1017,8 @@
|
||||
"zhipu": "智譜AI",
|
||||
"voyageai": "Voyage AI",
|
||||
"qiniu": "七牛云 AI 推理",
|
||||
"tokenflux": "TokenFlux"
|
||||
"tokenflux": "TokenFlux",
|
||||
"302ai": "302.AI"
|
||||
},
|
||||
"restore": {
|
||||
"confirm": "データを復元しますか?",
|
||||
|
||||
@ -1018,7 +1018,8 @@
|
||||
"zhipu": "ZHIPU AI",
|
||||
"voyageai": "Voyage AI",
|
||||
"qiniu": "Qiniu AI",
|
||||
"tokenflux": "TokenFlux"
|
||||
"tokenflux": "TokenFlux",
|
||||
"302ai": "302.AI"
|
||||
},
|
||||
"restore": {
|
||||
"confirm": "Вы уверены, что хотите восстановить данные?",
|
||||
|
||||
@ -1019,7 +1019,8 @@
|
||||
"zhipu": "智谱AI",
|
||||
"voyageai": "Voyage AI",
|
||||
"qiniu": "七牛云 AI 推理",
|
||||
"tokenflux": "TokenFlux"
|
||||
"tokenflux": "TokenFlux",
|
||||
"302ai": "302.AI"
|
||||
},
|
||||
"restore": {
|
||||
"confirm": "确定要恢复数据吗?",
|
||||
|
||||
@ -1019,7 +1019,8 @@
|
||||
"zhipu": "智譜 AI",
|
||||
"voyageai": "Voyage AI",
|
||||
"qiniu": "七牛雲 AI 推理",
|
||||
"tokenflux": "TokenFlux"
|
||||
"tokenflux": "TokenFlux",
|
||||
"302ai": "302.AI"
|
||||
},
|
||||
"restore": {
|
||||
"confirm": "確定要復原資料嗎?",
|
||||
|
||||
@ -26,16 +26,6 @@ export interface LlmState {
|
||||
}
|
||||
|
||||
export const INITIAL_PROVIDERS: Provider[] = [
|
||||
{
|
||||
id: 'cephalon',
|
||||
name: 'Cephalon',
|
||||
type: 'openai',
|
||||
apiKey: '',
|
||||
apiHost: 'https://cephalon.cloud/user-center/v1/model',
|
||||
models: SYSTEM_MODELS.cephalon,
|
||||
isSystem: true,
|
||||
enabled: true
|
||||
},
|
||||
{
|
||||
id: 'silicon',
|
||||
name: 'Silicon',
|
||||
@ -146,6 +136,26 @@ export const INITIAL_PROVIDERS: Provider[] = [
|
||||
isSystem: true,
|
||||
enabled: false
|
||||
},
|
||||
{
|
||||
id: '302ai',
|
||||
name: '302.AI',
|
||||
type: 'openai',
|
||||
apiKey: '',
|
||||
apiHost: 'https://api.302.ai',
|
||||
models: SYSTEM_MODELS['302ai'],
|
||||
isSystem: true,
|
||||
enabled: true
|
||||
},
|
||||
{
|
||||
id: 'cephalon',
|
||||
name: 'Cephalon',
|
||||
type: 'openai',
|
||||
apiKey: '',
|
||||
apiHost: 'https://cephalon.cloud/user-center/v1/model',
|
||||
models: SYSTEM_MODELS.cephalon,
|
||||
isSystem: true,
|
||||
enabled: true
|
||||
},
|
||||
{
|
||||
id: 'openrouter',
|
||||
name: 'OpenRouter',
|
||||
|
||||
@ -1566,6 +1566,14 @@ const migrateConfig = {
|
||||
} catch (error) {
|
||||
return state
|
||||
}
|
||||
},
|
||||
'112': (state: RootState) => {
|
||||
try {
|
||||
addProvider(state, '302ai')
|
||||
return state
|
||||
} catch (error) {
|
||||
return state
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user