👋 您好,感谢向 IndexSDK 提交 Issue!
🎉 我们已收到您的反馈,感谢你对开源社区的支持!
📅 处理时效 维护团队将在工作日 24 小时内查看并回复您的问题。
🔍 自助排查(推荐优先查看) 在等待回复期间,您可以先查阅仓库README以及历史 Issue 中相似问题的解决方案,多数问题可快速解决。
💡 为了更快定位问题,请您确保 Issue 包含:
- 清晰的问题描述
- 可复现的操作步骤
- 相关日志、截图或环境信息
我们会尽快跟进,感谢您的理解与配合!


/label add triaged


认领 IndexSDK#13


@yihao1234 @xiangjie10 我想搭建 Milvus + IndexSDK Flat NPU 加速验证环境,任务验收涉及真实 Ascend NPU 性能和用例验证,请问社区是否有可申请的测试机/算力环境?感谢~


认领这个任务


@yihao1234 老师您好,Ascend/IndexSDK#13 关联交付已按 GitCode 主线整理完成,麻烦协助验收。
本次任务目标是让 Milvus 能够基于 IndexSDK / Ascend NPU 加速 Flat 算法,并补齐代码、UT/ST、性能对比、接口资料、测试报告和 Dockerfile。考虑到任务实际涉及 IndexSDK、Faiss、Knowhere、Milvus 以及 issue 中给出的 mindsdk-referenceapps/IndexSDK/opensource/milvus25-ascend 承载目录,本次最终拆成 7 个关联 PR 提交。
1. 关联 PR
| 编号 | 仓库 | PR | 主要内容 | 当前状态 |
|---|---|---|---|---|
| PR-A | IndexSDK | https://gitcode.com/Ascend/IndexSDK/merge_requests/285 | ASCEND_FLAT strict exact-label 可选精确 rerank、host cache guard、mask verifier、仓内验证脚本和中文说明 |
CLA/CI/docs passed |
| PR-B | Faiss | https://gitcode.com/Ascend/faiss/merge_requests/96 | DistanceFlatL2 custom ops tiling/package 修复、Dockerfile、中文复验资料和单算子复验入口 |
CLA/CI passed,最新 AI review 无需报告的问题 |
| PR-C1 | mindsdk-referenceapps | https://gitcode.com/Ascend/mindsdk-referenceapps/merge_requests/969 | Knowhere 2.5.13 Ascend Flat patch carrier | CLA/CI passed |
| PR-C2 | mindsdk-referenceapps | https://gitcode.com/Ascend/mindsdk-referenceapps/merge_requests/970 | Milvus 2.5.19 Ascend 构建、索引类型、参数校验、Docker/compose patch carrier | CLA/CI passed |
| PR-C3 | mindsdk-referenceapps | https://gitcode.com/Ascend/mindsdk-referenceapps/merge_requests/971 | Milvus 2.5.19 ASCEND_FLAT 服务级 ST patch carrier |
CLA/CI passed |
| PR-C4 | mindsdk-referenceapps | https://gitcode.com/Ascend/mindsdk-referenceapps/merge_requests/974 | Milvus 2.5.19 CPU/NPU 性能对比 ST patch carrier | CLA/CI passed |
| PR-C5 | mindsdk-referenceapps | https://gitcode.com/Ascend/mindsdk-referenceapps/merge_requests/976 | milvus25-ascend README 和 patch series 复验说明 |
CLA/CI passed |
截至当前可见状态,7 个 PR 均为 open、可合入状态,CLA 均已通过,CI 标签均已通过。
2. Review 与问题闭环
本组 PR 已按机器人反馈做过多轮修复和复验。当前最新可见 AI review 情况如下:
- PR-A:多轮 AI review 后 P0/P1/P2 已清零,剩余 P3 为可维护性建议,不影响运行时行为。
- PR-B:最新 AI review 未发现需要报告的问题。
- PR-C1:多轮 AI review 后 P0/P1/P2 已清零,剩余 P3 为 helper 代码重复等可维护性建议。
- PR-C2:多轮 AI review 后 P0/P1/P2 已清零,剩余 P3 为变量可见性、错误信息表述等低风险建议。
- PR-C3:CLA/CI 已通过,作为服务级 ST patch carrier 提交。
- PR-C4:AI review 后 P0/P1/P2 为 0,剩余 P3 为性能 ST 小型代码质量建议。
- PR-C5:AI review 后 P0/P1/P2 为 0,剩余 P3 为 README 中一条复验命令口径建议。
如果验收要求希望 P3 也全部清零,我可以继续在同一组 PR 分支上补充修复;当前没有发现 P0/P1/P2 阻塞问题。
3. 使用与复验方式
推荐按 PR-C5 中更新后的 README 作为总入口复验:
https://gitcode.com/Ascend/mindsdk-referenceapps/merge_requests/976
整体顺序如下:
- 合入或应用 PR-B 的 Faiss custom ops 修复,构建并安装
DistanceFlatL2相关 custom ops。 - 合入或应用 PR-A 的 IndexSDK
ASCEND_FLATstrict rerank / verifier / 验证脚本改动。 - 在 Knowhere
v2.5.13上应用 PR-C1 提供的 patch:
git am --whitespace=error knowhere-v2.5.13-ascend.patch
- 在 Milvus
v2.5.19上按顺序应用 PR-C2、PR-C3、PR-C4 提供的 patch:
git apply --whitespace=error --index milvus-2.5.19-ascend-c2-build-index.patch
git apply --whitespace=error --index milvus-2.5.19-ascend-c3-service-st.patch
git apply --whitespace=error --index milvus-2.5.19-ascend-c4-performance-st.patch
- 按 README 设置 Ascend / Faiss / mxIndex / CANN 相关环境变量,编译 Milvus,并启动 standalone。
- 执行服务级 ST 和性能 ST:
MILVUS_ASCEND_ST=1 go test ./ascend/interface_test -run TestAscendFlatL2SelfRecall -count=1 -v
MILVUS_ASCEND_ST=1 go test ./ascend/perf_test -run TestAscendFlatServiceCPUOverNPUPerf -count=1 -v
4. 已覆盖的验收点
| 验收要求 | 覆盖情况 |
|---|---|
| 新功能开发完成,Milvus 能够基于 NPU 加速 Flat 算法 | PR-A/B/C1/C2/C3 串联完成 IndexSDK、Faiss、Knowhere、Milvus 适配;C3 提供服务级 ST。 |
| 问题解决,用例执行成功,包含测试报告 | PR-A 有 strict rerank 验证,PR-B 有单算子复验,PR-C3/C4 有服务级与性能 ST,PR-C5 汇总复验说明。 |
| 接口资料补充完成 | PR-A、PR-B、PR-C5 均补充中文说明和复验入口。 |
| UT/ST 覆盖新增代码 | PR-A strict/guard 验证,PR-B DistanceFlatL2 单算子验证,PR-C3 服务级 ST,PR-C4 性能 ST。 |
| 性能比 CPU 上算法领先 | PR-C4 提供 CPU/NPU search 性能对比 ST;已验证场景中 NPU search 阶段均领先 CPU:Milvus indexbuilder search 约 2.97x,Milvus standalone search 约 1.51x,Go warmup/repeats ST best search 约 10.53x。 |
| 提供 Dockerfile | PR-B 提供 Faiss 侧 Dockerfile;PR-C2 提供 Milvus Ascend Docker/compose patch,PR-C5 串联说明。 |
5. 关键验证结果
已完成的关键验证包括:
- PR-A strict baseline:
BASE_exact_top1=62/64。 - PR-A 开启 optional exact rerank 后:
RERANK_exact_top1=64/64。 - PR-A guard:duplicate id、remove 后复用 ID、reset 后复用 ID、fp16 add/search 边界均通过。
- PR-B:Faiss custom ops clean rebuild、DistanceFlatL2 单算子测试、package install 验证通过。
- Milvus indexbuilder:
ASCEND_FLAT最小功能验证top1_hits=64/64、top10_contains_self=64/64。 - Milvus standalone E2E:collection 创建、插入、
ASCEND_FLAT建索引、load、search 均通过。 - CPU/NPU 性能:
- Milvus indexbuilder search:CPU
106.684 ms,NPU35.9084 ms,约2.97x。 - Milvus standalone search:CPU
543.575 ms,NPU359.819 ms,约1.51x。 - Go warmup/repeats ST best search:CPU
39.179 ms,NPU3.719 ms,约10.53x。 - PR-C4 已提供可复验的 CPU/NPU 性能对比 ST。
- Milvus indexbuilder search:CPU
6. 边界说明
- 旧 strict baseline 是
BASE_exact_top1=62/64。 64/64是开启 PR-A optional exact rerank 后的结果。- 当前 HiDevLab 环境未完成容器内 NPU 映射运行验证,因此没有声明“容器内 NPU 已验证”。已检查到该环境虽可通过包管理器看到
docker.io、containerd、podman等候选包,但当前会话本身运行在受限 Docker 容器内,没有宿主 Docker/containerd socket,且缺少CAP_SYS_ADMIN、CAP_NET_ADMIN、CAP_SYS_MODULE,关键 cgroup 子目录不可写,无法可靠启动 Docker-in-Docker / rootless 容器完成 NPU 设备映射验证;Dockerfile 和具备容器运行时环境下的复验命令已提供。 - 性能结论限定在当前任务复验场景和 search 阶段,不泛化到所有规模、所有阶段。
麻烦老师根据以上 7 个 PR 和 PR-C5 README 的复验入口进行验收。如需要我继续补齐剩余 P3 或调整 PR 拆分/说明,我会继续在同一组 PR 上处理。


七个关联 PR 更新汇总
围绕 IndexSDK#13,七个现有 PR 按职责拆分如下。请沿用原 PR 的评审讨论和链接继续审阅:
| 标识 | PR | 当前线上 PR head | 底层 source / carrier / 内容来源 | 角色 |
|---|---|---|---|---|
| A | Ascend/IndexSDK!285 | c07d3de330f839f9209fd436304c29c3c9b72119 |
— | IndexSDK 候选集 L2 精确重排独立增强 |
| B | Ascend/faiss!96 | 544fc36f7d2249a0f6149cf2ddec1ad04eca2d01 |
— | DistanceFlatL2 custom ops 构建、打包和安装后复验底座 |
| C1 | Ascend/mindsdk-referenceapps!969 | a39eb414dcc778150a63602f08932753d963f30a |
source 0782a3edc4b67450997e88948a762ec56f24cad4;carrier f83915054e1fc4e35ca4645b50e90c6d357ad63b90ffcf2848874aba39d92087 |
Knowhere v2.5.13 Ascend 适配 |
| C2 | Ascend/mindsdk-referenceapps!970 | 671fb27e2ff0631750eb25fa9474bddf02553ad4 |
source c543a1afb1200bac3b1d0d793dbfd47357d943a0;carrier 57321ac81301063022139296738466dbe6bc975b4cadf9e986a032e6c1456a51 |
Milvus v2.5.19 构建、索引参数、SDK 和 Docker |
| C3 | Ascend/mindsdk-referenceapps!971 | e6c37aa96d258b98a0bc8a4f9914eed6da58cfc6 |
source af4a5131ffd72d30c3e467b3c3f2d31041632efc;carrier 047f54cf680a5e60afed5723310afea50dd83f1f660c62284eb52bb8a071ff9f |
Milvus ASCEND_FLAT 服务级 ST |
| C4 | Ascend/mindsdk-referenceapps!974 | bac38a33c960bbe82300ebf19e968000ba908a5b |
source aa69d0eea2e223bb0405e98df806185611db1a3b;carrier 6973b3a227df58d243b101df11445d56f7ced9aab6eba2b9243727e71b2f4d31 |
Milvus CPU/NPU 性能对比 ST |
| C5 | Ascend/mindsdk-referenceapps!976 | 5085965ddaa4f07de41800b6309a2c75a9996cc3 |
README 内容来源旧修订 eeda555a9e5431112303e560de00eee2e6ef9cd0(当前 PR 为内容等价单提交 squash) |
README、依赖顺序、指标和复验边界 |
建议复验顺序
主链为:B → C1 → C2 → C3 → C4 → C5。
- B 提供 Faiss
DistanceFlatL2custom ops 底座。 - C1 在 Knowhere
v2.5.13上提供 Ascend L2/IP 配置、I/O 和适配 patch。 - C2、C3、C4 在 Milvus
v2.5.19上按顺序应用,分别承接构建/索引参数、服务正确性和性能。 - C5 汇总唯一权威复验入口;旧单体 patch 仅作 legacy 资料,不与 C2-C4 并列使用。
- A 是独立候选集 L2 精确重排增强,不是主链前置;默认不接入 Milvus 主路径。
验证摘要
环境为单张 Ascend910B3、CANN 9.1.0-beta.3。
- A 当前线上 PR head 为
c07d3de330f839f9209fd436304c29c3c9b72119,parent 为 IndexSDKmastere167bddba0ebba36958a82d0c65a7773a5358dfc,恰好 1 个提交;git diff --check和git merge-tree --write-tree origin/master candidate通过,GitCode 主 CI、docs CI 和 CLA 已通过。本机 CMake、C++ 和 NPU GTest 均为NOT_RUN,不把重放前记录写成该 head 已在本机重新执行。 - B clean custom-op build/package/install/installed-tree 有记录;真实设备 C++/Python 单算子均为
524288/524288,最大误差0.25,平均误差3.099442e-05。 - C1 构建、依赖、L2/IP 配置和 Ascend I/O 有记录;pristine Knowhere
v2.5.13apply/reverse/tree 对账一致。 - C2-C4 集成构建 RC
0;milvus、libmilvus_core.so、libknowhere.so的ldd -r无缺库或未定义符号记录。 - C3 同一 standalone/NPU 会话记录:L2
43.920 ms,top1/top10 均16/16;IP620.419 ms,top1/top10 均16/16。 - C4 参数为
nb=100000,nq=64,dim=128,topk=10,warmups=2,repeats=4;CPU raw[437.35849, 473.75171, 442.18976, 439.04052] ms,NPU raw[4.29234, 3.23801, 3.50436, 2.95982] ms;median 为 CPU440.615 ms、NPU3.371 ms,speedup130.700374x,逐轮 recall 和>1.0门禁有记录。 - C2 clean-context
linux/arm64最终镜像 SHA-256 为9649537da03356210c43344725062d0dc600c39e174a3f8a902987fc49e9548d。
明确边界
- A 当前候选已完成当前 master 单提交重放及
git diff --check、git merge-tree检查,但 CMake、C++ 和 NPU GTest 均为NOT_RUN;A 的功能结果只表述候选集重排,不表述全库 exact 或 Milvus 主链结果。 - C3 carrier 最后加入的 collection 异步清理加固只完成 Go 普通/race 编译,未重新执行真实设备服务级 ST;服务级数值来自该加固之前的有效修订。
.run自解压打包入口因缺少makeself组件未完成;provider build/install、OM 和真实运行主链结果分开陈述。- 七个原 PR 已按上述当前 head、职责和 revision 更新,当前 head 的 GitCode 主 CI 均已通过;discussion 与人工复核状态以对应页面实时结果为准。本评论不声明已经合入或完成维护者验收。
- 指标合同固定为 L2/IP,不宣称 COSINE 支持。
请在原有七个 PR 中继续审阅和提出意见;根据评审反馈更新同一 PR,不关单重开。


@chasefhb 老师您好,本次更新按 Issue #13 的五项任务要求补齐材料与验证证据,并根据PR检视意见进行了修改。
Issue 要求与交付材料对照
| Issue 要求 | 对应交付 | 当前证据与边界 |
|---|---|---|
| 1. Milvus 基于 NPU 加速 Flat,解决命名空间冲突和离线算子使用问题,提交设计文档 | design-document.md;B→C1→C2→C3→C4→C5 主链 | Faiss custom ops、Knowhere 适配、Milvus 索引注册/构建/服务 ST/性能 ST 分层交付;A 为独立候选集精确重排增强,不是 Milvus 主链前置。 |
| 2. 接口资料 | integration-contract.md、user-manual.md、C5 README | 明确 ASCEND_FLAT / ASCEND_FLAT_INT8、FloatVector、L2/IP、参数校验、应用顺序、异常、清理和回滚边界;不宣称 COSINE 支持。 |
| 3. 新增用例,UT/ST 覆盖新增代码,提供测试报告 | test-report.md、self-validation-report.md | A 候选重排 GTest 18/18;当前 C1 config 1 case/14 assertions、[ascend] 4 cases/22 assertions;C3 L2/IP 服务 ST、C4 CPU/NPU 性能 ST 来自此前 5ef6f295 C1 集成链。当前 SVE guard revision 未重复执行 C3/C4;A 整个 Flat 全量套件未执行。 |
| 4. 提供 Dockerfile | C2 carrier 内 build/docker/milvus/openeuler/Dockerfile |
linux/arm64 clean-context 构建 RC 0、BuildKit 零 lint、基础 smoke 通过;最终镜像 SHA-256 9649537da03356210c43344725062d0dc600c39e174a3f8a902987fc49e9548d。未执行容器内 Milvus payload + NPU E2E。 |
| 5. 性能、精度对齐原 Milvus + Flat 基线 | C3 正确性 ST、C4 CPU FLAT / NPU ASCEND_FLAT 同场景对比 |
见下方“精度与性能结果”;只绑定本轮固定数据、单卡环境和 search-only latency,不外推其他数据分布、并发、多卡或功耗。 |
随 Issue 评论提交的材料
- design-document.md:七 PR 分层、设计边界、运行链、正确性不变量、性能方法和回滚。
- integration-contract.md:
ASCEND_FLAT/ASCEND_FLAT_INT8接入、类型、metric、参数校验和生命周期契约。 - user-manual.md:carrier 校验/应用顺序、构建、启动、SDK、C3/C4 复验、排障和回滚。
- test-report.md:UT/ST 矩阵、精度与性能原始样本、命令、结果和限制。
- self-validation-report.md:revision/环境/数据基线、要求对测试映射、负例、未执行项和提交方结论。
- review-briefing.zip:内含可离线打开的
review-briefing.html评审简报(GitCode 附件接口不直接接受.html)。
上述六份材料已随本评论上传。
评审整改更新
本轮按新增评审意见完成三项更新:
- A(!285,head
9c81eaced9ade2548cf54086185fcb5607293add):私有参数改为skipRerankCacheValidation,中英文文档补充 remove 后缓存失效以及reset()/copyFrom()恢复说明;910B3/CANN 9.1.0-beta.3 上 production 构建、守卫负例、严格链接和候选重排 GTest 18/18 通过。 - C1(!969,head
778e0937e8782e0e247aa5d327f546aaa4dc785c):删除 Dataset/BruteForce score 旁路,恢复标准 L2/IP 分数语义;设备 mutex 改为自动所有权;异常格式化改为最大 1 MiB 的有界增长。仅在DEFINED ENV{ASCEND_DEPEND_FAISS_DIR}时添加-U__ARM_FEATURE_SVE并从 AArch64UTILS_SVE_SRC排除distances_sve.cc,未设置时保留普通 AArch64 SVE 源。source 为77d2f8592f2db3593e27e7f1ee7ed1c4aa3b7c0b,carrier SHA-256 为9612003bb6f96b632f329a5fa90ec7c828cdb1ed6e01b01dfb3c0e5b967ae6f7。全新 replay 的git apply --check --whitespace=error、应用后 tree 与 source HEAD 对账、910B3/CANN 9.1.0-beta.3 重新配置和增量构建、严格链接、config 14 assertions、[ascend]4 cases/22 assertions 均通过。 - C5(!976,head
9831e3f4a9957b03d3ca3762cd59717b73c318ed):显式sha256sum --check只列 C1-C4 四个权威文件,Linux 原样执行 4/4OK,未使用*.patch或混入 legacy 单体 patch。
此前 5ef6f295 C1 与现有 C2-C4 重新链接后,C3 L2/IP top1/top10 均为 16/16;C4 CPU/NPU median 为 316.222/4.080 ms,speedup 77.505192x。完整脚本退出 0,端口与 NPU 进程清理完成。当前 77d2f859 只增加 CMake SVE 条件守卫,已完成 C1 层重新配置、增量构建、严格链接和聚焦 UT,未重复执行 C3/C4。
当前 API 回读 C1/C5 两个 PR 均为 open、mergeable=true,CLA 与主 CI 通过,stat/needs-squash 已清。维护者人工复审仍待完成。
精度与性能结果
- 算子数值层:B 的
DistanceFlatL2真实设备 C++/Python 单算子验证均为524288/524288,最大误差0.25,平均误差3.099442e-05。 - Milvus 服务正确性层:此前
5ef6f295C1 与 C2-C4 重链后,同一 standalone/NPU 会话中 L2 与 IP 的 self top1、self top10 均为16/16,即本固定 self-recall 样本上均为100%。这是逐 query 硬断言,不是对通用数据集 recall 的外推;当前 SVE guard revision 未重复执行该服务 ST。 - CPU/NPU 对齐层:C4 在同一 Milvus standalone、同一数据规模中对 CPU
FLAT和 NPUASCEND_FLAT各自建索引/load/预热;正式四轮每轮均要求两侧 self top1/top10 达到nq,任一轮不满足即失败。本轮逐轮 recall 门禁全部通过。 - 性能层:参数为
nb=100000,nq=64,dim=128,topk=10,warmups=2,repeats=4;CPU raw 为[305.32205, 302.06484, 327.12187, 433.824] ms,NPU raw 为[4.81435, 3.34567, 10.94094, 3.23787] ms;median 分别为316.222 ms和4.080 ms,CPU median / NPU median = 77.505192x。样本有限性、偶数 repeats、逐轮正确性与speedup > 1.0硬门禁均通过。
请继续检视,谢谢。


@qanly97 @yihao1234 @chasefhb 各位老师好,本次已按评审方向完成 Milvus 2.5.19 经 Knowhere v2.5.13 使用 Faiss-NPU Flat 的整改,补交设计文档、验证报告和复验材料,请继续检视。
实现与评审入口
将 Faiss-NPU Flat 源码组件编入 Knowhere 已有的唯一 Faiss,不依赖 IndexSDK、mxIndex、OM 或第二套完整 Faiss。支持 FloatVector、L2/IP、selector/filter、删除及序列化重载;NPU 执行失败明确报错,不静默回退 CPU。主机接口支持 FP32,设备 Flat 路径使用 FP16。
统一复验入口为 C5 README:先按说明完成 native 环境准备,再通过 review.env + review.sh quick/full 执行验证。依赖获取分别说明联网下载和本地预置方式。
当前提交
| PR | 当前提交 | 职责 |
|---|---|---|
| Faiss !96 | 15891cfa |
内嵌 NPU Flat 组件、过滤语义、安装及 tiling 防护 |
| C1 !969 | e4ddfdbc |
Knowhere 适配补丁 |
| C2 !970 | f5039947 |
Milvus 构建、索引配置及 Dockerfile/Compose |
| C3 !971 | 3d5c3a44 |
服务生命周期与完整精度矩阵 |
| C4 !974 | b3619652 |
CPU/NPU 性能对比矩阵 |
| C5 !976 | 1b3aa944 |
安装部署、排障及 quick/full 复验入口 |
截至 2026 年 9 月 9 日,上述六个提交的 CI、CLA 均通过,各 PR 保留一个任务提交,尚待维护者检视和合入。IndexSDK !285 为独立历史增强,不是本次直连主链的前置依赖。
验证结果与边界
Ascend910B3、CANN 9.1.0-beta.3 native 环境中:
- 精度与性能矩阵均覆盖维度 64/128/256/512/768/1024、L2/IP、batch 1–128,各 1536/1536 格通过。
- 每格 batch aggregate recall@10 ≥ 0.90;该指标不是每个 query 的召回率保证。
- C4 同输入 CPU FLAT/NPU ASCEND_FLAT 的 search 加速比为 1.932254–50.520511,不外推为完整写入、建索引和加载流程的加速。
- 代表性生命周期验证覆盖过滤、删除及三轮 release/load;tiling 防护另有真实 CANN 定向回归 5/5 通过。
完整矩阵绑定 Faiss 3561604,tiling 防护回归绑定 53ac5087。当前 15891cfa 纳入上游修复并完成机械格式整理,已通过对应 CI,未将历史矩阵描述为当前提交全量重跑。
Dockerfile/Compose 已提供;Docker 仅完成配置及空 payload runtime 基础检查,完整产品容器与容器 NPU E2E 为 NOT_RUN,不作为通过结果。
随附材料
- Milvus Faiss-NPU Flat 设计文档(官方模板 DOCX)
- Milvus Faiss-NPU Flat 测试验证报告(官方模板 DOCX)
- c3-complete.csv
- c4-complete.csv
- milvus25-faiss-npu-review-bundle.zip
评审 ZIP 包含 README、review.env.example、review.sh 和四份分阶段补丁;CSV 保留完整测试数据和性能统计。
请以本条评论、上述提交及新附件作为本次验收入口。此前基于 IndexSDK/OM 的说明与附件仅供历史查阅,不再作为当前直连方案的复验依据。
请各位老师检视,谢谢。


任务描述
当前提供了Milvus对接Index SDK Flat算法的参考设计:
https://gitcode.com/Ascend/mindsdk-referenceapps/blob/master/IndexSDK/opensource/milvus25-ascend/README.md
当前存在的问题:
当前已直接基于开源faiss修改了Flat算法的NPU版https://gitcode.com/Ascend/faiss
完善该仓库的编译构建,对接到Milvus上
任务要求
1、新功能开发完成,Milvus能够基于NPU加速Flat算法,解决上述问题,提交设计文档
2、接口资料补充完成,新增用例,UT/ST覆盖新增代码,提供测试报告
3、补充milvus安装部署文档,实现流程和问题记录
4、提供新功能milvus功能的Dockerfile
5、性能精度对齐原有milvus+flat基线(支持维度64, 128, 256, 512, 768,1024、batch1-128,距离类型L2+IP)
任务完成标准
PR完成合入,提交验证报告和相关设计文档到仓库issue。
设计文档参考:
https://docs.qq.com/doc/DS3FOVnZXZ2JpTnNQ
测试报告参考:
https://docs.qq.com/doc/DS1hpcmdKYXFRekFU
任务完成标准
PR完成合入,提交验证报告和相关设计文档到仓库issue。