File size: 3,202 Bytes
3c31ff9 8c4ec99 3c31ff9 e76f8aa e890f0a 1a156e6 e76f8aa 8c4ec99 51db3f9 0a903c7 1a156e6 36b496a badd5fe 1a156e6 0a903c7 e55650e badd5fe e55650e badd5fe 0a903c7 e890f0a 84f80c5 d594e0f 51db3f9 badd5fe 1a156e6 badd5fe 1a156e6 badd5fe 1a156e6 b0b89da 1a156e6 badd5fe 1a156e6 0a903c7 e76f8aa 1903239 e55650e 0a903c7 e55650e 0a903c7 1903239 0a903c7 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 |
import Rerank from '@/components/rerank';
import SimilaritySlider from '@/components/similarity-slider';
import { useTranslate } from '@/hooks/common-hooks';
import { useChunkIsTesting } from '@/hooks/knowledge-hooks';
import { Button, Card, Divider, Flex, Form, Input } from 'antd';
import { FormInstance } from 'antd/lib';
import { LabelWordCloud } from './label-word-cloud';
import { UseKnowledgeGraphItem } from '@/components/use-knowledge-graph-item';
import styles from './index.less';
type FieldType = {
similarity_threshold?: number;
vector_similarity_weight?: number;
question: string;
};
interface IProps {
form: FormInstance;
handleTesting: () => Promise<any>;
}
const TestingControl = ({ form, handleTesting }: IProps) => {
const question = Form.useWatch('question', { form, preserve: true });
const loading = useChunkIsTesting();
const { t } = useTranslate('knowledgeDetails');
const buttonDisabled =
!question || (typeof question === 'string' && question.trim() === '');
return (
<section className={styles.testingControlWrapper}>
<div>
<b>{t('testing')}</b>
</div>
<p>{t('testingDescription')}</p>
<Divider></Divider>
<section>
<Form name="testing" layout="vertical" form={form}>
<SimilaritySlider isTooltipShown></SimilaritySlider>
<Rerank></Rerank>
<UseKnowledgeGraphItem filedName={['use_kg']}></UseKnowledgeGraphItem>
<Card size="small" title={t('testText')}>
<Form.Item<FieldType>
name={'question'}
rules={[{ required: true, message: t('testTextPlaceholder') }]}
>
<Input.TextArea autoSize={{ minRows: 8 }}></Input.TextArea>
</Form.Item>
<Flex justify={'end'}>
<Button
type="primary"
size="small"
onClick={handleTesting}
disabled={buttonDisabled}
loading={loading}
>
{t('testingLabel')}
</Button>
</Flex>
</Card>
</Form>
</section>
<LabelWordCloud></LabelWordCloud>
{/* <section>
<div className={styles.historyTitle}>
<Space size={'middle'}>
<HistoryOutlined className={styles.historyIcon} />
<b>Test history</b>
</Space>
</div>
<Space
direction="vertical"
size={'middle'}
className={styles.historyCardWrapper}
>
{list.map((x) => (
<Card className={styles.historyCard} key={x}>
<Flex justify={'space-between'} gap={'small'}>
<span>{x}</span>
<div className={styles.historyText}>
content dcjsjl snldsh svnodvn svnodrfn svjdoghdtbnhdo
sdvhodhbuid sldghdrlh
</div>
<Flex gap={'small'}>
<span>time</span>
<DeleteOutlined></DeleteOutlined>
</Flex>
</Flex>
</Card>
))}
</Space>
</section> */}
</section>
);
};
export default TestingControl;
|