GGUF:彻底改变本地执行 AI 模型的格式

  • GGUF是一种统一的格式,可以提高LLM模型推理的效率。
  • 它与多种框架(例如 Llama.cpp 或 C Transformers)兼容。
  • 允许高级量化以减少尺寸和资源消耗。
  • 促进在 CPU 上执行 AI 模型,同时不丧失灵活性或精度。

胶原蛋白

AI语言模型的兴起推动了新文件格式的发展,从而实现了更高效、灵活、更易于维护。这就是 GGUF 文件,其格式为 GGML 的自然继承者,因其适应能力而脱颖而出 人工智能的当前和未来需求。

这种新格式在资源有限的环境中尤其突出,例如没有 GPU 加速的 CPU 或 Edge 设备的计算机。。在本文中,我们将分析与 GGUF 文件相关的所有内容。:它们是什么,它们如何工作,与前代产品相比它们有哪些优势,以及我们可以在哪里获得它们。对于任何对人工智能模型感兴趣的人来说,这都是必须了解的格式。

什么是GGUF格式?

GGUF(GPT 生成的统一格式) 它是专门为存储语言模型而设计的优化的二进制文件。 并允许其包含在 CPU 和 GPU 中。它是 GGML 格式的直接改进版本(GPT 生成的模型语言),特别是在兼容性、灵活性和效率方面。

GGUF 档案馆诞生的主要动机之一是 解决 GGML 限制,它缺乏承载额外元数据的能力,妨碍了向前兼容性,并迫使用户手动调整某些参数。

GGUF 允许添加新功能而不会破坏向后兼容性。这种可扩展性使其成为未来机器学习的理想平台。

GGUF 文件

GGUF 文件的主要优点

GGUF 格式具有许多优点,这些优点对于开发人员、研究人员和 AI 爱好者来说特别有吸引力:

  • 扩展兼容性: 支持 Llama.cpp、Kobold AI、LM Studio、Chatbox 等框架,可轻松集成到推理管道中。
  • 专注于低功耗硬件: 非常适合在 CPU 上运行 LLM 模型,而无需大量资源或 GPU,从而使更多用户可以使用它。
  • 更高的效率: 通过以优化的方式存储权重和结构,它可以减少模型大小并显著加快加载和推理速度。
  • 模块化: 允许定制查询并避免对复杂参数进行不必要的手动调整。

文件的二进制布局支持 多层次量化,调整 性能、资源消耗和准确性之间的平衡。这一特性使其成为某些功率和内存有限的移动环境和系统的理想解决方案。

GGUF 中的量化:不影响性能的压缩

量化是 GGUF 格式的关键,因为它可以减小模型的大小并加速推理,同时牺牲最小部分的准确性。 GGUF 支持多种级别和类型的量化,每种量化在压缩和精度之间都有自己的平衡:

  • 2位: 最大程度压缩,非常适合内存非常小的设备,但会牺牲一些精度。
  • 4位: 由于其在压缩性和实际应用的可靠性之间取得平衡,它是最受欢迎的方案之一。
  • 8位: 更高的精度和更低的压缩率,广泛用于需要更精确结果的任务。

LM工作室

与GGUF兼容的框架和工具

GGUF 的一大优势是 与多种框架和开发工具兼容。其中最值得注意的是:

  • 骆驼.cpp: 允许在 CPU 和 GPU 上运行 LLM 模型,直接支持 GGUF。
  • Gradio: 非常适合创建带有集成GGUF模型的图形聊天界面。
  • LM工作室 y 任何事法学硕士: 桌面平台专注于本地模型推理,全面支持GGUF文件。

GGUF 与这些环境的集成实现了快速部署,而无需复杂的配置或不必要的技术调整。

如何使用 GGUF 文件?

使用 GGUF 格式的模型 不是特别复杂,特别是如果我们使用正确的库。在 Python 中,使用 C Transformers 库,基本步骤如下:

  1. 安装更新的库: 包括对 GGUF 的支持。
  2. 加载模型: 使用类似的类 GgufModel,表明模型类型(例如“火焰”)。
  3. 定义一个推理函数: 接收来自用户的输入,查询模型,并返回生成的响应。
  4. 创建界面: 使用 Gradio 作为直观的桥梁来输入问题并实时查看生成的答案。

该方法已被证明可有效实现聊天机器人、代码助手和自然文本生成器等现实世界的界面。

哪里可以下载GGUF格式的模型?

获取 GGUF 格式模型的最重要来源是 Hugging Face 存储库。其专业部分包括 LLaMA、GPT-J 等许多流行模型的转换版本。

或者,一些 应用程序允许直接从界面下载模型,就像 LM Studio 一样,它会自动在 GGUF 中搜索并下载模型。  如果你已经有 GGML 或标准二进制格式的模型,您可以使用特定的转换工具将其转换为GGUF并利用其优势。

限制和需要考虑的方面

尽管 GGUF 代表着向前迈出的重要一步, 并非一切都是完美的。在全面采用它之前,需要考虑以下因素:

  • 适应曲线: 作为一种新格式,需要熟悉它的特殊性和兼容工具。
  • 从不受支持的型号转换: 可能涉及修改或调整现有文件的额外步骤。
  • 在较慢的 CPU 上进行推断: 虽然可行,但速度并不总是与 GPU 上的非量化模型获得的速度相当。

然而, 这些限制在很大程度上被它的多功能性、未来兼容性和最佳开发实践所抵消。。 GGUF 旨在不断发展,使其成为任何 AI 专业人士或爱好者的中长期投资。