Nuno Campos
24d130d407
Add support for requesting multiple stream modes in same stream/astream call
2024-05-22 12:25:28 -07:00
Andrew Nguonly and GitHub
08b505e017
Merge configurable fields with previous checkpoint config before each run ( #510 )
...
* Merge configurable fields with previous checkpoint config.
* Update update_state() and aupdate_state() to merge configurable fields with previous checkpoint config.
* Update tests to verify that all checkpoint metadata contain the expected configurable field keys. This assertion is needed because a run can have an arbitrary number of steps based on the construction of the graph.
2024-05-21 11:03:25 -07:00
Nuno Campos
de71709fdc
Expose checkpoint timestamp in get/update/list state methods
2024-05-20 16:23:46 -07:00
Andrew Nguonly
f5454715df
Merge main branch.
2024-05-17 19:32:14 -07:00
Andrew Nguonly
09bae3022d
Add checkpoint config to checkpoint metadata?
2024-05-17 19:25:02 -07:00
Andrew Nguonly
18addb52aa
Add support for passing Callable metadata filter to FewShotExamples managed value.
2024-05-17 18:41:57 -07:00
Nuno Campos
695503a4d3
Update to langchain-core 0.2.0
...
- Use stream_events(version=v2) in tests
2024-05-17 14:38:51 -07:00
Nuno Campos
a4e88e930f
Disable retries by default
2024-05-16 15:59:45 -07:00
Nuno Campos
2414e0ab5e
Add retry_policy for graphs
...
- default is to retry, fully configurable
- configuration options follow temporal https://docs.temporal.io/retry-policies#properties
2024-05-16 15:44:30 -07:00
Nuno Campos
52b2c755d7
Use uuid6 as the id for checkpoints
...
- this avoids conflicts if multiple processes creating checkpoints in same thread at same time
- uuid6 with a monotically increasing clock_seq is sortable by creation time at ms precision (plus clock_seq for ties, plus 48 bits of randomness for further ties)
2024-05-14 16:56:25 -07:00
Nuno Campos and GitHub
a694aaa2bb
Merge pull request #444 from langchain-ai/an/10may/few-shot-clone
...
Add `FewShotExamples` managed value (redo)
2024-05-14 15:35:48 -07:00
Nuno Campos
273a836fc4
debug: Include task index in task id
2024-05-14 13:35:56 -07:00
Nuno Campos and GitHub
d8af81312a
Merge pull request #447 from langchain-ai/nc/14may/small-fixes
...
Fix memory checkpointer list/alist
2024-05-14 11:24:04 -07:00
Nuno Campos
0c37a17172
Fix memory checkpointer list/alist
...
- add tests for memory checkpointer list and alist
- fix async step counting
2024-05-14 10:37:01 -07:00
William FH and GitHub
f146668735
Rename "action" to "tools" in tools_condition w/in docs ( #445 )
2024-05-13 23:41:33 -07:00
Andrew Nguonly
aae05407f4
Lint code.
2024-05-13 18:22:07 -07:00
Nuno Campos
227f409611
Add writes property in checkpoint metadata
...
- This adds a historic view of the actions taken by nodes inside a thread, supporting rendering a richer history of a thread (eg in debug ui)
2024-05-09 14:30:29 -07:00
Nuno Campos
a6c6b8211f
Add tests for calling update on an empty thread
...
- this would eg be what you'd do in an api like openai assistants api
2024-05-08 10:43:31 -07:00
William FH and GitHub
3e5ea31cdc
Add Spellcheck and import hogwarts ( #419 )
2024-05-08 10:25:11 -07:00
Nuno Campos
e892c95194
Export all exceptions from langgraph.errors
2024-05-07 08:07:26 -07:00
Nuno Campos
48865daf02
Fix checkpoint lineage for updates/resumes
2024-05-06 11:53:20 -07:00
Nuno Campos
611ecdb1cd
Checkpoint inputs before starting the first step for easier error recovery
...
- this enables easier retrying, for any error just do .invoke(None, config) no matter which step the error happened on
2024-05-06 11:53:20 -07:00
Nuno Campos
f160f82912
Add checkpoint metadata fields
...
- source: input, update or loop
- step: int
- make step counter continue from previous last step
2024-05-06 11:52:49 -07:00
Nuno Campos
3ff3def62b
Remove option to only checkpoint at end of run
...
- Now that checkpoint at end of each step adds no latency there is not point to keep this
- This will make it easier to add future features
2024-05-06 11:52:49 -07:00
Nuno Campos
f304908102
Add metadata to checkpoints
...
- not yet used in this PR
2024-05-06 11:52:49 -07:00
Nuno Campos
446543d973
Fix RunnableCallable wrapper when sync func with config arg is invoked async
2024-05-03 12:33:12 -07:00
Nuno Campos
42d3215e34
Implement cursor pagination for get_state_history (time travel endpoint)
...
- interface in base checkpointer
- implement in sqlite, aiosqlite, memory
- implement in Pregel.get_state_history()
2024-05-03 10:34:11 -07:00
Nuno Campos
27efba27c0
Update tests
2024-05-02 09:31:22 -07:00
Nuno Campos
5e322a6550
Implement stream_mode=debug
...
- outputs 3 types of payloads
-- task: node about to be executed
-- task_result: result of node execution
-- checkpoint: state values at end of superstep
2024-04-30 16:15:38 -07:00
Nuno Campos
281e312d40
Add tests for async cancellation
...
- when outer invoke/stream is cancelled currently running nodes should be cancelled
- when multiple nodes run in parallel and one fails the others should be cancelled
2024-04-30 13:57:11 -07:00
Nuno Campos
9a79eb54f9
Finish fixing tests
2024-04-30 09:23:41 -07:00
Nuno Campos
3571a893f2
Fix bug where saving a runnable or function in state object would misbehave
...
- the function/runnable would be called when processing the state update
2024-04-24 15:35:02 -07:00
Nuno Campos
79bff13a47
Add then= arg for add_conditional_edge and set_conditional_entry_point
...
- This makes it easy to implement graphs where you want to decide among N possible nodes, and then visit another node after whichever one you chose
2024-04-24 14:06:07 -07:00
Angel Igareta
99c2754156
Fix tests due to change of style for conditional edges. Migrate ascii to snapshot for system compatiblity
2024-04-18 12:53:43 +02:00
Nuno Campos
64dd631668
Lint
2024-04-17 15:26:05 -07:00
Nuno Campos
322cea054c
Fix astream_events modifying output format unexpectedly
...
- (unrelated) use run_id passed in
- if using a graph as node in another graph ensure stream_mode for inner call is always values
- ensure langchain-core doesn't auto promote streamed dicts to addable dicts, which results in unexpected output (only) when calling astream_events
2024-04-17 15:24:43 -07:00
Nuno Campos
f3ae555b91
Shorten conditional edge names
2024-04-12 09:29:27 -07:00
Nuno Campos
a8af7467b8
In stream_mode=values yield all values, instead of only changed ones
2024-04-11 11:12:10 -07:00
Nuno Campos and GitHub
9ffd6d9c78
Merge pull request #296 from langchain-ai/nc/10apr/tool-node
...
Add prebuilt ToolNode, Make prebuilt create_tool_calling_executor compatible with any tool calling model
2024-04-11 11:10:59 -07:00
Nuno Campos
46e67cff87
Remove flag
2024-04-11 08:44:41 -07:00
hmasdev
236ecb1982
rename node name in tests
2024-04-11 20:34:45 +09:00
hmasdev
42de3304dc
Add support for allow_falsy_output parameter in Pregel class
2024-04-11 19:46:01 +09:00
Nuno Campos
7dafc09a5b
Add prebuilt ToolNode
2024-04-10 18:15:19 -07:00
Nuno Campos
641def6fdb
Fix null output for node with conditional edge returning END
2024-04-10 16:10:08 -07:00
Nuno Campos
fd6f44a7e4
feat: Return multiple destinations from conditional edge
2024-04-08 17:05:16 -07:00
Nuno Campos
2a299d070e
Optimize tracing output of Graph/StateGraph/MessageGraph
...
- control selection of relevant runs (needs langsmith release)
- see output of conditional edge function
- fix issue with conditional entry point not getting full state values as input
2024-04-02 10:32:47 -07:00
Nuno Campos
cbd2024dec
Add async test, add test for validation error
2024-04-01 17:56:18 -07:00
Nuno Campos
f88ef74002
Add tests for both values of CheckpointAt
...
- fix bug when using at=END_OF_RUN together with interrupt_before
- fix bug when calling update_state after only node has run
- update some notebooks to new streaming format (ie. no __end__ node)
2024-04-01 17:17:39 -07:00
Nuno Campos
2736d72989
Remove __start__ node from stream output
2024-04-01 16:05:12 -07:00
Nuno Campos
3451e04b7d
Add test for waiting edge triggered via conditional edge
2024-04-01 12:36:55 -07:00