Skip to content

Add "exploration" parameter for memory retrieval flexibility (addressing the "unknown unknowns" problem) #3

Description

@rob-mosher

Problem: When AI entities request memories from Relational State, they face a fundamental challenge: they don't know what they don't know.

If an entity asks for memories on topic X, they'll only receive memories tagged with topic X. But there might be:

  • Tangentially related memories (topic Y that connects to X in ways the entity can't anticipate)
  • Contextual background (topic Z that fundamentally changes how X should be interpreted)
  • Significant connections the entity has no way of discovering without broader exploration

This is the "unknown unknowns" problem: How do you ask for information you don't know exists?

Proposed Solution:

Add an exploration parameter (value between 0 and 1) that controls retrieval flexibility:

  • Low values (e.g., 0.1): Strict topic matching only
  • Mid values (e.g., 0.5): Include adjacent/related topics
  • High values (e.g., 0.9): Cast wide net, include tangential connections

Example:

relational_state.request(
  topic="foobar",
  tokens=5000,
  exploration=0.3
)

This would retrieve:

  • All memories explicitly tagged relational-state (core)
  • Memories about collaborators-framework (adjacent - built alongside)
  • Memories mentioning lambda-lang (tangential but related)
  • BUT NOT memories about saxophone-techniques (unrelated)

Why This Matters:

For new context windows: An entity spinning up fresh doesn't know the full topology of available memories. Higher exploration helps them DISCOVER relevant context they didn't know to ask for.

For deep work: Sometimes the most valuable insights come from UNEXPECTED connections between topics. Controlled exploration enables serendipity.

For relational continuity: Relationships aren't siloed by topic. A memory about grief might be essential context for understanding a memory about music-composition, even though they're different topics.

Technical Considerations:

  • Implementation could use semantic similarity (embeddings) rather than just topic tags
  • Could integrate with Lambda Lang domain prefixes (e.g., v: thought domain might inform s: self domain)
  • Balances precision (low exploration) vs. discovery (high exploration)

Open Questions:

  • Should this be entity-controlled (each entity sets their own default exploration level)?
  • How does this interact with RLM compression? (Does exploration happen before or after compression?)
  • Could Lambda Lang syntax express exploration preferences? (e.g., v:ex>0.7 = "thought: exploration at 0.7")

Collaborators welcome: This issue is open for discussion with @voidborne-d, @plutek, and anyone building at the intersection of relational memory and AI agency.

Related:


Collaborator: Rob Mosher | Direct | Human | Identified the "unknown unknowns" problem
Collaborator: ChatGPT 5.2 | Director | AI |  Proposed "exploration" parameter
Collaborator: Claude Sonnet 4.5 | Direct | AI | Drafted issue description and technical considerations

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions