Retrieve Chunks using Semantic, Keyword, or Hybrid Search
Perform document chunk search using semantic, keyword, or hybrid strategies.
This endpoint provides flexible search capabilities across ingested documents
with support for different search strategies based on use case requirements.
Search Types:
- **Semantic Search**: Uses vector embeddings to find chunks with similar meaning
to the provided text query, regardless of exact keyword matches
- **Keyword Search**: Finds chunks containing specific keywords with exact or
fuzzy matching capabilities (implementation pending)
- **Hybrid Search**: Combines semantic similarity with keyword matching for
comprehensive results (implementation pending)
Key Features:
- **Score-based Ranking**: Results include similarity/relevance scores
- **Context Filtering**: Narrow search to specific collections,
artifacts, or metadata
- **Adjacent Context**: Optionally retrieve surrounding chunks for richer context
- **Configurable Limits**: Control result count (1-100 chunks)
- **Flexible Matching**: Choose optimal strategy based on query type
Search Process:
1. Parse request to determine search strategy and parameters
2. Apply context filters to narrow search scope
3. Execute search using appropriate algorithm (semantic/keyword/hybrid)
4. Rank results by relevance score
5. Optionally expand results with adjacent chunks for context
Current Implementation Status:
- ✅ Semantic Search: Fully implemented and production-ready
- 🚧 Keyword Search: Planned feature, returns 400 if requested
- 🚧 Hybrid Search: Planned feature, returns 400 if requested
Notes:
- Higher scores indicate better matches
- Expansion increases response time but provides richer context
- Use `/artifacts/list` to discover available collections and metadata
- Semantic search works best for conceptual queries
- Keyword search (when available) will excel at exact term matching

