Search & Discovery
Find any engagement, quote, account, or resource with full-text search (Algolia) plus semantic vector search powered by AI. Two search systems, one shortcut: Cmd+F.
Servantium provides two powerful search systems that work together: Full-Text Search for finding specific records by name or keyword, and Semantic Vector Search for discovering related concepts and past work.
Full-Text Search (Algolia)
Servantium uses Algolia to power fast, typo-tolerant, full-text search across your organization’s data.
Keyboard Shortcuts
You can instantly focus the table search bar on any list screen by pressing Cmd+F (Mac) or Ctrl+F (Windows).
How it works
- Automatic Indexing — A backend trigger (
sync_to_algolia) listens for changes across your core collections (Engagements, Quotes, Accounts, Contacts, Items). - Instant Updates — Whenever a document is created, updated, or deleted, the change is immediately pushed to the search index.
- Global Search — The global search bar in the top navigation queries this index across all collections simultaneously. Results appear in a floating overlay, allowing you to instantly jump to the specific URL of any record.
Security & Access Control
Search results automatically respect your organization’s role and tag-based access rules (ABAC). The system generates dynamic search filters based on the active user’s assigned roles and security tags. If a user does not have permission to view a specific collection or a record tagged with a restricted category, those records will be omitted from their search results.
Reindexing
In rare cases (such as after a major bulk data import), the search index might fall out of sync. Organization administrators can use the Management CLI to run the reindex_algolia.py script to perform a full synchronization from Firestore to Algolia.
Semantic Vector Search
While full-text search is great for finding a specific client by name, Semantic Search understands the meaning of your data.
How it works
Servantium uses Google Vertex AI (Gemini Embeddings) and Firestore Vector Search.
- Note Consolidation — As team members add notes to an engagement, the
noteEmbeddingbackend trigger aggregates all the text. - Embedding Generation — The text is passed to the Gemini Embedding model, which converts the concepts into a high-dimensional vector array.
- Similarity Matching — When you use the “Similars” feature, the
getsimilarCloud Function performs a nearest-neighbor vector search. It compares your current engagement’s embedding against all historical engagements in your organization to find the closest conceptual matches.
Semantic search does not rely on exact keyword matches. A search for “CRM implementation” will successfully find past engagements labeled “Salesforce rollout” because the AI understands they are conceptually related.
Using Search in Object Fields
When designing Engagement Templates or Data Dictionaries, you can use the Object field type. This field uses Algolia’s search index to provide a dynamic dropdown that searches across a specific collection (e.g., Accounts or Contacts), rather than a hardcoded list of options.
What’s next?
- AI & Intelligence — Learn more about how semantic search powers AI quote generation.
- Engagement Templates — Configure templates that utilize Object search fields.
Need more help?
Our support team is available to assist you.
Contact Support