Skip to main content
Mneno is provider-agnostic. While the core runtime is deterministic and local by default, you can easily integrate external services to enhance retrieval and context building.

Supported Providers

Mneno currently supports three types of providers via standard protocols:
  • EmbeddingProvider: Used for semantic search and relevance scoring.
  • RerankerProvider: Used for second-stage ranking of search results.
  • LLMProvider: Used for validated memory extraction and optional wording improvements for deterministic compaction merges.

Integrating an Embedding Provider

To enable semantic search, pass an EmbeddingProvider to the MemoryClient.

Implementing a Custom Provider

You can integrate any service by implementing the EmbeddingProvider protocol in an optional integration package or application layer.

Integrating a Reranker Provider

Rerankers are used to re-order candidate memories after the initial scoring phase.

Provider Registry

Mneno includes a ProviderRegistry to help you manage and swap providers dynamically.

Why Protocols?

By using protocols instead of direct dependencies:
  • Zero Core Bloat: Mneno doesn’t force you to install large SDKs like openai or cohere.
  • Future Proof: You can swap providers as better models become available without changing your core memory logic.
  • Testability: Use dummy providers for fast, deterministic local tests.
Real provider SDKs, credentials, and network calls remain outside the core package.