重磅推出:Milvus Lite 正式上线,几秒内即可轻松搭建 GenAI 应用

2024-05-31

By 陈将

重磅推出:Milvus Lite 正式上线,几秒内即可轻松搭建 GenAI 应用

和超薄笔记本一样轻便、强大的 Milvus Lite 正式上线!

Milvus Lite(https://milvus.io/docs/milvus_lite.md)是一个轻量级向量数据库,支持本地运行,可用于搭建 Python 应用,由 Zilliz 基于全球最受欢迎的开源向量数据库 Milvus(https://milvus.io/intro)研发。从架构上,Milvus Lite 复用了 Milvus 向量索引和查询解析的核心组件,同时移除了 Milvus 中专为分布式系统高扩展性设计的组件。这种架构设计使 Milvus Lite 变为一种紧凑且高效的向量数据库解决方案,非常适用于计算资源有限的环境,如笔记本电脑、Jupyter Notebook 和移动设备等。

Milvus Lite 支持与 LangChain、LlamaIndex 等 AI 开发栈集成。开发人员无需设置后台服务即可直接使用 Milvus Lite 作为检索增强生成 (RAG) Pipeline 中的向量存储(Vector Store)模块。换言之,只需运行 pip install pymilvus(2.4.3 版本或以上)即可轻松将 PyMilvus 作为 Python 库集成到您的 AI 应用程序中。

值得一提的是,Milvus Lite 与 Milvus 共享同一套 API,以确保您的客户端代码既适用于小规模的本地部署,也适用于生产环境中大规模(十亿级数据)的 Docker 或 Kubernetes 部署。为了方便大家了解 Milvus Lite,6 月 4 日(周二)晚 8 点,Zilliz 高级 AI 平台开发工程师姜俊杰将为大家在直播间详细拆解 Milvus Lite,报名地址参见(https://3672000551325.huodongxing.com/event/5758114520500)。

01.为什么要研发 Milvus Lite?

许多 AI 应用都需要借助向量相似性搜索的力量来分析处理文本、图像、声音和视频等众多非结构化数据。典型的此类 AI 应用包括聊天机器人、购物助手等。而这些应用,尤其是 RAG 应用的 AI 开发栈中最核心的部分就是用于存储和搜索 Embedding 向量的向量数据库。

虽然业内已有众多向量搜索解决方案,但始终缺乏一种轻量、便于快速上手但也适用于大规模生产部署的方案。在此背景下,我们作为 Milvus 背后的研发团队,设计并推出了 Milvus Lite,旨在帮助 AI 开发人员更快捷地搭建原型(Prototype)、更顺畅地过渡到部署在 Kubernetes 的 Milvus 集群或全托管云服务中的大规模生产级应用。

Milvus Lite 是 Milvus 生态系统中非常重要的一种新增部署模式,为开发人员提供了一款支持开发过程中每个阶段的多功能工具。从原型设计到生产环境部署,不论是边缘计算还是大规模部署,Milvus 是业内目前唯一一个能够覆盖各种规模和开发阶段的向量数据库。

02.如何使用 Milvus Lite?

Milvus Lite 支持 Milvus 中的所有基本操作,如创建 Collection、插入、搜索、删除向量等。后续,Milvus Lite 将快速迭代并支持混合搜索等高级功能。Milvus Lite 会将数据加载到内存中以进行高效搜索,并将数据持久化为 SQLite 文件。

Milvus Lite 包含在 Milvus 的 Python SDK (https://github.com/milvus-io/pymilvus)中,因此仅需运行pip install pymilvus即可快速部署 Milvus Lite。我们通过以下代码介绍如何设置 Milvus Lite 向量数据库。设置过程中,我们只需要指定一个本地文件名,然后创建一个新 Collection 即可。对于熟悉 Milvus API 的老用户来说,代码中唯一的区别就是 uri 是一个本地文件的名称(如“milvus_demo.db”)而不是 Endpoint (“http://localhost:19530”)。此外,Milvus Lite 同样支持动态列或指定 Schema,可以将原始文本或标签作为元数据存储。

from pymilvus import MilvusClient

client = MilvusClient("milvus_demo.db")
# This collection can take input with mandatory fields named "id", "vector" and
# any other fields as "dynamic schema". You can also define the schema explicitly.
client.create_collection(
    collection_name="demo_collection",
    dimension=384  # Dimension for vectors.
)

您只需将上述代码中的uri更换为服务端 Endpoint 即可轻松将 Milvus Lite 搭建的本地应用扩展为部署在 Kubernetes 或 Docker 上的大规模应用。

03.与 AI 开发工具的集成

除了具备快速上手的特点外,Milvus Lite 与 Milvus 一样还支持与许多 AI 开发栈中的项目进行集成,例如 LangChain、LlamaIndex、Haystack、Voyage AI、Ragas、Jina AI、DSPy、BentoML、WhyHow、Relari AI、Airbyte、HuggingFace、MemGPT 等。 这些 项目均提供多样的工具和服务,因此可以为您简化需要使用向量搜索的 AI 应用的开发流程。

后续,我们还将支持集成更多 AI 项目和工具,敬请期待!

04.更多资源及用例

欢迎查看 Milvus 快速开始文档(https://milvus.io/docs/quickstart.md)学习如何使用或阅读教程了解如何使用 Milvus Lite 搭建 RAG、图像搜索等 AI 应用。当然,也别忘了预约 Zilliz 官方视频号下周二晚 8 点的直播,Zilliz 的工程师将手把手带你玩转 Milvus Lite!

  • 陈将

    陈将

准备好开始了吗?

立刻创建 Zilliz Cloud 集群,存储和检索您的向量。

免费试用 Zilliz Cloud