diff --git a/backend/magic-service/app/Domain/Provider/Entity/ValueObject/ProviderCode.php b/backend/magic-service/app/Domain/Provider/Entity/ValueObject/ProviderCode.php index c9b5ff18bc..0b675cbbfa 100644 --- a/backend/magic-service/app/Domain/Provider/Entity/ValueObject/ProviderCode.php +++ b/backend/magic-service/app/Domain/Provider/Entity/ValueObject/ProviderCode.php @@ -50,6 +50,7 @@ enum ProviderCode: string case Gemini = 'Gemini'; case DashScope = 'DashScope'; case OpenRouter = 'OpenRouter'; + case Requesty = 'Requesty'; case SuChuang = 'SuChuang'; case Anthropic = 'Anthropic'; diff --git a/frontend/magic-web/packages/magic-admin/src/const/aiModel.ts b/frontend/magic-web/packages/magic-admin/src/const/aiModel.ts index 32ae4c907b..80e64b95e9 100644 --- a/frontend/magic-web/packages/magic-admin/src/const/aiModel.ts +++ b/frontend/magic-web/packages/magic-admin/src/const/aiModel.ts @@ -52,6 +52,8 @@ export namespace AiModel { QwenGlobal = "QwenGlobal", /** OpenRouter */ OpenRouter = "OpenRouter", + /** Requesty */ + Requesty = "Requesty", /** 百度 */ Baidu = "Baidu", /** 国家超算平台 */ @@ -93,6 +95,7 @@ export namespace AiModel { [ServiceProvider.Gemini]: "https://api.gemini.com", [ServiceProvider.GoogleImage]: "https://api.googleimage.com", [ServiceProvider.OpenRouter]: "https://openrouter.ai/api/v1/chat/completions", + [ServiceProvider.Requesty]: "https://router.requesty.ai/v1/chat/completions", [ServiceProvider.Google]: "https://generativelanguage.googleapis.com/v1beta", [ServiceProvider.Anthropic]: "https://api.anthropic.com", [ServiceProvider.Keling]: "https://api.klingai.com", diff --git a/frontend/magic-web/packages/magic-admin/src/pages/PlatformPackage/components/ServiceIcon/index.tsx b/frontend/magic-web/packages/magic-admin/src/pages/PlatformPackage/components/ServiceIcon/index.tsx index f85cb16f85..e039e21b9a 100644 --- a/frontend/magic-web/packages/magic-admin/src/pages/PlatformPackage/components/ServiceIcon/index.tsx +++ b/frontend/magic-web/packages/magic-admin/src/pages/PlatformPackage/components/ServiceIcon/index.tsx @@ -47,6 +47,7 @@ const serviceIconMap: Partial> = { [AiModel.ServiceProvider.Google]: googleIcon, [AiModel.ServiceProvider.Gemini]: googleIcon, [AiModel.ServiceProvider.OpenRouter]: openrouterIcon, + [AiModel.ServiceProvider.Requesty]: defaultIcon, [AiModel.ServiceProvider.MiracleVision]: miraclevisionIcon, [AiModel.ServiceProvider.Tencent]: tencentCloudIcon, [AiModel.ServiceProvider.TTAPI]: ttapiIcon, diff --git a/frontend/magic-web/src/assets/locales/en_US/initialization.json b/frontend/magic-web/src/assets/locales/en_US/initialization.json index c869c44b62..10ce1b3945 100644 --- a/frontend/magic-web/src/assets/locales/en_US/initialization.json +++ b/frontend/magic-web/src/assets/locales/en_US/initialization.json @@ -59,6 +59,7 @@ "OfficialOpenAI": "Official OpenAI", "OpenAI": "OpenAI Compatible", "OpenRouter": "OpenRouter", + "Requesty": "Requesty", "Volcengine": "Volcengine" }, "subtitle": "Select and configure your AI model service provider", diff --git a/frontend/magic-web/src/assets/locales/zh_CN/initialization.json b/frontend/magic-web/src/assets/locales/zh_CN/initialization.json index cfe352217c..41821325cb 100644 --- a/frontend/magic-web/src/assets/locales/zh_CN/initialization.json +++ b/frontend/magic-web/src/assets/locales/zh_CN/initialization.json @@ -59,6 +59,7 @@ "OfficialOpenAI": "OpenAI 官方", "OpenAI": "OpenAI 兼容", "OpenRouter": "OpenRouter", + "Requesty": "Requesty", "Volcengine": "火山引擎" }, "subtitle": "选择并配置您的 AI 模型服务提供商", diff --git a/frontend/magic-web/src/pages/initialization/components/Step2Provider.tsx b/frontend/magic-web/src/pages/initialization/components/Step2Provider.tsx index ab87b3eac5..6e83d48131 100644 --- a/frontend/magic-web/src/pages/initialization/components/Step2Provider.tsx +++ b/frontend/magic-web/src/pages/initialization/components/Step2Provider.tsx @@ -90,6 +90,11 @@ const PROVIDER_CONFIGS: Record = { showApiUrl: true, showApiKey: true, }, + Requesty: { + defaultUrl: "https://router.requesty.ai/v1", + showApiUrl: true, + showApiKey: true, + }, DashScope: { defaultUrl: "https://dashscope.aliyuncs.com/compatible-mode/v1", showApiUrl: true, @@ -114,6 +119,7 @@ const PROVIDERS: Provider[] = [ { value: "Gemini", icon: }, { value: "AWSBedrock", icon: }, { value: "OpenRouter", icon: }, + { value: "Requesty", icon: }, { value: "DashScope", icon: }, { value: "Volcengine", icon: }, { value: "DeepSeek", icon: }, diff --git a/frontend/magic-web/src/pages/superMagic/components/MessageEditor/components/ModelSwitch/components/AddModel/providerFieldConfigs.ts b/frontend/magic-web/src/pages/superMagic/components/MessageEditor/components/ModelSwitch/components/AddModel/providerFieldConfigs.ts index 0072283bba..3856849041 100644 --- a/frontend/magic-web/src/pages/superMagic/components/MessageEditor/components/ModelSwitch/components/AddModel/providerFieldConfigs.ts +++ b/frontend/magic-web/src/pages/superMagic/components/MessageEditor/components/ModelSwitch/components/AddModel/providerFieldConfigs.ts @@ -21,6 +21,7 @@ const PROVIDER_CODE_TO_SERVICE_PROVIDER_MAP: Partial = { openrouter: "https://openrouter.ai/api/v1", + requesty: "https://router.requesty.ai/v1", ttapi: "https://api.ttapi.io", gemini: "https://generativelanguage.googleapis.com", google: "https://generativelanguage.googleapis.com", @@ -61,6 +63,7 @@ const PROVIDER_API_KEY_PLACEHOLDER_MAP: Record = { google: "Google API Key", gemini: "Google API Key", openrouter: "OpenRouter API Key", + requesty: "Requesty API Key", alibabacloud: "Aliyun (Bailian) API Key", dashscope: "Aliyun (Bailian) API Key", qwen: "Aliyun (Bailian) API Key",