Skip to main content
Mem[v] provides graph-aware semantic search that finds information by meaning and automatically includes connected entities and relationships.

How it works

Semantic search uses:
  • Embedding-based similarity for meaning
  • Knowledge graph traversal for connected information
  • Entity recognition for precise matches
  • Metadata filtering for refined results
results = client.memories.search(
    space_id="space_123",
    query="What are the user's communication preferences?",
    limit=10
)

for memory in results.memories:
    print(f"Score: {memory.score}")
    print(f"Content: {memory.content}")

Search results

Each result includes:
  • Relevance score (0-1): Semantic similarity to query
  • Content: The extracted information
  • Metadata: Context and tags
  • Entities: Extracted people, places, technologies
  • Source: Original file, timestamp, page number

Query patterns

Natural questions

"What does the user like for breakfast?"
"Who works in the engineering team?"
"How do I authenticate API requests?"

Entity searches

"Sarah Chen"
"Acme Corp"
"Kubernetes deployment"

Conceptual queries

"user preferences"
"team structure"
"authentication methods"

Search with filters

Combine semantic search with metadata filters:
results = client.memories.search(
    space_id="space_123",
    query="bug reports",
    filters={
        "type": "bug_report",
        "severity": "high"
    },
    limit=20
)

Building AI context

Get relevant context for AI responses:
def get_context_for_query(user_query: str, space_id: str) -> str:
    results = client.memories.search(
        space_id=space_id,
        query=user_query,
        limit=5
    )
    return "\n\n".join([m.content for m in results.memories])

# Use in AI prompt
context = get_context_for_query("How should I configure the database?", "docs_space")
prompt = f"Context: {context}\n\nQuestion: {user_query}"

Best practices

  • Be specific: “What is the user’s preferred auth method?” vs “auth”
  • Use natural language: Ask complete questions
  • Adjust limit: 5-10 for AI context, 20-50 for comprehensive search
  • Combine with filters: Use metadata to narrow results
  • Check scores: Filter by relevance threshold if needed

Next steps

Knowledge Graphs

Discover connected information

SDK: Memories

SDK search documentation