头部大模型公司进京赶考,向量数据库成为应考神器

news2024/11/22 23:00:03

日前,由品玩主办的「模型思辨」国内大模型产业生态研讨会在北京举办,Zilliz 与 360 集团、阿里巴巴、昆仑万维等来自大模型产业链的头部公司及投资机构参会,会上 Zilliz 创始人兼首席执行官星爵、360 集团创始人周鸿祎、昆仑万维创始人方汉等重量级嘉宾更是从不同角度分享了对大模型的独到见解,精彩观点的交织与碰撞背后,是众人对于中国大模型未来的积极探索与期待。

其中,值得关注的是对于向量数据库的探讨,星爵从大模型存储的角度为大家详解向量数据库之于大模型的重要意义。

alt

星爵认为:

  • 移动应用时代程序开发经历了从复杂到简单的过程,AI 浪潮的来临却从侧面提高了程序开发的成本,大模型时代之下 CVP Stack 这种新范式的出现改变了这一现状,在其加持下,人人都可能是 AI 时代的工程师。

  • 大模型的发展离不开存储这一关键点,其中以 Milvus 和 Zilliz Cloud 为代表的向量数据库扮演着大模型记忆体的角色,可以让大模型们进行知识增强。

  • 下一个 Killer App 会是智能体,它同样需要向量数据库的存储和检索能力。可以预见,向量数据库将迎来快速的市场规模增长,未来可期。

以下是星爵演讲的精彩观点:

从移动应用时代到大模型时代

当下的时代常被冠以很多花里胡哨的称谓,然而早在十年前,硅谷便感受过同样的热情。当时硅谷的每个周末或者任何一座大城市都有一群人在兴奋地探讨 iOS 和 Android。十年,我们见证了移动技术的成长,改变了生活的方方面面。

十年前,之所以有那么多移动开发者涌入这个赛道,原因是安卓和 iOS 极大地简化了移动开发的工具栈,降低了手机程序应用开发的难度。回到 AI 领域,尽管在过去十多年的时间里它一直处于不断升温的状态,但实际上整个领域的 Stack 比重相当高。这意味着,如果你想开发一个完整的 AI 程序,需要在不同板块中至少选择 1-2 个项目,并将这几十个项目串成自己要做的解决方案。

大模型出现以后,工具栈变得更加简化,开发者可以在一个周末的时间做出一个不错的 demo。而这并非是天方夜谭,如今火热的框架项目 LangChain、LlamaIndex、Semantic Kernel,做的都是同一件事,即让更多的开发者用框架将三个工具栈整合在一起。由此,便可以实现 12 个小时写出一个 AI 应用程序的想法,而这个应用程序比之前花费几百万开发出来的应用程序能力还要高。

这种模式就是 CVP Stack,其中,C 的意思是以 ChatGPT 为代表的大模型,它在 AI 程序中充当中央处理器的角色;V 代表 Vector Database,即以 Milvus 为代表的向量数据库,充当 embedding storage 的角色;最终会通过 prompt 的方式进行交互。在我的概念里,prompt engineering 并不是最终形态,所以对它的理解可以再深一层,变成 Product Design。事实上,你用 prompt 提出一个好问题和跟产品经理提出一个产品设计方面的好问题,在本质是一样的。

总结来看,在大模型时代下,无论你是否写过代码,只要你有一个 ChatGPT 账号、会写 prompt、找到一个 embedding 的数据库为模型提供相关领域的知识,甚至说为其提供一个缓存层,具备以上条件,你可以轻而易举地成为一个很好的工程师。举个例子,我们的同事用了两天就做出了一个ChatGPT + Milvus 向量数据库的应用,它的名字叫 OSSChat(https://osschat.io),用于解决开源项目文档冗长、不易查找等问题,目前已经支持几十个主流的开源项目,每天都有很大的访问量,用户甚至可以去生成开源项目的代码。

存储比计算更便宜,大模型也不例外

大模型更新的时间比较长,知识也具有一定的滞后性(例如 ChatGPT 的知识只停留在 2021 年底),如果用现在的数据库存储方式,可以把最新的知识提供给向量数据库,对大模型进行知识增强,可以得到更好的答案。不止如此,大模型的训练成本高昂也是不争的事实。

这次我想重点谈谈成本问题。在计算机发展史中,最经典的架构是冯·诺伊曼架构,最核心的贡献就是实现存储与计算分离,即把所有信息、所有计算归为计算问题和存储问题。存储与计算分离有各种各样的好处,传统的冯·诺伊曼架构是把信息用二进制代表,实现存储和计算分离。

大模型的本质是复杂的神经网络,在这个神经网络中任何数据的传输都需要 embedding 作为中间介质,可以说,embedding 就是传输信息的基本单元。因此,embedding 是在传统的抽象之上覆盖了一层适合 AI 或大语言模型进行语义抽象的数据表示。

而向量数据库负责的是 embedded 语义数据的存储与检索。我们要把大语言模型和向量数据库分为两个模块,就是存储与计算分离,正如冯诺伊曼架构一样。这样做的好处就是历史上存储价格永远比计算价格便宜几个数量级以上,大语言模型也不例外。假设有一个大模型可以做 100 KB Token,同样条件下,给到大语言模型运算的成本远大于做向量召回。如果这个大模型要做 1000 Token呢?运算成本将更加昂贵。虽然大语言模型未来会有越来越大的 Token 窗口,但我们本质上不会把所有信息都分到大模型里面,且大模型不能覆盖全世界所有信息。

未来向量数据库应该会成为大语言模型存储的标配,传统的数据库之所以不适合为大模型做存储,是因为它们没有语义表达且不能提供语义存储。如果说现在有一种数据库方案和存储方案,能够提供语义检索的话,只能是向量存储。

下一个 Killer App

讲完过去一年半年的机会,我们来聊聊下一个机会是什么?

老周和轶航的对话有讲到智能体越来越被认为是下一代杀手级应用,对此,我很认同。大模型还需要人不停地给予提示,智能体希望通过做任务和场景拆解,解决无限复杂的问题,最终实现和人一样的自我演进的能力,或者形成自己独特观点和演化的能力。目前,智能体的商业化已经初露头角,例如 AI偶像,它不一定是大明星,可以是小网红,AI 通过复制一百个一千个自己和无数人谈恋爱来赚钱。

智能体需要记忆。人类的大脑有一个区域叫做海马体,负责长期记忆。记忆是人类智能很重要的部分,不可能今天把昨天的事情忘记还说自己很聪明。行业里面的正在尝试用向量数据库为智能体存储长期记忆,因为向量数据库的成本是很可控的。假设有一个数字人从第一天开始安装大脑,与其他人没有区别,但每次跟外界的感知、跟外界对话的过程它都会记下来:今天这个人问了我一个不好的问题,明天他又问了一个我特别喜欢的问题……十年以后我依然知道从前和这个人进行过怎样的交互。而如果要做这种大时间跨度的上下文记忆,一定要有一个具备低廉的成本、快速召回并且能够增大的记忆体。想要满足上述需求,向量数据库是很好的选择。

未来如果每个人都能够有几十个智能体帮助我们生产生活,像向量数据库这样具有语义检索的存储市场会迎来很大的增长。Zilliz 开始做世界上第一款向量数据库的时候,内存应用场景根本不是大语言模型,更多的是图片搜索、视频搜索,包括个性化的搜索引擎,但本质上都是用神经网络做成向量嵌入。大语言模型开发门槛的降低让这个领域成为面向开发者友好的 Killer 领域,所以我们认为向量数据库这个领域未来几年将迎来快速的增长与更加庞大的市场规模。

大模型时代,未来可期,而作为大模型记忆体的向量数据库,同样值得期待!

🌟全托管 Milvus SaaS/PaaS 即将上线,由 Zilliz 原厂打造!覆盖阿里云、百度智能云、腾讯云、金山云。目前已支持申请试用,企业用户 PoC 申请或其他商务合作请联系 business@zilliz.com。


  • 如果在使用 Milvus 或 Zilliz 产品有任何问题,可添加小助手微信 “zilliz-tech” 加入交流群。 ​
  • 欢迎关注微信公众号“Zilliz”,了解最新资讯。 alt

本文由 mdnice 多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/628572.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++ 类设计的实践与理解

前言 C代码提供了足够的灵活性,因此对于大部分工程师来说都很难把握。本文介绍了写好C代码需要遵循的最佳实践方法,并在最后提供了一个工具可以帮助我们分析C代码的健壮度。 1. 尽可能尝试使用新的C标准 到2023年,C已经走过了40多个年头。新…

如何进行微服务测试?

微服务测试是一种特殊的测试类型,因为它涉及到多个独立的服务。以下是进行微服务测试的一般性步骤: 1. 确定系统架构 了解微服务架构对成功测试至关重要。确定每个微服务的职责、接口、依赖项和通信方式。了解这些信息可以帮助您更好地规划测试用例和测…

day09——线性回归

线性回归 一、什么是线性回归1,定义与公式2,线性回归的特征与目标的关系 二、线性回归的损失和优化原理1,损失函数2,优化算法 三、API四、实操:波士顿房价预测1,数据来源:scikit-learn2&#xf…

Acgis中实现栅格经纬度和行政区关联

写在前面 我是一个Acgis小白,写这篇博客是为了记录完成过程,如果有更高效的办法欢迎分享~ 我用的是Arcgis10.2。 需求描述 目前已有意大利的shp文件,希望将意大利划分成0.1*0.1经纬度的栅格,并且关联每个栅格中心点所属的省份信…

DBeaver复制数据库(数据库表结构以及内容)

一、 首先先建立一个数据库 (已有请忽略此步骤) (名字 字符集等按需要自己填写) 二、选择要复制的数据库 2.1右键选择 工具->转储数据库 2.2选择要导出的数据 2.3 选择要导出的路径 2.4 点击开始,等待导出完…

Revit中绘制弯曲的靠背栏杆和生成过梁

一、Revit中怎么绘制弯曲的靠背栏杆 栏杆通常我们见过位于在阳台处,但是在我们的古建筑中很常见到一种靠背栏杆,例如凉亭里面就很常见这种栏杆。那么如何绘制呢? 利用公制栏杆——支柱进行绘制 要运用放样工具进行绘制,设置一个工作平面&…

中国电子学会2023年05月份青少年软件编程Scratch图形化等级考试试卷四级真题(含答案)

2023-05 Scratch四级真题 分数:100 题数:24 测试时长:90min 一、单选题(共10题,共30分) 1. 下列积木运行后的结果是?(B)(说明:逗号后面无空格)&#xff…

mysql join 与 拆分成单表查询如何选择

参考以下文章,不错 数据库联表查询时,是直接使用join好还是分别查询到数据后自己处理较好? - 知乎 一,声明 1,数据量 首先场景是多个表数据量比较大,可能达到百万级 2,结论:最…

springboot项目启动指定对应环境的方法

1. 多环境准备 今天教大家一种多环境profile的写法,当然也可创建多个yml文件。如下所示: spring:application:name: cms-discovery-eureka-ha --- # 区分多环境 spring:profiles: peer1 server:port: 9092 eureka:in…

十、ELK安装ElastAlert 2插件飞书机器人告警(docker)

实现效果 1.创建相应挂载目录和文件 可任意位置,挂载对上就行,方便直接在宿主机修改配置。 /data/feishu-alert/config.yaml /data/feishu-alert/rules 2.编写config.yaml配置文件(/data/feishu-alert/config.yaml) #指定告警文件存放目录 rules_fo…

从C语言到C++_16(list的介绍和常用接口函数)

目录 1. list 介绍和简单使用 1.1 list介绍 1.2 list简单接口函数 1.3 push_back 和遍历 1.4 list常规接口函数使用 2. list 的其它接口函数 2.1 splice 接合 2.2 remove 删完一个值 2.3 sort和reverse 本章完。 list是个双向带头循环链表。 带头双向循环链表我们在…

21份软件测试全流程文档模板(标准版)

1、需求说明书 2、功能测试计划 3、功能测试用例 4、业务流程测试用例 5、系统安装配置说明书 6、阶段功能测试报告 7、性能测试计划 8、性能测试用例 9、性能测试报告 10、系统功能测试报告 11、需求变更说明书 12、用户建议说明书 13、验收测试报告 14、产品发布说明书 15、系…

redis下载安装

本文主要介绍如果在Centos7下安装Redis。 1.安装依赖 redis是由C语言开发&#xff0c;因此安装之前必须要确保服务器已经安装了gcc&#xff0c;可以通过如下命令查看机器是否安装&#xff1a; <span style"color:#000000"><span style"background-c…

Matlab论文插图绘制模板第101期—人口金字塔图

在之前的文章中&#xff0c;分享了Matlab双向柱状图的绘制模板&#xff1a; 进一步&#xff0c;再来分享一种特殊的双向柱状图&#xff1a;人口金字塔图。 先来看一下成品效果&#xff1a; 特别提示&#xff1a;本期内容『数据代码』已上传资源群中&#xff0c;加群的朋友请自…

Lecture 17 Machine Translation

目录 Statistical MTNeural MTAttention MechanismEvaluationConclusion Machine translation (MT) is the task of translating text from one source language to another target language why? Removes language barrierMakes information in any languages accessible t…

Polarion工作流插件(自定义)

创建插件命名插件配置插件Condition&Function package com.polarion.capital.example.conditions;import com.polarion.alm.tracker.model.IWorkItem; import com.polarion.alm.tracker.workflow.IArguments; import com.polarion.alm.tracker.workflow.ICallContext; impo…

TIME_WAIT的处理方式

TIME_WAIT 是什么 TIME_WAIT 是指在 TCP 连接关闭时&#xff0c;等待所有分组确认被接收的状态&#xff0c;这个状态会持续 2MSL&#xff08;Maximum Segment Lifetime&#xff09;的时间&#xff0c;以确保所有分组都被接收。在这段时间内&#xff0c;该连接不能被重用。MSL …

Jmeter 实现 grpc服务 压测

一、Jmeter安装与配置 网上有很多安装与配置文章&#xff0c;在此不做赘述 二、Jmeter gRPC Request 插件安装 插件下载地址&#xff1a;JMeter Plugins :: JMeter-Plugins.org 将下载文件解压后放到Jmeter安装目录下 /lib/ext 然后在终端输入Jmeter即可打开 Jmeter GUI界面…

搞定“超超超难”剑桥面试数学题番外篇:ARM64汇编

0. 概览 在 有趣的小实验&#xff1a;四种语言搞定“超超超难”剑桥面试数学题 那篇博文中&#xff0c;我们使用 4 种语言&#xff08;x64汇编、C、Swift 以及 Ruby&#xff09;实现了一道算法题。 不过&#xff0c;其中的汇编语言对应的是 intel CPU 上的 x64 指令集&#x…

手把手教你如何把系统的前端页面改成vue 脚手架项目,实现前后端分离

这篇文章从零开始&#xff0c;介绍怎么把现有的一个商城的页面移动到vue脚手架项目上&#xff0c;实现前后端代码的完全分离。 首先&#xff0c;我们需要新建一个vue的脚手架的项目&#xff0c;在此之前&#xff0c;需要安装node.js 打开IntelliJ IDEA或者winR&#xff0c;输入…