diff --git a/web/src/pages/add-knowledge/components/knowledge-file/chunk-method-modal.tsx b/web/src/pages/add-knowledge/components/knowledge-file/chunk-method-modal.tsx index 70ea70fe1..411ec0f24 100644 --- a/web/src/pages/add-knowledge/components/knowledge-file/chunk-method-modal.tsx +++ b/web/src/pages/add-knowledge/components/knowledge-file/chunk-method-modal.tsx @@ -2,7 +2,11 @@ import MaxTokenNumber from '@/components/max-token-number'; import { IModalManagerChildrenProps } from '@/components/modal-manager'; import { IKnowledgeFileParserConfig } from '@/interfaces/database/knowledge'; import { IChangeParserConfigRequestBody } from '@/interfaces/request/document'; -import { MinusCircleOutlined, PlusOutlined } from '@ant-design/icons'; +import { + MinusCircleOutlined, + PlusOutlined, + QuestionCircleOutlined, +} from '@ant-design/icons'; import { Button, Divider, @@ -12,6 +16,7 @@ import { Space, Switch, Tag, + Tooltip, } from 'antd'; import omit from 'lodash/omit'; import React, { useEffect, useMemo } from 'react'; @@ -31,6 +36,7 @@ interface IProps extends Omit { parserId: string; parserConfig: IKnowledgeFileParserConfig; documentType: string; + disabled: boolean; } const hidePagesChunkMethods = ['qa', 'table', 'picture', 'resume', 'one']; @@ -40,6 +46,7 @@ const ChunkMethodModal: React.FC = ({ onOk, hideModal, visible, + disabled, documentType, parserConfig, }) => { @@ -89,6 +96,7 @@ const ChunkMethodModal: React.FC = ({ onOk={handleOk} onCancel={hideModal} afterClose={afterClose} + okButtonProps={{ disabled }} >
@@ -97,7 +105,11 @@ const ChunkMethodModal: React.FC = ({ handleChange(x.value, checked)} + onChange={(checked) => { + if (!disabled) { + handleChange(x.value, checked); + } + }} > {x.label} @@ -108,7 +120,125 @@ const ChunkMethodModal: React.FC = ({ { -
+ + {showPages && ( + <> + +

Page Ranges:

+ + + +
+ + {(fields, { add, remove }) => ( + <> + {fields.map(({ key, name, ...restField }) => ( + + 0 ? [name - 1, 'to'] : []} + rules={[ + { + required: true, + message: 'Missing start page number', + }, + ({ getFieldValue }) => ({ + validator(_, value) { + if ( + name === 0 || + !value || + getFieldValue(['pages', name - 1, 'to']) < + value + ) { + return Promise.resolve(); + } + return Promise.reject( + new Error( + 'The current value must be greater than the previous to!', + ), + ); + }, + }), + ]} + > + + + ({ + validator(_, value) { + if ( + !value || + getFieldValue(['pages', name, 'from']) < value + ) { + return Promise.resolve(); + } + return Promise.reject( + new Error( + 'The current value must be greater than to!', + ), + ); + }, + }), + ]} + > + + + {name > 0 && ( + remove(name)} /> + )} + + ))} + + + + + )} + + + )} {showOne && ( = ({ > {({ getFieldValue }) => getFieldValue(['parser_config', 'layout_recognize']) && ( - <> - - {(fields, { add, remove }) => ( - <> - {fields.map(({ key, name, ...restField }) => ( - - 0 ? [name - 1, 'to'] : []} - rules={[ - { - required: true, - message: 'Missing start page number', - }, - ({ getFieldValue }) => ({ - validator(_, value) { - if ( - name === 0 || - !value || - getFieldValue([ - 'pages', - name - 1, - 'to', - ]) < value - ) { - return Promise.resolve(); - } - return Promise.reject( - new Error( - 'The current value must be greater than the previous to!', - ), - ); - }, - }), - ]} - > - - - ({ - validator(_, value) { - if ( - !value || - getFieldValue(['pages', name, 'from']) < - value - ) { - return Promise.resolve(); - } - return Promise.reject( - new Error( - 'The current value must be greater than to!', - ), - ); - }, - }), - ]} - > - - - {name > 0 && ( - remove(name)} - /> - )} - - ))} - - - - - )} - - - - - - + initialValue={12} + rules={[ + { + required: true, + message: 'Please input your task page size!', + }, + ]} + > + + ) } diff --git a/web/src/pages/add-knowledge/components/knowledge-file/index.less b/web/src/pages/add-knowledge/components/knowledge-file/index.less index a2d22eaf0..05614a17e 100644 --- a/web/src/pages/add-knowledge/components/knowledge-file/index.less +++ b/web/src/pages/add-knowledge/components/knowledge-file/index.less @@ -38,3 +38,10 @@ .pageInputNumber { width: 220px; } + +.questionIcon { + margin-inline-start: 4px; + color: rgba(0, 0, 0, 0.45); + cursor: help; + writing-mode: horizontal-tb; +} diff --git a/web/src/pages/add-knowledge/components/knowledge-file/index.tsx b/web/src/pages/add-knowledge/components/knowledge-file/index.tsx index 18f8475a7..c3edece59 100644 --- a/web/src/pages/add-knowledge/components/knowledge-file/index.tsx +++ b/web/src/pages/add-knowledge/components/knowledge-file/index.tsx @@ -231,6 +231,7 @@ const KnowledgeFile = () => { onOk={onChangeParserOk} visible={changeParserVisible} hideModal={hideChangeParserModal} + disabled={currentRecord.chunk_num > 0} loading={changeParserLoading} />