Skip to content

Search Rrf

POST
/api/v1/chat/search/rrf

Execute RRF hybrid search combining vector similarity and keyword matching.

Reciprocal Rank Fusion (RRF) combines rankings from both search methods:

  • Vector search: Semantic similarity based on embeddings
  • Keyword search: Full-text search with language-specific stemming

Results appearing high in both searches are boosted.

Args: request: RRF search request with query and parameters service: Hybrid search service (injected)

Returns: Search results with RRF scores and component breakdowns

Raises: HTTPException: 503 if service not configured, 400 for invalid request

RRFSearchRequest

Request model for RRF hybrid search.

object
query
required
Query

Search query text

string
>= 1 characters <= 10000 characters
model_name
required
Model Name

Embedding model name (must match indexed model)

string
language
Language

Full-text search language

string
default: norwegian
Allowed values: norwegian english simple
vector_weight
Vector Weight

Weight for vector results

number
default: 1 <= 2
keyword_weight
Keyword Weight

Weight for keyword results

number
default: 1 <= 2
k
K

RRF smoothing constant

integer
default: 60 >= 1 <= 200
candidate_pool_size
Candidate Pool Size

Max candidates per search type

integer
default: 100 >= 10 <= 500
execution_id
Any of:
string format: uuid
limit
Limit

Maximum results to return

integer
default: 10 >= 1 <= 100
offset
Offset

Number of results to skip

integer
0

Successful Response

RRFSearchResponse

Response model for RRF hybrid search.

object
results
required
Results
Array<object>
RRFResultModel

Single result from RRF hybrid search.

object
segment_id
required
Segment Id
string format: uuid
rrf_score
required
Rrf Score
number
content
required
Content
string
storage_key
required
Storage Key
string
language
required
Language
string
vector_similarity
required
Any of:
number
keyword_rank
required
Any of:
number
vector_rrf_contribution
required
Vector Rrf Contribution
number
keyword_rrf_contribution
required
Keyword Rrf Contribution
number
total_candidates
required
Total Candidates
integer
language
required
Language
string
search_time_ms
required
Search Time Ms
number
config
required
Config
object
key
additional properties
any

Validation Error

HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
input
Input
ctx
Context
object