Skip to content
Discussion options

You must be logged in to vote

Your read is right, and it's not specific to your setup. Wrapping an AsyncPipeline in a PipelineTool always runs it synchronously. Here's the chain, from the current main:

Tool is sync by contract. Tool.__post_init__ actually raises if you hand it a coroutine function, so there's no async tool body anywhere in the tool layer. ComponentTool builds that sync component_invoker, and it calls component.run(...) (component_tool.py) — never run_async. Then SuperComponent.run calls self.pipeline.run(...), the sync driver, even when the pipeline is an AsyncPipeline. SuperComponent.run_async exists but nothing in the tool path ever reaches it. That's the exact log line you saw.

And the async agent …

Replies: 2 comments

Comment options

You must be logged in to vote
0 replies
Answer selected by Screenhandsaw
Comment options

You must be logged in to vote
0 replies
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
2 participants