Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
phsl
/
new-api
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
d8d0a6fb
authored
Jun 06, 2025
by
Calcium-Ion
Committed by
GitHub
Jun 06, 2025
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #1168 from RedwindA/fix/2.5-pro-128
Fix: 更新2.5 pro的思考预算范围
parents
84a9a54a
eb23dffa
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
25 additions
and
0 deletions
+25
-0
relay/channel/gemini/relay-gemini.go
+25
-0
No files found.
relay/channel/gemini/relay-gemini.go
View file @
d8d0a6fb
...
...
@@ -78,20 +78,45 @@ func CovertGemini2OpenAI(textRequest dto.GeneralOpenAIRequest, info *relaycommon
}
}
else
{
budgetTokens
:=
model_setting
.
GetGeminiSettings
()
.
ThinkingAdapterBudgetTokensPercentage
*
float64
(
geminiRequest
.
GenerationConfig
.
MaxOutputTokens
)
// 检查是否为新的2.5pro模型(支持ThinkingBudget但有特殊范围)
isNew25Pro
:=
strings
.
HasPrefix
(
info
.
OriginModelName
,
"gemini-2.5-pro"
)
&&
!
strings
.
HasPrefix
(
info
.
OriginModelName
,
"gemini-2.5-pro-preview-05-06"
)
&&
!
strings
.
HasPrefix
(
info
.
OriginModelName
,
"gemini-2.5-pro-preview-03-25"
)
if
isNew25Pro
{
// 新的2.5pro模型:ThinkingBudget范围为128-32768
if
budgetTokens
==
0
||
budgetTokens
<
128
{
budgetTokens
=
128
}
else
if
budgetTokens
>
32768
{
budgetTokens
=
32768
}
}
else
{
// 其他模型:ThinkingBudget范围为0-24576
if
budgetTokens
==
0
||
budgetTokens
>
24576
{
budgetTokens
=
24576
}
}
geminiRequest
.
GenerationConfig
.
ThinkingConfig
=
&
GeminiThinkingConfig
{
ThinkingBudget
:
common
.
GetPointer
(
int
(
budgetTokens
)),
IncludeThoughts
:
true
,
}
}
}
else
if
strings
.
HasSuffix
(
info
.
OriginModelName
,
"-nothinking"
)
{
// 检查是否为新的2.5pro模型(不支持-nothinking,因为最低值只能为128)
isNew25Pro
:=
strings
.
HasPrefix
(
info
.
OriginModelName
,
"gemini-2.5-pro"
)
&&
!
strings
.
HasPrefix
(
info
.
OriginModelName
,
"gemini-2.5-pro-preview-05-06"
)
&&
!
strings
.
HasPrefix
(
info
.
OriginModelName
,
"gemini-2.5-pro-preview-03-25"
)
if
!
isNew25Pro
{
// 只有非新2.5pro模型才支持-nothinking
geminiRequest
.
GenerationConfig
.
ThinkingConfig
=
&
GeminiThinkingConfig
{
ThinkingBudget
:
common
.
GetPointer
(
0
),
}
}
}
}
safetySettings
:=
make
([]
GeminiChatSafetySettings
,
0
,
len
(
SafetySettingList
))
for
_
,
category
:=
range
SafetySettingList
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment