Files
TERES_web_frontend/src/pages/knowledge/configuration/knowledge-graph.tsx
guangfei.zhao 74c4f798a5 feat(knowledge): add RAPTOR and Knowledge Graph config sections to parsers
refactor(knowledge): reorganize parser configuration components into accordions
2025-11-03 17:47:33 +08:00

108 lines
3.4 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import React from 'react';
import {
Box,
Typography,
Accordion,
AccordionSummary,
AccordionDetails,
Divider,
} from '@mui/material';
import { ExpandMore as ExpandMoreIcon } from '@mui/icons-material';
import { useFormContext } from 'react-hook-form';
import { useTranslation } from 'react-i18next';
import { ConfigurationFormContainer, MainContainer } from './configuration-form-container';
import {
ChunkMethodItem,
EmbeddingModelItem,
AutoKeywordsItem,
AutoQuestionsItem,
UseRaptorItem,
RaptorPromptItem,
RaptorMaxTokenItem,
RaptorThresholdItem,
RaptorMaxClusterItem,
RaptorRandomSeedItem,
UseGraphragItem,
EntityTypesItem,
GraphragMethodItem,
EntityNormalizeItem,
CommunityReportItem,
} from './common-items';
export function KnowledgeGraphConfiguration() {
const { formState: { errors } } = useFormContext();
const { t } = useTranslation();
return (
<ConfigurationFormContainer>
<MainContainer>
{/* 第一部分basicConfig 基础配置 */}
<Accordion defaultExpanded>
<AccordionSummary expandIcon={<ExpandMoreIcon />}>
<Typography variant="h6">{t('knowledge.config.basicConfig')}</Typography>
</AccordionSummary>
<AccordionDetails>
{/* 切片方法 */}
<Box sx={{ mb: 3 }}>
<ChunkMethodItem />
</Box>
<Divider />
<Box sx={{ display: 'flex', flexDirection: 'column', gap: 3, mt: 3 }}>
{/* 嵌入模型 */}
<EmbeddingModelItem />
{/* 自动关键词提取 */}
<AutoKeywordsItem />
{/* 自动问题提取 */}
<AutoQuestionsItem />
</Box>
</AccordionDetails>
</Accordion>
{/* 第二部分RAPTOR策略 */}
<Accordion>
<AccordionSummary expandIcon={<ExpandMoreIcon />}>
<Typography variant="h6">{t('knowledge.config.raptorStrategy')}</Typography>
</AccordionSummary>
<AccordionDetails>
<Box sx={{ display: 'flex', flexDirection: 'column', gap: 3 }}>
{/* 使用召回增强RAPTOR策略 */}
<UseRaptorItem />
{/* 提示词 */}
<RaptorPromptItem />
{/* 最大token数 */}
<RaptorMaxTokenItem />
{/* 阈值 */}
<RaptorThresholdItem />
{/* 最大聚类数 */}
<RaptorMaxClusterItem />
{/* 随机种子 */}
<RaptorRandomSeedItem />
</Box>
</AccordionDetails>
</Accordion>
{/* 第三部分Knowledge Graph 知识图谱 */}
<Accordion>
<AccordionSummary expandIcon={<ExpandMoreIcon />}>
<Typography variant="h6">{t('knowledge.config.knowledgeGraph')}</Typography>
</AccordionSummary>
<AccordionDetails>
<Box sx={{ display: 'flex', flexDirection: 'column', gap: 3 }}>
{/* 提取知识图谱 */}
<UseGraphragItem />
{/* 实体类型 */}
<EntityTypesItem />
{/* 方法 */}
<GraphragMethodItem />
{/* 实体归一化 */}
<EntityNormalizeItem />
{/* 社区报告生成 */}
<CommunityReportItem />
</Box>
</AccordionDetails>
</Accordion>
</MainContainer>
</ConfigurationFormContainer>
);
}