Thanks @Mathijs Pieters!!
I have done the following and I get an error (I need the banching to be a @graph because inside I have to call other @graphs). Any ideas? Greetings!!!
@op
def return_number1():
number = 1
return number
@op
def return_number2():
number = 10
return number
@op
def greater_num(number):
print(f"Number {number} is greater!")
@graph(out={"branch_1": Out(is_required=False), "branch_2": Out(is_required=False)})
def branching_graph(number1, number2):
if number1 > number2:
yield Output(number1, "branch_1")
else:
yield Output(number2, "branch_2")
@graph
def compare_numbers():
number1 = return_number1()
number2 = return_number2()
branch_1, branch_2 = branching_graph(number1, number2)
greater_num(branch_1)
greater_num(branch_2)
if name == '__main__':
result = compare_numbers.execute_in_process()
Error:
dagster.check.CheckError: Value in dictionary mismatches expected type for key branch_1. Expected value of type <class 'dagster.core.definitions.output.GraphOut'>. Got value Out(dagster_type=<class 'dagster.core.definitions.utils.NoValueSentinel'>, description=None, is_required=False, io_manager_key=None, metadata=None, asset_key=None, asset_partitions=None) of type <class 'dagster.core.definitions.output.Out'>.