+
96
-

回答

没有,但是可以用js自己写一个向量相似检索,集合indexdb或localstorage就可以实现文件向量持久化,示例代码如下:

// 示例向量数据
const vectors = [
  [0.1, 0.2, 0.3],
  [0.4, 0.5, 0.6],
  [0.7, 0.8, 0.9],
];

// 计算欧几里得距离的函数
function euclideanDistance(vec1, vec2) {
  return Math.sqrt(vec1.reduce((sum, value, index) => sum + Math.pow(value - vec2[index], 2), 0));
}

// 计算余弦相似性的函数
function cosineSimilarity(vec1, vec2) {
  const dotProduct = vec1.reduce((sum, value, index) => sum + value * vec2[index], 0);
  const magnitude1 = Math.sqrt(vec1.reduce((sum, value) => sum + value * value, 0));
  const magnitude2 = Math.sqrt(vec2.reduce((sum, value) => sum + value * value, 0));
  return dotProduct / (magnitude1 * magnitude2);
}

// 进行向量相似性搜索的函数
function findMostSimilar(vector, vectors) {
  let bestMatch = null;
  let bestDistance = Infinity;

  for (const vec of vectors) {
    const distance = euclideanDistance(vector, vec);
    if (distance < bestDistance) {
      bestDistance = distance;
      bestMatch = vec;
    }
  }

  return bestMatch;
}

// 示例查询向量
const queryVector = [0.35, 0.45, 0.55];

// 找到与查询向量最相似的向量
const mostSimilarVector = findMostSimilar(queryVector, vectors);
console.log("最相似的向量:", mostSimilarVector);

网友回复

我知道答案,我要回答