用于ChatGPT的FPGA加速大型语言模型
探索FPGA加速的语言模型如何重塑生成式人工智能,带来更快的推理、更低的延迟和更优的语言理解。
引言:大型语言模型
近年来,大型语言模型(LLMs)彻底改变了自然语言处理领域,使机器能够生成类人文本并进行有意义的对话。这些模型,如OpenAI的GPT,拥有惊人的语言理解和生成能力。它们可用于多种自然语言处理任务,包括文本生成、翻译、摘要、情感分析等。
大型语言模型通常通过深度学习技术构建,特别是使用变换器架构。Transformer是神经网络模型,擅长捕捉序列中的长距离依赖关系,非常适合语言理解和生成任务。训练大型语言模型涉及将模型暴露于大量文本数据,通常来自书籍、网站及其他文本资源。模型学习预测句子中的下一个词或根据所见上下文填补缺词。通过这一过程,它获得了语法、句法甚至一定程度的世界知识。
大型语言模型面临的主要挑战之一是其庞大的计算和内存需求。这些模型包含数十亿参数,需要强大的硬件和大量计算资源才能有效训练和部署,正如Nishant Thakur 2023年3月在LinkedIn文章《ChatGPT背后的令人震惊的处理能力与成本:打造终极AI聊天机器人所需?》中所讨论的。资源有限的组织和研究人员常常面临利用这些模型潜力的障碍,因为云计算所需的处理量庞大或资金庞大。此外,生成响应时需要存储的上下文长度大幅增加,以创建相应的词元、词语或词的子部分,这对内存和计算资源的要求更加巨大。
这些计算挑战导致更高的延迟,使得LLM的采用更加困难,且不实时,因此不那么自然。在本博客中,我们将深入探讨大型语言模型所面临的困难,并探讨可能为其提升可用性和可靠性铺平道路的解决方案。
大型语言模型的加速
LLM通常需要一个大规模系统来执行模型,随着规模不断扩大,仅在CPU上运行已不再是成本、功耗或延迟的效率。加速器,如GPU或FPGA,可以显著提升计算功耗比,大幅降低系统延迟,并在更小规模内实现更高的计算水平。虽然GPU正逐渐成为加速的标准,主要因为它们易于作且易于编程,但FPGA架构实际上在比GPU更低的延迟下,能带来卓越的性能。
由于GPU本质上是曲速锁定架构,需在多个核心上并行运行超过32,000个SIMT线程,因此通常需要批量处理大量数据,以抵消曲速锁定架构并保持管道满载。这会导致更高的延迟和对系统内存的更大需求。与此同时,FPGA构建自定义数据路径,同时执行多个不同指令在多个数据块上,这意味着它可以高效地在批处理大小为1的情况下运行,这既是实时的,也大幅降低延迟,同时最大限度地减少了外部内存需求。因此,FPGA能够显著高于其他竞争架构的TOP利用率——随着系统规模扩大到ChatGPT规模,这一性能差距会进一步扩大。
将LLM映射到Achronix FPGA加速器
Achronix Speedster7t FPGA 拥有独特的架构,非常适合这类模型。首先,它配备了硬件二维NoC,能够解决数据的进出和通过设备。此外,它使用了带有紧耦合块内存的机器学习处理器(MLP),以便高效地在计算间重用结果。最后,Achronix Speedster7t FPGA 与 GPU 类似但不同,拥有八组高效 GDDR6 内存,带宽大幅提升,可加载参数速度为 4 Tbps。
由于这些系统需要扩展性,FPGA可以实现多种标准接口,实现卡片之间的互联并无缝传输数据。Achronix Speedster7t AC7t1500 设备拥有 32,100 Gbps SerDes 通道,无需像 NVLink 这样专有且昂贵的解决方案。
大型语言模型的未来:扩展以增强语言理解和专业领域
由于这些大型语言模型需要大规模的训练和推理,且延迟影响极小,模型的复杂度将持续增长,从而实现语言理解、生成甚至预测能力的提升,精度极高。虽然目前许多GPT风格模型是通用型的,但未来很可能是专门训练给医学、法律、工程或金融等特定领域的专业模型。这些系统将长期用于协助人类专家处理AI系统处理的日常任务,并提供解决方案建议或创造性任务的帮助。












评论