dowhiledev / dowhiledev/nomos

Key Value Store for the whole Session or Specific FLow

Open
#142 4 comments 0 reactions 1 assignee Claimed by @chandralegend View on GitHub
New Feature
Dominant language
Python
Stars
88
Forks
12
PR merge metrics
No merged PRs in 30d

Description

Idea:
Users can maintain seperate Key value Stores which is defined at the start of a session or start of a flow by the developer. These are typed key value storages to be used within steps if the developer desires. This allows the ability to manage values in a storage which is easily accessible by the agent at a given moment instead of performing finding the needle in the history. Agent is able to update those values if required through the next step generation if required or specified in the step configuration by the agent developer.

Implementation:
```yaml
kv_stores:
some_kv_store:
key: ["str", "default_value"]
another_key: ["int", 0]

steps:
- step_id: some_step
description: |
This is an example step that uses the kv_store.
It retrieves a value from the kv_store and uses it in the conversation.
kv_stores:
some_kv_store:
update: false # Step cannot update the kv_store only read

flows:
- flow_id: financial_advisor_flow
kv_stores:
some_kv_store: # This kv_store is used in the flow. These kv_stores will be reseted when exiting the flow
key: ["str", "default_value"]
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.