agents.memory.enhanced_retrieverΒΆ

Enhanced Self-Query Retriever with Memory Context.

This module implements Phase 2 of the incremental memory system: Enhanced Self-Query retriever that integrates memory classification with sophisticated retrieval strategies.

The enhanced retriever builds on the memory classification system to provide: - Memory-type aware retrieval (semantic, episodic, procedural, etc.) - Context-aware query expansion - Memory importance weighting - Time-based relevance scoring - Self-query with metadata filtering

This is the next phase after the foundational memory classification system, bridging toward full Graph RAG implementation.

ClassesΒΆ

EnhancedMemoryRetriever

Enhanced self-query retriever with memory-aware context and sophisticated scoring.

EnhancedQueryResult

Result of enhanced memory retrieval with detailed metadata.

EnhancedRetrieverConfig

Configuration for enhanced memory retriever with self-query capabilities.

FunctionsΒΆ

create_enhanced_memory_retriever(store_manager[, ...])

Factory function to create an enhanced memory retriever.

Module ContentsΒΆ

class agents.memory.enhanced_retriever.EnhancedMemoryRetriever(config)ΒΆ

Enhanced self-query retriever with memory-aware context and sophisticated scoring.

This retriever implements Phase 2 of the incremental memory system, building on the memory classification foundation to provide intelligent, context-aware retrieval.

Key features: - Memory type classification and targeting - Query intent analysis and expansion - Multi-factor scoring (similarity + importance + recency + type) - Metadata filtering and self-query capabilities - Performance monitoring and optimization

Initialize enhanced memory retriever.

Parameters:

config (EnhancedRetrieverConfig)

get_performance_stats()ΒΆ

Get retrieval performance statistics.

Return type:

dict[str, Any]

async optimize_for_usage_patterns()ΒΆ

Analyze usage patterns and suggest optimizations.

Return type:

dict[str, Any]

async retrieve_memories(query, memory_types=None, importance_threshold=None, time_range=None, limit=None, include_metadata=True, namespace=None)ΒΆ

Retrieve memories using enhanced self-query with memory context.

Parameters:
  • query (str) – Natural language query

  • memory_types (list[haive.agents.memory.core.types.MemoryType] | None) – Specific memory types to target (auto-detected if None)

  • importance_threshold (float | None) – Minimum importance score filter

  • time_range (tuple[datetime.datetime, datetime.datetime] | None) – Optional time range filter

  • limit (int | None) – Maximum results to return

  • include_metadata (bool) – Whether to include detailed metadata

  • namespace (tuple[str, Ellipsis] | None) – Memory namespace to search

Returns:

EnhancedQueryResult with memories and detailed metadata

Return type:

EnhancedQueryResult

class agents.memory.enhanced_retriever.EnhancedQueryResult(/, **data)ΒΆ

Bases: pydantic.BaseModel

Result of enhanced memory retrieval with detailed metadata.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:

data (Any)

class agents.memory.enhanced_retriever.EnhancedRetrieverConfig(/, **data)ΒΆ

Bases: pydantic.BaseModel

Configuration for enhanced memory retriever with self-query capabilities.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:

data (Any)

model_configΒΆ

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

async agents.memory.enhanced_retriever.create_enhanced_memory_retriever(store_manager, namespace=('memory', 'enhanced'), classifier_config=None, **retriever_kwargs)ΒΆ

Factory function to create an enhanced memory retriever.

Parameters:
  • store_manager (haive.core.tools.store_tools.StoreManager) – Store manager for memory persistence

  • namespace (tuple[str, Ellipsis]) – Default memory namespace

  • classifier_config (haive.agents.memory.core.classifier.MemoryClassifierConfig | None) – Optional classifier configuration

  • **retriever_kwargs – Additional retriever configuration options

Returns:

Configured EnhancedMemoryRetriever ready for use

Return type:

EnhancedMemoryRetriever