From the Vertex Matching Engine docs:
The crowding tag limits similar results by improving result diversity. Crowding is a constraint on a neighbor list produced by a nearest neighbor search requiring that no more than some value, of a group of results, return the same value of
crowding_attribute
. As an example, let’s say you were back online shopping for shoes. You want to see a wide variety of colors in the results, but maybe want them in a single style, like soccer cleats. You can ask that no more than 3 pairs of shoes with the same color is returned by settingper_crowding_attribute_num_neighbors
= 3 in your query, assuming you set crowding_attribute to the color of the shoes when inserting the data point.
Is there a way to express something similar in Pinecone or should we fetch with a larger k
and manually do this processing on the result set?