feat(usage): add requested model usage metadata helpers
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
@@ -98,6 +98,9 @@ type UsageLog struct {
|
|||||||
AccountID int64
|
AccountID int64
|
||||||
RequestID string
|
RequestID string
|
||||||
Model string
|
Model string
|
||||||
|
// RequestedModel is the client-requested model name recorded for stable user/admin display.
|
||||||
|
// Empty should be treated as Model for backward compatibility with historical rows.
|
||||||
|
RequestedModel string
|
||||||
// UpstreamModel is the actual model sent to the upstream provider after mapping.
|
// UpstreamModel is the actual model sent to the upstream provider after mapping.
|
||||||
// Nil means no mapping was applied (requested model was used as-is).
|
// Nil means no mapping was applied (requested model was used as-is).
|
||||||
UpstreamModel *string
|
UpstreamModel *string
|
||||||
|
|||||||
@@ -19,3 +19,10 @@ func optionalNonEqualStringPtr(value, compare string) *string {
|
|||||||
}
|
}
|
||||||
return &value
|
return &value
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func forwardResultBillingModel(requestedModel, upstreamModel string) string {
|
||||||
|
if trimmedUpstream := strings.TrimSpace(upstreamModel); trimmedUpstream != "" {
|
||||||
|
return trimmedUpstream
|
||||||
|
}
|
||||||
|
return strings.TrimSpace(requestedModel)
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user