Skip to content

AI Model Training UI crashes when adding a second annotation #9141

@hotzenklotz

Description

@hotzenklotz

Context

When trying to train an AI Model, the UI crashes when adding a second annotation by cause WK cannot extract a valid mag from the select color and groundtruth name.

StackTrace

Details

AiTrainingDataSelector> component:

at AiTrainingDataSelector (webpack-internal:///./frontend/javascripts/viewer/view/ai_jobs/train_ai_model/ai_training_data_selector.tsx:49:3)
at form
at Form (webpack-internal:///./node_modules/rc-field-form/es/Form.js:28:19)
at FormProvider (webpack-internal:///./node_modules/rc-field-form/es/FormContext.js:20:31)
at FormProvider
at DisabledContextProvider (webpack-internal:///./node_modules/antd/es/config-provider/DisabledContext.js:14:5)
at InternalForm (webpack-internal:///./node_modules/antd/es/form/Form.js:47:62)
at div
at div
at eval (webpack-internal:///./node_modules/antd/es/card/Card.js:61:18)
at AiTrainingDataSection (webpack-internal:///./frontend/javascripts/viewer/view/ai_jobs/train_ai_model/ai_training_data_selector.tsx:235:117)
at div
at eval (webpack-internal:///./node_modules/antd/es/flex/index.js:33:18)
at div
at eval (webpack-internal:///./node_modules/antd/es/flex/index.js:33:18)
at AiTrainingJobContextProvider (webpack-internal:///./frontend/javascripts/viewer/view/ai_jobs/train_ai_model/ai_training_job_context.tsx:36:3)
at AiModelTrainingJob
at div
at eval (webpack-internal:///./node_modules/rc-tabs/es/TabPanelList/TabPane.js:12:25)
at DomWrapper (webpack-internal:///./node_modules/rc-motion/es/DomWrapper.js:20:90)
at eval (webpack-internal:///./node_modules/rc-motion/es/CSSMotion.js:51:32)
at div
at div
at TabPanelList (webpack-internal:///./node_modules/rc-tabs/es/TabPanelList/index.js:27:18)
at div
at eval (webpack-internal:///./node_modules/rc-tabs/es/Tabs.js:51:18)
at Tabs (webpack-internal:///./node_modules/antd/es/tabs/index.js:48:7)
at div
at DrawerPanel (webpack-internal:///./node_modules/antd/es/drawer/DrawerPanel.js:22:5)
at div
at DrawerPanel (webpack-internal:///./node_modules/rc-drawer/es/DrawerPanel.js:23:25)
at div
at DomWrapper (webpack-internal:///./node_modules/rc-motion/es/DomWrapper.js:20:90)
at eval (webpack-internal:///./node_modules/rc-motion/es/CSSMotion.js:51:32)
at div
at DrawerPopup (webpack-internal:///./node_modules/rc-drawer/es/DrawerPopup.js:40:25)
at eval (webpack-internal:///./node_modules/@rc-component/portal/es/Portal.js:42:20)
at Drawer (webpack-internal:///./node_modules/rc-drawer/es/Drawer.js:23:27)
at NoFormStyle (webpack-internal:///./node_modules/antd/es/form/context.js:39:5)
at NoCompactStyle (webpack-internal:///./node_modules/antd/es/space/Compact.js:59:5)
at ContextIsolator (webpack-internal:///./node_modules/antd/es/_util/ContextIsolator.js:16:5)
at Drawer (webpack-internal:///./node_modules/antd/es/drawer/index.js:48:7)
at AiJobsDrawer (webpack-internal:///./frontend/javascripts/viewer/view/ai_jobs/ai_jobs_drawer.tsx:26:25)
at div
at eval (webpack-internal:///./node_modules/antd/es/layout/layout.js:76:42)
at Layout
at div
at eval (webpack-internal:///./node_modules/antd/es/layout/layout.js:76:42)
at Layout
at div
at eval (webpack-internal:///./node_modules/react-dropzone/dist/es/index.js:63:23)
at NmlUploadZoneContainer (webpack-internal:///./frontend/javascripts/viewer/view/nml_upload_zone_container.tsx:73:1)
at ConnectFunction (webpack-internal:///./node_modules/react-redux/es/components/connect.js:240:103)
at TracingLayoutView (webpack-internal:///./frontend/javascripts/viewer/view/layouting/tracing_layout_view.tsx:112:5)
at ComponentWithRouterProp (webpack-internal:///./frontend/javascripts/libs/with_router_hoc.tsx:12:83)
at ConnectFunction (webpack-internal:///./node_modules/react-redux/es/components/connect.js:240:103)
at TracingViewRouteWrapper (webpack-internal:///./frontend/javascripts/router/route_wrappers.tsx:185:84)
at SecuredRoute (webpack-internal:///./frontend/javascripts/components/secured_route.tsx:28:3)
at RenderedRoute (webpack-internal:///./node_modules/react-router/dist/index.js:579:5)
at Outlet (webpack-internal:///./node_modules/react-router/dist/index.js:1226:26)
at ErrorBoundary (webpack-internal:///./frontend/javascripts/components/error_boundary.tsx:23:5)
at main
at eval (webpack-internal:///./node_modules/antd/es/layout/layout.js:56:18)
at Content
at div
at eval (webpack-internal:///./node_modules/antd/es/layout/layout.js:76:42)
at Layout
at RootLayout (webpack-internal:///./frontend/javascripts/router/router.tsx:118:91)
at RenderedRoute (webpack-internal:///./node_modules/react-router/dist/index.js:579:5)
at RenderErrorBoundary (webpack-internal:///./node_modules/react-router/dist/index.js:526:5)
at DataRoutes (webpack-internal:///./node_modules/react-router-dom/dist/index.js:693:5)
at Router (webpack-internal:///./node_modules/react-router/dist/index.js:1247:15)
at RouterProvider (webpack-internal:///./node_modules/react-router-dom/dist/index.js:476:5)
at div
at div
at App (webpack-internal:///./node_modules/antd/es/app/index.js:30:16)
at MotionWrapper (webpack-internal:///./node_modules/antd/es/config-provider/MotionWrapper.js:16:5)
at ProviderChildren (webpack-internal:///./node_modules/antd/es/config-provider/index.js:139:5)
at ConfigProvider (webpack-internal:///./node_modules/antd/es/config-provider/index.js:430:54)
at GlobalThemeProvider (webpack-internal:///./frontend/javascripts/theme.tsx:127:3)
at DndProvider (webpack-internal:///./node_modules/react-dnd/dist/core/DndProvider.js:43:11)
at QueryClientProvider (webpack-internal:///./node_modules/@tanstack/react-query/build/modern/QueryClientProvider.js:28:3)
at PersistQueryClientProvider (webpack-internal:///./node_modules/@tanstack/react-query-persist-client/build/modern/PersistQueryClientProvider.js:18:3)
at Provider (webpack-internal:///./node_modules/react-redux/es/components/Provider.js:16:3)
at ErrorBoundary (webpack-internal:///./frontend/javascripts/components/error_boundary.tsx:23:5)

React will try to recreate this component tree from scratch using the error boundary you provided, TracingLayoutView.
installHook.js:1 Unfortunately, WEBKNOSSOS encountered an error during rendering. Your latest changes may not have been saved. Please reload the page to try again. Error Component Stack
at TracingLayoutView (tracing_layout_view.tsx:95:5)
at ComponentWithRouterProp (with_router_hoc.tsx:22:33)
at ConnectFunction (connect.js:218:68)
at TracingViewRouteWrapper (route_wrappers.tsx:177:33)
at SecuredRoute (secured_route.tsx:23:3)
at RenderedRoute (index.js:517:1)
at Outlet (index.js:1164:1)
at ErrorBoundary (error_boundary.tsx:15:5)
at main ()
at eval (layout.js:39:1)
at Content ()
at div ()
at eval (layout.js:59:7)
at Layout ()
at RootLayout (router.tsx:85:40)
at RenderedRoute (index.js:517:1)
at RenderErrorBoundary (index.js:464:1)
at DataRoutes (index.js:608:1)
at Router (index.js:1185:1)
at RouterProvider (index.js:391:1)
at div ()
at div ()
at App (index.js:15:1)
at MotionWrapper (MotionWrapper.js:8:1)
at ProviderChildren (index.js:105:1)
at ConfigProvider (index.js:396:19)
at GlobalThemeProvider (theme.tsx:122:3)
at DndProvider (DndProvider.js:35:11)
at QueryClientProvider (QueryClientProvider.js:20:1)
at PersistQueryClientProvider (PersistQueryClientProvider.js:12:1)
at Provider (Provider.js:7:1)
at ErrorBoundary (error_boundary.tsx:15:5)

Steps to Reproduce the bug

  1. Open any annotation
  2. Start a new AI model Training. Select "Train AI Model" from navbar.
  3. Add a second training annotation to the training settings. Click the small "+" button. Enter the URL or ID from a second annotation. Image
  4. Select the color and ground truth layer names.
  5. Boom. WK Crashes

Your Environment for bug

  • Browser name and version: all
  • Operating System and version: MacOS
  • Version of WEBKNOSSOS (Release or Commit): 20096109068
  • Specific to long-running jobs (set jobsEnabled=true in application.conf)
  • Specific to webknossos.org (set isDemoInstance=true in application.conf)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions