langgraph: add stateful entrypoint #1388
Annotations
1 warning and 2 notices
benchmark
ubuntu-latest pipelines will use ubuntu-24.04 soon. For more details, see https://github.com/actions/runner-images/issues/10636
|
Benchmark results:
libs/langgraph/langgraph/func/__init__.py#L1
.........................................
fanout_to_subgraph_10x: Mean +- std dev: 61.3 ms +- 1.1 ms
.........................................
fanout_to_subgraph_10x_sync: Mean +- std dev: 53.2 ms +- 0.8 ms
.........................................
fanout_to_subgraph_10x_checkpoint: Mean +- std dev: 74.6 ms +- 1.0 ms
.........................................
fanout_to_subgraph_10x_checkpoint_sync: Mean +- std dev: 94.9 ms +- 1.3 ms
.........................................
fanout_to_subgraph_100x: Mean +- std dev: 608 ms +- 25 ms
.........................................
fanout_to_subgraph_100x_sync: Mean +- std dev: 517 ms +- 11 ms
.........................................
fanout_to_subgraph_100x_checkpoint: Mean +- std dev: 757 ms +- 15 ms
.........................................
fanout_to_subgraph_100x_checkpoint_sync: Mean +- std dev: 956 ms +- 17 ms
.........................................
react_agent_10x: Mean +- std dev: 30.9 ms +- 0.7 ms
.........................................
react_agent_10x_sync: Mean +- std dev: 23.0 ms +- 0.2 ms
.........................................
react_agent_10x_checkpoint: Mean +- std dev: 38.5 ms +- 0.8 ms
.........................................
react_agent_10x_checkpoint_sync: Mean +- std dev: 36.7 ms +- 0.4 ms
.........................................
react_agent_100x: Mean +- std dev: 344 ms +- 7 ms
.........................................
react_agent_100x_sync: Mean +- std dev: 272 ms +- 2 ms
.........................................
react_agent_100x_checkpoint: Mean +- std dev: 636 ms +- 5 ms
.........................................
react_agent_100x_checkpoint_sync: Mean +- std dev: 630 ms +- 13 ms
.........................................
wide_state_25x300: Mean +- std dev: 23.4 ms +- 0.4 ms
.........................................
wide_state_25x300_sync: Mean +- std dev: 15.3 ms +- 0.1 ms
.........................................
wide_state_25x300_checkpoint: Mean +- std dev: 249 ms +- 14 ms
.........................................
wide_state_25x300_checkpoint_sync: Mean +- std dev: 246 ms +- 13 ms
.........................................
wide_state_15x600: Mean +- std dev: 27.2 ms +- 0.6 ms
.........................................
wide_state_15x600_sync: Mean +- std dev: 17.7 ms +- 0.2 ms
.........................................
wide_state_15x600_checkpoint: Mean +- std dev: 429 ms +- 14 ms
.........................................
wide_state_15x600_checkpoint_sync: Mean +- std dev: 425 ms +- 13 ms
.........................................
wide_state_9x1200: Mean +- std dev: 27.2 ms +- 0.5 ms
.........................................
wide_state_9x1200_sync: Mean +- std dev: 17.7 ms +- 0.2 ms
.........................................
wide_state_9x1200_checkpoint: Mean +- std dev: 280 ms +- 13 ms
.........................................
wide_state_9x1200_checkpoint_sync: Mean +- std dev: 275 ms +- 12 ms
|
Comparison against main:
libs/langgraph/langgraph/func/__init__.py#L1
+-----------------------------------------+---------+-----------------------+
| Benchmark | main | changes |
+=========================================+=========+=======================+
| fanout_to_subgraph_100x_checkpoint | 796 ms | 757 ms: 1.05x faster |
+-----------------------------------------+---------+-----------------------+
| fanout_to_subgraph_100x | 624 ms | 608 ms: 1.03x faster |
+-----------------------------------------+---------+-----------------------+
| fanout_to_subgraph_100x_checkpoint_sync | 974 ms | 956 ms: 1.02x faster |
+-----------------------------------------+---------+-----------------------+
| react_agent_100x_checkpoint | 648 ms | 636 ms: 1.02x faster |
+-----------------------------------------+---------+-----------------------+
| fanout_to_subgraph_10x_checkpoint | 75.3 ms | 74.6 ms: 1.01x faster |
+-----------------------------------------+---------+-----------------------+
| fanout_to_subgraph_10x_checkpoint_sync | 95.6 ms | 94.9 ms: 1.01x faster |
+-----------------------------------------+---------+-----------------------+
| fanout_to_subgraph_10x | 61.7 ms | 61.3 ms: 1.01x faster |
+-----------------------------------------+---------+-----------------------+
| react_agent_10x_checkpoint_sync | 37.0 ms | 36.7 ms: 1.01x faster |
+-----------------------------------------+---------+-----------------------+
| react_agent_100x_sync | 273 ms | 272 ms: 1.01x faster |
+-----------------------------------------+---------+-----------------------+
| wide_state_9x1200_sync | 17.8 ms | 17.7 ms: 1.01x faster |
+-----------------------------------------+---------+-----------------------+
| wide_state_25x300_sync | 15.4 ms | 15.3 ms: 1.00x faster |
+-----------------------------------------+---------+-----------------------+
| wide_state_15x600_sync | 17.8 ms | 17.7 ms: 1.00x faster |
+-----------------------------------------+---------+-----------------------+
| Geometric mean | (ref) | 1.01x faster |
+-----------------------------------------+---------+-----------------------+
Benchmark hidden because not significant (16): wide_state_9x1200_checkpoint, wide_state_9x1200_checkpoint_sync, wide_state_15x600_checkpoint, fanout_to_subgraph_100x_sync, react_agent_10x, fanout_to_subgraph_10x_sync, wide_state_9x1200, wide_state_25x300_checkpoint, wide_state_15x600, react_agent_100x, wide_state_25x300_checkpoint_sync, react_agent_100x_checkpoint_sync, wide_state_15x600_checkpoint_sync, react_agent_10x_sync, react_agent_10x_checkpoint, wide_state_25x300
|