fix: one step run (#14724)

This commit is contained in:
zxhlyh 2025-03-03 13:29:59 +08:00 • committed by GitHub
commit e53052ab7a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 214 additions and 49 deletions

View file

@ -124,6 +124,10 @@ const useConfig = (id: string, payload: QuestionClassifierNodeType) => {
return [VarType.number, VarType.string].includes(varPayload.type)
}, [])
const filterVisionInputVar = useCallback((varPayload: Var) => {
return [VarType.file, VarType.arrayFile].includes(varPayload.type)
}, [])
const {
availableVars,
availableNodesWithParent,
@ -132,6 +136,13 @@ const useConfig = (id: string, payload: QuestionClassifierNodeType) => {
filterVar: filterInputVar,
})
const {
availableVars: availableVisionVars,
} = useAvailableVarList(id, {
onlyLeafNodeVar: false,
filterVar: filterVisionInputVar,
})
const hasSetBlockStatus = {
history: false,
query: isChatMode ? checkHasQueryBlock(inputs.instruction) : false,
@ -161,13 +172,15 @@ const useConfig = (id: string, payload: QuestionClassifierNodeType) => {
handleRun,
handleStop,
runInputData,
runInputDataRef,
setRunInputData,
runResult,
} = useOneStepRun<QuestionClassifierNodeType>({
id,
data: inputs,
defaultRunInputData: {
query: '',
'query': '',
'#files#': [],
},
})
@ -195,6 +208,14 @@ const useConfig = (id: string, payload: QuestionClassifierNodeType) => {
setRunInputData(newPayload)
}, [setRunInputData])
const visionFiles = runInputData['#files#']
const setVisionFiles = useCallback((newFiles: any[]) => {
setRunInputData({
...runInputDataRef.current,
'#files#': newFiles,
})
}, [runInputDataRef, setRunInputData])
const filterVar = useCallback((varPayload: Var) => {
return varPayload.type === VarType.string
}, [])
@ -212,6 +233,7 @@ const useConfig = (id: string, payload: QuestionClassifierNodeType) => {
hasSetBlockStatus,
availableVars,
availableNodesWithParent,
availableVisionVars,
handleInstructionChange,
varInputs,
inputVarValues,
@ -228,6 +250,8 @@ const useConfig = (id: string, payload: QuestionClassifierNodeType) => {
query,
setQuery,
runResult,
visionFiles,
setVisionFiles,
}
}