Searching Memories
Memsolus provides three search modes you can choose from depending on your use case. All modes support filtering by user, agent, categories, and priority.
Search Modes
hybrid (default)
Combines semantic understanding with keyword matching to deliver the best results across most queries. Use this mode when you are not sure which other mode to pick — it is optimized for general-purpose retrieval.
semantic
Searches by meaning rather than exact words. Finds memories that are conceptually related to your query, even if they use completely different phrasing.
Use semantic search when you want to find similar ideas or when the exact wording is unpredictable.
keyword
Searches for exact terms and phrases. Useful when you need to find a specific name, ID, or phrase that must appear verbatim.
Available Filters
You can combine any of these filters with any search mode:
| Filter | Type | Description |
|---|---|---|
user_id | string | Return only memories for this user |
agent_id | string | Return only memories created by this agent |
session_id | string | Return only memories from this session |
categories | string[] | Return only memories with these categories |
priority | enum | Filter by LOW, MEDIUM, or HIGH |
How Results Are Ranked
Search results are ranked by a combination of three factors:
- Relevance — how closely the memory matches the query
- Recency — more recently created memories rank slightly higher
- Priority —
HIGHpriority memories surface beforeMEDIUMandLOW
The balance between these factors is automatically adjusted based on the nature of your query. You do not need to tune weights manually.
Search Feedback
You can submit feedback on individual search results to help improve future rankings. Feedback is optional but improves result quality over time.