引言
2022年ChatGPT的发布堪称IT界的分水岭时刻 。一夜之间,一切似乎都发生了改变——并非源于全新概念,而是模型参数的指数级增长与训练数据集的爆炸式扩张。 模型参数——即训练过程中学习到的权重与偏置 ——常被用作衡量模型复杂度与能力的指标。但架构创新与训练质量对模型实际表现同样至关重要。 参数规模与数据量的双重扩张,将人工智能推向了前所未有的新领域。
在物理学领域,相变描述的是微小渐变突然引发剧烈行为转变的时刻——如同水凝结成冰。LLMs的崛起遵循着相同模式。 自2017年Transformer架构问世以来, 人工智能持续稳步演进,但模型规模、计算能力与训练数据量的飞跃式增长使其跨越了临界点。 这些模型开始展现类人文本生成与处理能力,颠覆整个行业格局,重塑我们对人工智能潜力的认知。 图I-1所示图表揭示了这些参数的增长轨迹,以及过去几年推动人工智能进化的数据源扩张。
除了数据之外,计算能力的进步——特别是通过CUDA等框架将GPU广泛应用于通用计算领域,实现了人工智能工作负载的大规模并行处理——也是促成这一变革的关键因素。 海量数据(基本上整个互联网都可用于训练)与更快的计算能力相结合,形成了完美风暴,推动生成式人工智能模型取得快速进步。
图I-1. 参数指数级 增长与数据扩张引发相变,模型能力突显,但数据增长已趋于平稳
随着这些进步而来的是新的挑战, 尤其体现在管理处理如此大规模工作负载所需的基础设施方面。 例如OpenAI在《Kubernetes扩展至7500节点》报告中详述,Kubernetes已成为协调GPT-3等模型海量计算需求的关键工具。其集群自动扩展、动态基础设施调整及成本管控能力,成为高效部署大型模型的核心要素。
尽管多数用户无需处理OpenAI级别的集群规模,但其建立的核心原则适用于任何Kubernetes环境——无论是在小型集群上运行LLMs,还是实现"互联网规模"部署。
作为Red Hat OpenShift AI的Kubernetes专家,我们(作者)惯于支持 传统工作负载——Web应用、API服务和数据库——但运行LLMs? 这完全是另一回事。 初次接触这些计算怪兽时,我们既兴奋又无所适从。这些模型如同"半透明"的黑匣子:我们知道它们体量庞大,需要GPU和持久卷空间,还需健康检查,但除此之外,其内部运作机制完全不透明。
我们至今仍清晰记得首次尝试的情景。 那简直是一场灾难。 模型初始化耗时漫长,启用GPU支持如同坠入兔子洞般复杂,CrashLoopBackOff错误频发,响应速度慢得令人尴尬。 显然我们必须重新思考Kubernetes处理这类工作负载的方式。
经过反复调试,我们终于让系统运转起来。通过精细调整资源请求、优化持久卷配置,并引入智能调度策略来最大化GPU效率,模型终于开始正常运行。 这段陡峭的学习曲线,凸显了Kubernetes传统优势与新兴AI工作负载需求之间的鸿沟。
虽然并非所有人都会遭遇完全相同的挑战,但我们的经验教训适用于任何Kubernetes环境。 随着Kubernetes社区持续弥合剩余差距,致力于将AI工作负载(尤其是LLMs)打造为头等公民,我们诚邀您加入这场变革之旅。 本书将深入探讨在Kubernetes上运行LLMs的前沿实践,并指导您克服随之而来的运维挑战。
在引言部分,我们将首先剖析大规模运行AI工作负载的挑战,继而探讨Kubernetes的应对方案。随后提供可选的LLM基础知识导论,涵盖令牌处理与推理阶段等概念,这些知识对诊断性能问题大有裨益。若您倾向于将LLMs视为纯粹的黑盒系统,初读时可跳过此章节。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access