增加豆包大模型支持
This commit is contained in:
parent
91b80ae879
commit
117c000fc9
13
relay/adaptor/doubao/constants.go
Normal file
13
relay/adaptor/doubao/constants.go
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
package doubao
|
||||||
|
|
||||||
|
// https://console.volcengine.com/ark/region:ark+cn-beijing/model
|
||||||
|
|
||||||
|
var ModelList = []string{
|
||||||
|
"Doubao-pro-128k",
|
||||||
|
"Doubao-pro-32k",
|
||||||
|
"Doubao-pro-4k",
|
||||||
|
"Doubao-lite-128k",
|
||||||
|
"Doubao-lite-32k",
|
||||||
|
"Doubao-lite-4k",
|
||||||
|
"Doubao-embedding",
|
||||||
|
}
|
14
relay/adaptor/doubao/main.go
Normal file
14
relay/adaptor/doubao/main.go
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
package doubao
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"github.com/songquanpeng/one-api/relay/meta"
|
||||||
|
"github.com/songquanpeng/one-api/relay/relaymode"
|
||||||
|
)
|
||||||
|
|
||||||
|
func GetRequestURL(meta *meta.Meta) (string, error) {
|
||||||
|
if meta.Mode == relaymode.ChatCompletions {
|
||||||
|
return fmt.Sprintf("%s/api/v3/chat/completions", meta.BaseURL), nil
|
||||||
|
}
|
||||||
|
return "", fmt.Errorf("unsupported relay mode %d for doubao", meta.Mode)
|
||||||
|
}
|
@ -5,6 +5,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"github.com/gin-gonic/gin"
|
"github.com/gin-gonic/gin"
|
||||||
"github.com/songquanpeng/one-api/relay/adaptor"
|
"github.com/songquanpeng/one-api/relay/adaptor"
|
||||||
|
"github.com/songquanpeng/one-api/relay/adaptor/doubao"
|
||||||
"github.com/songquanpeng/one-api/relay/adaptor/minimax"
|
"github.com/songquanpeng/one-api/relay/adaptor/minimax"
|
||||||
"github.com/songquanpeng/one-api/relay/channeltype"
|
"github.com/songquanpeng/one-api/relay/channeltype"
|
||||||
"github.com/songquanpeng/one-api/relay/meta"
|
"github.com/songquanpeng/one-api/relay/meta"
|
||||||
@ -45,6 +46,8 @@ func (a *Adaptor) GetRequestURL(meta *meta.Meta) (string, error) {
|
|||||||
return GetFullRequestURL(meta.BaseURL, requestURL, meta.ChannelType), nil
|
return GetFullRequestURL(meta.BaseURL, requestURL, meta.ChannelType), nil
|
||||||
case channeltype.Minimax:
|
case channeltype.Minimax:
|
||||||
return minimax.GetRequestURL(meta)
|
return minimax.GetRequestURL(meta)
|
||||||
|
case channeltype.Doubao:
|
||||||
|
return doubao.GetRequestURL(meta)
|
||||||
default:
|
default:
|
||||||
return GetFullRequestURL(meta.BaseURL, meta.RequestURLPath, meta.ChannelType), nil
|
return GetFullRequestURL(meta.BaseURL, meta.RequestURLPath, meta.ChannelType), nil
|
||||||
}
|
}
|
||||||
|
@ -4,6 +4,7 @@ import (
|
|||||||
"github.com/songquanpeng/one-api/relay/adaptor/ai360"
|
"github.com/songquanpeng/one-api/relay/adaptor/ai360"
|
||||||
"github.com/songquanpeng/one-api/relay/adaptor/baichuan"
|
"github.com/songquanpeng/one-api/relay/adaptor/baichuan"
|
||||||
"github.com/songquanpeng/one-api/relay/adaptor/deepseek"
|
"github.com/songquanpeng/one-api/relay/adaptor/deepseek"
|
||||||
|
"github.com/songquanpeng/one-api/relay/adaptor/doubao"
|
||||||
"github.com/songquanpeng/one-api/relay/adaptor/groq"
|
"github.com/songquanpeng/one-api/relay/adaptor/groq"
|
||||||
"github.com/songquanpeng/one-api/relay/adaptor/lingyiwanwu"
|
"github.com/songquanpeng/one-api/relay/adaptor/lingyiwanwu"
|
||||||
"github.com/songquanpeng/one-api/relay/adaptor/minimax"
|
"github.com/songquanpeng/one-api/relay/adaptor/minimax"
|
||||||
@ -20,6 +21,7 @@ var CompatibleChannels = []int{
|
|||||||
channeltype.Moonshot,
|
channeltype.Moonshot,
|
||||||
channeltype.Baichuan,
|
channeltype.Baichuan,
|
||||||
channeltype.Minimax,
|
channeltype.Minimax,
|
||||||
|
channeltype.Doubao,
|
||||||
channeltype.Mistral,
|
channeltype.Mistral,
|
||||||
channeltype.Groq,
|
channeltype.Groq,
|
||||||
channeltype.LingYiWanWu,
|
channeltype.LingYiWanWu,
|
||||||
@ -52,6 +54,8 @@ func GetCompatibleChannelMeta(channelType int) (string, []string) {
|
|||||||
return "deepseek", deepseek.ModelList
|
return "deepseek", deepseek.ModelList
|
||||||
case channeltype.TogetherAI:
|
case channeltype.TogetherAI:
|
||||||
return "together.ai", togetherai.ModelList
|
return "together.ai", togetherai.ModelList
|
||||||
|
case channeltype.Doubao:
|
||||||
|
return "doubao", doubao.ModelList
|
||||||
default:
|
default:
|
||||||
return "openai", ModelList
|
return "openai", ModelList
|
||||||
}
|
}
|
||||||
|
@ -41,6 +41,6 @@ const (
|
|||||||
Cloudflare
|
Cloudflare
|
||||||
DeepL
|
DeepL
|
||||||
TogetherAI
|
TogetherAI
|
||||||
|
Doubao
|
||||||
Dummy
|
Dummy
|
||||||
)
|
)
|
||||||
|
@ -41,6 +41,7 @@ var ChannelBaseURLs = []string{
|
|||||||
"https://api.cloudflare.com", // 37
|
"https://api.cloudflare.com", // 37
|
||||||
"https://api-free.deepl.com", // 38
|
"https://api-free.deepl.com", // 38
|
||||||
"https://api.together.xyz", // 39
|
"https://api.together.xyz", // 39
|
||||||
|
"https://ark.cn-beijing.volces.com", // 40
|
||||||
}
|
}
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
|
@ -25,6 +25,7 @@ export const CHANNEL_OPTIONS = [
|
|||||||
{key: 37, text: 'Cloudflare', value: 37, color: 'orange'},
|
{key: 37, text: 'Cloudflare', value: 37, color: 'orange'},
|
||||||
{key: 38, text: 'DeepL', value: 38, color: 'black'},
|
{key: 38, text: 'DeepL', value: 38, color: 'black'},
|
||||||
{key: 39, text: 'together.ai', value: 39, color: 'blue'},
|
{key: 39, text: 'together.ai', value: 39, color: 'blue'},
|
||||||
|
{key: 40, text: '豆包', value: 40, color: 'blue'},
|
||||||
{key: 8, text: '自定义渠道', value: 8, color: 'pink'},
|
{key: 8, text: '自定义渠道', value: 8, color: 'pink'},
|
||||||
{key: 22, text: '知识库:FastGPT', value: 22, color: 'blue'},
|
{key: 22, text: '知识库:FastGPT', value: 22, color: 'blue'},
|
||||||
{key: 21, text: '知识库:AI Proxy', value: 21, color: 'purple'},
|
{key: 21, text: '知识库:AI Proxy', value: 21, color: 'purple'},
|
||||||
|
Loading…
Reference in New Issue
Block a user