Skip to content

Docs: Python example uses nonexistent selection_func in add_fan_out_edges #353

Description

```python
from agent_framework import WorkflowBuilder
builder = WorkflowBuilder()
builder.set_start_executor(splitter_executor)
builder.add_fan_out_edges(splitter_executor, [worker1, worker2, worker3])
workflow = builder.build()
# Send to specific targets based on partitioner function
builder = WorkflowBuilder()
builder.set_start_executor(splitter_executor)
builder.add_fan_out_edges(
splitter_executor,
[worker1, worker2, worker3],
selection_func=lambda message, target_ids: (
[0] if message.priority == Priority.HIGH else
[1, 2] if message.priority == Priority.NORMAL else
list(range(target_count))
)
)
workflow = builder.build()
```

The Python example in the Edges guide shows add_fan_out_edges(..., selection_func=...), but this parameter does not exist in the actual Python SDK.

According to the Python API reference, add_fan_out_edges does not support selection_func. Selection logic in Python is handled by a different API (add_multi_selection_edge_group).

The documentation and the real Python API surface are inconsistent.

References

Edges guide (problematic example):
https://learn.microsoft.com/en-us/agent-framework/user-guide/workflows/core-concepts/edges?pivots=programming-language-python

Python API spec for add_fan_out_edges:
https://learn.microsoft.com/en-us/python/api/agent-framework-core/agent_framework.workflowbuilder?view=agent-framework-python-latest#agent-framework-workflowbuilder-add-fan-out-edges

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions