AI模型落地难?试试这个15分钟搞定的开源工具
自古兵家作战就讲究一个「度」。
公元 200年,官渡之战后。死敌袁绍的残兵败卒远逃塞北,劳师远征还是穷寇莫追,曹操陷入纠结。鬼才谋士郭嘉建言道:用兵贵在神速!远征千里之外,辎重多、行军慢,敌人定会有所察觉。不如留下笨重的物资,轻车简从昼夜兼程,攻敌不备定可一战功成。
曹操采纳了建议,亲率数千精兵突袭,旋即取得了胜利。
兵贵神速,绝非妄言。
曹操轻车简从昼夜兼程是极致效率的体现,同样的,在现代的科技领域,需要紧急交付应用的时刻,将开发完成的模型快速部署、快速应用,其背后体现的工程效率有时也事关成败。
近日,旷视天元 MegEngine 将面向计算机视觉应用的 MegFlow 流式计算框架开源,奉上一套可快速完成 AI 应用部署的视觉解析服务方案。
通过使用 MegFlow,AI 算法开发者可以快速完成 AI 模型的落地应用。
我们就拿一个电瓶车检测的例子,小中见大吧。
今年 5月10日,成都成华区一小区电梯内电瓶车起火,导致包括一名女婴在内的多人烧伤。这样的悲剧事件绝不是孤例,管理人员本可以及时察觉并制止电动车进入楼梯间等楼内公共区域停放或充电。
MegFlow提供的开箱即用应用就包括电瓶车检测:基于 MegFlow 提供的图像和视频解析服务,最快 15 分钟即可完成客制化电瓶车检测功能,并完成快速部署。这是一种为物业管理者提供的智能化管理工具。当摄像头检测到电瓶车进入楼内公共区域,系统会第一时间发出警告,提醒管理人员快速制止,有效排除起火安全隐患。所谓生命安全大于天,能快一点是一点。
1
MegFlow ——三步部署神器
炼丹本是枯燥事,奈何部署再难人。 经历过AI应用上线的开发者肯定深有体会,要让一个模型从丹炉走出来到落地应用所涉及的东西又多又杂,技术储备不足或人手不够的团队很难在短时间内搞定所有事情。旷视最近开源的 MegFlow是针对这一痛点开出的一剂良药。
旷视的工程师在总结了内部多年的 AI 应用工程落地经验之后,搭建了一条从炼丹到落地的高速公路,这就是 MegFlow 流式计算框架。
MegFlow 将资源、消息、任务等概念进行清晰一致的抽象化,做到将冗长的算法交付流程简化为模型训练、业务集成、交付验收三步完成。
2
MegFlow三大特点助力提升工程效率
MegFlow 针对 AI 算法工程落地中的频发问题,诸如性能调优、安全性、模型加密等,都能提供行之有效的解决方案,并有效提升了工程效率。
MegFlow 拥有安全可靠、简单易用、语义支持丰富等特性。在这三大特性的保证之下,MegFlow 可以轻松助力 AI 应用快速落地。
简单易用
MegFlow 支持 Python 插件,且仅需要开发者编写同步的 Python 程序,即可实现可以被 MegFlow 异步调度的 Python 插件。同时 MegFlow 提供了一套基于 Web UI 的可视化调试工具,可有效提升模型部署的工作效率。
语义支持丰富
在表达能力上,MegFlow 支持静态图、动态图和共享图,辅以 demux、reorder、transform 等函数式语义的通用插件,为搭建多样化的 AI 服务提供了丰富的语义支持。
安全可靠
一般而言,工程效率的提高往往意味着安全性能可能会随之相应下降,但是MegFlow对于安全性的把控做得非常好,完全安全可靠。在技术选型上, MegFlow 的研发团队认真负责地调研了多种技术方案,最终选择了安全且零额外开销的 Rust 异步生态,从基础上保证了 MegFlow 的安全性与性能。
3
旷视开源进行时
2020年3月,旷视开源了内部使用多年的深度学习框架旷视天元,并以天元为核心,逐步丰富完善其开源生态,覆盖图像分类、图像检测、图像分割、关键点、自然语言处理、生成对抗网络等各类模型和工程项目。不久前,旷视开源了YOLOX 系列高性能目标检测算法,一度登上GitHub trending榜。
除了工作效率之外,旷视在解决成本效率上也很给力。今年4月,开源深度学习框架 MegEngine引入动态图显存优化(DTR)技术并进行进一步的工程优化,提供了一种通过额外计算减少显存占用的途径,只需两行代码,可以在相同显存情况下,让用户训练 3 倍大的模型。在使用 DTR 功能后,11G显存的2080Ti 可以训练出原本32G显存的V100才能训练的模型,可以节省很多 Money!
4
总结
天下武功,唯快不破。
追求高效率、省时省力是当今科技公司必修的一门课。
AI 在不断发展的过程中,解决长尾场景的能力越来越强大,可以预见的是像 MegFlow 这类高效的 AI 落地方案,可以更加便捷地解决这些问题。
务实的旷视做扎实的技术,在提供靠谱的技术解决方案、降本增效的路上一发不可收拾。
Step 2:
前言从零了解GitHub,这一篇就够了!|手把手教你用GitHub(一)
而就是这么一个GitHub上最流行的向量数据库,背后公司Zilliz已经完成了1.13亿美元融资。
Zilliz专注于研发面向AI应用的向量数据库系统,旗下有Milvus、Zilliz Cloud等产品,目的是为开发者提供易用性强、性价比高的向量数据库服务。
这两天,Zilliz Cloud发布2.0重磅更新,更是带起一波业界对向量数据库的讨论热潮。
大模型技术进展日新月异,向量数据在风口浪尖上也起起伏伏,不少人说它是给AI提供长期记忆的必备基建,也有人认为提高大模型上下文长度才是未来方向。
这不,还有谷歌工程师专门为此摆摊舌战群儒。
众说纷纭之下,情况究竟如何?不如来听听向量数据库一线从业者怎么说。
我们联系到了Zilliz创始人兼CEO星爵,希望和他聊一聊向量数据库对于这一轮AI浪潮的意义,以及它背后变革的方式。
星爵认为,大模型的出现给AI带来了新的计算范式CVP Stack,向量数据库是不可或缺的关键:
其中,C代表大模型(ChatGPT)负责向量计算;V代表向量数据库(vector database),负责向量存储;P代表Prompt工程,负责向量交互。
不仅如此,他还系统解答了在大模型发展过程中,向量数据库具体起到的作用,以及作为向量数据库头部公司的Zilliz,又要如何应对这一轮AI变革浪潮。
在不更改原意的基础上,量子位对与星爵的交流内容进行了整理,希望能为大家带来一些思考与启发。
大模型的数据基础设施
提问:最近向量数据库很火,能不能先简单科普一下?
星爵:向量数据库是一种为了高效存储和索引AI模型产生的向量嵌入(embedding)数据而专门设计的数据库。
在传统的关系型数据库中,数据通常以表格的形式存储,而在向量数据库中,数据以向量的形式存储。向量(embedding)是一组数值,可以表示一个点在多维空间中的位置。向量数据库非常擅长处理大量的高维embedding数据,这种数据在机器学习和深度学习应用中很常见。
提问:在最近半年里,向量数据库被广泛应用于大模型领域。向量数据库在大模型领域具体有哪些应用?
星爵:诸如GPT、Bard、Claude和LLaMA这样的大模型可以产生海量向量嵌入数据来表达复杂的语义关系,但模型本身的存储空间有限,无法持久保存这些数据。
向量数据库就像一块外置的记忆块,可以长期存储这些数据,供模型随时调用。向量数据库在LLM领域的应用主要可以分为以下几类:
1、管理私有数据和知识库
开发者可以方便高效地将自己的领域数据集或者私有数据集转换成向量格式,让大模型直接操作,而无需将这些数据暴露给模型训练方,有效保护了数据隐私和产权。
2、为大模型提供实时数据更新。
通过向量数据库可以为大模型提供实时的数据更新,解决大模型胡言乱语的问题,而无需频繁重训模型。这比直接fine-tune模型的成本低很多。
3、实现大模型的个性化和增强。
开发者可以在向量数据库中添加上下文和自己的数据来扩展大模型的感知能力,实现个性化应用。
4、提供智能体的记忆。
智能体是大模型的一个新兴应用场景,用于构建具有独立智能的虚拟人物、虚拟代理甚至人形机器人。向量数据库不仅可以帮助智能体记忆其感知的历史数据和上下文,帮其做出智能决策,还能使其根据长期记忆来实现自我演进。
5、保存大模型的处理结果。
向量数据库可以持久保存大模型处理过的数据,进行离线分析和挖掘。而不像大模型那样,用过即弃。比如说,开源项目GPTCache可以将大模型的查询结果缓存至向量数据库,避免重复计算,提高查询效率,这有点像CDN和Redis对网站数据的作用。
6、构建更复杂的AI系统。
在很多场景下,我们需要将多个大模型和向量数据库串联,实现更强大的功能。其中,多个大模型甚至是多模态模型共同负责处理语义,向量数据库负责数据流转。
对于大模型应用开发者来说,向量数据库是一个非常重要的基础设施,可以在最大限度发挥大模型威力的同时保护数据隐私,实现更丰富的功能。LLM和向量数据库共同推动AIGC的发展,二者缺一不可。
全面拥抱大模型
提问:我们了解到,Zilliz Cloud在两周前于硅谷发布了全面的产品更新和升级。这次产品升级背后的动机是什么?
星爵:我们的出发点是all-in大模型应用开发。
在过去的几年里,我们的开源产品Milvus和商业产品Zilliz Cloud被广泛应用于计算机视觉、NLP、推荐系统、搜索引擎、自动驾驶和生物制药等领域。在过去的半年里,向量数据库经历了它的iPhone时刻,数百万LLM应用开发者涌入,LLM应用开发成为了向量数据库的杀手级应用场景。众多的LLM应用开发者给我们带来了大量新兴的需求,我们决定拥抱这些变化,为LLM应用开发提供更全面、更便利的支撑。
提问:能不能具体介绍下Zilliz Cloud做了哪些更新和升级?
星爵:首先,引入了对RESTful API的全面支持。我们看到新进的LLM开发者大多具有丰厚的Web应用和移动应用开发背景,他们熟悉基于RESTful API将多个服务的能力串起来打造强大的应用。有了RESTful API,开发者可以便捷地将LLM+向量数据库+提示词三者连接起来,打造LLM应用程序。我们将这种新开发范式称为CVP Stack,能极大提高开发效率。举个例子说,明道云的一位工程师使用RESTful API一天就完成了Zilliz Cloud和对方平台的整合。
其次,提供了动态schema。此前向量数据库采用静态schema的方式,需要开发者在建表时根据业务定义数据的schema,这对于大型企业的成熟业务而言是一种常见的处理方式。然而,当下AIGC应用多处于早期快速迭代阶段,面向业务效果,需要频繁调整向量数据库内的字段,对于这类需求,反复重建schema结构以及频繁的数据重导入会严重影响产品的迭代速度。为此我们引入了动态schema,支持用户根据开发需要动态灵活地进行数据处理。
再者,新增了JSON数据类型的支持。JSON是目前最流行且最灵活的数据表示方式之一,被广泛地应用于应用程序开发中。我们将MongoDB的基础能力搬进了向量数据库,用户在Zilliz Cloud上可以将JSON与embedding这两种超强能力相结合,实现基于JSON与embedding向量的混合数据表示和处理。
另外,我们还引入了Partition Key,支持基于Partition Key的高效数据过滤;增加了组织和角色的概念,支持基于Role-Based Access Control(RBAC)的多粒度访问控制;增加了全面的LLM生态支持,深度整合了OpenAI、Claude、Cohere、LLaMA、Bard、Dolly、LangChain、LlamaIndex和Semantic Kernel等热门项目。
提问:我们看到Zilliz Cloud之前只提供专有集群一种产品,此次新增了Serverless和云上私有部署两种产品。这背后的原因是什么?
星爵:Zilliz Cloud面向不同阶段的用户提供多种用户计划。
基于Serverless的入门计划
为每位用户提供一个免费的Serverless实例,开箱即用,可支持百万条数据规模的向量检索,适合个人开发者和小型开发团队使用。
专有集群产品
面向大型开发团队和企业,专注高性能、高可用、高可扩展性、智能运维和优化、数据安全以及敏捷技术支持等企业级特性,并提供性能型、容量型、经济型三类实例类型,满足企业不同维度的业务需求。
自托管计划
允许用户在其虚拟私有云(VPC)上部署我们的向量数据库服务,提供完全控制,它是注重隐私、数据安全和合规的大型企业的理想选择。
通过提供不同形态的产品,我们希望满足LLM开发者在不同发展阶段的需要,让每一个开发者、每一个开发团队、每一个企业都能方便地使用向量数据库服务,加速实现AI数据基础软件的普及化。
向量数据库市场的竞争和趋势
提问:今年以来,多家向量数据库初创公司获得了大额融资,一些大厂也纷纷把向量数据库的研发列入日程。你怎么看待日益升温的竞争?
星爵:竞争意味着市场确认和机会。竞争的加剧说明向量数据库的价值得到了市场的广泛认可,其市场机会和潜力得以证实。与此同时,激烈的竞争也在一定程度上推动了技术的进步,这对消费者和整个行业而言都大有裨益,是一件实打实的好事。
当然,这种竞争环境迫使公司更加关注客户的需求。这意味着我们必须密切关注市场趋势,并适应这些变化,以提供客户真正需要的解决方案。我们必须不断创新和优化我们的产品和服务。这对LLM开发者和整个行业来说都是有益的。我相信在一个健康的生态系统中,有多个玩家是至关重要的。这为开发者和客户提供了选择,也为行业设置了标准。
在Zilliz,我们作为向量数据库行业的先行者和开拓者,尤其欢迎这种竞争。我们将继续致力于推动向量数据库技术的发展,并与其他参与者一起,为用户提供最先进的工具和服务。
提问:刚才你提到了行业标准,在关系型数据库领域有TPC-C和TPC-H这样的benchmark,向量数据库领域有类似的benchmark么?
星爵:目前还没有标准的benchmark,这给开发者和企业在向量数据库产品对比和选择时造成了很多的疑惑和困难。
给大模型持久记忆!GitHub2万星向量数据库服务升级,国内7月上线
允中发自凹非寺量子位公众号QbitAI