Skip to content

Basic version of Cache subsystem

Past due by 3 months 100% complete

Implementation of a cache subsystem with basic caching features (see details below) and integration with the Query Engine API and the AttentionBroker to set STI/LTI (see details below). But no integration with the Pattern Matching algorithm yet, which is a milestone itself.

The DAS' cache is not exactly like a traditional cache, where data is stored basic…

Implementation of a cache subsystem with basic caching features (see details below) and integration with the Query Engine API and the AttentionBroker to set STI/LTI (see details below). But no integration with the Pattern Matching algorithm yet, which is a milestone itself.

The DAS' cache is not exactly like a traditional cache, where data is stored basically in the same way in both, the cache and the primary data repository, and queries are answered by searching the data in the former and then in the latter. The DAS's cache implements this functionality but it also sorts and partitions queries' results in such a way that the caller sees the most relevant results first.

All the queries that return more than one atom, return an iterator to the results instead of the results themselves. This way only a subset of the results are returned in a remote query. When the caller iterates through this iterator, other chunks of results are fetched on demand from the remote DAS until all the results have been visited. Before splitting the results in chunks, the resulting atoms are sorted by "relevance", which can be a measure based in atoms' Short and Long Term Importance (STI and LTI), in a way that the most relevant results are iterated first. This is important because most AI agents make several queries and visit the results in a combinatorial fashion so visiting every single possible combination of results are not practical. Having results sorted by relevance allow the agents to constraint the search and eventually avoid fetching too many chunks of results from the remote server.

There are no open issues in this milestone.

Add issues to milestones to help organize your work for a particular release or project.

Create new issue

Or find and add issues with no milestone in this repo.