mirror of
https://github.com/CJackHwang/ds2api.git
synced 2026-05-06 09:25:27 +08:00
Unify Claude count_tokens, legacy stream accounting, and legacy render usage with preserved prompt text so Claude stops falling back to lossy message formatting.
21 lines
480 B
Go
21 lines
480 B
Go
package claude
|
|
|
|
import (
|
|
"strings"
|
|
|
|
"ds2api/internal/promptcompat"
|
|
"ds2api/internal/util"
|
|
)
|
|
|
|
func countClaudeInputTokens(stdReq promptcompat.StandardRequest) int {
|
|
promptText := stdReq.PromptTokenText
|
|
if strings.TrimSpace(promptText) == "" {
|
|
promptText = stdReq.FinalPrompt
|
|
}
|
|
return countClaudeInputTokensFromText(promptText, stdReq.ResolvedModel)
|
|
}
|
|
|
|
func countClaudeInputTokensFromText(promptText, model string) int {
|
|
return util.CountPromptTokens(promptText, model)
|
|
}
|