From 1c7e6b979af7323c04b09f7bc05c56ffb8b27a5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=96=B9=E7=A8=8B?= <1787003204@qq.com> Date: Wed, 12 Feb 2025 14:11:13 +0800 Subject: [PATCH] feat: add gitee ai provider (#1473) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: add gitee ai provider * feat: add gitee ai provider --------- Co-authored-by: 方程 --- .../src/assets/images/models/internvl.png | Bin 0 -> 5908 bytes .../src/assets/images/providers/gitee-ai.png | Bin 0 -> 5765 bytes src/renderer/src/config/models.ts | 149 ++++++++++++++++++ src/renderer/src/config/providers.ts | 14 ++ src/renderer/src/i18n/locales/en-us.json | 1 + src/renderer/src/i18n/locales/ja-jp.json | 1 + src/renderer/src/i18n/locales/ru-ru.json | 1 + src/renderer/src/i18n/locales/zh-cn.json | 1 + src/renderer/src/i18n/locales/zh-tw.json | 1 + src/renderer/src/store/llm.ts | 10 ++ 10 files changed, 178 insertions(+) create mode 100644 src/renderer/src/assets/images/models/internvl.png create mode 100644 src/renderer/src/assets/images/providers/gitee-ai.png diff --git a/src/renderer/src/assets/images/models/internvl.png b/src/renderer/src/assets/images/models/internvl.png new file mode 100644 index 0000000000000000000000000000000000000000..6ec4feb571ed0bb837c9aebb3cc886a484022357 GIT binary patch literal 5908 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

|K(%GJ3w7Ln;NrGaBQ>~oWw{_zRCvD!z=i-r( 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 literal 0 HcmV?d00001 diff --git a/src/renderer/src/config/models.ts b/src/renderer/src/config/models.ts index 5a0191b7a2..006d7c6d81 100644 --- a/src/renderer/src/config/models.ts +++ b/src/renderer/src/config/models.ts @@ -66,6 +66,7 @@ import IbmModelLogo from '@renderer/assets/images/models/ibm.png' import IbmModelLogoDark from '@renderer/assets/images/models/ibm_dark.png' import InternlmModelLogo from '@renderer/assets/images/models/internlm.png' import InternlmModelLogoDark from '@renderer/assets/images/models/internlm_dark.png' +import InternvlModelLogo from '@renderer/assets/images/models/internvl.png' import JinaModelLogo from '@renderer/assets/images/models/jina.png' import JinaModelLogoDark from '@renderer/assets/images/models/jina_dark.png' import KeLingModelLogo from '@renderer/assets/images/models/keling.png' @@ -187,6 +188,7 @@ export function getModelLogo(modelId: string) { glm: isLight ? ChatGLMModelLogo : ChatGLMModelLogoDark, deepseek: isLight ? DeepSeekModelLogo : DeepSeekModelLogoDark, qwen: isLight ? QwenModelLogo : QwenModelLogoDark, + qwq: isLight ? QwenModelLogo : QwenModelLogoDark, gemma: isLight ? GemmaModelLogo : GemmaModelLogoDark, 'yi-': isLight ? YiModelLogo : YiModelLogoDark, llama: isLight ? LlamaModelLogo : LlamaModelLogoDark, @@ -221,6 +223,7 @@ export function getModelLogo(modelId: string) { grok: isLight ? GrokModelLogo : GrokModelLogoDark, hunyuan: isLight ? HunyuanModelLogo : HunyuanModelLogoDark, internlm: isLight ? InternlmModelLogo : InternlmModelLogoDark, + internvl: InternvlModelLogo, llava: isLight ? LLavaModelLogo : LLavaModelLogoDark, magic: isLight ? MagicModelLogo : MagicModelLogoDark, midjourney: isLight ? MidjourneyModelLogo : MidjourneyModelLogoDark, @@ -405,6 +408,152 @@ export const SYSTEM_MODELS: Record = { group: 'Claude 3' } ], + 'gitee-ai': [ + { + id: 'DeepSeek-R1-Distill-Qwen-32B', + name: 'DeepSeek-R1-Distill-Qwen-32B', + provider: 'gitee-ai', + group: 'DeepSeek' + }, + { + id: 'DeepSeek-R1-Distill-Qwen-1.5B', + name: 'DeepSeek-R1-Distill-Qwen-1.5B', + provider: 'gitee-ai', + group: 'DeepSeek' + }, + { + id: 'DeepSeek-R1-Distill-Qwen-14B', + name: 'DeepSeek-R1-Distill-Qwen-14B', + provider: 'gitee-ai', + group: 'DeepSeek' + }, + { + id: 'DeepSeek-R1-Distill-Qwen-7B', + name: 'DeepSeek-R1-Distill-Qwen-7B', + provider: 'gitee-ai', + group: 'DeepSeek' + }, + { + id: 'DeepSeek-V3', + name: 'DeepSeek-V3', + provider: 'gitee-ai', + group: 'DeepSeek' + }, + { + id: 'DeepSeek-R1', + name: 'DeepSeek-R1', + provider: 'gitee-ai', + group: 'DeepSeek' + }, + { + id: 'deepseek-coder-33B-instruct', + name: 'deepseek-coder-33B-instruct', + provider: 'gitee-ai', + group: 'DeepSeek' + }, + { + id: 'Qwen2.5-72B-Instruct', + name: 'Qwen2.5-72B-Instruct', + provider: 'gitee-ai', + group: 'Qwen' + }, + { + id: 'Qwen2.5-14B-Instruct', + name: 'Qwen2.5-14B-Instruct', + provider: 'gitee-ai', + group: 'Qwen' + }, + { + id: 'Qwen2-7B-Instruct', + name: 'Qwen2-7B-Instruct', + provider: 'gitee-ai', + group: 'Qwen' + }, + { + id: 'Qwen2.5-32B-Instruct', + name: 'Qwen2.5-32B-Instruct', + provider: 'gitee-ai', + group: 'Qwen' + }, + { + id: 'Qwen2-72B-Instruct', + name: 'Qwen2-72B-Instruct', + provider: 'gitee-ai', + group: 'Qwen' + }, + { + id: 'Qwen2-VL-72B', + name: 'Qwen2-VL-72B', + provider: 'gitee-ai', + group: 'Qwen' + }, + { + id: 'QwQ-32B-Preview', + name: 'QwQ-32B-Preview', + provider: 'gitee-ai', + group: 'Qwen' + }, + { + id: 'Yi-34B-Chat', + name: 'Yi-34B-Chat', + provider: 'gitee-ai', + group: '01-ai' + }, + { + id: 'glm-4-9b-chat', + name: 'glm-4-9b-chat', + provider: 'gitee-ai', + group: 'THUDM' + }, + { + id: 'codegeex4-all-9b', + name: 'codegeex4-all-9b', + provider: 'gitee-ai', + group: 'THUDM' + }, + { + id: 'InternVL2-8B', + name: 'InternVL2-8B', + provider: 'gitee-ai', + group: 'OpenGVLab' + }, + { + id: 'InternVL2.5-26B', + name: 'InternVL2.5-26B', + provider: 'gitee-ai', + group: 'OpenGVLab' + }, + { + id: 'InternVL2.5-78B', + name: 'InternVL2.5-78B', + provider: 'gitee-ai', + group: 'OpenGVLab' + }, + { + id: 'bge-large-zh-v1.5', + name: 'bge-large-zh-v1.5', + provider: 'gitee-ai', + group: 'BAAI' + }, + { + id: 'bge-small-zh-v1.5', + name: 'bge-small-zh-v1.5', + provider: 'gitee-ai', + group: 'BAAI' + }, + { + id: 'bge-m3', + name: 'bge-m3', + provider: 'gitee-ai', + group: 'BAAI' + }, + { + id: 'bce-embedding-base_v1', + name: 'bce-embedding-base_v1', + provider: 'gitee-ai', + group: 'netease-youdao' + } + ], deepseek: [ { id: 'deepseek-chat', diff --git a/src/renderer/src/config/providers.ts b/src/renderer/src/config/providers.ts index 574bc043fb..69c07d5be0 100644 --- a/src/renderer/src/config/providers.ts +++ b/src/renderer/src/config/providers.ts @@ -13,6 +13,7 @@ import GithubProviderLogo from '@renderer/assets/images/providers/github.png' import GoogleProviderLogo from '@renderer/assets/images/providers/google.png' import GraphRagProviderLogo from '@renderer/assets/images/providers/graph-rag.png' import GrokProviderLogo from '@renderer/assets/images/providers/grok.png' +import GiteeAIProviderLogo from '@renderer/assets/images/providers/gitee-ai.png' import GroqProviderLogo from '@renderer/assets/images/providers/groq.png' import HyperbolicProviderLogo from '@renderer/assets/images/providers/hyperbolic.png' import JinaProviderLogo from '@renderer/assets/images/providers/jina.png' @@ -38,6 +39,8 @@ export function getProviderLogo(providerId: string) { return SiliconFlowProviderLogo case 'deepseek': return DeepSeekProviderLogo + case 'gitee-ai': + return GiteeAIProviderLogo case 'yi': return ZeroOneProviderLogo case 'groq': @@ -133,6 +136,17 @@ export const PROVIDER_CONFIG = { models: 'https://docs.siliconflow.cn/docs/model-names' } }, + 'gitee-ai': { + api: { + url: 'https://ai.gitee.com' + }, + websites: { + official: 'https://ai.gitee.com/', + apiKey: 'https://ai.gitee.com/dashboard/settings/tokens', + docs: 'https://ai.gitee.com/docs/openapi/v1#tag/%E6%96%87%E6%9C%AC%E7%94%9F%E6%88%90/POST/chat/completions', + models: 'https://ai.gitee.com/serverless-api' + } + }, deepseek: { api: { url: 'https://api.deepseek.com' diff --git a/src/renderer/src/i18n/locales/en-us.json b/src/renderer/src/i18n/locales/en-us.json index 97d3be10ce..d27364cbaa 100644 --- a/src/renderer/src/i18n/locales/en-us.json +++ b/src/renderer/src/i18n/locales/en-us.json @@ -346,6 +346,7 @@ "baidu-cloud": "Baidu Cloud", "baichuan": "Baichuan", "dashscope": "Alibaba Cloud", + "gitee-ai": "Gitee AI", "deepseek": "DeepSeek", "doubao": "Doubao", "fireworks": "Fireworks", diff --git a/src/renderer/src/i18n/locales/ja-jp.json b/src/renderer/src/i18n/locales/ja-jp.json index 9dc709a309..afeed9be3f 100644 --- a/src/renderer/src/i18n/locales/ja-jp.json +++ b/src/renderer/src/i18n/locales/ja-jp.json @@ -340,6 +340,7 @@ "baidu-cloud": "Baidu Cloud", "baichuan": "百川", "dashscope": "Alibaba Cloud", + "gitee-ai": "Gitee AI", "deepseek": "DeepSeek", "doubao": "豆包", "fireworks": "Fireworks", diff --git a/src/renderer/src/i18n/locales/ru-ru.json b/src/renderer/src/i18n/locales/ru-ru.json index ae8550d9c6..0016ab3ddf 100644 --- a/src/renderer/src/i18n/locales/ru-ru.json +++ b/src/renderer/src/i18n/locales/ru-ru.json @@ -341,6 +341,7 @@ "baidu-cloud": "Baidu Cloud", "baichuan": "Baichuan", "dashscope": "Alibaba Cloud", + "gitee-ai": "Gitee AI", "deepseek": "DeepSeek", "doubao": "Doubao", "fireworks": "Fireworks", diff --git a/src/renderer/src/i18n/locales/zh-cn.json b/src/renderer/src/i18n/locales/zh-cn.json index b53eee1dc7..b0839b3767 100644 --- a/src/renderer/src/i18n/locales/zh-cn.json +++ b/src/renderer/src/i18n/locales/zh-cn.json @@ -347,6 +347,7 @@ "baidu-cloud": "百度云千帆", "baichuan": "百川", "dashscope": "阿里云百炼", + "gitee-ai": "Gitee AI", "deepseek": "深度求索", "doubao": "豆包", "fireworks": "Fireworks", diff --git a/src/renderer/src/i18n/locales/zh-tw.json b/src/renderer/src/i18n/locales/zh-tw.json index 7e299cae96..deb083c4f6 100644 --- a/src/renderer/src/i18n/locales/zh-tw.json +++ b/src/renderer/src/i18n/locales/zh-tw.json @@ -346,6 +346,7 @@ "baidu-cloud": "百度云千帆", "baichuan": "百川", "dashscope": "阿里雲百鍊", + "gitee-ai": "Gitee AI", "deepseek": "深度求索", "doubao": "豆包", "fireworks": "Fireworks", diff --git a/src/renderer/src/store/llm.ts b/src/renderer/src/store/llm.ts index 7a54144c7e..d6a325038a 100644 --- a/src/renderer/src/store/llm.ts +++ b/src/renderer/src/store/llm.ts @@ -43,6 +43,16 @@ const initialState: LlmState = { isSystem: true, enabled: false }, + { + id: 'gitee-ai', + name: 'gitee ai', + type: 'openai', + apiKey: '', + apiHost: 'https://ai.gitee.com', + models: SYSTEM_MODELS['gitee-ai'], + isSystem: true, + enabled: false + }, { id: 'deepseek', name: 'deepseek',