面对高速增长的非结构化数据处理需求,Milvus 2.0 应运而生。Milvus 2.0 是一款面向 AI、专为大规模生产级场景设计的向量数据库系统。如何快速上手这款非结构化数据处理神器?除了 Milvus 专属的命令行客户端 Milvus_cli,你还可以选择 Zilliz 为 Milvus 专门开发的图形界面客户端—— Attu。本期内容将手把手带你使用 Attu 进行向量搜索。
Attu
安装与运行
你可以在 https://github.com/zilliztech/attu/releases 找到最新发布的版本,Attu 提供各平台的可执行文件安装包,源码全部开源,欢迎大家提交 pull request。你还可以使用 docker 安装 Attu:
docker run -p 8000:3000 -e HOST_URL=http://{ attu IP }:8000 -e MILVUS_URL={milvus server IP}:19530 zilliz/attu:latest
其中, attu IP
表示运行 attu 环境的 IP 地址, milvus server IP
是运行 Milvus 环境的 IP 地址。
启动成功后的界面如下图所示,输入正确的 Milvus IP 及端口就能进入 Attu 了!
功能概览
展开左侧的导航栏,你可以看到目前有 Overview、Collection、Vector Search 和 System View 四大标签页。其中,Overview 列出目前 Milvus 中已经加载的所有 collections,如上图所示。Collections 页面以列表形式呈现所有 collections,包括 loaded 和 unloaded,分别代表了 milvus 的collection 是否加载。
Vector Search 及 System View 两个标签页都是以插件的形式加载到 Attu 中的,关于插件的具体概念和使用方法将在文末详细介绍。其中,Vector Search 是用来进行向量搜索的界面:System View 以拓扑形式展现 Milvus 系统的结构,并详细列出每个节点的具体信息:
功能演示
接下来,我们将使用测试数据,与你一同探索 Attu 的各个功能。
测试数据见:https://github.com/zilliztech/attu/tree/main/examples
首先,在 collection 创建一个名为 test 的 collection,添加 4 个 field 分别为:Field Name: vector Dimension: 128Field Name: brand Field Type: Int64Field Name: color Field Type: Int64
创建完毕后,点击 load,因为只有 loaded collection 才可以被搜索:此时在 overview 界面已经可以看到新创建的 test collection 了:
现在,我们来创建数据, import 预定义的测试数据 example_vectors.csv检查导入的数据,在 Overview 或者 Collection 界面点击 collection name 可以进入 query 界面。添加 filter (1),新增条件 id != 0
(2),点击 apply filter(3),点击 query (4)。可以看到 50 条数据都已经成功导入了:
在 vector value 中贴入 search_vectors.csv 文件中的其中一条记录,然后选择 test collection,点击 search:可以看到向量间的距离计算的结果,也不需要写代码,就能快速验证向量搜索的结果,非常方便。由于目前仅有 node sdk 封装了 metrics api,该 api 可以实时获取 Milvus 目前系统状态、节点间关系、以及每个节点自身的状态。作为 Attu 的特有功能,System View 包含了一张完整的 Milvus 系统拓扑图,点击拓扑图中的每个节点,可以了解到节点自身的状态变化(每 10 秒动态刷新)。点击具体子节点,可以进入 node list view,该视图用来查看每个 coord 下管理的所有子节点列表及状态。通过排序,可以迅速定位到高 CPU 占用或者高内存占用节点,方便排查问题。
One more thing……
前文提到,目前系统中的 Vector Search 及 System View 两个标签页是以插件的形式加载到 Attu 中的。我们鼓励用户开发满足自身业务需要的组件,以插件的形式添加到 Attu 中来。在 Attu 代码中,有专门的 plugins 目录用来存放插件代码。你可以参考其中任意一个插件的代码来学习如何创建插件。配置如下 config 文件,系统就会加载插件到 Attu 中来:

更多帮助
https://github.com/zilliztech/attu/tree/main/dochttps://milvus.io/docs/v2.0.0/attu.mdAttu 正在持续优化中,如果你有任何问题,欢迎提交 GitHub Issue,一起为 Attu 添砖加瓦!
提交 issue:https://github.com/zilliztech/attu/issues希望 Attu 可以帮助你更轻松地使用 Milvus 向量数据库,也欢迎扫码或点击文末阅读原文,填写 Attu 产品调研问卷,您的建议会让我们做得更好!
下周四(3 月 3 日),我们还邀请了 Zilliz 前端工程师陈臻直播介绍 Milvus_Cli & Attu 的功能,并分享开发经验,敬请期待!
Zilliz 以重新定义数据科学为愿景,致力于打造一家全球领先的开源技术创新公司,并通过开源和云原生解决方案为企业解锁非结构化数据的隐藏价值。
Zilliz 构建了 Milvus 向量数据库,以加快下一代数据平台的发展。Milvus 数据库是 LF AI & Data 基金会的毕业项目,能够管理大量非结构化数据集,在新药发现、推荐系统、聊天机器人等方面具有广泛的应用。