mirror of
https://github.com/infiniflow/ragflow.git
synced 2026-07-11 22:25:41 +08:00
### What problem does this PR solve? Feat: Add keyword item to AssistantSetting #4543 ### Type of change - [x] New Feature (non-breaking change which adds functionality)
49 lines
1.2 KiB
TypeScript
49 lines
1.2 KiB
TypeScript
import { DocumentParserType } from '@/constants/knowledge';
|
|
import { useTranslate } from '@/hooks/common-hooks';
|
|
import { useFetchKnowledgeList } from '@/hooks/knowledge-hooks';
|
|
import { UserOutlined } from '@ant-design/icons';
|
|
import { Avatar, Form, Select, Space } from 'antd';
|
|
|
|
const KnowledgeBaseItem = () => {
|
|
const { t } = useTranslate('chat');
|
|
|
|
const { list: knowledgeList } = useFetchKnowledgeList(true);
|
|
|
|
const filteredKnowledgeList = knowledgeList.filter(
|
|
(x) => x.parser_id !== DocumentParserType.Tag,
|
|
);
|
|
|
|
const knowledgeOptions = filteredKnowledgeList.map((x) => ({
|
|
label: (
|
|
<Space>
|
|
<Avatar size={20} icon={<UserOutlined />} src={x.avatar} />
|
|
{x.name}
|
|
</Space>
|
|
),
|
|
value: x.id,
|
|
}));
|
|
|
|
return (
|
|
<Form.Item
|
|
label={t('knowledgeBases')}
|
|
name="kb_ids"
|
|
tooltip={t('knowledgeBasesTip')}
|
|
rules={[
|
|
{
|
|
required: true,
|
|
message: t('knowledgeBasesMessage'),
|
|
type: 'array',
|
|
},
|
|
]}
|
|
>
|
|
<Select
|
|
mode="multiple"
|
|
options={knowledgeOptions}
|
|
placeholder={t('knowledgeBasesMessage')}
|
|
></Select>
|
|
</Form.Item>
|
|
);
|
|
};
|
|
|
|
export default KnowledgeBaseItem;
|