Gọi là điểm chuẩn hóa (Scores As Percentages).
Bạn có thể sử dụng các thông số sau sau đây để đạt được điều đó:
ns = {!func}product(scale(product(query({!type=edismax v=$q}),1),0,1),100)
fq = {!frange l=20}$ns
đâu 20 là ngưỡng 20% của bạn.
liên quan: how do I normalise a solr/lucene score?
tôi sẽ không khuyên bạn nên làm điều này vì giá trị số tuyệt đối trong Lucene là không có ý nghĩa (ví dụ: điểm không so sánh trực tiếp trên tìm kiếm). Tỷ lệ điểm số với điểm số cao nhất được trả về là có ý nghĩa, nhưng không có hiệu chuẩn tuyệt đối cho điểm số cao nhất trả lại, ít nhất là hiện tại, vì vậy không có cách nào để xác định từ điểm chất lượng của kết quả thiết lập là tổng thể. Có các cách tiếp cận khác nhau để cải thiện điều này đã được thảo luận (làm cho điểm số có thể so sánh trực tiếp hơn bằng cách mã hóa thông tin bổ sung vào điểm số và sử dụng nó để chuẩn hóa hoặc có thể tốt hơn, khái quát điểm số cho đối tượng chứa nhiều phần thông tin; ví dụ: tổng số cụm từ truy vấn được kết hợp bởi kết quả hàng đầu nếu bạn đang sử dụng OR mặc định sẽ khá hữu ích). Không có ai trong số những ý tưởng này được triển khai theo như tôi biết. - @Chuck
Nguồn: RE: Limiting Hits with a score threshold
liên quan: Re: A question about scoring function in Lucene
Câu trả lời của Simon là chính xác. Nhưng hãy nhớ rằng socres là tương đối và do đó rất khó để chọn một ngưỡng cho "tốt" của kết quả. –