CrispEmbed
A single C++ binary, built on ggml, for text and document understanding: embeddings, sparse and multi-vector retrieval, reranking, optical character recognition, layout analysis, and named-entity extraction, with no Python or ONNX runtime required.
CrispEmbed complements llama.cpp's text-generation focus by covering retrieval and document processing: dense text embeddings from ten encoder and decoder architectures, sparse and multi-vector retrieval with cross-encoder and bi-encoder reranking, more than fifteen optical-character-recognition engines spanning general, scene-text, math and music notation engines plus multilingual support, document-layout analysis and layout-aware key-information extraction, zero-shot and fixed-label named-entity recognition, cross-modal image-text search, and face detection and recognition, alongside classical and learned image-preprocessing steps such as deskewing, denoising and super-resolution.
Everything ships as one library with a unified C application binary interface, GPU-accelerated through CUDA, Vulkan or Metal, and models are auto-detected from GGUF metadata; more than 100 models across 200 or more GGUF variants are available through an auto-download registry with a command listing each model's license. It exposes Python, Rust, Dart, HTTP and WebAssembly front-ends and runs on Linux, macOS, Windows, iOS, Android and in the browser.
It is written in C++ and released under the MIT license.