{
diff --git a/web/app/components/workflow/nodes/llm/panel.tsx b/web/app/components/workflow/nodes/llm/panel.tsx
index 2f67a29590..a30c1fb840 100644
--- a/web/app/components/workflow/nodes/llm/panel.tsx
+++ b/web/app/components/workflow/nodes/llm/panel.tsx
@@ -1,5 +1,5 @@
import type { FC } from 'react'
-import React from 'react'
+import React, { useEffect } from 'react'
import { useTranslation } from 'react-i18next'
import MemoryConfig from '../_base/components/memory-config'
import VarReferencePicker from '../_base/components/variable/var-reference-picker'
@@ -18,6 +18,7 @@ import { InputVarType, type NodePanelProps } from '@/app/components/workflow/typ
import BeforeRunForm from '@/app/components/workflow/nodes/_base/components/before-run-form'
import type { Props as FormProps } from '@/app/components/workflow/nodes/_base/components/before-run-form/form'
import ResultPanel from '@/app/components/workflow/run/result-panel'
+import { useModelListAndDefaultModelAndCurrentProviderAndModel } from '@/app/components/header/account-setting/model-provider-page/hooks'
const i18nPrefix = 'workflow.nodes.llm'
@@ -27,6 +28,10 @@ const Panel: FC
> = ({
}) => {
const { t } = useTranslation()
const readOnly = false
+ const {
+ currentProvider,
+ currentModel,
+ } = useModelListAndDefaultModelAndCurrentProviderAndModel(1)
const {
inputs,
@@ -108,6 +113,15 @@ const Panel: FC> = ({
return forms
})()
+ useEffect(() => {
+ if (currentProvider?.provider && currentModel?.model && !model.provider) {
+ handleModelChanged({
+ provider: currentProvider?.provider,
+ modelId: currentModel?.model,
+ })
+ }
+ }, [model.provider, currentProvider, currentModel, handleModelChanged])
+
return (
diff --git a/web/app/components/workflow/nodes/question-classifier/panel.tsx b/web/app/components/workflow/nodes/question-classifier/panel.tsx
index 4ded95a61c..8b643207ac 100644
--- a/web/app/components/workflow/nodes/question-classifier/panel.tsx
+++ b/web/app/components/workflow/nodes/question-classifier/panel.tsx
@@ -1,5 +1,5 @@
import type { FC } from 'react'
-import React from 'react'
+import React, { useEffect } from 'react'
import { useTranslation } from 'react-i18next'
import VarReferencePicker from '../_base/components/variable/var-reference-picker'
import useConfig from './use-config'
@@ -11,6 +11,7 @@ import ModelParameterModal from '@/app/components/header/account-setting/model-p
import { InputVarType, type NodePanelProps } from '@/app/components/workflow/types'
import BeforeRunForm from '@/app/components/workflow/nodes/_base/components/before-run-form'
import ResultPanel from '@/app/components/workflow/run/result-panel'
+import { useModelListAndDefaultModelAndCurrentProviderAndModel } from '@/app/components/header/account-setting/model-provider-page/hooks'
const i18nPrefix = 'workflow.nodes.questionClassifiers'
@@ -20,6 +21,10 @@ const Panel: FC
> = ({
}) => {
const { t } = useTranslation()
const readOnly = false
+ const {
+ currentProvider,
+ currentModel,
+ } = useModelListAndDefaultModelAndCurrentProviderAndModel(1)
const {
inputs,
@@ -41,6 +46,15 @@ const Panel: FC> = ({
const model = inputs.model
+ useEffect(() => {
+ if (currentProvider?.provider && currentModel?.model && !model.provider) {
+ handleModelChanged({
+ provider: currentProvider?.provider,
+ modelId: currentModel?.model,
+ })
+ }
+ }, [model.provider, currentProvider, currentModel, handleModelChanged])
+
return (