mirror of
https://github.com/MarginaliaSearch/MarginaliaSearch.git
synced 2025-02-23 13:09:00 +00:00
Refactoring and cleanup
This commit is contained in:
parent
5a4d41d414
commit
2e3d95bcb1
@ -175,14 +175,9 @@ public class EdgeSearchOperator {
|
||||
|
||||
private DecoratedSearchResultSet performQuery(Context ctx, EdgeSearchQuery processedQuery) {
|
||||
|
||||
List<EdgeUrlDetails> resultList = new ArrayList<>(100);
|
||||
List<EdgeUrlDetails> resultList = new ArrayList<>(processedQuery.specs.limitTotal);
|
||||
|
||||
for (var s : processedQuery.specs.subqueries) {
|
||||
System.out.println(s.block + " : " + s.searchTermsInclude);
|
||||
}
|
||||
Set<EdgeUrlDetails> queryResults = wmsa_search_index_api_time.time(() -> fetchResultsSimple(ctx, processedQuery));
|
||||
|
||||
for (var details : queryResults) {
|
||||
for (var details : wmsa_search_index_api_time.time(()->fetchResultsSimple(ctx, processedQuery))) {
|
||||
if (details.getUrlQuality() <= -100) {
|
||||
continue;
|
||||
}
|
||||
@ -193,7 +188,6 @@ public class EdgeSearchOperator {
|
||||
resultList.add(details);
|
||||
}
|
||||
|
||||
|
||||
resultList.sort(resultListComparator);
|
||||
resultList.removeIf(new UrlDeduplicator(processedQuery.specs.limitByDomain)::shouldRemove);
|
||||
|
||||
|
@ -72,21 +72,13 @@ public class SearchResultDecorator {
|
||||
}
|
||||
|
||||
private double calculateTermScore(IndexBlock block, EdgeSearchResultItem resultItem, EdgeUrlDetails details) {
|
||||
int titleLength = details.title.length();
|
||||
|
||||
double value = valuator.evaluateTerms(resultItem.scores, block, details.words,titleLength) / Math.sqrt(1 + resultItem.queryLength)
|
||||
+ ((details.domainState == EdgeDomainIndexingState.SPECIAL) ? 1.25 : 0);
|
||||
final double lengthPenalty = 1.0 / Math.sqrt(resultItem.queryLength);
|
||||
final double statePenalty = (details.domainState == EdgeDomainIndexingState.SPECIAL) ? 1.25 : 0;
|
||||
|
||||
System.out.println("---");
|
||||
System.out.println(details.getUrl());
|
||||
System.out.println(details.getTitle());
|
||||
System.out.println(details.words);
|
||||
for (var score : resultItem.scores) {
|
||||
System.out.println(block + ":" + score);
|
||||
}
|
||||
System.out.println(value);
|
||||
final double value = valuator.evaluateTerms(resultItem.scores, block, details.words, details.title.length());
|
||||
|
||||
return value;
|
||||
return value + lengthPenalty + statePenalty;
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user