对于生成式AI的所有闪光点,这个新时代最大的转变可能深埋在软件堆栈中。AI算法正在不易觉察地改变一个又一个数据库。他们正在用复杂、自适应且看似更直观的AI新功能颠覆传统数据库。
目录
1、向量和嵌入
2、查询模型
3、建议
4、索引范例
5、数据分类
6、更好的性能
7、更清晰的数据
8、欺诈检测
9、更严格的安全性
10、合并数据库和生成式AI
11、相关领域拓展:(技术前沿)
与此同时,数据库制造商正在改变我们存储信息的方式,以便更好地与人工智能模型配合使用。以下是随着人工智能的普及,数据库正在适应和改进的10种方式。
1、向量和嵌入
人工智能开发人员喜欢将信息存储为长数字向量。过去,数据库将这些值存储为行,每个数字位于单独的列中。现在,一些数据库支持纯向量,因此无需将信息分解为行和列。相反,数据库将它们存储在一起。一些用于存储的向量有数百甚至数千个数字长。
此类向量通常与嵌入配对,嵌入是一种将复杂数据转换为单个数字列表的模式。设计嵌入仍然是一门艺术,并且通常依赖于对基础领域的了解。当嵌入设计良好时,数据库可以提供快速访问和复杂查询。
Pinecone,Vespa,Milvus,Margo和Weaviate等一些公司正在建立专门存储载体的新数据库。像PostgreSQL这样的数据库正在将向量添加到他们当前的工具中。
2、查询模型
向数据库添加向量带来的不仅仅是便利。新的查询函数不仅可以搜索完全匹配项。它们可以定位“最接近”的值,这有助于实现推荐引擎或异常检测等系统。将数据嵌入向量空间简化了涉及与仅几何距离的匹配和关联的棘手问题。
Pinecone,Vespa,Milvus,Margo和Weaviate等向量数据库提供向量查询。一些意想不到的工具,如Lucene或Solr,也提供了相似性匹配,可以用大块的非结构化文本提供类似的结果。
3、建议
新的基于向量的查询系统感觉比我们过去的日子更加神奇。旧查询将查找匹配项;这些新的人工智能数据库有时感觉更像是在阅读用户的思想。他们使用相似性搜索来查找“接近”的数据项,并且这些数据项通常与用户想要的内容非常匹配。这一切背后的数学可能就像在n维空间中找到距离一样简单,但不知何故,这足以提供意想不到的结果。这些算法长期以来一直作为完整的应用程序单独运行,但它们正在慢慢地被折叠到数据库中,在那里它们可以支持更好、更复杂的查询。
甲骨文只是针对这个市场的数据库的一个例子。Oracle长期以来一直提供各种模糊匹配和相似性搜索功能。现在,它直接提供为在线零售等行业定制的工具。
4、索引范例
过去,数据库构建简单的索引,支持按特定列进行更快的搜索。数据库管理员擅长使用联接和过滤子句精心设计查询,这些子句使用正确的索引运行得更快。现在,向量数据库旨在创建有效地跨越向量中所有值的索引。我们刚刚开始弄清楚寻找彼此“邻近”的向量的所有应用。
但这仅仅是个开始。当人工智能在数据库上训练时,它会有效地吸收其中的所有信息。现在,我们可以用简单的语言向AI发送查询,AI将以复杂和自适应的方式进行搜索。
5、数据分类
人工智能不仅仅是向数据库添加一些新结构。有时它会在数据本身内部添加新结构。一些数据可能会以一团糟的形式抵达,比如可能没有注释的图像或很久以前某人写的大块文本。人工智能算法开始清理混乱,过滤掉噪音,并对混乱的数据集施加秩序。他们会自动填写表格。他们可以对文本块的情感基调进行分类,或者猜测照片中人脸的态度。可以从图像中提取小细节,算法也可以学习检测模式。他们正在对数据进行分类,提取重要的详细信息,并创建定期、清晰描述的信息表格视图。
亚马逊网络服务提供各种数据分类服务,将SageMaker等人工智能工具与Aurora等数据库连接起来。
6、更好的性能
好的数据库处理数据存储的许多细节。过去,程序员需要花时间操心数据库使用的各种参数和模式,以使它们高效运行。建立数据库管理员的角色是为了处理这些任务。
这些更高级别的元任务现在正在自动化,通常是通过使用机器学习算法来理解查询模式和数据结构。他们能够监视服务器上的流量并制定计划以适应需求。他们可以实时适应并学会预测用户的需求。
甲骨文提供了最好的例子之一。过去,公司向管理数据库的数据库管理员支付高薪。现在,甲骨文称其数据库为自治数据库,因为它们配备了复杂的人工智能算法,可以即时调整性能。
7、更清晰的数据
运行一个好的数据库不仅需要保持软件运行,还需要确保数据尽可能干净且没有故障。AI通过搜索异常、标记它们,甚至可能建议更正来简化此工作负载。他们可能会找到客户姓名拼写错误的位置,然后通过搜索其余数据找到正确的拼写。他们还可以学习传入的数据格式并摄取数据以生成单个统一的语料库,其中所有名称、日期和其他详细信息都尽可能一致地呈现。
Microsoft的SQL Server是与数据质量服务紧密集成的数据库的一个示例,用于清理存在缺少字段或重复日期等问题的任何数据。
8、欺诈检测
创建更安全的数据存储是机器学习的特殊应用程序。有些人正在使用机器学习算法来寻找数据馈送中的异常情况,因为这些算法可以很好地表明欺诈。有人第一次深夜去自动取款机吗?这个人曾经在这个大陆上使用过信用卡吗?人工智能算法可以嗅出危险的行迹,并将数据库变成欺诈检测系统。
例如,Google的网络服务提供了多种选项,用于将欺诈检测集成到数据存储堆栈中。
9、更严格的安全性
一些组织正在内部应用这些算法。AI不只是试图针对使用模式优化数据库;他们还在寻找可能表明有人闯入的不寻常案例。远程用户并非每天都会请求整个表的完整副本。一个好的人工智能可以闻到一些腥味。
IBM的Guardium Security 是与数据存储层集成以控制访问和监视异常的工具的一个例子。
10、合并数据库和生成式AI
过去,人工智能与数据库是分开的。当需要训练模型时,数据将从数据库中提取,重新格式化,然后输入AI。新系统直接从现有数据训练模型。这可以为大型作业节省时间和精力,在这些工作中,仅移动数据可能需要数天或数周的时间。它还简化了DevOps团队的生活,使训练AI模型像发出一个命令一样简单。
甚至有人谈论完全替换数据库。他们不会将查询发送到关系数据库,而是直接将其发送到AI中,AI将神奇地回答任何格式的查询。谷歌提供Bard,微软正在推动ChatGPT。两者都是取代搜索引擎的有力竞争者。他们没有理由不能取代传统的数据库。
这种方法有其缺点。在某些情况下,人工智能会产生幻觉,并想出完全错误的答案。在其他情况下,他们可能会随心所欲地更改其输出的格式。
但是,当领域足够有限并且训练集深入完整时,人工智能可以提供令人满意的结果。而且它不需要定义表格结构并强迫用户编写在其中查找数据的查询。对于用户和创建者来说,使用生成式AI存储和搜索数据可以更加灵活。
11、相关领域拓展:(技术前沿)
扯个嗓子!关于目前低代码在技术领域很活跃!
低代码是什么?一组数字技术工具平台,能基于图形化拖拽、参数化配置等更为高效的方式,实现快速构建、数据编排、连接生态、中台服务等。通过少量代码或不用代码实现数字化转型中的场景应用创新。它能缓解甚至解决庞大的市场需求与传统的开发生产力引发的供需关系矛盾问题,是数字化转型过程中降本增效趋势下的产物。
这边介绍一款好用的低代码平台——JNPF快速开发平台。近年在市场表现和产品竞争力方面表现较为突出,采用的是最新主流前后分离框架(SpringBoot+Mybatis-plus+Ant-Design+Vue3)。代码生成器依赖性低,灵活的扩展能力,可灵活实现二次开发。
以JNPF为代表的企业级低代码平台为了支撑更高技术要求的应用开发,从数据库建模、Web API构建到页面设计,与传统软件开发几乎没有差异,只是通过低代码可视化模式,减少了构建“增删改查”功能的重复劳动,还没有了解过低代码的伙伴可以尝试了解一下。
应用:https://www.jnpfsoft.com/?csdn
有了它,开发人员在开发过程中就可以轻松上手,充分利用传统开发模式下积累的经验。所以低代码平台对于程序员来说,有着很大帮助。