fix(ApiService): context clear failed
This commit is contained in:
parent
d6dbe357fb
commit
ae2a661201
@ -18,7 +18,7 @@ import {
|
||||
getTranslateModel
|
||||
} from './AssistantService'
|
||||
import { EVENT_NAMES, EventEmitter } from './EventService'
|
||||
import { filterMessages, filterUsefulMessages } from './MessagesService'
|
||||
import { filterContextMessages, filterMessages, filterUsefulMessages } from './MessagesService'
|
||||
import { estimateMessagesUsage } from './TokenService'
|
||||
import WebSearchService from './WebSearchService'
|
||||
|
||||
@ -112,7 +112,7 @@ export async function fetchChatCompletion({
|
||||
}
|
||||
|
||||
await AI.completions({
|
||||
messages: filterUsefulMessages(messages),
|
||||
messages: filterUsefulMessages(filterContextMessages(messages)),
|
||||
assistant,
|
||||
onFilterMessages: (messages) => (_messages = messages),
|
||||
onChunk: ({ text, reasoning_content, usage, metrics, search, citations, mcpToolResponse, generateImage }) => {
|
||||
|
||||
@ -80,11 +80,7 @@ export function filterUsefulMessages(messages: Message[]): Message[] {
|
||||
|
||||
// 过滤两条及以上 user 类型消息相邻的情况,只保留最新一条 user 消息
|
||||
_messages = _messages.filter((message, index, origin) => {
|
||||
if (
|
||||
message.role === 'user'
|
||||
&& index + 1 < origin.length
|
||||
&& origin[index + 1].role === 'user'
|
||||
) {
|
||||
if (message.role === 'user' && index + 1 < origin.length && origin[index + 1].role === 'user') {
|
||||
return false
|
||||
}
|
||||
return true
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user