diff options
| author | sigoden <sigoden@gmail.com> | 2024-06-20 11:26:45 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-06-20 11:26:45 +0800 |
| commit | 2eab71a641827e503b14952373aec82661192ba2 (patch) | |
| tree | b2f1fd1d8b988391d85a8058dcaaadd6ef379533 /src/config/input.rs | |
| parent | 3b3d39cef0211b607d51360d0739022f953ba1a7 (diff) | |
| download | aichat-2eab71a641827e503b14952373aec82661192ba2.tar.gz | |
feat: rag hybrid search (#618)
Diffstat (limited to 'src/config/input.rs')
| -rw-r--r-- | src/config/input.rs | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/config/input.rs b/src/config/input.rs index 935d517..892a41f 100644 --- a/src/config/input.rs +++ b/src/config/input.rs @@ -169,12 +169,22 @@ impl Input { if !self.text.is_empty() { let rag = self.config.read().rag.clone(); if let Some(rag) = rag { - let (top_k, minimum_score) = { + let (top_k, min_score_vector, min_score_text) = { let config = self.config.read(); - (config.rag_top_k, config.rag_minimum_score) + ( + config.rag_top_k, + config.rag_min_score_vector, + config.rag_min_score_text, + ) }; let embeddings = rag - .search(&self.text, top_k, minimum_score, abort_signal) + .search( + &self.text, + top_k, + min_score_vector, + min_score_text, + abort_signal, + ) .await?; let text = self.config.read().rag_template(&embeddings, &self.text); self.patched_text = Some(text); |
