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:
@@ -181,9 +181,13 @@ func buildMessages(messages []llm.Message) []openai.ChatCompletionMessageParamUn
|
||||
case llm.TextPart:
|
||||
parts = append(parts, openai.TextContentPart(p.Text))
|
||||
case llm.ImagePart:
|
||||
parts = append(parts, openai.ImageContentPart(openai.ChatCompletionContentPartImageImageURLParam{
|
||||
URL: p.URL,
|
||||
}))
|
||||
parts = append(
|
||||
parts,
|
||||
openai.ImageContentPart(openai.ChatCompletionContentPartImageImageURLParam{
|
||||
URL: p.URL,
|
||||
},
|
||||
),
|
||||
)
|
||||
}
|
||||
}
|
||||
out = append(out, openai.UserMessage(parts))
|
||||
@@ -408,7 +412,9 @@ func (s *openaiStream) Close() error {
|
||||
}
|
||||
|
||||
func mapChunkToEvent(chunk *openai.ChatCompletionChunk) llm.ChatCompletionStreamEvent {
|
||||
event := llm.ChatCompletionStreamEvent{}
|
||||
event := llm.ChatCompletionStreamEvent{
|
||||
Model: chunk.Model,
|
||||
}
|
||||
|
||||
if chunk.Usage.PromptTokens > 0 || chunk.Usage.CompletionTokens > 0 {
|
||||
usage := llm.Usage{
|
||||
|
||||
Reference in New Issue
Block a user