feat: add xai grok-3-mini reasoning effort
This commit is contained in:
@@ -10,6 +10,7 @@ import (
|
|||||||
"one-api/relay/channel"
|
"one-api/relay/channel"
|
||||||
"one-api/relay/channel/openai"
|
"one-api/relay/channel/openai"
|
||||||
relaycommon "one-api/relay/common"
|
relaycommon "one-api/relay/common"
|
||||||
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
type Adaptor struct {
|
type Adaptor struct {
|
||||||
@@ -49,6 +50,24 @@ func (a *Adaptor) ConvertOpenAIRequest(c *gin.Context, info *relaycommon.RelayIn
|
|||||||
return nil, errors.New("request is nil")
|
return nil, errors.New("request is nil")
|
||||||
}
|
}
|
||||||
request.StreamOptions = nil
|
request.StreamOptions = nil
|
||||||
|
if strings.HasPrefix(request.Model, "grok-3-mini") {
|
||||||
|
if request.MaxCompletionTokens == 0 && request.MaxTokens != 0 {
|
||||||
|
request.MaxCompletionTokens = request.MaxTokens
|
||||||
|
request.MaxTokens = 0
|
||||||
|
}
|
||||||
|
if strings.HasSuffix(request.Model, "-high") {
|
||||||
|
request.ReasoningEffort = "high"
|
||||||
|
request.Model = strings.TrimSuffix(request.Model, "-high")
|
||||||
|
} else if strings.HasSuffix(request.Model, "-low") {
|
||||||
|
request.ReasoningEffort = "low"
|
||||||
|
request.Model = strings.TrimSuffix(request.Model, "-low")
|
||||||
|
} else if strings.HasSuffix(request.Model, "-medium") {
|
||||||
|
request.ReasoningEffort = "medium"
|
||||||
|
request.Model = strings.TrimSuffix(request.Model, "-medium")
|
||||||
|
}
|
||||||
|
info.ReasoningEffort = request.ReasoningEffort
|
||||||
|
info.UpstreamModelName = request.Model
|
||||||
|
}
|
||||||
return request, nil
|
return request, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,16 @@
|
|||||||
package xai
|
package xai
|
||||||
|
|
||||||
var ModelList = []string{
|
var ModelList = []string{
|
||||||
// grok-2,grok-2-vision,grok-3-mini-beta,grok-3-beta
|
// grok-3
|
||||||
"grok-3-beta", "grok-3-mini-beta", "grok-2", "grok-2-vision", "grok-3", "grok-beta", "grok-vision-beta",
|
"grok-3-beta", "grok-3-mini-beta",
|
||||||
|
// grok-3 mini
|
||||||
"grok-3-fast-beta", "grok-3-mini-fast-beta",
|
"grok-3-fast-beta", "grok-3-mini-fast-beta",
|
||||||
|
// extend grok-3-mini reasoning
|
||||||
|
"grok-3-mini-beta-high", "grok-3-mini-beta-low", "grok-3-mini-beta-medium",
|
||||||
|
"grok-3-mini-fast-beta-high", "grok-3-mini-fast-beta-low", "grok-3-mini-fast-beta-medium",
|
||||||
|
|
||||||
|
"grok-2", "grok-2-vision",
|
||||||
|
"grok-beta", "grok-vision-beta",
|
||||||
}
|
}
|
||||||
|
|
||||||
var ChannelName = "xai"
|
var ChannelName = "xai"
|
||||||
|
|||||||
Reference in New Issue
Block a user