您当前的位置:首页 > 电脑百科 > 程序开发 > 框架

一文读懂常用的 “生成式 AI 框架”

时间:2023-12-11 14:01:59  来源:微信公众号  作者:架构驿站

Hello folks,我是 Luga,今天我们来聊一下人工智能(AI)生态领域相关的技术 - Gen AI ,即“生成式 AI” 技术。

随着 AI 技术的不断发展,Gen AI 的力量超越了单纯的技术奇迹,更是一种具有变革性的动态力量,深刻地塑造了人类与机器互动和创造内容的方式。我们可以想象一下,仅凭一个简单的提示,我们就能够产生丰富多彩的故事、惊艳的图像,甚至是完整而细致的蓝图。这种能力并非来自于魔法,尽管它给人带来的震撼和惊叹有时让我们误以为如此。实际上,这是人工智能的进一步演进——它以前所未有的方式改变着我们的创造力和想象力。

通过 Gen AI ,我们能够突破人类创作的限制,创造出超越我们自身想象力的作品。这种技术赋予了我们一种新的能力,让我们能够以更快、更高效的方式创造内容。不再需要漫长的思考和努力,我们可以轻松地借助人工智能的力量,从一个简短的提示中迸发出创意的火花。

一、什么是 Gen(生成式) AI 技术 ?

Gen AI (生成式人工智能)技术是一类人工智能技术,旨在使计算机系统能够生成新的、原创的内容,如图像、音频、文本等。Gen AI 技术通过学习和理解现有的数据集,然后使用这些学习到的知识生成新的内容,模拟人类的创造力和想象力。

Gen AI 技术使用了深度学习和神经网络等技术来实现。其中,生成对抗网络(GANs)是最常见和强大的生成式人工智能模型之一。GANs 由生成器和判别器两个互相竞争的神经网络组成。生成器负责生成新的内容,而判别器负责判断生成的内容是真实还是伪造的。通过不断的迭代训练,生成器和判别器之间形成了一种博弈关系,最终生成器可以生成与真实数据相似的内容。

Gen AI 在多个领域有广泛的应用,包括图像生成、音乐生成、文本生成、语音合成等,为创造性工作提供了新的工具和可能性,也在艺术、设计、娱乐等领域展示了巨大的潜力。同时,Gen AI 技术也面临着一些挑战,如,生成的内容的质量和可控性等方面的问题。不过,随着技术的不断发展和改进,Gen AI 将继续在各个领域发挥重要作用。

二、什么是 Gen(生成式)AI 框架 ?

Gen AI 框架是现代 AI 技术中的重要支柱,为机器创造多样化且与上下文相关的内容提供了基础设施。这些框架扮演着指导性的角色,为 LLM(语言模型)、GAN(生成对抗网络)、VAE(变分自编码器)等 AI 模型提供指引,使它们能够理解庞大数据集中的模式和规律。通过利用这些框架,组织可以充分利用无监督学习和半监督学习的方法,对人工智能系统进行训练。

这种训练基础为各种任务打下了坚实的基础,从自然语言处理(NLP)到图像生成,机器能够理解并解释各种提示和输入。在 NLP 领域,Gen AI 框架能够帮助机器理解自然语言的含义、语法结构和上下文关系。这使得机器能够生成准确、连贯且有逻辑的文本,从而实现更高级的自然语言处理任务,如文本摘要、机器翻译和对话系统。

在图像生成方面,Gen AI 框架充当了关键的角色,其能够利用海量的图像数据集,学习并捕捉到图像的特征、纹理和风格。这使得机器能够生成逼真、多样化的图像,甚至能够模仿不同的艺术风格和视觉效果。这种能力为艺术创作、设计和图像处理等领域提供了巨大的潜力,让机器能够成为创意的合作伙伴和工具。

Gen AI 框架的强大之处在于其能够利用无监督和半监督学习的方法。即意味着机器可以从大量未标记的数据中进行学习,而无需依赖人工标注的数据集。基于此种学习方式,使得机器能够更好地理解数据的内在结构和关联性,从而更好地生成与上下文相关的内容。特别是在数据稀缺或标记困难的情况下具有重要意义。

然而,Gen AI 框架也面临一些挑战和限制。例如,生成的内容可能存在偏差、不准确性或缺乏创造性。此外,对于生成的结果,我们需要进行严格的监控和审核,以确保符合伦理标准和社会价值观。因此,在应用 Gen AI 框架时,我们需要权衡技术的潜力与风险,并制定适当的规范和指导方针。

三、常见的 Gen(生成式)AI 框架解析

No 1: LangChain

LangChain 是 Harrison Chase 提出的一项创新性软件开发框架,专为 Gen AI 专业人士量身定制。该框架旨在重塑日常任务和项目的模式,并为开发人员提供强大的工具和资源。LangChain 的主要目标是简化应用程序的创建流程,并通过充分利用大型语言模型(LLM)来提升人工智能系统的能力。

LangChain 基于开源精神,使用 MIT 许可证,这意味着它是一个开放的框架,任何人都可以自由地使用以及进行修改。这种开源的特性使 LangChain 能够吸引更多的人才和贡献者,推动框架的不断发展和改进。

在 LangChain 中,引入了一种标准化接口,其中包括代理、内存和链。这些接口的引入旨在提供一种统一的方式来处理不同组件之间的交互和通信。代理模块使得系统能够代表用户执行特定任务,内存模块用于存储和访问数据,而链模块则用于管理数据流和处理过程。

通过 LangChain,开发人员可以更高效地构建应用程序,并且能够充分利用大型语言模型的强大能力。这些大型语言模型具有深厚的语义理解和生成能力,能够处理各种自然语言任务,如文本生成、对话系统和智能助手。LangChain 的引入使得开发人员能够更轻松地集成和使用这些模型,从而提升 AI 系统的性能和表现。

 

一文读懂常用的 “生成式 AI 框架”

LangChain 的代理占据了中心舞台,使 LLM 能够做出明智的决策,为创建动态聊天机器人、游戏和一系列应用程序铺平了道路。事实证明,内存功能非常宝贵,可以在 LLM 调用之间保持状态。此功能成为聊天机器人等应用程序的基石,可维持连贯的对话或存储先前查询的结果。链超越了单一的 LLM 调用,促进了序列的编排——这对于制作摘要工具、问答系统和需要多方面交互的各种应用程序来说是一个福音。

LangChain 在数据增强生成方面的实力增加了另一层多功能性,使 Gen AI 专业人员能够根据外部数据生成文本。从创建引人注目的新闻文章到精心制作产品描述,该框架增强了内容生成功能。

LangChain 展示了其在各种应用中的能力,包括用于客户服务和教育的聊天机器人、用于娱乐和研究的游戏、以及用于商业和教育的摘要工具和问答系统。它涵盖了内容生成、翻译、代码生成、数据分析和医疗诊断等各种应用。在 Gen AI 专业人士的工具包中,LangChain 在不断发展的生成人工智能领域推动创新和效率。

 

一文读懂常用的 “生成式 AI 框架”

Github地址:https://github.com/langchain-ai/langchain

No 2 : LlamaIndex

除了 LangChain 之外,LlamaIndex 也是 Gen AI 专业人士工具库中不可或缺的开源框架。作为一种创新的库,它为自定义数据和像 GPT-4 这样的 LLM 提供了无缝的桥梁,从而显著增强了 Gen AI 专业人士的日常工作和项目。LlamaIndex 在与数据和 LLM 的复杂工作流程上进行简化,为数据摄入、结构化、检索和集成提供了不可或缺的支持。

 

一文读懂常用的 “生成式 AI 框架”

首先,LlamaIndex 擅长从各种来源(如 API、数据库、PDF 或外部应用程序)"摄取"数据,充当勤勉的数据收集者。然后,它进入"结构化"阶段,以一种 LLMs 轻松理解的方式组织数据。这些经过组织的数据成为"检索"阶段的基础,LlamaIndex 在需要时帮助找到和获取正确的数据。最后,它简化了"集成"过程,允许将数据与各种应用程序框架无缝合并。

从框架设计角度来看,LlamaIndex 由三个主要组件组成:用于收集的“数据连接器”、用于组织的“数据索引”以及作为翻译器的“引擎”(LLMs)。这种设计模式赋予了 GenAI 专业人员在增强生成检索(RAG)方面的能力,将 LLM 的能力与定制数据相结合。模块化构造,如查询引擎、聊天引擎和代理,将交互提升到对话级别,实现动态决策。无论是创建问答系统、聊天机器人还是智能代理,LlamaIndex 都是 Gen AI 专业人员的不可或缺的盟友,为 RAG 的冒险提供了坚实的基础,并通过 LLMs 和定制数据为应用程序提供了强大的动力。

 

一文读懂常用的 “生成式 AI 框架”

GitHub地址:https://github.com/run-llama

No 3 : MeshTensorflow

MeshTensorFlow 作为另一种引人注目的框架,为 Gen AI 专业人士提供了解决分布式深度神经网络(DNN)训练策略中固有挑战的解决方案。传统的数据并行方法在批次分割中存在一些限制,例如,对非常大模型的内存限制、高延迟和小批量大小的低效性等。而 MeshTensorFlow 通过引入一种新的范式转变,提供了一种语言来指定更广泛的分布式张量计算类别,从而超越了数据并行的限制。

 

一文读懂常用的 “生成式 AI 框架”

MeshTensorFlow 的出现为 Gen AI 专业人士带来了重要的突破,通过引入一种新的方式来处理分布式张量计算,解决了传统数据并行方法的局限性。传统方法中,数据并行面临着诸多挑战,包括内存限制、延迟和小批量大小的低效性。然而,MeshTensorFlow 通过提供一种更广泛的分布式张量计算类别的语言,改变了这种局面。

使用 MeshTensorFlow,Gen AI 专业人士可以更高效地处理分布式深度神经网络的训练。它不仅克服了内存限制,支持处理非常大的模型。同时,通过优化延迟和小批量大小,它提高了训练过程的效率。这种新的范式转变为 Gen AI 专业人士提供了更多的灵活性和性能优势。

 

一文读懂常用的 “生成式 AI 框架”

GitHub地址:https://github.com/tensorflow/mesh

No 4 : Jarvis

来自 Microsoft 的 JARVIS 平台是一项领先的人工智能创新,为 GenAI 专业人士提供了前所未有的工具框架,以便增强大家的项目开发。JARVIS 与 ChatGPT 和 t5-base 等人工智能模型合作,实现了统一而高级的结果。作为一个任务控制器,JARVIS 优化了工作流程,充分发挥了各种开源大型语言模型(LLMs)在图像、视频、音频等方面的潜力。

 

一文读懂常用的 “生成式 AI 框架”

JARVIS 平台的出现对于 Gen AI 专业人士来说具有重要意义,为我们提供了无与伦比的工具,帮助他们更好地完成各种任务。通过与 ChatGPT 和 t5-base 等人工智能模型的合作,JARVIS 能够提供统一且高质量的结果,从而提升了工作效率和质量。

作为任务控制器,JARVIS 通过优化工作流程来最大限度地发挥各种开源大型语言模型在图像、视频、音频等领域的潜力。它能够有效地管理和整合这些模型,使得 Gen AI 专业人士能够更好地利用它们的能力和特性。这种整合和优化的方法使得 JARVIS 平台成为一个强大而灵活的工具,为 Gen AI 专业人士提供了更多的创新和应用的机会。

JARVIS 平台是一个整合了多模态人工智能的创新工具,将 GPT-4 的能力扩展到文本和图像处理领域。通过连接到互联网,可以访问包括 t5-base、stable-diffusion 1.5、Facebook 的 bart-large-cnn 以及英特尔在内的 dpt-large 等多达 20 个强大的模型网络。JARVIS 使用户能够提交复杂的多任务查询,指导不同的模型无缝协作,执行复杂的任务。例如,生成外星入侵的图像并撰写相关诗歌成为一种流畅的过程,其中 ChatGPT 规划任务、选择适当的模型并执行,展示了 JARVIS 高效和协作的潜力。

基于 JARVIS 的开创性能力,为 Gen AI 专业人士提供了独特的工具,彻底改变了人们与 AI 的互动方式。通过整合多个模型和多模态处理,JARVIS 扩展了 GPT-4 的能力,使其可以同时处理文本和图像,从而使得我们可以在一个平台上进行复杂的任务,并指导不同的模型进行协作,提供更高水平的结果。

然而,需要注意的是,JARVIS 的资源需求也必须加以考虑。通常而言,往往至少需要 16GB 的 VRAM 和约 300GB 的存储空间来存储各种模型。由于资源要求较高,JARVIS 无法在普通个人电脑上本地运行。尽管存在这些限制,JARVIS 标志着 AI 发展的重大飞跃,彻底改变了 AI 能力和协作的格局,为 Gen AI 专业人士提供了重塑与人工智能技术互动方式的潜力,成为人工智能演进中的重要工具。

 

一文读懂常用的 “生成式 AI 框架”

GitHub地址:https://github.com/microsoft/JARVIS

No 5 : Amazon Bedrock

Amazon Bedrock 是一项变革性创新,专为 Gen AI 专业人士的日常工作和项目提供了一个复杂的工具包框架,旨在简化决策过程。该框架具备开创性的模型评估功能,开发人员可以使用它来评估、比较和选择最适合特定需求的基础模型(FMs)。目前,该功能正在预览阶段,并引入了包括自动和人工基准选项在内的评估工具,为用户提供了更多选择和灵活性。

Amazon Bedrock 的出现对 Gen AI 专业人士具有重要意义,为他们提供了一个强大的工具包,帮助简化决策过程,并在项目中提供支持。通过其先进的模型评估功能,开发人员能够对不同的基础模型进行评估和比较,从而选择最适合其特定需求的模型。这种功能的引入在预览阶段,同时提供了自动和人工基准选项,为用户提供了多样化的评估工具。

 

一文读懂常用的 “生成式 AI 框架”

模型评估在每个发展阶段都扮演着至关重要的角色,而 Amazon Bedrock 的模型评估功能将这一过程提升到了新的高度。Gen AI 专业人士现在可以在该平台的游乐场环境中尝试不同的模型,从而促进迭代过程的效率。自动模型评估的引入简化了将自定义或策划数据集与预定义指标相结合的复杂性,消除了设计和执行自定义模型评估基准的繁琐过程。这对于内容摘要、问答、文本分类和生成等任务非常有利。

Amazon Bedrock 为主观指标(如友好度和风格)提供了人工评估工作流程,为开发人员提供了定义自定义指标并利用其数据集的直观方式。用户可以选择内部团队或 AWS 管理团队进行人工评估,从而增加了灵活性。此外,该平台在预览阶段的透明定价也增强了其吸引力。评估的模型推理费用仅限于模型推理本身,并不收取额外的人工或自动评估费用。Gen AI 专业人士发现 Amazon Bedrock 是模型选择中的强大盟友,标志着决策过程的重大飞跃。

GitHub地址:https://github.com/aws/amazon-bedrock

综上所述,上述常见的 Gen AI 框架清晰地展示了 Gen AI 领域的迅速发展及技术演变。我们正处于一个多变的 Gen AI 景观中,而这些框架成为了创新的引领者。技术和创造力在这些框架中融合,推动我们向未来迈进。

Reference :https://www.analyticsvidhya.com/



Tags:AI 框架   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
一文读懂常用的 “生成式 AI 框架”
Hello folks,我是 Luga,今天我们来聊一下人工智能(AI)生态领域相关的技术 - Gen AI ,即“生成式 AI” 技术。随着 AI 技术的不断发展,Gen AI 的力量超越了单纯的技术奇迹,更是一...【详细内容】
2023-12-11  Search: AI 框架  点击:(112)  评论:(0)  加入收藏
贾扬清开源 AI 框架 Caffe
【编者按】在开源与人工智能的灿烂星河里,贾扬清的名字都格外地耀眼。因为导师 Trevor Darrell 教授的一句“你是想多花时间写一篇大家估计不是很在意的毕业论文,还是写一个将...【详细内容】
2023-04-27  Search: AI 框架  点击:(287)  评论:(0)  加入收藏
▌简易百科推荐
Web Components实践:如何搭建一个框架无关的AI组件库
一、让人又爱又恨的Web ComponentsWeb Components是一种用于构建可重用的Web元素的技术。它允许开发者创建自定义的HTML元素,这些元素可以在不同的Web应用程序中重复使用,并且...【详细内容】
2024-04-03  京东云开发者    Tags:Web Components   点击:(7)  评论:(0)  加入收藏
Kubernetes 集群 CPU 使用率只有 13% :这下大家该知道如何省钱了
作者 | THE STACK译者 | 刘雅梦策划 | Tina根据 CAST AI 对 4000 个 Kubernetes 集群的分析,Kubernetes 集群通常只使用 13% 的 CPU 和平均 20% 的内存,这表明存在严重的过度...【详细内容】
2024-03-08  InfoQ    Tags:Kubernetes   点击:(12)  评论:(0)  加入收藏
Spring Security:保障应用安全的利器
SpringSecurity作为一个功能强大的安全框架,为Java应用程序提供了全面的安全保障,包括认证、授权、防护和集成等方面。本文将介绍SpringSecurity在这些方面的特性和优势,以及它...【详细内容】
2024-02-27  风舞凋零叶    Tags:Spring Security   点击:(52)  评论:(0)  加入收藏
五大跨平台桌面应用开发框架:Electron、Tauri、Flutter等
一、什么是跨平台桌面应用开发框架跨平台桌面应用开发框架是一种工具或框架,它允许开发者使用一种统一的代码库或语言来创建能够在多个操作系统上运行的桌面应用程序。传统上...【详细内容】
2024-02-26  贝格前端工场    Tags:框架   点击:(46)  评论:(0)  加入收藏
Spring Security权限控制框架使用指南
在常用的后台管理系统中,通常都会有访问权限控制的需求,用于限制不同人员对于接口的访问能力,如果用户不具备指定的权限,则不能访问某些接口。本文将用 waynboot-mall 项目举例...【详细内容】
2024-02-19  程序员wayn  微信公众号  Tags:Spring   点击:(39)  评论:(0)  加入收藏
开发者的Kubernetes懒人指南
你可以将本文作为开发者快速了解 Kubernetes 的指南。从基础知识到更高级的主题,如 Helm Chart,以及所有这些如何影响你作为开发者。译自Kubernetes for Lazy Developers。作...【详细内容】
2024-02-01  云云众生s  微信公众号  Tags:Kubernetes   点击:(50)  评论:(0)  加入收藏
链世界:一种简单而有效的人类行为Agent模型强化学习框架
强化学习是一种机器学习的方法,它通过让智能体(Agent)与环境交互,从而学习如何选择最优的行动来最大化累积的奖励。强化学习在许多领域都有广泛的应用,例如游戏、机器人、自动驾...【详细内容】
2024-01-30  大噬元兽  微信公众号  Tags:框架   点击:(67)  评论:(0)  加入收藏
Spring实现Kafka重试Topic,真的太香了
概述Kafka的强大功能之一是每个分区都有一个Consumer的偏移值。该偏移值是消费者将读取的下一条消息的值。可以自动或手动增加该值。如果我们由于错误而无法处理消息并想重...【详细内容】
2024-01-26  HELLO程序员  微信公众号  Tags:Spring   点击:(84)  评论:(0)  加入收藏
SpringBoot如何实现缓存预热?
缓存预热是指在 Spring Boot 项目启动时,预先将数据加载到缓存系统(如 Redis)中的一种机制。那么问题来了,在 Spring Boot 项目启动之后,在什么时候?在哪里可以将数据加载到缓存系...【详细内容】
2024-01-19   Java中文社群  微信公众号  Tags:SpringBoot   点击:(86)  评论:(0)  加入收藏
花 15 分钟把 Express.js 搞明白,全栈没有那么难
Express 是老牌的 Node.js 框架,以简单和轻量著称,几行代码就可以启动一个 HTTP 服务器。市面上主流的 Node.js 框架,如 Egg.js、Nest.js 等都与 Express 息息相关。Express 框...【详细内容】
2024-01-16  程序员成功  微信公众号  Tags:Express.js   点击:(85)  评论:(0)  加入收藏
站内最新
站内热门
站内头条