Skip to main content

Search

This document provides an overview of the search architecture used in the Deepdesk platform. The architecture is designed to support efficient and scalable search capabilities for various use cases, including user queries and response recommendations.

Overview

The search architecture is built around two primary Elastic indices:

  1. Content Index: Provisioned for each account profile during onboarding. The name follows the pattern {account_code}-{profile_code}-search. This index stores various types of content, including:

    • Text suggestions
    • URL suggestions
    • Personal suggestions
    • Pinned messages
    • Images
  2. Vector Index: Provisioned for knowledge bases (RAG - Retrieval-Augmented Generation). The name follows the pattern {account_code}-{knowledge_base_code}-vectors-ann. This index supports hybrid search capabilities for Assistants RAG.

Content Index

  • Provisioning: A dedicated Elastic index is created for each account profile during the onboarding process.
  • Data Updates: The Admin interface allows for creating and updating content, which is pushed to the Elastic index. This includes text suggestions, URLs, personal suggestions, pinned messages, and images.
  • User Search: Users can search for any content directly from integrations (e.g., CMD-K).
  • Engine Integration: The Engine queries the same index to include search results in response recommendations.

Vector Index

  • Purpose: Designed for knowledge bases (RAG), the vector index supports hybrid search capabilities.
  • Querying: Both the Knowledge Search service and Backend query these indices to evaluate Assistants.

Architecture Diagram

The following diagram illustrates the search architecture:

Kibana

For advanced users, you can explore and manage the indices directly in Kibana. Visit Kibana (credentials available in 1Password). The indices can be found under Elasticsearch's Index Management section.