Add reasoning streaming
This commit is contained in:
@@ -585,6 +585,8 @@ type StreamMessage struct {
|
||||
Error string `json:"error,omitempty"`
|
||||
// Delta is a text fragment from the assistant response.
|
||||
Delta string `json:"delta,omitempty"`
|
||||
// ReasoningDelta is a reasoning text fragment from the assistant response.
|
||||
ReasoningDelta string `json:"reasoning_delta,omitempty"`
|
||||
// Message is the chat completion message.
|
||||
Message *llm.Message `json:"message,omitempty"`
|
||||
// Provider is the LLM provider used for the response.
|
||||
@@ -709,9 +711,10 @@ func (svc *Service) chatStream(w http.ResponseWriter, r *http.Request) {
|
||||
// Consume events and send as SSE.
|
||||
for evt := range events {
|
||||
msg := StreamMessage{
|
||||
Delta: evt.Delta,
|
||||
Provider: provider,
|
||||
Model: model,
|
||||
Delta: evt.Delta,
|
||||
ReasoningDelta: evt.ReasoningDelta,
|
||||
Provider: provider,
|
||||
Model: model,
|
||||
}
|
||||
if evt.Message.Role != "" {
|
||||
msg.Message = &evt.Message
|
||||
|
||||
Reference in New Issue
Block a user