diff --git a/internal/entity/models/jiekouai.go b/internal/entity/models/jiekouai.go index 638c46f47c..6a81a1bbc3 100644 --- a/internal/entity/models/jiekouai.go +++ b/internal/entity/models/jiekouai.go @@ -292,6 +292,7 @@ func (j *JieKouAIModel) ChatStreamlyWithSender(modelName string, messages []Mess // SSE parsing: read line by line scanner := bufio.NewScanner(resp.Body) + scanner.Buffer(make([]byte, 64*1024), 1024*1024) for scanner.Scan() { line := scanner.Text() diff --git a/internal/entity/models/sse_scanner_buffer_test.go b/internal/entity/models/sse_scanner_buffer_test.go index 792c69e587..c458921739 100644 --- a/internal/entity/models/sse_scanner_buffer_test.go +++ b/internal/entity/models/sse_scanner_buffer_test.go @@ -59,6 +59,7 @@ func TestChatStreamLargeChunkNotTruncated(t *testing.T) { {"lmstudio", build(func(b map[string]string, s URLSuffix) chatStreamer { return NewLmStudioModel(b, s) })}, {"gitee", build(func(b map[string]string, s URLSuffix) chatStreamer { return NewGiteeModel(b, s) })}, {"tokenhub", build(func(b map[string]string, s URLSuffix) chatStreamer { return NewTokenHubModel(b, s) })}, + {"jiekouai", build(func(b map[string]string, s URLSuffix) chatStreamer { return NewJieKouAIModel(b, s) })}, } for _, tc := range cases {