GenAI 生态系统现状:不止大语言模型和向量数据库

33c19ae88e9819f4916f7a73ef0eb02a.png

5a07dc1179ffe9aa4f68f755aa94fa7c.png

自 20 个月前 ChatGPT 革命性的推出以来,生成式人工智能(GenAI)领域经历了显著的发展和创新。最初,大语言模型(LLMs)和向量数据库吸引了最多的关注。然而,GenAI 生态系统远不止这两个部分,它更加广泛和复杂。向量数据库是是赋能 GenAI 应用的关键基础设施,作为其构建者我对于快速的技术进步及向量数据库对行业的影响感到非常兴奋。在本文中,我想回顾一下,并分享对 GenAI 生态系统现状的一些思考。

生成式 AI 应用大致可以分为两种主要类型:检索增强生成(RAG)和多媒体生成。RAG 结合了信息检索技术与生成式语言模型,以产生相关且连贯的输出。另一方面,多媒体生成利用生成式模型创造复杂的视觉内容,包括创意广告和数字孪生(Digital twins)。

9d7ef92f8a259cbc2ffc4fb5cba5dec8.png

检索增强生成(RAG)

检索增强生成(Retrieval-Augmented Generation, RAG)是当前 GenAI 领域中非常流行的一种应用。RAG 系统通常由数据清洗、Embedding 模型、向量数据库和 LLM 等组件构成。更高级的生产级 RAG 系统通常包括额外的组件来增强质量和用户体验。

典型的搜索系统可以分为两个主要部分:离线索引部分和在线查询服务部分。类似地,RAG 包括索引阶段和在线查询服务阶段:

  • 索引阶段:索引阶段涉及从各种来源获取数据,包括数据库、API 和文件系统。这些数据经过文件解析和文本分块处理,为分析做准备。处理后,数据被 Embedding 到适当的格式,并加载到向量数据库中,以便有效检索。一些 RAG 系统甚至采用高级数据挖掘技术,如标签提取、知识图谱构建和摘要,以丰富数据并改进检索过程。

  • 服务阶段:在线查询服务阶段专注于理解用户的查询意图,并采用各种检索方法,包括向量相似性搜索,以找到最相关的信息。检索结果随后被发送到 LLM 进行生成。在这一步中,LLM 基于检索到的数据生成连贯且符合上下文的输出。此外,LLM 还可以作为代理,利用外部工具来增强其能力,并提供更全面和准确的响应。

因此,许多编排项目提供了各种组件的实现和配置选项。架构的复杂性也要求系统既要作为白盒也要作为黑盒进行评估,这促进了评估框架的发展。

每个组件还吸引了旨在构建更好、更丰富功能的开发者,例如每个数据源的 Connector 和针对特定用例量身定制的 Embedding 模型。LLM 推理框架为 LLM 提供了更灵活的部署选项,不仅仅是 API 服务。此外,代理框架有助于更好地利用 LLM 的推理和工具使用能力。

此外,一些项目从不同的角度处理 RAG,探索替代的检索方法,如知识图谱,开发 Web 前端框架以增强 UI 体验,并创建开箱即用的解决方案,提供包括聊天机器人 UI 在内的整个 RAG 工作流程。

1. 工作流程编排与优化

为了管理 RAG 应用的复杂工作流程,广泛使用了如 LangChain、LlamaIndex、Haystack、DSPy 和 Semantic Kernel 等 SDK。这些编排框架使开发者能够构建、定制和测试 RAG Pipeline,确保这些 Pipeline 被组合以实现特定用例的最佳生成答案质量。

示例:LlamaIndex

LlamaIndex 是一个用于构建基于 LLM 的上下文增强应用的框架。它通过提供数据 Ingestion、解析、索引和查询工具,允许开发者将 LLM 与私有数据集成。这种方法通过结合来自用户特定数据源(如 API、SQL 数据库和文档)的上下文,让使用 LLM 搭建特定应用(例如问答、聊天机器人和文档理解)变得更加容易。LlamaIndex 提供了常用组件(如各种分块策略和混合搜索方法)的便捷程序 abstraction。

2. 质量评估与监控

由于 RAG 是一个复杂的系统,在特定场景中实现最佳结果可能具有挑战性。应对这些挑战需要一个科学的评估方法。诸如 Ragas、Arise、Langfuse、Relari AI、Giskard 和 DeepEval 等项目提供了评估和监控所需的指标和工具。它们允许开发者定量地测量、监控和排错他们的 RAG 系统。

示例:Ragas

Ragas 是一个用于评估 RAG  Pipeline 的全面框架。Ragas 提供了评估答案质量指标的工具,例如忠实度、相关性和上下文精确度。它支持生成合成测试数据集、监控生产中的 RAG 应用程序,以及与 AI 工具和平台(如 LangChain 和 LlamaIndex)的集成。通过提供一个包含关键性能方面的 Harmonized Ragas 评分,该框架简化并量化了评估过程,最终提高了 RAG Pipeline 的有效性和可靠性。

3. 数据 Connector 和网络抓取

能够无缝集成和处理来自多个源的数据至关重要。像 Airbyte、Fivetran 这样的平台在提供强大的数据 Connector 方面处于领先地位,以及 Apify 和 Zyte 用于网络抓取。它们使企业能够高效地收集、转换和整合数据到 RAG 工作流程中,从而更容易地利用 AI 完成关键任务。数据获取和连接性对于传统搜索系统至关重要,它们在今天的 RAG 中同样重要,RAG 在某种程度上是搜索的一种新形式。

示例:Airbyte

Airbyte 是一个为构建提取和加载(EL)数据 Pipeline 而设计的开源数据传输平台。与许多关注主要服务的数据 Pipeline 平台不同,Airbyte 还支持整合较小的、经常被忽视的服务。通过维护大量的 Connector 并促进社区分享定制 Connector,Airbyte 使公司能够为其特定需求创建定制化的解决方案。其强大的数据 Connector 可以将非结构化数据转换为 Embedding 向量,并加载到 Milvus 等向量数据库中,用于语义相似性搜索。这种能力对于企业来说,有助于高效地收集、转换和整合数据到 RAG 工作流程中,增强 AI 驱动的决策和搜索应用。

4. Embedding  和 Reranker 模型

像 Embedding 模型这样的深度神经网络正在改变非结构化数据的处理和理解方式。OpenAI、Cohere、Voyage AI、Jina AI 和 Twelve Labs 等公司在开发将文本和多模态数据转换为数值向量的高级模型方面处于领先地位。这些 Embedding 模型使得近似最近邻(ANN)向量搜索成为可能,允许应用程序提供高度相关的结果和洞察。

除了通用的 Embdding 模型,像 Voyage AI 这样的公司创建了专门化的模型,以提高特定垂直领域的数据质量,如法律和金融,而 Twelve Labs 专注于视频检索 Embedding 模型。Reranker 是经过专门训练的模型,它们比较查询和一小组候选文档之间的语义相关性,可以进一步提高初始基于向量的检索阶段的结果准确性。Cohere、Voyage AI 和 Jina AI 等公司提供 Reranker 以提高检索准确性。

示例:Voyage AI

Voyage AI 是一个由斯坦福大学和麻省理工学院的 AI 研究人员组成的团队,专注于检索模型,包括 Embedding 模型和 Reranker。他们领先的模型 voyage-2 通过文本对比学习训练,提供了比 OpenAI 的文本 Embedding 模型等行业标准更高的检索准确性、扩展的上下文窗口和高效的推理。Voyage AI 提供通用和特定领域模型,为金融、多语言环境、法律工作和代码检索等领域优化。Voyage AI 还提供 Reranker,以增强检索结果。

5. LLM 推理和托管

随着对 LLM 应用的需求不断增长,高效的托管和推理解决方案变得至关重要。像 vLLM、Lepton AI、Fireworks AI 和 Octo AI 这样的项目为部署和扩展 LLM 提供了强大的基础设施。它们结合了各种推理优化,确保模型在服务期间高效运行。

示例:vLLM

vLLM 是一个用于优化 LLM 推理和服务的开源库。它使用 PagedAttention 机制有效管理内存,并支持对传入请求进行持续批处理。该库通过 CUDA/HIP 图快速执行模型,并包括各种量化技术,如 GPTQ、AWQ、SqueezeLLM 和 FP8 KV 缓存。vLLM 与流行的 HuggingFace 模型无缝集成,提供高吞吐服务,并带有并行采样和 beam search 等解码算法。它支持分布式推理的张量(tensor)和 Pipeline 并行、流式输出,并包括一个与 OpenAI 兼容的 API 服务器。此外,它还提供前缀缓存和多 LoRA 支持等实验性功能,并针对 NVIDIA 和 AMD GPU 进行了优化。

6. 代理和内存管理

GenAI 生态系统在内存管理和基于代理的 AI 系统方面正在取得进展,解决方案如 MemGPT、Mem0、Camel、AutoGPT 和 CrewAI 等。这些创新使 AI 应用能够记住对话历史、利用工具和相互交互,提供更个性化和上下文感知的交互,显著增强用户体验。

示例:MemGPT

MemGPT 是一个开源项目,它旨在简化 Stateful LLM 代理的开发与部署。该项目借鉴了传统操作系统中的内存层次和控制流程,使得 MemGPT 能够自动且智能地管理不同层级的存储,为 LLM 在有限的上下文窗口中提供更广阔的上下文视野。MemGPT 通过 RAG 技术加强了与外部数据源的连接,并支持自定义工具或功能的设定与调用,从而简化了开发高级有状态 LLM 代理的过程。

7. 外部工具和代理 API

外部工具和 API 对于扩展代理的能力至关重要。像 Bing API、Google Search API、Twilio 等服务,以及 OpenAPI 等框架,促进了代理与工具的交互,使应用能够访问和利用外部数据、服务和功能。

示例:Bing API

Bing 搜索 API 套件,包括网页和图像搜索等服务,提供安全、无广告、并具有位置感知的搜索结果。这使得代理能够通过单一的 API 调用访问来自数十亿的网络文档、图像、视频和新闻信息。

8. 前端和搜索/聊天用户界面体验

创建与 AI 应用交互的直观界面对于用户至关重要。像 Streamlit、Vercel 和 Gradio 这样的框架通过提供用户友好的 UI 体验,简化了 AI 应用的开发流程。开发者可以利用这些框架来定制界面,以满足 AI 交互的特定需求,比如为 RAG 应用设计聊天界面,以及为视觉搜索添加图片选择、编辑和浏览等功能。

示例:Streamlit

Streamlit 是一个开源的 Python 框架,专为数据科学家和 AI/ML 工程师设计,它允许用户以极少的代码快速构建动态且交互式的数据应用。该框架采用直观的语法,省去了对 CSS、HTML 或 JavaScript 的依赖,让用户能够迅速开发并部署应用。Streamlit 与 Pandas、NumPy 等流行数据科学库无缝集成,并支持构建 AI 驱动应用所需的后端组件。

9. 知识图谱(KG)

知识图谱通过提供结构化数据,增强了 RAG 性能,从而提升了信息检索的精确度和相关性,使得 AI 生成的响应更加准确且富有上下文感知。如 WhyHow、GraphRAG 和 HippoRAG 等项目将知识图谱与 RAG 技术相结合,以此提升检索结果和生成答案的质量。

示例:WhyHow

WhyHow 是一个平台,旨在帮助开发者更高效地组织和检索非结构化数据,专注于利用知识图谱来增强复杂的 RAG 系统。该平台提供了灵活的数据 Ingestion 工具,支持创建多用户协作的图谱,以促进开发者与非技术领域的专家之间的协作。它还允许进行细致的 Schema 操作,以便将图谱定制化以适应特定的用例。WhyHow 侧重于小型、模块化的图谱和向量块,以此提高信息检索的精确性。该平台兼容向量数据库,并提供了多种格式的导出功能。此外,WhyHow 还提供了一个开源的基于规则(rule-based)的检索包,通过高级过滤技术,助力创建更精确的检索流程。

10. 开箱即用的低代码 RAG 服务

对于 RAG 技术,市场对于即插即用和低代码解决方案的需求日益增长。如 AnythingLLM、PrivateGPT、Dify、Shakudo、Vectara、Epsilla 和 FlowiseAI 等项目,提供了用户友好的解决方案和灵活的定制选项,使得企业能够在不具备数据 Pipeline 和搜索基础设施开发专长的情况下,迅速部署 AI 应用。

示例:AnythingLLM

AnythingLLM 是一个多合一的 AI 应用程序,它提供了交互式 RAG 聊天机器人和 AI 代理,且无需任何编码工作。这一平台专为那些希望快速实现私有化、零配置解决方案或需要定制 AI 应用但又缺乏编码知识的企业设计。AnythingLLM 支持各类商业和开源的 LLM 以及向量数据库。它通过本地和远程部署方式,为用户提供了全面的技术栈。其核心功能包括:用于高效文档管理的工作区、具备细致权限控制的多用户支持、能够进行网页浏览和代码执行的代理、个性化的嵌入式聊天窗口,以及对多种文档格式的广泛支持。此外,AnythingLLM 还为开发者提供了强大的 API,以便进行个性化集成。

11. 图像和视频生成

GenAI 生态系统不仅仅局限于文本应用的范畴;它同样在图像与视频生成领域取得了显著的突破。

创意生成和数字孪生

如 Midjourney、Stability AI、Runway、Pika 和 HeyGen 等工具正借助 AI 驱动的解决方案,引领创意产业的革命,它们能够生成精美绝伦的图像和视频。这些平台为艺术家、营销专家和开发者们提供了强大的能力,使他们能够创作出引人入胜的视觉作品,不断拓展创意和创新的疆域。

示例:Midjourney

Midjourney 是由位于旧金山的独立研究实验室 Midjourney, Inc. 开发的一款先进的生成式 AI 程序和服务。它能够根据自然语言的描述或 Prompt,创造出高质量的图像,这与 OpenAI 的 DALL-E 和 Stability AI 的 Stable Diffusion 有异曲同工之妙。用户可以通过 Discord 机器人与 Midjourney 进行互动,只需输入 /imagine 命令和相应的 Prompt,即可生成四幅图像,并选择进行放大。这一工具不仅展示了 GenAI 生态系统的进步,而且通过扩展数字内容创造的可能性,对创意产业产生了深远的影响。

总结

GenAI 生态系统是一个充满活力且日新月异的领域,它的显著特征是多样性和复杂性。从基础技术如LLM 和向量数据库,到数据采集、工作流程编排和图像生成的创新,GenAI 正在不断拓宽 AI 的疆界。随着不断的探索和创新,GenAI 在多个行业的变革潜力显得无比巨大。在 Zilliz,作为 Milvus 向量数据库的开发者,我们与 GenAI 领域的众多合作伙伴携手共进。我们热切期待见证并积极参与 GenAI 的持续演进,并对未来它所能开启的无限可能充满期待。

作者介绍

1e4242a8a2bdf784c77eeff2acff8581.jpeg

陈将

Zilliz 生态和 AI 平台负责人

推荐阅读

96fd406fffbd4983fd14aef7791ec67a.png

57c98d45db1f0a9d1455980b537798a0.png

9677fe0d08719f6c910c1dc132521459.png

4445dd51bc94015057b3c9b757081bab.png

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

个人应用接入使用阿里云盘和百度网盘

一、阿里云盘 官方文档接入流程 语雀流程概述服务端 API 调用流程如下图所示1. 创建账...https://www.yuque.com/aliyundrive/zpfszx/btw0tw 1. 接入授权 1.1. App Key、App Secret和用户授权验证 在通过网盘开发者认证之后,创建个人应用会生成APP ID&#xff…

医院信息化与智能化系统(15)

医院信息化与智能化系统(15) 这里只描述对应过程,和可能遇到的问题及解决办法以及对应的参考链接,并不会直接每一步详细配置 如果你想通过文字描述或代码画流程图,可以试试PlantUML,告诉GPT你的文件结构,让他给你对应…

从比亚迪超越特斯拉,看颠覆全球市场的中国力量

这是比亚迪CEO王传福早年在日本调研电池供应链时发出的感慨。 那时的人们谁也没有想到,比亚迪会从深圳的一家普通的电池供应商开始做起,拼出一条属于自己的“血路”,摇身一变成为名副其实的“电车之王”,并让全球车企仰望。 比亚…

3d 添加辅助坐标器和轨道控制器

1.添加辅助坐标器 使用AxesHelper类来添加坐标轴辅助器,辅助器简单模拟3个坐标轴的对象。红色代表X轴,绿色代表Y轴,蓝色代表Z轴。 // 创建坐标轴辅助器,5是坐标轴的长度 const axesHelper new THREE.AxesHelper(5); // 将坐标轴…

「C/C++」C++标准库之#include<fstream>文件流

✨博客主页何曾参静谧的博客📌文章专栏「C/C」C/C程序设计📚全部专栏「VS」Visual Studio「C/C」C/C程序设计「UG/NX」BlockUI集合「Win」Windows程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「PK」Parasoli…

计算机后台服务-更新下载,重启————未来之窗行业应用跨平台架构

一在教育中应用 1. 提高效率:能够快速收集大量学生的卷子,节省了传统人工收集和整理的时间。 2. 准确性:减少了人工收卷过程中可能出现的错漏和混乱,确保每份卷子都能准确无误地被收集和记录。 3. 即时性:可以实时接收…

奥数与C++小学四年级(第十八题 小球重量)

参考程序代码&#xff1a; #include <iostream> #include <vector>int main() {// 小球的重量std::vector<int> weights {1, 2, 3, 4, 5};// 用来存储可能的结果int a, b, c, d, e, x;// 穷举所有可能的 a, b, c, d, e 的组合for (int i 0; i < weight…

Android启动流程_Init阶段

前言 本文将会介绍 Android 启动流程&#xff0c;将基于 Android 10 代码逻辑介绍原生启动过程。 bootloader 上电 -> 加载 recovery 镜像或者 boot 镜像 -> linux kernel 启动 -> 加载 init 进程 -> 加载 zygote 进程 -> systemserver 进程 -> 系统启动 …

线上3D看车有何优势?

随着Web3D展示技术的不断革新&#xff0c;线上3D看车正逐步成为消费者购车的新选择。这种创新的展示方式不仅提供了更真实、更有趣的互动体验&#xff0c;还带来了诸多优势&#xff0c;让购车过程变得更加便捷、高效。 一、更真实的展示效果 相较于传统的图片和文字描述&…

OpenCv —— 为opencv支持中文,将freetype2库编译进opencv中(附详细编译流程、测试代码)

效果(下面摄像头视频过于老旧 视频效果不好;但文字可添加。) 背景 由于OpenCV本身不支持中文显示,开发者需要借助其他库来实现这一功能。 OpenCV的contrib版本中包含了freetype库,可以通过编译opencv-contrib模块来支持中文显示。这种方法需要在编译OpenCV时特别配置,确保…

打印直角三角形

今天给大家分享一个打印直角三角形的方法 其实直角三角形在终端中的显示是又空格和星号组成的 只要将其看成一个矩形&#xff0c;并找出两者规律便可实现&#xff08;与打印菱形有一定相似的理解&#xff09;&#xff0c;下面我们来分享一个更简便的方法 它的规律是行和列之和…

python-函数前一行加@xxxx的含义参数的约束条件检查装饰器

在sklearn中看到红框中的函数&#xff0c;于是好奇是什么东西&#xff0c;查到python-函数前一行加xxxx的含义 于是找到函数定义&#xff1a;def validate_params(parameter_constraints, *, prefer_skip_nested_validation): 但是&#xff0c;里面没有定义func参数 于是再看…

科技资讯|谷歌Play应用商店有望支持 XR 头显,AR / VR设备有望得到发展

据 Android Authority 报道&#xff0c;谷歌似乎正在为其 Play 商店增加对 XR 头显的支持。该媒体在 Play 商店的代码中发现了相关的线索&#xff0c;包括一个代表头显的小图标以及对“XR 头显”的提及。 谷歌也可能改变了此前拒绝将 Play 商店引入 Meta Quest 头显的决定。今…

百度SEO分析实用指南 提升网站搜索排名的有效策略

内容概要 在数字化时代&#xff0c;搜索引擎优化&#xff08;SEO&#xff09;已经成为提升网站曝光度的关键工具。本指南将带您了解SEO的基本知识&#xff0c;帮助您在复杂的网络环境中立足。我们将从关键词优化开始&#xff0c;重点讲解如何选择合适的关键词来提高搜索引擎排…

基于vue框架的的考研网上辅导系统ao9z7(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能&#xff1a;学生,公告信息,课程分类,考研资料,考研视频,课程信息,院校建议,教师 开题报告内容 基于Vue框架的考研网上辅导系统开题报告 一、研究背景与意义 随着高等教育的普及和就业竞争的加剧&#xff0c;考研已成为众多大学生提升学历、增强就…

flutter 用PUT的方式传输文件不带分隔符

最近有个需求&#xff0c;需要在flutter中用put的方式传输固件到设备上&#xff0c;本来以为用dio或者http这两个框架就能轻松完成的&#xff0c;结果发现&#xff0c;这两个框架传输过去的文件都会修改了源文件&#xff0c;把请求头的分隔符也带进去了&#xff0c;设备无法识别…

Javaweb 实验4 xml

我发现了有些人喜欢静静看博客不聊天呐&#xff0c; 但是ta会点赞。 这样的人呢帅气低调有内涵&#xff0c; 美丽大方很优雅。 说的就是你&#xff0c; 不用再怀疑哦 实验四 XML 目的&#xff1a; 安装和使用XML的开发环境认识XML的不同类型掌握XML文档的基本语法了解D…

基于SSM+VUE历史车轮网站JAVA|VUE|Springboot计算机毕业设计源代码+数据库+LW文档+开题报告+答辩稿+部署教+代码讲解

源代码数据库LW文档&#xff08;1万字以上&#xff09;开题报告答辩稿 部署教程代码讲解代码时间修改教程 一、开发工具、运行环境、开发技术 开发工具 1、操作系统&#xff1a;Window操作系统 2、开发工具&#xff1a;IntelliJ IDEA或者Eclipse 3、数据库存储&#xff1a…

【果实种子识别】Python+深度学习+人工智能+CNN卷积神经网络算法+TensorFlow+算法模型训练

一、介绍 果实种子识别系统&#xff0c;使用Python语言进行开发&#xff0c;通过TensorFlow搭建卷积神经网络算法模型&#xff0c;对10种坚果果实&#xff08;‘杏仁’, ‘巴西坚果’, ‘腰果’, ‘椰子’, ‘榛子’, ‘夏威夷果’, ‘山核桃’, ‘松子’, ‘开心果’, ‘核桃…

云服务器哪家好?(跨境电商云服务器推荐)

跨境电商的发展势头愈发迅猛&#xff0c;对云服务器的需求也在与日俱增。挑选一个合适的云服务器&#xff0c;能够为跨境电商提供稳定的运行环境&#xff0c;确保网站具备快速响应能力&#xff0c;提升用户体验&#xff0c;进而增强商业竞争力。 以下是一些比较好的云服务器提供…