Skip to content

Commit 6e515fd

Browse files
authored
Merge pull request #433 from abhinav-1305/feature/add-min-similarity-filter
feat: add min_similarity config to filter query results by relevance
2 parents b0a4f8e + 28496cf commit 6e515fd

1 file changed

Lines changed: 7 additions & 1 deletion

File tree

python/src/kagent/tools/docs/query_documentation.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,10 @@ class Config(BaseModel):
4747
default=None,
4848
description="API key for OpenAI services. If empty, the environment variable 'OPENAI_API_KEY' will be used.",
4949
)
50+
min_similarity: Optional[float] = Field(
51+
default=0.7,
52+
description="Minimum similarity threshold (0-1) for filtering search results. Results with similarity below this threshold will be excluded.",
53+
)
5054

5155

5256
class QueryResult:
@@ -228,7 +232,9 @@ def query_documentation(
228232
filter["version"] = version
229233

230234
results = self.query_collection(query_embedding, filter, limit, db_path)
231-
return [{"distance": qr.distance, "content": qr.content} for qr in results]
235+
# Filter results based on min_similarity threshold
236+
filtered_results = [qr for qr in results if qr.distance <= (1 - self.config.min_similarity)]
237+
return [{"distance": qr.distance, "content": qr.content} for qr in filtered_results]
232238

233239
except Exception as e:
234240
logging.error("An error occurred: %s", e)

0 commit comments

Comments
 (0)