2024-02-29 16:21:25 +08:00
|
|
|
package relay
|
|
|
|
|
|
|
|
|
|
import (
|
2024-06-12 20:37:42 +08:00
|
|
|
commonconstant "one-api/constant"
|
2024-02-29 16:21:25 +08:00
|
|
|
"one-api/relay/channel"
|
|
|
|
|
"one-api/relay/channel/ali"
|
2024-04-23 11:44:40 +08:00
|
|
|
"one-api/relay/channel/aws"
|
2024-02-29 16:21:25 +08:00
|
|
|
"one-api/relay/channel/baidu"
|
2025-02-12 00:07:02 +08:00
|
|
|
"one-api/relay/channel/baidu_v2"
|
2024-02-29 16:21:25 +08:00
|
|
|
"one-api/relay/channel/claude"
|
2024-07-13 19:55:22 +08:00
|
|
|
"one-api/relay/channel/cloudflare"
|
2024-04-24 18:49:56 +08:00
|
|
|
"one-api/relay/channel/cohere"
|
2024-12-05 17:50:08 +08:00
|
|
|
"one-api/relay/channel/deepseek"
|
2024-07-06 01:32:40 +08:00
|
|
|
"one-api/relay/channel/dify"
|
2024-02-29 16:21:25 +08:00
|
|
|
"one-api/relay/channel/gemini"
|
2024-07-06 18:42:48 +08:00
|
|
|
"one-api/relay/channel/jina"
|
2024-11-05 17:11:33 +08:00
|
|
|
"one-api/relay/channel/mistral"
|
2025-01-22 04:21:08 +08:00
|
|
|
"one-api/relay/channel/mokaai"
|
2024-03-18 19:55:19 +08:00
|
|
|
"one-api/relay/channel/ollama"
|
2024-02-29 16:21:25 +08:00
|
|
|
"one-api/relay/channel/openai"
|
|
|
|
|
"one-api/relay/channel/palm"
|
2024-03-18 19:55:19 +08:00
|
|
|
"one-api/relay/channel/perplexity"
|
2024-08-16 18:27:26 +08:00
|
|
|
"one-api/relay/channel/siliconflow"
|
2024-06-12 20:37:42 +08:00
|
|
|
"one-api/relay/channel/task/suno"
|
2024-02-29 16:21:25 +08:00
|
|
|
"one-api/relay/channel/tencent"
|
2024-08-27 20:19:51 +08:00
|
|
|
"one-api/relay/channel/vertex"
|
2025-02-11 23:47:15 +08:00
|
|
|
"one-api/relay/channel/volcengine"
|
2024-02-29 16:21:25 +08:00
|
|
|
"one-api/relay/channel/xunfei"
|
|
|
|
|
"one-api/relay/channel/zhipu"
|
2024-03-01 22:31:08 +08:00
|
|
|
"one-api/relay/channel/zhipu_4v"
|
2024-02-29 16:21:25 +08:00
|
|
|
"one-api/relay/constant"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func GetAdaptor(apiType int) channel.Adaptor {
|
|
|
|
|
switch apiType {
|
|
|
|
|
case constant.APITypeAli:
|
|
|
|
|
return &ali.Adaptor{}
|
|
|
|
|
case constant.APITypeAnthropic:
|
|
|
|
|
return &claude.Adaptor{}
|
|
|
|
|
case constant.APITypeBaidu:
|
|
|
|
|
return &baidu.Adaptor{}
|
|
|
|
|
case constant.APITypeGemini:
|
|
|
|
|
return &gemini.Adaptor{}
|
|
|
|
|
case constant.APITypeOpenAI:
|
|
|
|
|
return &openai.Adaptor{}
|
|
|
|
|
case constant.APITypePaLM:
|
|
|
|
|
return &palm.Adaptor{}
|
|
|
|
|
case constant.APITypeTencent:
|
|
|
|
|
return &tencent.Adaptor{}
|
|
|
|
|
case constant.APITypeXunfei:
|
|
|
|
|
return &xunfei.Adaptor{}
|
|
|
|
|
case constant.APITypeZhipu:
|
|
|
|
|
return &zhipu.Adaptor{}
|
2024-05-16 18:31:03 +08:00
|
|
|
case constant.APITypeZhipuV4:
|
2024-03-01 22:31:08 +08:00
|
|
|
return &zhipu_4v.Adaptor{}
|
2024-03-18 19:55:19 +08:00
|
|
|
case constant.APITypeOllama:
|
|
|
|
|
return &ollama.Adaptor{}
|
|
|
|
|
case constant.APITypePerplexity:
|
|
|
|
|
return &perplexity.Adaptor{}
|
2024-04-23 11:44:40 +08:00
|
|
|
case constant.APITypeAws:
|
|
|
|
|
return &aws.Adaptor{}
|
2024-04-24 18:49:56 +08:00
|
|
|
case constant.APITypeCohere:
|
|
|
|
|
return &cohere.Adaptor{}
|
2024-07-06 01:32:40 +08:00
|
|
|
case constant.APITypeDify:
|
|
|
|
|
return &dify.Adaptor{}
|
2024-07-06 18:42:48 +08:00
|
|
|
case constant.APITypeJina:
|
|
|
|
|
return &jina.Adaptor{}
|
2024-07-13 19:55:22 +08:00
|
|
|
case constant.APITypeCloudflare:
|
|
|
|
|
return &cloudflare.Adaptor{}
|
2024-08-16 18:27:26 +08:00
|
|
|
case constant.APITypeSiliconFlow:
|
|
|
|
|
return &siliconflow.Adaptor{}
|
2024-08-27 20:19:51 +08:00
|
|
|
case constant.APITypeVertexAi:
|
|
|
|
|
return &vertex.Adaptor{}
|
2024-11-05 17:11:33 +08:00
|
|
|
case constant.APITypeMistral:
|
|
|
|
|
return &mistral.Adaptor{}
|
2024-12-05 17:50:08 +08:00
|
|
|
case constant.APITypeDeepSeek:
|
|
|
|
|
return &deepseek.Adaptor{}
|
2025-01-22 04:21:08 +08:00
|
|
|
case constant.APITypeMokaAI:
|
|
|
|
|
return &mokaai.Adaptor{}
|
2025-02-11 23:47:15 +08:00
|
|
|
case constant.APITypeVolcEngine:
|
|
|
|
|
return &volcengine.Adaptor{}
|
2025-02-12 00:07:02 +08:00
|
|
|
case constant.APITypeBaiduV2:
|
|
|
|
|
return &baidu_v2.Adaptor{}
|
2025-02-26 23:40:16 +08:00
|
|
|
case constant.APITypeOpenRouter:
|
2025-03-14 17:31:05 +08:00
|
|
|
return &openai.Adaptor{}
|
2025-03-12 17:53:46 +08:00
|
|
|
case constant.APITypeXinference:
|
|
|
|
|
return &openai.Adaptor{}
|
2024-02-29 16:21:25 +08:00
|
|
|
}
|
|
|
|
|
return nil
|
|
|
|
|
}
|
2024-06-12 20:37:42 +08:00
|
|
|
|
|
|
|
|
func GetTaskAdaptor(platform commonconstant.TaskPlatform) channel.TaskAdaptor {
|
|
|
|
|
switch platform {
|
|
|
|
|
//case constant.APITypeAIProxyLibrary:
|
|
|
|
|
// return &aiproxy.Adaptor{}
|
|
|
|
|
case commonconstant.TaskPlatformSuno:
|
|
|
|
|
return &suno.TaskAdaptor{}
|
|
|
|
|
}
|
|
|
|
|
return nil
|
|
|
|
|
}
|