Skip to content

Releases: Mattral/KANX

v0.1.9

Choose a tag to compare

@github-actions github-actions released this 19 Jun 11:12

Release 0.1.9

Full Changelog: v0.1.2...v0.1.9

v0.1.8 — June 3, 2026 — HuggingFace Hub, symbolic regression, Prometheus metrics

Choose a tag to compare

@Mattral Mattral released this 03 Jun 18:56

Real-world datasets, hub integration, and observability in one release.

What's new

  • HuggingFace HubKAN.from_pretrained() and model.push_to_hub() now
    work on both TensorFlow and PyTorch backends. Share and load trained KAN
    models from the Hub in one line.

  • kanx.datasets module — UCI and Feynman dataset loaders with cached
    downloads and dataset utilities. Reproducible real-world tabular experiments
    without boilerplate.

  • Symbolic regressionkanx.torch.SymbolicFitter extracts closed-form
    edge functions from trained models. KANs were always more interpretable than
    MLPs; now you can read the actual formula each edge learned.

  • Prometheus /metrics endpoint — drop KANX into any existing Prometheus +
    Grafana stack with zero configuration via prometheus-fastapi-instrumentator.

  • TensorBoard logging — training events written to the configured log
    directory for both TF and PyTorch paths.

Also

  • Docs and examples fully updated to reflect the current feature set.
  • Version bumped in pyproject.toml, __init__.py, and CITATION.cff.

Full changelog: https://github.com/Mattral/KANX/blob/main/CHANGELOG.md

v0.1.7 — June 2, 2026 — GPU-optimized MatrixKAN, real-world benchmarks, docs consolidation

Choose a tag to compare

@Mattral Mattral released this 03 Jun 18:56

Production-grade benchmarks and a GPU-native kernel.

What's new

  • MatrixKAN — GPU-optimized PyTorch kernel using batched GEMM for B-spline
    evaluation. Closes most of the inference latency gap between KANs and MLPs
    on GPU hardware.

  • Real-world benchmark suitebenchmarks/real_world.py with committed
    baseline results artifact. The benchmark numbers are now reproducible from
    the repo, not just claimed in the README.

  • GPU timing pathbenchmarks/compare_mlp.py now measures CPU and GPU
    inference separately, giving an honest picture of where each backend wins.

  • CITATION.cff and SECURITY.md added for academic citation and
    responsible disclosure.

  • Docs consolidated — legacy documentations/ merged into docs/ with
    aligned MkDocs navigation. One docs site, no dead links.

Fixed

  • LICENSE badge link and downloads badge corrected in README.
  • Cross-link and path issues from the old dual-documentation layout resolved.

Full changelog: https://github.com/Mattral/KANX/blob/main/CHANGELOG.md

v0.1.6 — Grid-range fix, honest benchmarks, hardened API + K8s

Choose a tag to compare

@Mattral Mattral released this 03 Jun 18:55

The most important correctness release to date.

The #1 KAN production bug, fixed

kanx.fit_grid_to_data(model, X) calibrates every KANLinear layer's B-spline
grid to the observed input range. Without this, inputs outside the default
[-1, 1] grid silently zero out the spline path — producing wrong predictions
with no error. If you are using KANX in production on real-world data, upgrade
to this version.

kanx.check_input_range(model, X) logs a WARNING at inference time when inputs
exceed the model's grid range.

Honest benchmarks

The previous "265× MSE win" headline compared against a deliberately
overparameterised MLP. The new benchmark trains for 100 epochs and includes
parameter-matched baselines. The real number: ~75× MSE improvement vs a
parameter-matched MLP, ~25× vs an MLP 10× larger — on a smooth separable
target that favours KANs. Caveats are documented prominently in results.md.

Security and hardening

  • KANX_API_KEY env var enables API key auth on predict/load/reset endpoints.
  • KANX_RATE_LIMIT_RPM enables per-IP rate limiting (returns 429 on burst).
  • Docker: non-root user, readOnlyRootFilesystem-compatible.
  • K8s: CPU+memory limits set (required for HPA to function), all Linux
    capabilities dropped, runAsNonRoot, seccompProfile: RuntimeDefault.

New examples

Five new scripts in examples/: tabular regression, classification, time
series forecasting, edge function visualisation, and a full ONNX pipeline.

Tests

113 tests total (up from 101). New suites for grid-range guards and API
hardening. Branch coverage now enforced in addition to line coverage.

Full changelog: https://github.com/Mattral/KANX/blob/main/CHANGELOG.md

v0.1.4 — Repository URL corrections

Choose a tag to compare

@Mattral Mattral released this 03 Jun 18:54

Housekeeping release. All URLs updated from the old repo name
(Kolmogorov-Arnold-Networks) to the current name (KANX) across README,
pyproject.toml, CHANGELOG, CONTRIBUTING, mkdocs.yml, all docs, the Colab
notebook, and the launch post.

PyPI project URLs (Homepage, Documentation, Repository, Issues, Changelog,
Source Code, Colab Notebook) and all README badges now point to the correct
locations.

Full changelog: https://github.com/Mattral/KANX/blob/main/CHANGELOG.md

v0.1.3 — Zero-friction API: kanx.quickstart(), one-line fit()

Choose a tag to compare

@Mattral Mattral released this 03 Jun 18:53

New users can now go from pip install to a trained model in one function call.

What's new

  • kanx.quickstart() — builds, trains, and returns a working KAN in a
    single call. The first thing to type after pip install kanx.

  • model.fit(X, y) on TensorFlow KAN — auto-compiles with Adam + MSE if
    you haven't called model.compile(). No boilerplate.

  • model.fit(X, y) on PyTorch KAN — same one-line semantics as the TF
    backend, wrapping Trainer.fit() internally.

  • Comparison table vs other KAN libraries in README — pykan, efficient-kan,
    mlx-kan side by side.

  • CONTRIBUTING.md with high-leverage tasks and good first issues.

  • GitHub Pages auto-deploy — docs rebuild on every push to main, not just
    on tag.

  • BibTeX citations for both kanx and the original Liu et al. (2024) paper.

Fixed

Full changelog: https://github.com/Mattral/KANX/blob/main/CHANGELOG.md

v0.1.2 — Initial production release

Choose a tag to compare

@Mattral Mattral released this 03 Jun 18:53

The first production-grade release of KANX.

pip install kanx

What's in this release

Two backends, one API
TensorFlow (primary) and PyTorch (secondary) with identical configuration
semantics. Both tested in CI on Python 3.10, 3.11, and 3.12.

ONNX export
Dynamic batch axis. Numerical parity within 1e-5 of the eager model.
Unlocks TensorRT, OpenVINO, CoreML, and every other deployment runtime.

REST API
FastAPI service with thread-safe ModelRegistry, health/info/predict/load/reset
endpoints, and checkpoint-with-fallback. Ready to serve.

Deployment
Dockerfile + docker-compose. Kubernetes manifests with Deployment (rolling
updates), Service, Ingress, HPA, and PVC.

CLI
python -m kanx {info,train,predict} with YAML configs.

Tests
95 tests across unit, integration, end-to-end, property-based (Hypothesis),
and performance regression. 94% library coverage. Numerical contracts
(partition of unity, non-negativity, ONNX parity) asserted by tests.

Documentation
MkDocs Material site. Eight long-form docs covering philosophy, architecture,
system design, build, security, API, testing, and deployment.

Benchmarks
KAN[2,32,1]: 1.7×10⁻⁵ MSE with 864 parameters.
MLP[2,64,64,1]: 4.5×10⁻³ MSE with 4,417 parameters.

Full changelog: https://github.com/Mattral/KANX/blob/main/CHANGELOG.md