perProvider
Without constraints, recommend() might return all results from a single provider because that provider’s models scored highest. perProvider() creates a constraint that spreads results across providers.
function perProvider(max?: number): ConstraintDefault: 1 per provider.
| Parameter | Type | Default | Description |
|---|---|---|---|
max | number | 1 | Maximum models per provider. |
import { recommend, Purpose, perProvider } from "pickai";
const results = recommend(models, Purpose.Quality, { constraints: [perProvider(2)], limit: 10,});See Constraints for the two-pass algorithm and custom constraint examples.