search_config.yaml•1.77 kB
search_modes:
- name: "regex" # Moved to top position to be the default
enabled: true
description: "Regular expression pattern matching - case insensitive by default. Best for exact terms with variations like CI/CD, CICD, ci-cd, etc."
weight: 1.2
options:
ignore_case: true
dot_all: false
unicode: true
max_pattern_length: 1000
- name: "exact"
enabled: true
description: "Basic case-insensitive substring matching - fastest but least flexible. Only matches complete substrings."
weight: 1.0
- name: "semantic"
enabled: true
description: "Meaning-based semantic search - best for concept searching. Finds related messages even when exact words differ."
weight: 1.8
options:
model: "all-MiniLM-L6-v2" # Lightweight model that works well for general similarity
cache_embeddings: true
cache_max_size: 10000 # Maximum number of cached message embeddings
similarity_threshold: 0.23 # Lower threshold for better recall across all topics
similarity_metric: "cosine"
- name: "hybrid"
enabled: true
description: "Combined search using multiple modes - comprehensive but may be slower. Uses regex, semantic and exact search together."
weight: 0.8
modes:
- "regex"
- "semantic"
- "exact"
search:
default_mode: "hybrid" # Changed default to hybrid for better overall results
max_results_per_space: 50
combine_results_strategy: "weighted_score"
# Hybrid search weights - Adjusted for better performance
hybrid_weights:
exact: 1.0
regex: 1.2
semantic: 1.8 # Increased weight for semantic search
# For pagination and API limits
pagination:
default_page_size: 50
max_page_size: 100