Skip to content

Instantly share code, notes, and snippets.

@muthuishere
Created July 25, 2024 19:19
Show Gist options
  • Save muthuishere/878dc274cc8cc6b003c2bbc405560990 to your computer and use it in GitHub Desktop.
Save muthuishere/878dc274cc8cc6b003c2bbc405560990 to your computer and use it in GitHub Desktop.
Snippet for vector search
public record SimilaritySearchRequest(String question, Integer limit, Double maximumDistance) {
public SimilaritySearchRequest {
if (limit == null) {
limit = 4; // Default value for limit is set to 4
}
if (maximumDistance == null) {
maximumDistance = 1.0; // Default value for threshold is set to 1.0
}
}
}
@PostMapping("/api/vectordb/documents/search")
public List<Document> handleSimilarSearchQuery(@RequestBody SimilaritySearchRequest similaritySearchRequest) {
Double threshold = 1- similaritySearchRequest.maximumDistance();
SearchRequest searchRequest = SearchRequest
.query(similaritySearchRequest.question())
.withTopK(similaritySearchRequest.limit())
.withSimilarityThreshold(threshold);
List<Document> documents = vectorStore.similaritySearch(searchRequest);
return documents;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment