Skip to content

[Feat]: Support for expanding the functionality of Retrieval Agents #1246

@giocafe

Description

@giocafe

Is your feature request related to a problem?

1. Memory Retrieval Scope of Retrieval Agents
All agents except ToolSelectAgent—namely MemMachineAgent, SplitQueryAgent, and ChainOfQueryAgent—search only Episodic Memory.
Is there a specific reason why the search scope is limited to Episodic Memory? Why isn’t Semantic Memory searched together?
Wouldn’t answer quality improve if the agents retrieved results from both Episodic and Semantic Memory, rather than relying only on Episodic Memory?

For example, when a query asks about user-related information, if the agents also search Semantic Memory, they could respond immediately.
However, if they search only Episodic Memory, they must first find the relevant episodes and then extract the user-related information from them to produce an answer.
This approach would make the response significantly slower.

2. Search Queries of SplitQueryAgent
The SplitQueryAgent uses only sub-queries when performing the Search phase.

Why are only sub-queries used during Search?
Including the original query helps compensate for the limitations of query decomposition.

  • Preserve the original query’s context (intent and combined semantics) during ranking
  • Recover high-level or summarized memories that may not be captured by individual sub-queries
  • Avoid interference between decomposed queries and the holistic meaning of the original query

This approach ensures both fine-grained recall via sub-queries and context-aware relevance via the original query.

Describe the solution you'd like

When performing memory retrieval:

  1. All agents, except the ToolSelectAgent, should also retrieve semantic memory.
  2. The SplitQueryAgent should additionally perform a search using the original query.

Describe alternatives you've considered

No response

Additional context

No response

Metadata

Metadata

Labels

No fields configured for Feature.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions