Skip to content

Conversation

@jtoman
Copy link
Contributor

@jtoman jtoman commented Jan 21, 2026

Adds async workflow to graphcore.

This involves refactoring the "pure" parts of the reusable nodes (tool result, initial, summarization) into separate functions, and stitching in the async/sync implementations of calling the llm. NB that the choice to use async anywhere "infects" the langgraph application, once you use async you cannot use invoke or stream as they throw runtime exceptions (unless you provide sync implementations of the async functions which, you know, we don't).

While the metaprogramming used here is rather gnarly, it is ultimately protected by types, and isn't exposed to the end programmer.

@jtoman jtoman requested a review from certo-gco January 21, 2026 22:26
Copy link

@certo-gco certo-gco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really like the bidirectional generators idea.

@jtoman jtoman changed the base branch from jtoman/graphcore-ext to master January 24, 2026 00:29
@jtoman jtoman force-pushed the jtoman/async-graphcore branch from 38fddaa to 84fbe41 Compare January 26, 2026 23:29
@jtoman
Copy link
Contributor Author

jtoman commented Jan 26, 2026

I really like the bidirectional generators idea.

Yeah, kinda the only way for pure code to "callback" into async code.

@jtoman jtoman merged commit 9540b42 into master Jan 27, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants