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_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,
|
||||
'WORKFLOW_MAX_EXECUTION_STEPS': 50,
|
||||
'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_TIME = int(get_env('WORKFLOW_MAX_EXECUTION_TIME'))
|
||||
self.WORKFLOW_CALL_MAX_DEPTH = int(get_env('WORKFLOW_CALL_MAX_DEPTH'))
|
||||
|
||||
# Moderation in app Configurations.
|
||||
self.OUTPUT_MODERATION_BUFFER_SIZE = int(get_env('OUTPUT_MODERATION_BUFFER_SIZE'))
|
||||
|
@ -54,8 +54,6 @@ node_classes = {
|
||||
NodeType.PARAMETER_EXTRACTOR: ParameterExtractorNode
|
||||
}
|
||||
|
||||
WORKFLOW_CALL_MAX_DEPTH = 5
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
@ -128,8 +126,9 @@ class WorkflowEngineManager:
|
||||
user_inputs=user_inputs
|
||||
)
|
||||
|
||||
if call_depth > WORKFLOW_CALL_MAX_DEPTH:
|
||||
raise ValueError('Max workflow call depth reached.')
|
||||
workflow_call_max_depth = current_app.config.get("WORKFLOW_CALL_MAX_DEPTH")
|
||||
if call_depth > workflow_call_max_depth:
|
||||
raise ValueError('Max workflow call depth {} reached.'.format(workflow_call_max_depth))
|
||||
|
||||
# init workflow run state
|
||||
workflow_run_state = WorkflowRunState(
|
||||
|
Loading…
Reference in New Issue
Block a user