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
d309727e
authored
Apr 29, 2025
by
CaIon
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: gemini thinking tokens count #1014
parent
7e3e9b1a
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
10 additions
and
3 deletions
+10
-3
dto/openai_request.go
+1
-0
relay/channel/ali/constants.go
+6
-1
relay/channel/gemini/relay-gemini.go
+3
-2
No files found.
dto/openai_request.go
View file @
d309727e
...
@@ -51,6 +51,7 @@ type GeneralOpenAIRequest struct {
...
@@ -51,6 +51,7 @@ type GeneralOpenAIRequest struct {
Dimensions
int
`json:"dimensions,omitempty"`
Dimensions
int
`json:"dimensions,omitempty"`
Modalities
any
`json:"modalities,omitempty"`
Modalities
any
`json:"modalities,omitempty"`
Audio
any
`json:"audio,omitempty"`
Audio
any
`json:"audio,omitempty"`
EnableThinking
any
`json:"enable_thinking,omitempty"`
// ali
ExtraBody
any
`json:"extra_body,omitempty"`
ExtraBody
any
`json:"extra_body,omitempty"`
}
}
...
...
relay/channel/ali/constants.go
View file @
d309727e
package
ali
package
ali
var
ModelList
=
[]
string
{
var
ModelList
=
[]
string
{
"qwen-turbo"
,
"qwen-plus"
,
"qwen-max"
,
"qwen-max-longcontext"
,
"qwen-turbo"
,
"qwen-plus"
,
"qwen-max"
,
"qwen-max-longcontext"
,
"qwq-32b"
,
"qwen3-235b-a22b"
,
"text-embedding-v1"
,
"text-embedding-v1"
,
}
}
...
...
relay/channel/gemini/relay-gemini.go
View file @
d309727e
...
@@ -670,6 +670,7 @@ func GeminiChatStreamHandler(c *gin.Context, resp *http.Response, info *relaycom
...
@@ -670,6 +670,7 @@ func GeminiChatStreamHandler(c *gin.Context, resp *http.Response, info *relaycom
usage
.
PromptTokens
=
geminiResponse
.
UsageMetadata
.
PromptTokenCount
usage
.
PromptTokens
=
geminiResponse
.
UsageMetadata
.
PromptTokenCount
usage
.
CompletionTokens
=
geminiResponse
.
UsageMetadata
.
CandidatesTokenCount
usage
.
CompletionTokens
=
geminiResponse
.
UsageMetadata
.
CandidatesTokenCount
usage
.
CompletionTokenDetails
.
ReasoningTokens
=
geminiResponse
.
UsageMetadata
.
ThoughtsTokenCount
usage
.
CompletionTokenDetails
.
ReasoningTokens
=
geminiResponse
.
UsageMetadata
.
ThoughtsTokenCount
usage
.
TotalTokens
=
geminiResponse
.
UsageMetadata
.
TotalTokenCount
}
}
err
=
helper
.
ObjectData
(
c
,
response
)
err
=
helper
.
ObjectData
(
c
,
response
)
if
err
!=
nil
{
if
err
!=
nil
{
...
@@ -690,9 +691,8 @@ func GeminiChatStreamHandler(c *gin.Context, resp *http.Response, info *relaycom
...
@@ -690,9 +691,8 @@ func GeminiChatStreamHandler(c *gin.Context, resp *http.Response, info *relaycom
}
}
}
}
usage
.
TotalTokens
=
usage
.
PromptTokens
+
usage
.
CompletionTokens
usage
.
PromptTokensDetails
.
TextTokens
=
usage
.
PromptTokens
usage
.
PromptTokensDetails
.
TextTokens
=
usage
.
PromptTokens
//usage.CompletionTokenDetails.TextTokens = usage.Completion
Tokens
usage
.
CompletionTokens
=
usage
.
TotalTokens
-
usage
.
Prompt
Tokens
if
info
.
ShouldIncludeUsage
{
if
info
.
ShouldIncludeUsage
{
response
=
helper
.
GenerateFinalUsageResponse
(
id
,
createAt
,
info
.
UpstreamModelName
,
*
usage
)
response
=
helper
.
GenerateFinalUsageResponse
(
id
,
createAt
,
info
.
UpstreamModelName
,
*
usage
)
...
@@ -740,6 +740,7 @@ func GeminiChatHandler(c *gin.Context, resp *http.Response, info *relaycommon.Re
...
@@ -740,6 +740,7 @@ func GeminiChatHandler(c *gin.Context, resp *http.Response, info *relaycommon.Re
}
}
usage
.
CompletionTokenDetails
.
ReasoningTokens
=
geminiResponse
.
UsageMetadata
.
ThoughtsTokenCount
usage
.
CompletionTokenDetails
.
ReasoningTokens
=
geminiResponse
.
UsageMetadata
.
ThoughtsTokenCount
usage
.
CompletionTokens
=
usage
.
TotalTokens
-
usage
.
PromptTokens
fullTextResponse
.
Usage
=
usage
fullTextResponse
.
Usage
=
usage
jsonResponse
,
err
:=
json
.
Marshal
(
fullTextResponse
)
jsonResponse
,
err
:=
json
.
Marshal
(
fullTextResponse
)
...
...
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