algenta-stats

Statistics, probability, hypothesis testing, regression and sampling kernels. Compiled Mojo, loaded in-process.

17 modules · 172 functions · CPU

Get started

pip install kernels torch
from kernels import get_kernel

kernel = get_kernel(
    "thyn-ai/algenta-stats",
    version=1,
    backend="cpu",
    trust_remote_code=["thyn-ai/algenta-stats"],
)
kernel.ab_testing.z_test_proportions(50, 1000, 65, 1000)  # -> [-1.4408, 0.1496]  z statistic, p-value

backend="cpu" selects the CPU build. On a Mac the loader otherwise looks for a Metal build, which this family does not ship. trust_remote_code names the repositories you allow; Hugging Face's trusted publishers load without it.

Plain Python in, plain Python out. Lists, tuples, buffers and tensors are accepted wherever the contract expects a list; structured results are dictionaries. Some functions take a list and the number of elements to use from it, which may not exceed the list's length; multi-dimensional data is passed flattened, row-major, with its dimensions. Functions that update an argument do so in place, as help() says. Every call is checked against the published contract before it reaches native code. An invalid call raises KernelError with a stable code, never a crash.

Any function can also be called by name, with args as a list or a dict of parameter names:

kernel.execute("forecasting.interval", "interval_bootstrap_flat", [...])

What's inside

Module Functions What it does
ab_testing 10 A/B testing: two-proportion z-test, power, sample size, sequential tests
bayesian 10 Bayesian inference: Beta, Normal and Poisson posteriors, credible intervals, Bayes factors
distribution_fit 10 Distribution fitting
distributions 25 Samplers for 27 probability distributions
forecasting.interval 3 Prediction bands from backtest residuals
hypothesis 6 Nonparametric tests: Mann-Whitney, Wilcoxon, Kruskal-Wallis, Fisher exact, sign test
interval 13 Interval arithmetic
ml.naive_bayes 8 Gaussian naive Bayes classifier
probability 11 Probability: Bayes' rule, combinatorics, PMFs, entropy, KL divergence
regression 8 Regression: simple and multiple OLS, ridge, polynomial features, fit metrics
regression_tree 8 Regression trees (CART)
sampling 6 Quasi-random sampling: Halton, Sobol-like, Latin hypercube, stratified
scipy_stats_ops 10 Distribution PDF, CDF and PPF
stat_tests 11 Hypothesis tests: t-tests, Kolmogorov-Smirnov, Pearson, Spearman
stats 14 Descriptive statistics, quantiles and sorting
stats_bootstrap 10 Bootstrap statistics
timeseries_stats 9 Time-series statistics: autocorrelation, ADF, smoothing, rolling windows

kernel.CONTRACT holds every signature, including the length rules for list arguments; help(kernel.ab_testing) documents each function.

Requirements

  • Apple silicon: macOS 15 or later for the CPU build.
  • Linux arm64 and x86-64, glibc 2.35 or later.
  • kernels 0.17 or later and PyTorch 2.5 to 2.14. PyTorch has to be installed: the loader picks the build for your PyTorch version. The kernel itself never imports it.

Windows is not supported.

Notes

Calls into one kernel instance run one at a time; use processes for parallelism. Runtime state does not survive fork(); start worker processes with spawn.

License

Algenta Community License 1.1 (LICENSE). Free for personal, research and open-source use, and for internal use at organizations with fewer than 50 employees and under $5M in annual revenue. Beyond that, a commercial license is required: https://algenta.ai/pricing.

Enforced in the compiled library, not just in this text: one concurrent native worker per device (ABI §9). A second process, family or thread waits its turn rather than running in parallel. That is the Community licence's worker floor made real; parallel execution comes with a commercial license.

Support

Generally Available on the platforms listed under Requirements. Within v1, functions are only added; removals or signature changes ship as v2. Platforms, accelerators and PyTorch releases not listed are not supported. Documentation: https://docs.algenta.ai (the kernels guide: https://docs.algenta.ai/guides/kernels-on-hugging-face). Community: https://discord.gg/w8NDsph9an or this repository's Community tab. Commercial licences and support: https://algenta.ai/pricing.

Downloads last month
26
algenta
mojo
cpu
other
Torch
2.14
OS
macoslinux
Arch
x86_64aarch64