FAISS(Facebook AI Similarity Search)是一款强大的库,用于高效地进行相似性搜索和密集向量的聚类。它针对高性能和可扩展性进行了优化,是处理大规模数据集和计算最近邻选择的绝佳选择。
在这篇简短的博客中,我们将探讨如何在搭载Apple M1处理器的 Mac 上使用 FAISS 来测量搜索 1000 条记录的平均延迟。
设置环境
首先,您需要安装 FAISS 并确保您拥有合适的开发工具和库。您可以使用 pip 来安装 FAISS:
pip install faiss-cpu
接下来,我们通过导入必要的包和定义常量来设置我们的环境。
import faiss
import numpy as np
import time
# Define constants
num_vectors = 500000
dim = 20
num_searches = 1000
k = 100 # Number of nearest neighbors to retrieve
生成随机向量
FAISS 处理密集向量。这里,我们生成模拟数据集的随机向量:
# Create random vectors
np