diff --git a/backend/internal/adapter/llm/anyllm.go b/backend/internal/adapter/llm/anyllm.go index 5668427..ece6a4d 100644 --- a/backend/internal/adapter/llm/anyllm.go +++ b/backend/internal/adapter/llm/anyllm.go @@ -168,13 +168,15 @@ func (e *AnyLLMEngine) Stream( Extra: extra, }) - params.OnChunk(&domain.Chunk{ - Done: false, - ToolName: tc.Function.Name, - Role: anyllm.RoleAssistant, - Content: tc.Function.Arguments, - Reasoning: false, - }) + if params.OnChunk != nil { + params.OnChunk(&domain.Chunk{ + Done: false, + ToolName: tc.Function.Name, + Role: anyllm.RoleAssistant, + Content: tc.Function.Arguments, + Reasoning: false, + }) + } } @@ -182,11 +184,13 @@ func (e *AnyLLMEngine) Stream( } if !toolCalling { - params.OnChunk(&domain.Chunk{ - Done: true, - Role: anyllm.RoleAssistant, - Content: "", - }) + if params.OnChunk != nil { + params.OnChunk(&domain.Chunk{ + Done: true, + Role: anyllm.RoleAssistant, + Content: "", + }) + } } if err := <-errChan; err != nil {