ngt的Python项目详细描述


python ngt

日本語

安装

python绑定pybind11(ngtpy)安装如下。

pip3 install ngt

如果您想将python绑定与cTypes(ngt)一起使用,还必须根据README安装ngt库。

您可以从源代码安装python绑定,其中包含pybind11和cTypes。在安装python绑定之前,必须根据README安装ngt库,如下所示。

pip3 install pybind11
pip3 install numpy
cd NGT_ROOT/python
python3 setup.py sdist
pip3 install dist/ngt-x.x.x.tar.gz

请注意,来自pypi的ngtpy包的搜索速度比在您的计算机上构建的ngtpy包的搜索速度慢,因此包可以在较旧的cpu上运行。

文档

ngtpy (pybind11) reference

简单示例

ngtpy(pybind11)

与ngt(cTypes)相比,ngtpy(pybind11)可以减少处理时间。特别是在搜索时间短的情况下更有效。

importngtpyimportrandomdim=10objects=[]foriinrange(0,100):vector=random.sample(range(100),dim)objects.append(vector)query=objects[0]ngtpy.create(b"tmp",dim)index=ngtpy.Index(b"tmp")index.batch_insert(objects)index.save()result=index.search(query,3)fori,oinenumerate(result):print(str(i)+": "+str(o[0])+", "+str(o[1]))object=index.get_object(o[0])print(object)

另请参见sample.py

NGT(cTypes)

fromngtimportbaseasngtimportrandomdim=10objects=[]foriinrange(0,100):vector=random.sample(range(100),dim)objects.append(vector)query=objects[0]index=ngt.Index.create(b"tmp",dim)index.insert(objects)# You can also insert objects from a file like this.# index.insert_from_tsv('list.tsv') index.save()# You can load saved the index like this.# index = ngt.Index(b"tmp")result=index.search(query,3)fori,oinenumerate(result):print(str(i)+": "+str(o.id)+", "+str(o.distance))object=index.get_object(o.id)print(object)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Android Studio中的Java错误,但不是Eclipse   java如何使用jsp更新数据库中的文件?   jsoup如何在java中从较大的子字符串中提取多个子字符串?   java RestFB:当页面的URI具有页面名称时,无法获取页面帖子   java可以让Maven做我们在ANT构建中正在做的事情。xml   java如何在JasperReports中动态包含来自Servlet的图像?   java在hibernate中用新集更新旧集   从导出为可运行的Java应用程序创建、解析和管理XML文件。jar文件   在Java中使用数组的基础知识   调试从JAVA程序调用的MATLAB函数   java实现了Iterable hands错误大小的备份   JAVA木卫一。FileNotFoundException:请求的资源不可用   java Android Spring 1.0.1使用基本身份验证删除   java如何使用com解析和对象在一个数字数组中的值。fasterxml。杰克逊。数据绑定。对象映射器   比较两个字符串时发生java NullPointerException