#
Text Search
#
Text Search
Text search in Curiosity Workspace provides fast keyword-based retrieval over selected fields, plus filtering and ranking controls suitable for production search experiences.
#
When to use text search
Text search is ideal when users:
- search by identifiers (IDs, codes, serial numbers)
- know relevant keywords
- expect predictable matching on short fields (names, titles)
#
What to index
Index fields that users type into the search box:
- titles / names
- summaries
- identifiers
- short descriptions
Avoid indexing every field by default; start with the user-facing fields and expand based on search analytics.
#
Ranking model (conceptual)
Text retrieval typically uses term-based ranking (e.g., BM25-style scoring). In practice, relevance is tuned by:
- field boosts (title counts more than body)
- filters and scoping (type, time, permissions)
- sort modes (recency-first, relevance-first, domain-specific sorts)
#
Filters and facets
Curiosity Workspaces commonly support:
- type facets (restrict results to certain node types)
- property facets (status, priority, category)
- related facets (filters derived from graph relationships)
- time filters (for event-like data)
The key best practice is to align facets with real user refinement behavior.
#
Common pitfalls
- Over-indexing: indexing too many fields increases noise and cost.
- Under-boosting key fields: if titles are not boosted, long bodies can dominate.
- Not separating types: mixing entity types without strong facets makes search confusing.
#
Next steps
- Add semantic retrieval: Vector Search
- Combine both approaches: Hybrid Search