refactor: handle tool content differently for doubao and deepseek models in OpenAIProvider

This commit is contained in:
Vaayne 2025-03-17 22:49:42 +08:00 committed by 亢奋猫
parent e5342cd414
commit 48a6c4d017

View File

@ -534,11 +534,23 @@ export default class OpenAIProvider extends BaseProvider {
}
}
reqMessages.push({
role: 'tool',
content: toolResponsContent,
tool_call_id: toolCall.id
} as ChatCompletionToolMessageParam)
if (
lastUserMessage?.model?.provider === 'doubao' ||
lastUserMessage?.model?.name.toLowerCase().includes('deepseek')
) {
console.log('doubao or deepseek only support tool content in text')
reqMessages.push({
role: 'tool',
content: JSON.stringify(toolResponsContent),
tool_call_id: toolCall.id
} as ChatCompletionToolMessageParam)
} else {
reqMessages.push({
role: 'tool',
content: toolResponsContent,
tool_call_id: toolCall.id
} as ChatCompletionToolMessageParam)
}
upsertMCPToolResponse(
toolResponses,