fix(ApiService): context clear failed

This commit is contained in:
George·Dong 2025-03-29 21:21:22 +08:00 committed by 亢奋猫
parent d6dbe357fb
commit ae2a661201
2 changed files with 3 additions and 7 deletions

View File

@ -18,7 +18,7 @@ import {
getTranslateModel getTranslateModel
} from './AssistantService' } from './AssistantService'
import { EVENT_NAMES, EventEmitter } from './EventService' import { EVENT_NAMES, EventEmitter } from './EventService'
import { filterMessages, filterUsefulMessages } from './MessagesService' import { filterContextMessages, filterMessages, filterUsefulMessages } from './MessagesService'
import { estimateMessagesUsage } from './TokenService' import { estimateMessagesUsage } from './TokenService'
import WebSearchService from './WebSearchService' import WebSearchService from './WebSearchService'
@ -112,7 +112,7 @@ export async function fetchChatCompletion({
} }
await AI.completions({ await AI.completions({
messages: filterUsefulMessages(messages), messages: filterUsefulMessages(filterContextMessages(messages)),
assistant, assistant,
onFilterMessages: (messages) => (_messages = messages), onFilterMessages: (messages) => (_messages = messages),
onChunk: ({ text, reasoning_content, usage, metrics, search, citations, mcpToolResponse, generateImage }) => { onChunk: ({ text, reasoning_content, usage, metrics, search, citations, mcpToolResponse, generateImage }) => {

View File

@ -80,11 +80,7 @@ export function filterUsefulMessages(messages: Message[]): Message[] {
// 过滤两条及以上 user 类型消息相邻的情况,只保留最新一条 user 消息 // 过滤两条及以上 user 类型消息相邻的情况,只保留最新一条 user 消息
_messages = _messages.filter((message, index, origin) => { _messages = _messages.filter((message, index, origin) => {
if ( if (message.role === 'user' && index + 1 < origin.length && origin[index + 1].role === 'user') {
message.role === 'user'
&& index + 1 < origin.length
&& origin[index + 1].role === 'user'
) {
return false return false
} }
return true return true