Skip to content

Commit 3557090

Browse files
committed
feat: discontinue rag_min_score_* config items
1 parent 927b736 commit 3557090

File tree

3 files changed

+9
-46
lines changed

3 files changed

+9
-46
lines changed

config.example.yaml

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -35,13 +35,11 @@ summary_prompt: 'This is a summary of the chat history as a recap: '
3535

3636
# ---- RAG ----
3737
# See [RAG-Guide](https://github.com/sigoden/aichat/wiki/RAG-Guide) for more details.
38-
rag_embedding_model: null # Specifies the embedding model to use
39-
rag_reranker_model: null # Specifies the rerank model to use
40-
rag_top_k: 5 # Specifies the number of documents to retrieve
41-
rag_chunk_size: null # Specifies the chunk size
42-
rag_chunk_overlap: null # Specifies the chunk overlap
43-
rag_min_score_vector_search: 0 # Specifies the minimum relevance score for vector-based searching
44-
rag_min_score_keyword_search: 0 # Specifies the minimum relevance score for keyword-based searching
38+
rag_embedding_model: null # Specifies the embedding model used for context retrieval
39+
rag_reranker_model: null # Specifies the reranker model used for sorting retrieved documents
40+
rag_top_k: 5 # Specifies the number of documents to retrieve for answering queries
41+
rag_chunk_size: null # Defines the size of chunks for document processing in characters
42+
rag_chunk_overlap: null # Defines the overlap between chunks
4543
# Defines the query structure using variables like __CONTEXT__ and __INPUT__ to tailor searches to specific needs
4644
rag_template: |
4745
Answer the query based on the context while respecting the rules. (user query, some textual context and rules, all inside xml tags)

src/config/mod.rs

Lines changed: 1 addition & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -123,8 +123,6 @@ pub struct Config {
123123
pub rag_top_k: usize,
124124
pub rag_chunk_size: Option<usize>,
125125
pub rag_chunk_overlap: Option<usize>,
126-
pub rag_min_score_vector_search: f32,
127-
pub rag_min_score_keyword_search: f32,
128126
pub rag_template: Option<String>,
129127

130128
#[serde(default)]
@@ -197,8 +195,6 @@ impl Default for Config {
197195
rag_top_k: 5,
198196
rag_chunk_size: None,
199197
rag_chunk_overlap: None,
200-
rag_min_score_vector_search: 0.0,
201-
rag_min_score_keyword_search: 0.0,
202198
rag_template: None,
203199

204200
document_loaders: Default::default(),
@@ -1413,22 +1409,8 @@ impl Config {
14131409
abort_signal: AbortSignal,
14141410
) -> Result<String> {
14151411
let (reranker_model, top_k) = rag.get_config();
1416-
let (min_score_vector_search, min_score_keyword_search) = {
1417-
let config = config.read();
1418-
(
1419-
config.rag_min_score_vector_search,
1420-
config.rag_min_score_keyword_search,
1421-
)
1422-
};
14231412
let (embeddings, ids) = rag
1424-
.search(
1425-
text,
1426-
top_k,
1427-
min_score_vector_search,
1428-
min_score_keyword_search,
1429-
reranker_model.as_deref(),
1430-
abort_signal,
1431-
)
1413+
.search(text, top_k, reranker_model.as_deref(), abort_signal)
14321414
.await?;
14331415
let text = config.read().rag_template(&embeddings, text);
14341416
rag.set_last_sources(&ids);
@@ -2222,13 +2204,6 @@ impl Config {
22222204
if let Some(v) = read_env_value::<usize>(&get_env_name("rag_chunk_overlap")) {
22232205
self.rag_chunk_overlap = v;
22242206
}
2225-
if let Some(Some(v)) = read_env_value::<f32>(&get_env_name("rag_min_score_vector_search")) {
2226-
self.rag_min_score_vector_search = v;
2227-
}
2228-
if let Some(Some(v)) = read_env_value::<f32>(&get_env_name("rag_min_score_keyword_search"))
2229-
{
2230-
self.rag_min_score_keyword_search = v;
2231-
}
22322207
if let Some(v) = read_env_value::<String>(&get_env_name("rag_template")) {
22332208
self.rag_template = v;
22342209
}

src/rag/mod.rs

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -297,19 +297,11 @@ impl Rag {
297297
&self,
298298
text: &str,
299299
top_k: usize,
300-
min_score_vector_search: f32,
301-
min_score_keyword_search: f32,
302300
rerank_model: Option<&str>,
303301
abort_signal: AbortSignal,
304302
) -> Result<(String, Vec<DocumentId>)> {
305303
let ret = abortable_run_with_spinner(
306-
self.hybird_search(
307-
text,
308-
top_k,
309-
min_score_vector_search,
310-
min_score_keyword_search,
311-
rerank_model,
312-
),
304+
self.hybird_search(text, top_k, rerank_model),
313305
"Searching",
314306
abort_signal,
315307
)
@@ -497,13 +489,11 @@ impl Rag {
497489
&self,
498490
query: &str,
499491
top_k: usize,
500-
min_score_vector_search: f32,
501-
min_score_keyword_search: f32,
502492
rerank_model: Option<&str>,
503493
) -> Result<Vec<(DocumentId, String)>> {
504494
let (vector_search_results, keyword_search_results) = tokio::join!(
505-
self.vector_search(query, top_k, min_score_vector_search),
506-
self.keyword_search(query, top_k, min_score_keyword_search)
495+
self.vector_search(query, top_k, 0.0),
496+
self.keyword_search(query, top_k, 0.0),
507497
);
508498

509499
let vector_search_results = vector_search_results?;

0 commit comments

Comments
 (0)