From 478a505869bf26b15dcbc77feb2c09c1f2ff4aac Mon Sep 17 00:00:00 2001 From: Grail Finder Date: Fri, 6 Feb 2026 11:32:06 +0300 Subject: Enha: client stop string for completion only --- bot.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'bot.go') diff --git a/bot.go b/bot.go index bbb3f65..c6c1e77 100644 --- a/bot.go +++ b/bot.go @@ -682,8 +682,10 @@ func sendMsgToLLM(body io.Reader) { answerText = strings.ReplaceAll(chunk.Chunk, "\n\n", "\n") // Accumulate text to check for stop strings that might span across chunks // check if chunk is in stopstrings => stop - if slices.Contains(stopStrings, answerText) { - logger.Debug("Stop string detected and handled", "stop_string", answerText) + // this check is needed only for openrouter /v1/completion, since it does not respect stop slice + if chunkParser.GetAPIType() == models.APITypeCompletion && + slices.Contains(stopStrings, answerText) { + logger.Debug("stop string detected on client side for completion endpoint", "stop_string", answerText) streamDone <- true } chunkChan <- answerText -- cgit v1.2.3