v0.5.3 版本发布说明
版本兼容
Milvus 版本 | pymilvus 版本 | Java SDK 版本 |
---|---|---|
0.5.3 | 0.2.5 | 0.3.0 |
2019-11-14
主要改进
Milvus server 到客户端的结果集数据传输性能增强了至少一倍,主要通过对 gRPC 的以下更新来实现:
- 优化了 messages;
- 更改了生成代码的 API 接口;
- 删除了 compression。
Python SDK
- 不同的数组分开存储搜索结果的 ids 和 distances 以减少接口读取结果集的响应时间。
- 新增了一种新的获取结果集里面某个目标向量的方式:
id = results.id_array[i][j], distance = results.distance_array[i][j]
- 新增了一种数组遍历方式,在
nq
和topk
很大的情况下处理时间大大缩短。>> for id_list, dis_list in zip(results.id_array, results.distance_array):
>> for id, dis in zip(id_list, dis_list):
>> print("id={}, distance={}".format(id, dis))
Java SDK
- 在连接到 Milvus server 时,增加了 keepalive 和 idleTimeout 等设置选项。
- 用户现在可以通过
getResultIdsList
和getResultDistancesList
分别获取搜索结果的 ids 和 distances,分别获取性能更优。也能通过getQueryResultsList
获取同时包含 ids 和 distances 的对象QueryResult
。
C++ SDK
- 将其更改为动态库。
- 新增了 README 文件。
提升了
IVF_SQ8H
的搜索性能。