Having a list of string as a property of my index, using scoring profile, is it possible to boost a result based on an element contained in the list?
0
votes
Not right now, but we're looking into this so some more specifics would be useful. In your case, the list had a set of elements, what do you compare against? A fixed value in the scoring profile? A value passed as separate parameter at query time? A search string match?
- Pablo Castro
The property I would like to score are : City - Edm.GeographyPoint / Friends - Collection(Edm.String) (list of identifiers) / LastActive - Edm.DateTimeOffset. And I would like to score it by distance + last active + if in friend list boost the search result. The 2 first one are already achievable by freshness and distance but the last one I can't seem to find a way to do it.
- K. L.
Got it. The question is what are you going to compare the friends list against. If the friend list is just a searchable field, you could include it as part of the search string and adjust the weight of the field as needed, but I suspect that that's not what you're trying to achieve. In the case of distance, the location is measured against a search request parameter, do you want to compare the list of friends against one or more names also given as search request parameters separately from the actual search string?
- Pablo Castro
I will compare the list with one Id. It is a searchable field but I do not want to "search it" as I want the result "sorted". Meaning the users with the particular Id in the list of friend will be boosted. As I understand, a search will only give me users which contains the particular Id in their list. The list will only be compared to one Id.
- K. L.
Thanks for taking the time to clarify. As I mentioned in the first comment we don't have a way to model this exactly right now but were looking at extending scoring functions to handle this and hearing your scenario is useful to validate.
- Pablo Castro
1 Answers
2
votes
Azure Search didn't have this capability at the time the question was asked, but we heard similar scenarios (all around results personalization in one way or another) so we added a way to model this with scoring profiles.
The new "tag boosting" capability in scoring profiles can do this now.
More details in this blog post.