ggmlR: 'GGML' Tensor Operations for Machine Learning
Provides 'R' bindings to the 'GGML' tensor library for machine
learning, designed primarily for 'Vulkan' GPU acceleration with full CPU
fallback. 'Vulkan' support is auto-detected at build time on Linux (when
'libvulkan-dev' and 'glslc' are installed) and on Windows (when 'Vulkan'
'SDK' is installed and 'VULKAN_SDK' environment variable is set); all
operations fall back to CPU transparently when no GPU is available.
Implements tensor operations, neural network layers, quantization, and a
'Keras'-like sequential model API for building and training networks.
Includes 'AdamW' (Adam with Weight decay) and 'SGD' (Stochastic Gradient
Descent) optimizers with 'MSE' (Mean Squared Error) and cross-entropy
losses. Also provides a dynamic 'autograd' engine ('PyTorch'-style) with
data-parallel training via 'dp_train()', broadcast arithmetic, 'f16'
(half-precision) support on 'Vulkan' GPU, and a multi-head attention layer
for building Transformer architectures. Supports 'ONNX' model import via
built-in zero-dependency 'protobuf' parser: load 'pretrained' 'ONNX' models
from 'PyTorch', 'TensorFlow', or other frameworks and run inference on
'Vulkan' GPU or CPU. Covers 40+ 'ONNX' ops including convolutions,
attention primitives, normalization, and shape operations — sufficient to
run real-world models such as 'BERT', 'SqueezeNet', 'Inception v3', and
'MNIST' out of the box. Serves as backend for 'LLM' (Large Language Model)
inference via 'llamaR' and Stable Diffusion image generation via 'sd2R'.
See <https://github.com/ggml-org/ggml> for more information about the
underlying library.
| Version: |
0.6.3 |
| Depends: |
R (≥ 4.1.0) |
| Suggests: |
testthat (≥ 3.0.0) |
| Published: |
2026-03-18 |
| DOI: |
10.32614/CRAN.package.ggmlR |
| Author: |
Yuri Baramykov [aut, cre],
Georgi Gerganov [ctb, cph] (Author of the GGML library),
Jeffrey Quesnelle [ctb, cph] (Contributor to ops.cpp),
Bowen Peng [ctb, cph] (Contributor to ops.cpp),
Mozilla Foundation [ctb, cph] (Author of llamafile/sgemm.cpp) |
| Maintainer: |
Yuri Baramykov <lbsbmsu at mail.ru> |
| BugReports: |
https://github.com/Zabis13/ggmlR/issues |
| License: |
MIT + file LICENSE |
| URL: |
https://github.com/Zabis13/ggmlR |
| NeedsCompilation: |
yes |
| SystemRequirements: |
C++17, GNU make, libvulkan-dev, glslc (optional,
for GPU on Linux), 'Vulkan' 'SDK' (optional, for GPU on
Windows) |
| Materials: |
README, NEWS |
| CRAN checks: |
ggmlR results |
Documentation:
Downloads:
Reverse dependencies:
Linking:
Please use the canonical form
https://CRAN.R-project.org/package=ggmlR
to link to this page.