没有,但是可以用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);
网友回复


