Propagate model through streamed responses
StreamAccumulator never set its model field, so Response().Model was always empty for streamed completions. Add a Model field to stream events and populate it in all three providers (OpenAI, Anthropic, Bedrock). Signed-off-by: Bryan Frimin <bryan@getprobo.com>
This commit is contained in:
@@ -431,15 +431,16 @@ func (s *anthropicStream) mapStreamEvent(event *anthropic.MessageStreamEventUnio
|
||||
return evt, true
|
||||
|
||||
case "message_start":
|
||||
if event.Message.Usage.InputTokens > 0 {
|
||||
return llm.ChatCompletionStreamEvent{
|
||||
Usage: &llm.Usage{
|
||||
InputTokens: int(event.Message.Usage.InputTokens),
|
||||
OutputTokens: int(event.Message.Usage.OutputTokens),
|
||||
},
|
||||
}, true
|
||||
evt := llm.ChatCompletionStreamEvent{
|
||||
Model: string(event.Message.Model),
|
||||
}
|
||||
return llm.ChatCompletionStreamEvent{}, false
|
||||
if event.Message.Usage.InputTokens > 0 || event.Message.Usage.OutputTokens > 0 {
|
||||
evt.Usage = &llm.Usage{
|
||||
InputTokens: int(event.Message.Usage.InputTokens),
|
||||
OutputTokens: int(event.Message.Usage.OutputTokens),
|
||||
}
|
||||
}
|
||||
return evt, true
|
||||
|
||||
default:
|
||||
return llm.ChatCompletionStreamEvent{}, false
|
||||
|
||||
Reference in New Issue
Block a user