aifollow.news
返回 Hugging Face 官方博客
Hugging Face 官方博客· · 原发布时间 AI 评分40

llama.cpp 与 ggml 发布 v1.0.0,明确接口兼容规则

AI 辅助摘要

llama.cpp 和底层张量库 ggml 均发布 v1.0.0。项目表示,今后公开 C API 的破坏性变更将提升主版本号;兼容的新功能、后端或模型支持提升次版本号,未改变 API 的错误修复提升补丁号。这让依赖两套库的开发者更容易判断升级影响。

正文 · AI 翻译

+24

llama.cpp 使多模态大语言模型能够在各种硬件上运行,从消费级本地设备到高端企业服务器。通过量化、优化的后端和可移植的 C/C++ 实现,我们让软件栈各个层级都能使用 AI 推理。我们认为,这是构建跨平台私有 AI 产品最轻量、最灵活、最合理的平台。

项目自创立以来的 3.5 年间发展迅速,许多下游应用已经依赖我们的工作。随着本地 AI 和隐私在日常生活中变得越来越重要,我们预计这一趋势将持续。每增加一项新集成,就意味着有更多开发者依赖我们的库接口,因此灵活而稳定的 API 至关重要。

今天,我们发布库版本 v1.0.0,以体现我们对这些开发者的责任。今后,llama.cpp 和 ggml 都将通过提高主版本号来标示 API 和 ABI 的不兼容变更。随着采用范围扩大,我们会更严格地向下游使用者明确这些兼容性边界。

发布版本

发布版本

库

公共头文件

llama.cpp v1.0.0——使用 C/C++ 进行大语言模型推理

libllama

llama.cpp/include/

ggml v1.0.0——用于机器学习的张量库

libggml

ggml/include/

语义化版本更新规则

以下规则适用于所有采用语义化版本控制的 ggml-org 项目:

变更类型

递增的版本号

主版本号

对 ./include 中的公共 C API 进行不兼容变更

次版本号

向后兼容的功能、后端更新、模型支持或 API 新增内容

修订版本号

不涉及 API 变更的错误修复

分发

我们期待拓展 ggml-org 软件的分发方式,让它触达更多开发者和最终用户。如需了解如何将 ggml-org 项目加入您的软件包构建和发布流程,请查看以下讨论。

渠道

平台

预发布构建产物

Linux、macOS、Windows、Android、iOS

Docker

Linux

Debian

Linux

Homebrew

macOS、Linux

conda-forge

Windows、macOS、Linux

MacPorts

macOS

Winget

Windows

XCFramework

iOS、macOS

开发

这个项目培育了一个出色的开源社区,汇聚了技能精湛、才华横溢的贡献者。随着 AI 能力在软件工程领域快速发展,我们继续以审慎、合理的方式调整开发流程,并将大语言模型融入其中。保持高质量的代码库、掌控架构以及理解实现细节,仍将是我们的首要任务。

为适应更快的开发节奏,我们持续投入越来越多的资源,改进项目背后的持续集成基础设施。得益于 HF Buckets 和 HF Jobs 等 Hugging Face 技术,我们能够扩展所需的容量,确保每项合入主分支的变更都正确无误。在 NVIDIA、AMD、Qualcomm、Arm、IBM 和 Intel 的硬件支持下,我们继续在所有主要硬件平台上增加自行托管的运行器。

后端和模型覆盖范围

llama.cpp 底层的机器学习引擎 ggml 旨在几乎所有现有硬件上运行。这通过实现专门的 ggml 后端来完成。每个后端都可以编译为动态库,并可选择在运行时加载。

目前已实现的后端完整列表可在此处查看。

我们致力于持续支持所有模型架构。目前,llama.cpp 支持 150 多种架构变体,以及所有主流的推测解码方法。

致谢

Hugging Face 的 llama.cpp 团队感谢社区给予的鼎力支持。特别感谢项目的长期维护者和所有贡献者。这是一个重要的里程碑;没有我们的共同努力,就不可能取得这一成果!

更多资源

llama.cpp 示例

Hugging Face 上的 ggml-org

GitHub 上的 ggml-org

欢迎了解适用于 MacOS 和 Windows 的 Llama 桌面应用,它们由 llama.cpp 和 Hugging Face 背后的团队倾心推出。

发现内容有误?提交纠错