calculateSimilarity static method

List<double> calculateSimilarity(
  1. List<double> embedding,
  2. List<List<double>> embeddings, {
  3. double similarityFunction(
    1. List<double> a,
    2. List<double> b
    ) = cosineSimilarity,
})

Calculates the similarity between an embedding and a list of embeddings.

The similarity is calculated using the provided similarityFunction. The default similarity function is cosineSimilarity.

Implementation

static List<double> calculateSimilarity(
  List<double> embedding,
  List<List<double>> embeddings, {
  double Function(List<double> a, List<double> b) similarityFunction =
      cosineSimilarity,
}) => embeddings
    .map((vector) => similarityFunction(vector, embedding))
    .toList(growable: false);