Typesense · Schema

ConversationalSearchResult

Full-Text SearchOpen SourceSearch EngineTypo ToleranceVector Search

Properties

Name Type Description
facet_counts array Facet counts from the underlying search.
found integer Total number of matching documents.
search_time_ms integer Time taken for the search in milliseconds.
hits array Search result hits used as context for the answer.
conversation object Conversational response from the LLM.
View JSON Schema on GitHub

JSON Schema

typesense-conversationalsearchresult-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/ConversationalSearchResult",
  "title": "ConversationalSearchResult",
  "type": "object",
  "properties": {
    "facet_counts": {
      "type": "array",
      "description": "Facet counts from the underlying search.",
      "items": {
        "type": "object"
      }
    },
    "found": {
      "type": "integer",
      "description": "Total number of matching documents."
    },
    "search_time_ms": {
      "type": "integer",
      "description": "Time taken for the search in milliseconds."
    },
    "hits": {
      "type": "array",
      "description": "Search result hits used as context for the answer.",
      "items": {
        "type": "object",
        "properties": {
          "document": {
            "type": "object",
            "description": "The matched document."
          },
          "highlights": {
            "type": "array",
            "items": {
              "type": "object"
            }
          },
          "text_match": {
            "type": "integer",
            "format": "int64"
          }
        }
      }
    },
    "conversation": {
      "type": "object",
      "description": "Conversational response from the LLM.",
      "required": [
        "answer",
        "conversation_id"
      ],
      "properties": {
        "answer": {
          "type": "string",
          "description": "Natural language answer generated by the LLM based on the search results context."
        },
        "conversation_history": {
          "type": "array",
          "description": "History of messages in the conversation.",
          "items": {
            "type": "object",
            "properties": {
              "role": {
                "type": "string",
                "description": "Role of the message sender (user, assistant, system)."
              },
              "content": {
                "type": "string",
                "description": "Content of the message."
              }
            }
          }
        },
        "conversation_id": {
          "type": "string",
          "description": "Unique ID for the conversation, used for follow-up queries."
        }
      }
    }
  }
}