Add WORKFLOW_CALL_MAX_DEPTH env var. (#4713)
This commit is contained in:
parent
705a6e3a8e
commit
72a90074bc
@ -182,3 +182,8 @@ LOG_FILE=
|
|||||||
|
|
||||||
# Indexing configuration
|
# Indexing configuration
|
||||||
INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH=1000
|
INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH=1000
|
||||||
|
|
||||||
|
# Workflow runtime configuration
|
||||||
|
WORKFLOW_MAX_EXECUTION_STEPS=50
|
||||||
|
WORKFLOW_MAX_EXECUTION_TIME=600
|
||||||
|
WORKFLOW_CALL_MAX_DEPTH=5
|
||||||
|
@ -83,6 +83,7 @@ DEFAULTS = {
|
|||||||
'INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH': 1000,
|
'INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH': 1000,
|
||||||
'WORKFLOW_MAX_EXECUTION_STEPS': 50,
|
'WORKFLOW_MAX_EXECUTION_STEPS': 50,
|
||||||
'WORKFLOW_MAX_EXECUTION_TIME': 600,
|
'WORKFLOW_MAX_EXECUTION_TIME': 600,
|
||||||
|
'WORKFLOW_CALL_MAX_DEPTH': 5,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -324,6 +325,7 @@ class Config:
|
|||||||
|
|
||||||
self.WORKFLOW_MAX_EXECUTION_STEPS = int(get_env('WORKFLOW_MAX_EXECUTION_STEPS'))
|
self.WORKFLOW_MAX_EXECUTION_STEPS = int(get_env('WORKFLOW_MAX_EXECUTION_STEPS'))
|
||||||
self.WORKFLOW_MAX_EXECUTION_TIME = int(get_env('WORKFLOW_MAX_EXECUTION_TIME'))
|
self.WORKFLOW_MAX_EXECUTION_TIME = int(get_env('WORKFLOW_MAX_EXECUTION_TIME'))
|
||||||
|
self.WORKFLOW_CALL_MAX_DEPTH = int(get_env('WORKFLOW_CALL_MAX_DEPTH'))
|
||||||
|
|
||||||
# Moderation in app Configurations.
|
# Moderation in app Configurations.
|
||||||
self.OUTPUT_MODERATION_BUFFER_SIZE = int(get_env('OUTPUT_MODERATION_BUFFER_SIZE'))
|
self.OUTPUT_MODERATION_BUFFER_SIZE = int(get_env('OUTPUT_MODERATION_BUFFER_SIZE'))
|
||||||
|
@ -54,8 +54,6 @@ node_classes = {
|
|||||||
NodeType.PARAMETER_EXTRACTOR: ParameterExtractorNode
|
NodeType.PARAMETER_EXTRACTOR: ParameterExtractorNode
|
||||||
}
|
}
|
||||||
|
|
||||||
WORKFLOW_CALL_MAX_DEPTH = 5
|
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
@ -128,8 +126,9 @@ class WorkflowEngineManager:
|
|||||||
user_inputs=user_inputs
|
user_inputs=user_inputs
|
||||||
)
|
)
|
||||||
|
|
||||||
if call_depth > WORKFLOW_CALL_MAX_DEPTH:
|
workflow_call_max_depth = current_app.config.get("WORKFLOW_CALL_MAX_DEPTH")
|
||||||
raise ValueError('Max workflow call depth reached.')
|
if call_depth > workflow_call_max_depth:
|
||||||
|
raise ValueError('Max workflow call depth {} reached.'.format(workflow_call_max_depth))
|
||||||
|
|
||||||
# init workflow run state
|
# init workflow run state
|
||||||
workflow_run_state = WorkflowRunState(
|
workflow_run_state = WorkflowRunState(
|
||||||
|
Loading…
Reference in New Issue
Block a user