Skip to content

Releases

v1.12.2

Choose a tag to compare

@github-actions github-actions released this 08 Nov 18:29

v1.12.2 (2026-11-08)

Bug Fixes

  • ci: Avoid SIGPIPE in the manylinux build script (8add83b)

  • download: Use the system CA bundle on Linux and report curl errors (e1356cf)

Chores

  • release: Sync version stamps to 1.12.2 [skip ci] (494602a)

Continuous Integration

  • wheel: Build and test linux aarch64 wheels (b184fdb)

  • wheel: Build linux aarch64 with GCC 14 (f403a14)

  • wheel: Build the linux aarch64 wheel in manylinux_2_28 (dba09a7)

  • wheel: Repair the aarch64 wheel to the tag auditwheel computes (63768a5)

  • wheel: Report per-library symbol versions and let auditwheel pick the tag (a8aa87a)

Documentation

  • install: Document the linux aarch64 wheel (4f190af)

Detailed Changes: v1.12.1...v1.12.2

v1.12.1

Choose a tag to compare

@github-actions github-actions released this 08 Nov 17:10

v1.12.1 (2026-11-08)

Bug Fixes

  • build: Do not require AVX2 in shipped binaries (3a305f3)

  • gguf: Validate header bounds and tensor shapes before loading (85f616b)

  • wheel: Ship a self-contained macOS wheel and test the installed one (08228c9)

Chores

  • release: Sync version stamps to 1.12.1 [skip ci] (e6623af)

Continuous Integration

  • tests: Bound and timestamp each Intel SDE phase on Windows (eb64751)

  • tests: Decompress Intel SDE with 7-Zip on Windows (402d67c)

  • tests: Run unit tests on emulated CPUs under Intel SDE (2aa1171)

  • tests: Time out each Intel SDE run on Windows (7a782bf)

Documentation

  • cpu: Document CPU requirements and dispatch (9a35d92)

Testing

  • sparse: Tighten GGUF/ONNX fidelity bar and refresh stale notes (4e11976)

Detailed Changes: v1.12.0...v1.12.1

v1.12.0

Choose a tag to compare

@github-actions github-actions released this 07 Nov 22:51

v1.12.0 (2026-11-07)

Bug Fixes

  • Harden ownership, downloads and input validation (e6211e8)

  • autotune: Keep the embedding-wide purge from wiping other tasks (c298292)

  • autotune: Select without infinite sentinels under fast-math (d86e494)

  • build: Link implementation deps for Windows examples and benchmarks (1c62375)

  • build: Link the Python shared library on Windows, export macOS ggml backends (f60814d)

  • python: Honour LIBEMBEDDING_LIBRARY when loading the native library (88420d4)

  • python: Load one copy of each native dependency, warn on a stale library (cbeb176)

  • sparse: Bound batches by a token budget and sort by length (d7bd2c2)

  • sparse-gguf: Count the batches actually run in stats (6fda145)

Build System

  • Upgrade llama.cpp to v0.6.0 (ggml 0.26.0) (6247000)

  • cmake: Install an importable libembedding CMake package (6287feb)

  • onnxruntime: Upgrade to 1.31.0 (70a994f)

Chores

  • Add CLAUDE.md agent guide and GitHub funding link (5c91c40)

  • Repeat quantization benchmark runs, note build hygiene rules (740f371)

  • release: Sync version stamps to 1.12.0 [skip ci] (06f113c)

Continuous Integration

  • Build and test macOS arm64 on macos-15 (97fe645)

  • Run the PR checks on pull requests to dev (d26758e)

  • release: Build test_autotune_core before running ctest (dd845a8)

Documentation

  • Archive LE-9.4, LE-9.6 and LE-P5 sparse reports (e1cc664)

  • Archive LE-P5 llama.cpp v0.6.0 audit report (1d2ef88)

  • autotune: Document lembed_autotune_ex and the unified tuning engine (c2c4bdb)

  • sparse-gguf: Document token budget, workers and profiling tools (4473464)

Features

  • autotune: Run every tuner on one engine and add lembed_autotune_ex (e263a90)

  • cpu: Add CPU dispatch for ggml backends (f4a206a)

  • python: Expose objective, workload and constraints in autotune_unified (15efc6b)

  • sparse-gguf: Run batches on parallel workers sharing the weights (748620b)

Performance Improvements

  • dense: Cap padded tokens per ONNX batch at 512 (c90a975)

  • reranker: Length-sorted, token-budgeted batches; never pad jina v1 turbo (e03cc6f)

Testing

  • benchmarks: Add a before/after harness for the auto-tuners (12f9523)

  • benchmarks: Add the short and long text corpora used by sparse runs (7620dd5)

  • benchmarks: Compare Q8_0, F16 and F32 weights in the GEMM microbench (bd067d6)

  • sparse: ONNX vs GGUF fidelity tests and SciFact benchmark (76fd214)

  • sparse: Report effective parallelism and where weight deltas sit (4640be7)

  • sparse-gguf: Per-text latency mode in the profiler (107ec2b)


Detailed Changes: v1.11.0...v1.12.0

v1.11.0

Choose a tag to compare

@github-actions github-actions released this 08 Oct 18:45

v1.11.0 (2026-10-08)

Bug Fixes

  • Correct return type annotation for _auto_select_quantization (5c04013)

  • Correct return type annotation for _auto_select_quantization (#11, a664cb8)

  • ci: Declencher Sync dev sur la fin du workflow Release, pas sur release (e01cc9d)

  • ci: Declencher Sync dev sur la fin du workflow Release, pas sur release (#11, a664cb8)

  • ci: Retirer le gate CRLF du workflow Sync dev (de03445)

  • ci: Retirer le gate CRLF du workflow Sync dev (#11, a664cb8)

  • embedding: Correction des retours à la ligne et mise à jour des commentaires (9f9bd7e)

  • embedding: Correction des retours à la ligne et mise à jour des commentaires (#11, a664cb8)

  • gguf: Ajout de la gestion de la mémoire dans SparseSession (1302029)

  • gguf: Ajout de la gestion de la mémoire dans SparseSession (#11, a664cb8)

  • gguf: Batched attention with batch axis [P1.5c] (b58d770)

  • gguf: Batched attention with batch axis [P1.5c] (#11, a664cb8)

  • gguf: Null stale graph pointers when rebuilding cached sparse graph (29ad1e0)

  • gguf: Null stale graph pointers when rebuilding cached sparse graph (#11, a664cb8)

  • gguf: Reconnaitre les synonymes de geometrie de l'architecture [P1.5b] (223e4d6)

  • gguf: Reconnaitre les synonymes de geometrie de l'architecture [P1.5b] (#11, a664cb8)

  • gguf: Tensor_numel comptait des octets, pas des éléments [P1.5b] (9aff7e4)

  • gguf: Tensor_numel comptait des octets, pas des éléments [P1.5b] (#11, a664cb8)

  • python: Align batch_size default handling with constructor default (776c586)

  • python: Align batch_size default handling with constructor default (#11, a664cb8)

  • quantization: Correctifs de revue P1.3 (d5a6d1a)

  • quantization: Correctifs de revue P1.3 (#11, a664cb8)

  • tokenizer: Parite HuggingFace pour la normalisation BERT (72c6cd6)

  • tokenizer: Parite HuggingFace pour la normalisation BERT (#11, a664cb8)

Continuous Integration

  • Build all unit tests in C++ test workflow (6b70d9c)

  • Build all unit tests in C++ test workflow (#11, a664cb8)

  • release: Build all unit tests in release workflow (13bcd61)

Documentation

  • benchmark: Diagnostiquer le debit sparse GGUF [P1.5c] (b052dcd)

  • benchmark: Diagnostiquer le debit sparse GGUF [P1.5c] (#11, a664cb8)

  • gguf: Clarify cached sparse graph dependencies in comment (026ea6e)

  • gguf: Clarify cached sparse graph dependencies in comment (#11, a664cb8)

  • quantization: Documenter l'auto-selection et la mesure en deux phases [P1.3] (29b668d)

  • quantization: Documenter l'auto-selection et la mesure en deux phases [P1.3] (#11, a664cb8)

Features

  • benchmarks: Add LE-9.6 four-backend comparison for Dense/Sparse × ONNX/GGUF (5644456)

  • benchmarks: Add LE-9.6 four-backend comparison for Dense/Sparse × ONNX/GGUF (#11, a664cb8)

  • gguf: Convention de capacite sparse GGUF [P1.5b] (29a6096)

  • gguf: Convention de capacite sparse GGUF [P1.5b] (#11, a664cb8)

  • gguf: Runtime sparse GGUF pour SPLADE [P1.5c] (3094dda)

  • gguf: Runtime sparse GGUF pour SPLADE [P1.5c] (#11, a664cb8)

  • python: Deleguer l'auto-selection de quantification au coeur C [P1.3] (1574784)

  • python: Deleguer l'auto-selection de quantification au coeur C [P1.3] (#11, a664cb8)

  • quantization: Auto-selection mesuree des variantes de poids [P1.3] (25d5ccb)

  • quantization: Auto-selection mesuree des variantes de poids [P1.3] (#11, a664cb8)

Refactoring

  • gguf: Add CachedGraph::reset() and reuse it in SparseSession (d34e27a)

  • gguf: Add CachedGraph::reset() and reuse it in SparseSession (#11, a664cb8)

Testing

  • Add LIBEMBEDDING_IMPLEMENTATION to GGUF and sparse tests (978499c)

  • Add LIBEMBEDDING_IMPLEMENTATION to GGUF and sparse tests (#11, a664cb8)

  • Add LIBEMBEDDING_IMPLEMENTATION to test_cpp_wrappers (5a7ded0)

  • Add LIBEMBEDDING_IMPLEMENTATION to test_cpp_wrappers (#11, a664cb8)


**Deta...

Read more

v1.10.1

Choose a tag to compare

@github-actions github-actions released this 03 Oct 15:24

v1.10.1 (2026-10-03)

Bug Fixes

  • ci: Declencher Sync dev sur la fin du workflow Release, pas sur release (#10, 554f5cc)

  • ci: Declencheur Sync dev et gate CRLF (#10, 554f5cc)

  • ci: Retirer le gate CRLF du workflow Sync dev (#10, 554f5cc)

Chores

  • release: Sync version stamps to 1.10.1 [skip ci] (d7d23d0)

Detailed Changes: v1.10.0...v1.10.1

v1.10.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 14:55

v1.10.0 (2026-10-03)

Bug Fixes

  • tests: Rendre les 6 echecs python de la CI impossibles plutot que toleres (f4be369)

Chores

  • release: Sync version stamps to 1.10.0 [skip ci] (59bfd13)

Continuous Integration

  • sync: Tenir dev a jour apres chaque publication semantic-release (6c69c32)

Detailed Changes: v1.9.0...v1.10.0

v1.9.0

Choose a tag to compare

@github-actions github-actions released this 27 Sep 14:56

v1.9.0 (2026-09-27)

Bug Fixes

  • Corriger les directives noqa dans les imports (57f47c4)

  • Corriger les directives noqa dans les imports (283ab6f)

  • E402 ruff et ligne dupliquee dans ImageEmbedding.close (173157d)

  • Retablit les directives noqa: E402 (8f0987c)

  • cache: Hacher l'empreinte d'autotune au lieu de la tronquer (43bc18f)

  • ci: Committer les stamps de version avant semantic-release (9f90e2c)

  • lint: Ajouter la directive noqa E402 manquante (42bcd1f)

  • tests: Corriger les importations et ajuster les assertions dans les tests (aff5f1a)

  • tests: Definir LIBEMBEDDING_IMPLEMENTATION dans test_cache (49e2fb3)

Chores

  • release: Ajouter une étape pour assurer la mise à jour avec origin/main (85b046a)

  • release: Aligner les stamps de version sur la 1.8.0 publiee (fea2d18)

  • release: Sync version stamps to 1.9.0 [skip ci] (f047018)

Documentation

  • Llamacpp vendorise et API cache copie (04448f7)

  • Regenerate llm.txt / llm_full.txt [skip ci] (d867410)

Features

  • api: Étendre l'autotuning et la sélection de quantification (75e9a23)

  • cache: Copier sous verrou via lembed_cache_get_copy (9418d3d)

  • tests: Add comprehensive tests for embedding cache and ABI consistency (d1439f5)

Testing

  • Rendre les tests python incapables de faux vert (e829ac7)

Detailed Changes: v1.8.0...v1.9.0

v1.8.0

Choose a tag to compare

@github-actions github-actions released this 23 Sep 17:32

v1.8.0 (2026-09-23)

Bug Fixes

  • Add C-linkage autotune wrappers for shared lib export (8a702eb)

  • Add desc_v2 field to text embedding and implement v2 desc (9eb5458)

  • Add pytest-timeout for release workflow Python tests (3f33662)

  • Cast int to lembed_quantization_t in v2 create (55d4d87)

  • Convert autotuner_impl.hpp from UTF-16 LE to UTF-8 with LF line endings (455fa8b)

  • Correct test assertions and add validation for auto_select_model (bc3749e)

  • Enable shared library build for Python tests in release workflow (cd44eff)

  • Implement missing v2 API functions and fix autotune linkage (dad4176)

  • Install pytest and pytest-cov in CI test step (151492b)

  • Mark network-dependent autotune tests to avoid SIGABRT crashes (516efff)

  • Mark network-dependent autotune tests to avoid SIGABRT crashes (89b4162)

  • Remove extern C from autotuner_impl.hpp to avoid symbol conflict with shim wrappers (fb249f3)

  • Reranker clear_cache symbol and detect_hardware assertion (c353f23)

  • Test_image_stats to check embed result instead of internal counter (3f0c5a6)

  • ci: Reinstall pytest after wheel install in build-wheel.yml (d13cfc4)

  • windows: Export all public C API symbols from libembedding.dll (5844dad)

  • windows: Remove lembed_reranker_autotune_custom from exports (not implemented) (2d7802d)

Chores

  • benchmarks: Remove stale reranking bytecode cache files (7f2013f)

Documentation

  • Regenerate llm.txt / llm_full.txt [skip ci] (9cacd14)

  • Update llm.txt / llm_full.txt [skip ci] (0b98d7a)

Features

  • libembedding: Add initial export definitions for embedding library (65f62ac)

Detailed Changes: v1.7.0...v1.8.0

v1.7.0

Choose a tag to compare

@github-actions github-actions released this 19 Sep 18:19

v1.7.0 (2026-09-19)

Bug Fixes

  • docs: Fix GitHub Pages baseurl and nav URLs for libembedding-ng repo (d1f3486)

  • Change baseurl from /libembedding to /libembedding-ng (matches repo name)

  • Fix nav URLs to be relative (no leading /) for proper baseurl resolution

  • Fix English index link to French index (../index.html)

Chores

  • tests: Refactor CMakeLists.txt for test organization (a7ede63)

  • Consolidated unit and integration test sections for clarity.

  • Ensured all test executables are properly linked to libembedding.

  • Maintained conditional logic for Windows and ONNXRuntime library handling.

  • Preserved functionality for local loading tests without network dependencies.

Features

  • Ajout de structures de données versionnées pour les modèles et options d'embedding (b502b24)
  • Ajout de lembed_model_desc_v2_t, lembed_text_options_v2_t, et lembed_reranker_options_v2_t pour étendre les fonctionnalités avec des informations de quantification et de cache.
  • Amélioration de la gestion des versions pour une meilleure compatibilité et extensibilité.
  • docs: Add documentation for similarity functions and backend detection (b3a8c4d)

  • Introduced similarity.md detailing native functions for comparing embedding vectors.

  • Added backend.md to explain auto-detection of backends based on model names or file paths.

  • Created benchmark.md for unified benchmarking of ONNX and llama.cpp backends.

  • Documented cache.md for LRU caching of embeddings, including usage and integration with TextEmbedding.

  • Added stats.md to provide runtime statistics for embedding contexts.

  • Updated French documentation for similarity functions and backend detection.

  • Implemented a new LRU cache class in cache.py for efficient embedding storage.

  • Added a script for syncing version numbers across header files.


Detailed Changes: v1.6.0...v1.7.0

v1.6.0

Choose a tag to compare

@github-actions github-actions released this 15 Sep 18:40

v1.6.0 (2026-09-15)

Bug Fixes

  • Include llama.cpp runtime DLLs in Windows wheel (620a85a)

Chores

  • Bump version to 1.6.0 for PyPI release (ab8be9a)

This fixes the PyPI deployment issue where semantic-release was confused by the large gap between last PyPI release (1.0.2) and current code (1.5.8+). Version 1.6.0 is higher than all existing tags and PyPI releases.

Features

  • benchmarks: 🚀 add comprehensive autotune tests and benchmarks (052a69b)

  • Introduced multiple benchmark scripts for autotuning with various corpus sizes and configurations. - Added tests for: - Custom user corpus in test_autotune_corpus.py - Python autotune from script in test_autotune_python.py - C++ autotuner with constraints and configurable weights in test_autotuner.cpp - GGUF model registry in test_gguf_registry.cpp - Large corpus simulation with stratified sampling in test_large_corpus.py - Unified backend benchmark comparing ONNX and llama.cpp in test_unified_benchmark.cpp - Tokenization vs inference profiling in token_profile.cpp - Debug trace test for embedding creation in trace_test.cpp - Ultra minimal embedding test in ultra_min.cpp - Verification of reproducibility in verify_bench.cpp - Windows API integration test in win_test.cpp

These additions enhance the benchmarking capabilities and provide a more robust framework for evaluating model performance across different scenarios.

Testing

  • 🧪 add comprehensive unit and integration tests for libembedding (b4d6683)

  • Introduced unit tests for exception hierarchy in libembedding.exceptions.

  • Added integration tests for ImageEmbedding, SparseTextEmbedding, and TextEmbeddingPool.

  • Implemented smoke tests for package imports and public API exports.

  • Created tests for model registry and resolution, ensuring model availability and properties.

  • Developed tests for similarity functions and corpus sampling utilities.

  • Included tests for various dataclasses in libembedding.types.

  • Added a script to sync version across C/Python headers, ensuring consistency in versioning.

These changes enhance the test coverage and reliability of the libembedding library, facilitating easier maintenance and future development.


Detailed Changes: v1.5.8...v1.6.0