go-llama.cpp  by go-skynet

Go bindings for llama.cpp

Created 2 years ago
818 stars

Top 43.4% on SourcePulse

GitHubView on GitHub
Project Summary

This Go library provides high-level bindings for llama.cpp, enabling Go developers to integrate large language models into their applications. It targets Go developers seeking efficient LLM inference without the complexity of direct C++ interaction, leveraging llama.cpp's performance optimizations.

How It Works

The project maintains a low-level C/C++ interface within the Go bindings to minimize overhead and maximize performance. This approach keeps most of the heavy lifting in the native llama.cpp code, simplifying the Go API. It utilizes git submodules to manage the llama.cpp dependency.

Quick Start & Requirements

Highlighted Details

  • Supports GGUF file format exclusively (post-PR #180).
  • Offers build configurations for various hardware acceleration backends (OpenBLAS, CuBLAS, ROCm, OpenCL, Metal).
  • GPU offloading is configurable via the -ngl flag.

Maintenance & Community

  • Actively maintained, with recent merges indicating ongoing development.
  • No explicit community links (Discord/Slack) are provided in the README.

Licensing & Compatibility

  • License: MIT.
  • Compatible with commercial and closed-source applications.

Limitations & Caveats

  • Only supports the GGUF model format; GGML format requires using a specific older tag.
  • Building with specific acceleration backends may require additional system-level libraries and configurations.
Health Check
Last Commit

2 weeks ago

Responsiveness

1 week

Pull Requests (30d)
2
Issues (30d)
0
Star History
13 stars in the last 30 days

Explore Similar Projects

Starred by Lianmin Zheng Lianmin Zheng(Coauthor of SGLang, vLLM), Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), and
1 more.

MiniCPM by OpenBMB

0.4%
8k
Ultra-efficient LLMs for end devices, achieving 5x+ speedup
Created 1 year ago
Updated 1 week ago
Starred by Andrej Karpathy Andrej Karpathy(Founder of Eureka Labs; Formerly at Tesla, OpenAI; Author of CS 231n), Anil Dash Anil Dash(Former CEO of Glitch), and
23 more.

llamafile by Mozilla-Ocho

0.1%
23k
Single-file LLM distribution and runtime via `llama.cpp` and Cosmopolitan Libc
Created 2 years ago
Updated 2 months ago
Feedback? Help us improve.