mirror of
https://github.com/infiniflow/ragflow.git
synced 2025-12-25 08:06:48 +08:00
### What problem does this PR solve? Feat: Support uploading files when running agent #3221 ### Type of change - [x] New Feature (non-breaking change which adds functionality)
22 lines
727 B
TypeScript
22 lines
727 B
TypeScript
import { MessageType } from '@/constants/chat';
|
|
import { IReference } from '@/interfaces/database/chat';
|
|
import { IMessage } from '@/pages/chat/interface';
|
|
import { isEmpty } from 'lodash';
|
|
|
|
export const buildAgentMessageItemReference = (
|
|
conversation: { message: IMessage[]; reference: IReference[] },
|
|
message: IMessage,
|
|
) => {
|
|
const assistantMessages = conversation.message?.filter(
|
|
(x) => x.role === MessageType.Assistant,
|
|
);
|
|
const referenceIndex = assistantMessages.findIndex(
|
|
(x) => x.id === message.id,
|
|
);
|
|
const reference = !isEmpty(message?.reference)
|
|
? message?.reference
|
|
: (conversation?.reference ?? [])[referenceIndex];
|
|
|
|
return reference ?? { doc_aggs: [], chunks: [], total: 0 };
|
|
};
|