This commit is contained in:
Deleted user 2026-05-27 10:33:40 +08:00 committed by GitHub
commit 2af83a46f4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 11 additions and 2 deletions

View file

@ -86,11 +86,17 @@ export abstract class BaseOpenAiCompatibleProvider<ModelName extends string>
const temperature = this.options.modelTemperature ?? info.defaultTemperature ?? this.defaultTemperature
// Enable mergeToolResultText to prevent text content after tool_results from creating
// separate user messages that can disrupt the model's conversation flow.
// This helps models like GLM4.5 avoid getting stuck in repeated file read loops.
const params: OpenAI.Chat.Completions.ChatCompletionCreateParamsStreaming = {
model,
max_tokens,
temperature,
messages: [{ role: "system", content: systemPrompt }, ...convertToOpenAiMessages(messages)],
messages: [
{ role: "system", content: systemPrompt },
...convertToOpenAiMessages(messages, { mergeToolResultText: true }),
],
stream: true,
stream_options: { include_usage: true },
tools: this.convertToolsForOpenAI(metadata?.tools),

View file

@ -42,9 +42,12 @@ export class LmStudioHandler extends BaseProvider implements SingleCompletionHan
messages: Anthropic.Messages.MessageParam[],
metadata?: ApiHandlerCreateMessageMetadata,
): ApiStream {
// Enable mergeToolResultText to prevent text content after tool_results from creating
// separate user messages that can disrupt the model's conversation flow.
// This helps models like GLM4.5 avoid getting stuck in repeated file read loops.
const openAiMessages: OpenAI.Chat.ChatCompletionMessageParam[] = [
{ role: "system", content: systemPrompt },
...convertToOpenAiMessages(messages),
...convertToOpenAiMessages(messages, { mergeToolResultText: true }),
]
// -------------------------