diff --git a/react-ui/config/routes.ts b/react-ui/config/routes.ts index e64318e0..8ec050ae 100644 --- a/react-ui/config/routes.ts +++ b/react-ui/config/routes.ts @@ -148,6 +148,11 @@ export default [ path: 'compare-visual', component: './Experiment/Aim/index', }, + { + name: '可视化', + path: 'visual', + component: './Experiment/Tensorboard/index', + }, ], }, { diff --git a/react-ui/src/pages/Experiment/Tensorboard/index.tsx b/react-ui/src/pages/Experiment/Tensorboard/index.tsx new file mode 100644 index 00000000..7124d0de --- /dev/null +++ b/react-ui/src/pages/Experiment/Tensorboard/index.tsx @@ -0,0 +1,12 @@ +/* + * @Author: 赵伟 + * @Date: 2025-03-31 16:38:59 + * @Description: 实验可视化 Tensorboard + */ + +import IframePage, { IframePageType } from '@/components/IFramePage'; + +function TensorboardPage() { + return ; +} +export default TensorboardPage; diff --git a/react-ui/src/pages/Experiment/index.jsx b/react-ui/src/pages/Experiment/index.jsx index 1ecc7df1..dc2c03ca 100644 --- a/react-ui/src/pages/Experiment/index.jsx +++ b/react-ui/src/pages/Experiment/index.jsx @@ -2,6 +2,7 @@ import KFIcon from '@/components/KFIcon'; import PageTitle from '@/components/PageTitle'; import { ExperimentStatus, TensorBoardStatus } from '@/enums'; import { useCacheState } from '@/hooks/useCacheState'; +import { useServerTime } from '@/hooks/useServerTime'; import { deleteExperimentById, getExperiment, @@ -17,6 +18,7 @@ import { getWorkflow } from '@/services/pipeline/index.js'; import themes from '@/styles/theme.less'; import { ExperimentCompleted } from '@/utils/constant'; import { to } from '@/utils/promise'; +import SessionStorage from '@/utils/sessionStorage'; import tableCellRender, { TableCellValueType } from '@/utils/table'; import { modalConfirm } from '@/utils/ui'; import { App, Button, ConfigProvider, Dropdown, Input, Space, Table, Tooltip } from 'antd'; @@ -28,7 +30,6 @@ import AddExperimentModal from './components/AddExperimentModal'; import ExperimentInstanceList from './components/ExperimentInstanceList'; import styles from './index.less'; import { experimentStatusInfo } from './status'; -import { useServerTime } from '@/hooks/useServerTime'; // 定时器 const timerIds = new Map(); @@ -372,7 +373,10 @@ function Experiment() { experimentIn.tensorBoardStatus === TensorBoardStatus.Running && experimentIn.tensorboardUrl ) { - window.open(experimentIn.tensorboardUrl, '_blank'); + const url = experimentIn.tensorboardUrl; + SessionStorage.setItem(SessionStorage.tensorBoardUrlKey, url); + navigateToUrl(`/pipeline/experiment/visual`); + // window.open(experimentIn.tensorboardUrl, '_blank'); } };