Skip to main content

East Data Science - ML/optimization platform functions for East Python runtime

Project description

East Data Science

Data science and ML platform functions for the East language

TypeScript: AGPL-3.0 Python: BSL 1.1 Node Version

East Data Science provides machine learning and optimization platform functions for the East language.

Installation

npm install @elaraai/east-py-datascience @elaraai/east

Python Optional Dependencies

Each module has its own optional Python dependencies to avoid installing unnecessary packages. Install only the extras you need:

# Single extra
pip install "east-py-datascience[scipy]"

# Multiple extras
pip install "east-py-datascience[scipy,sklearn,xgboost]"

# All extras
pip install "east-py-datascience[all]"

When using a git dependency in pyproject.toml:

"east-py-datascience[scipy] @ git+https://github.com/elaraai/east-workspace@main#subdirectory=libs/east-py/packages/east-py-datascience"
Module Extra Python Packages
MADS mads PyNomadBBO
Optuna optuna optuna
SimAnneal simanneal simanneal
Scipy scipy scipy, cloudpickle
Optimization (none) (core only — numpy)
GoogleOr google-or ortools
Sklearn sklearn scikit-learn, skl2onnx, onnxruntime, cloudpickle
XGBoost xgboost xgboost, cloudpickle
LightGBM lightgbm lightgbm, cloudpickle
NGBoost ngboost ngboost, cloudpickle
Torch torch torch, cloudpickle
GP gp scikit-learn, cloudpickle
Lightning lightning torch, pytorch-lightning, cloudpickle
Shap shap shap, cloudpickle
MAPIE mapie mapie, cloudpickle
ALNS alns alns
PyMC pymc pymc, cloudpickle
Simulation (none) (core only — numpy)
Causal causal dowhy, econml, PyALE, pandas, matplotlib, scikit-learn, cloudpickle

Quick Start

import { East, FloatType, variant } from "@elaraai/east";
import { MADS } from "@elaraai/east-py-datascience";

// Define objective function: minimize sum of squares
const objective = East.function([MADS.Types.VectorType], FloatType, ($, x) => {
    const x0 = $.let(x.get(0n));
    const x1 = $.let(x.get(1n));
    return $.return(x0.multiply(x0).add(x1.multiply(x1)));
});

// Optimize
const optimize = East.function([], MADS.Types.ResultType, $ => {
    const x0 = $.let([0.5, 0.5]);
    const bounds = $.let({
        lower: [-1.0, -1.0],
        upper: [1.0, 1.0],
    });
    const config = $.let({
        max_bb_eval: variant('some', 100n),
        display_degree: variant('some', 0n),
        direction_type: variant('none', null),
        initial_mesh_size: variant('none', null),
        min_mesh_size: variant('none', null),
        seed: variant('some', 42n),
    });

    return $.return(MADS.optimize(objective, x0, bounds, variant('none', null), config));
});

Modules

Optimization

Module Description Use Cases
MADS Derivative-free blackbox optimization using NOMAD algorithm Functions without derivatives, expensive evaluations, noisy/discontinuous objectives
Optuna Bayesian optimization with TPE sampler Hyperparameter tuning, mixed-type parameters, efficient search with few evaluations
SimAnneal Simulated annealing for discrete optimization TSP, scheduling, subset selection, knapsack, assignment problems
Scipy Scientific optimization and curve fitting Gradient-based minimization, curve fitting, interpolation, statistics
Optimization Iterative coordinate descent optimization Parameter tuning, sequential optimization across parameter groups
GoogleOr Google OR-Tools constraint programming, routing, LP, and graph algorithms CP-SAT, vehicle routing (TSP/VRP), linear/mixed-integer programming, min-cost flow, max flow, assignment

Machine Learning

Module Description Use Cases
Sklearn Core ML utilities from scikit-learn N-way splits, preprocessing (Standard/MinMax/RobustScaler), encoding (Label/Ordinal), metrics, GMM clustering, multi-target regression
XGBoost Gradient boosting with XGBoost Regression, classification, feature importance, fast training
LightGBM Fast gradient boosting with leaf-wise growth Large datasets, high cardinality features, faster than XGBoost on big data
NGBoost Natural gradient boosting with uncertainty Probabilistic predictions, confidence intervals, uncertainty quantification
Torch Neural networks with PyTorch MLP regression/classification, deep learning, custom architectures
Lightning PyTorch Lightning neural networks MLP, autoencoder, conv1d, sequential, transformer architectures
GP Gaussian Process regression Small datasets, uncertainty quantification, Bayesian optimization surrogate
MAPIE Conformal prediction intervals Prediction intervals, prediction sets, uncertainty quantification

Bayesian Inference

Module Description Use Cases
PyMC Bayesian inference with PyMC Bayesian linear regression, hierarchical models, multi-layer joint estimation, posterior analysis

Causal Inference

Module Description Use Cases
Causal One declarative causal experiment (Causal.experiment) over DoWhy / EconML / PyALE internals, plus Causal.designValidation (statsmodels power) Naive vs adjusted effect, confounder balance, propensity overlap, placebo/E-value robustness, and an honesty verdict (refuses when the data can't support an answer); and the real controlled-trial recipe that would confirm it — sample size, split, match-on categories, and a power curve

Simulation

Module Description Use Cases
Simulation Economic ontology simulation via DES Simulating economic resources, events, and processes; single deterministic runs, Monte Carlo trajectories

Explainability

Module Description Use Cases
Shap SHAP values for model interpretation Feature importance, model explanations, debugging predictions

Documentation

See USAGE.md for detailed API reference with examples.

Development

npm run build     # Compile TypeScript
npm run test      # Run test suite
npm run lint      # Check code quality

Claude Code plugin

The East ecosystem also ships a Claude Code plugin — East language skills, example search, and preemptive diagnostics for East code — installed separately from the elaraai marketplace:

# Inside Claude Code
/plugin marketplace add elaraai/east-workspace
/plugin install east@elaraai
# From a terminal
claude plugin marketplace add elaraai/east-workspace
claude plugin install east@elaraai

License

This package has different licenses for TypeScript and Python code:

TypeScript (type definitions): Dual AGPL-3.0 / Commercial

Python (runtime implementations): BSL 1.1 (Business Source License)

  • Non-production use (evaluation, testing, development) is free
  • Production use by or on behalf of for-profit entities requires a commercial license
  • Code becomes AGPL-3.0 four years after each release

See LICENSE.md for full details.

Commercial licensing: support@elara.ai

Ecosystem

  • East: Statically typed, expression-based language with serializable IR. Run portable logic across TypeScript, Python, C, and other runtimes.

    • @elaraai/east: Core language SDK with type system, expressions, and reference JS compiler
  • East Node: Node.js platform functions for I/O, databases, and system operations.

  • East C: C11 native runtime for executing East IR. Distributed via npm (launcher + per-platform optional dependencies) and as tarballs on each GitHub Release.

    • @elaraai/east-c-cli: npm launcher — installs the matching native binary as an optional dependency
    • east-c: Core runtime — type system, IR interpreter, builtins, serialization (Beast2, JSON, CSV, East text)
    • east-c-std: Console, FileSystem, Fetch, Crypto, Time, Path, Random
    • east-c-cli: CLI for running East IR programs natively
  • East Python: Python runtime, standard platform, I/O, and data-science platform functions. Published to PyPI.

    • east-py: Core Python runtime — type system, IR compiler, 212+ builtins, Cython-accelerated hot paths
    • east-py-std: Console, FileSystem, Fetch, Crypto, Time, Path, Random
    • east-py-io: SQLite, PostgreSQL, MySQL, MongoDB, Redis, S3, FTP, SFTP, XLSX, XML, compression
    • east-py-cli: CLI for running East IR programs in Python
    • east-py-datascience (PyPI) + @elaraai/east-py-datascience (npm): Optimization (MADS, Optuna, ALNS, GoogleOR), ML (XGBoost, LightGBM, NGBoost, PyTorch, Lightning, GP), Bayesian inference (PyMC), explainability (SHAP), conformal prediction (MAPIE)
  • East UI: Typed UI component definitions and React renderer, plus VS Code preview.

  • e3 — East Execution Engine: Durable execution engine for running East pipelines at scale. Git-like content-addressable storage, automatic memoization, reactive dataflow, real-time monitoring.

Links

About Elara

East is developed by Elara AI Pty Ltd, an AI-powered platform that creates economic digital twins of businesses that optimize performance. Elara combines business objectives, decisions and data to help organizations make data-driven decisions across operations, purchasing, sales and customer engagement, and project and investment planning. East powers the computational layer of Elara solutions, enabling the expression of complex business logic and data in a simple, type-safe and portable language.


Developed by Elara AI Pty Ltd.


Developed by Elara AI Pty Ltd

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

elaraai_east_py_datascience-1.0.29.tar.gz (559.1 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

elaraai_east_py_datascience-1.0.29-cp313-cp313-win_amd64.whl (239.2 kB view details)

Uploaded CPython 3.13Windows x86-64

elaraai_east_py_datascience-1.0.29-cp313-cp313-win32.whl (236.8 kB view details)

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.29-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (237.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

elaraai_east_py_datascience-1.0.29-cp313-cp313-macosx_11_0_arm64.whl (235.0 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.29-cp313-cp313-macosx_10_13_x86_64.whl (235.8 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.29-cp312-cp312-win_amd64.whl (239.2 kB view details)

Uploaded CPython 3.12Windows x86-64

elaraai_east_py_datascience-1.0.29-cp312-cp312-win32.whl (236.9 kB view details)

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.29-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (237.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

elaraai_east_py_datascience-1.0.29-cp312-cp312-macosx_11_0_arm64.whl (235.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.29-cp312-cp312-macosx_10_13_x86_64.whl (235.9 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.29-cp311-cp311-win_amd64.whl (238.9 kB view details)

Uploaded CPython 3.11Windows x86-64

elaraai_east_py_datascience-1.0.29-cp311-cp311-win32.whl (236.5 kB view details)

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.29-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (236.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

elaraai_east_py_datascience-1.0.29-cp311-cp311-macosx_11_0_arm64.whl (234.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.29-cp311-cp311-macosx_10_9_x86_64.whl (235.6 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

Details for the file elaraai_east_py_datascience-1.0.29.tar.gz.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29.tar.gz
Algorithm Hash digest
SHA256 1af7f80ed6919eb85524ef71d24d463cdedb72ea2fb2fb4b68f5f6d23ce3f718
MD5 d89e0485d7d337d7ced8aec0ccea308a
BLAKE2b-256 132fce735282c94c80b84bc4afbcfa15cb8f0e1a0709967bf1b00f456d168128

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 7f911cb5b471c5f308181bc3b223cefb95d8b48f634c26273dcadadbc590d384
MD5 3d49adcaeaffdc7c43a4c1dcc6f3cf10
BLAKE2b-256 58c7ed3bef50daf0ee0d6f563a1b2f2fc02f3dcb9a3dc2781b9204fbc8b5536b

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp313-cp313-win32.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 871d95fc7d0832dabffa6885bcefb78e7d3149bf8df9ad9c78101fc61afcfeda
MD5 dac09e0fc8f55e4916a19f9a9f4a79b5
BLAKE2b-256 5cf7fbfad77ea3668763ebaee86cfc46dc7412a33218e8a29a223072cd1d5035

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4aebaac0e5e2cbef7f885a0e9a1ff94e9379a4136f90b88a3319f60b78fb81cb
MD5 98784f48ea612c899476b74e3653755b
BLAKE2b-256 37013de3a5beb6f1c53c55b8f23e21fbaf2bbf214b96d2aacd5999584ed97cb1

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 016c35adcb42d62936d1eeb8ce172b408efa0aee95bfa32ae498619a3b010efa
MD5 6e36aca7968885cc6dfa8aa255467e6a
BLAKE2b-256 ac22477fb7b02150111838091e4c0b896ab40ac423bff42fe69abcfe1b1b0d63

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 2b3743eebabe52f362a403a2ab62e563d41973fda92b012d278f52ad36a4f84a
MD5 bcc2b30423190dc9953f2b652a400854
BLAKE2b-256 9a740f4bc0d1a4d20dc627b34c49b5a93fd92f77095d9e2ac600a98c6cf2eb83

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 252afb7d928ee6863eeb645a3aec603c26819290b78685b0aed1f293fb7c1925
MD5 05e747cb1259d81e6f4b509e8e30dd74
BLAKE2b-256 372a29c4d18dbfb63b8d7e49ce224b2c0eb2540b2dcc026bf0a9a52138df5d92

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp312-cp312-win32.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 f43eb3de75fe2097c27e777d7051aef7163c621967b986a8275df209d1d602cb
MD5 df5710f045c054ea743ebaf1f6b139bf
BLAKE2b-256 fd34f54150af8a7edb7981360e29039aac017b2f59771ef1c482f5aa5d271770

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b8d65ff3ba3ea8263379986b2c170326b4d097409dfe0833be0cf50504cdae8d
MD5 35e31488ba2d3ecb06e3de9cbb8b7fa5
BLAKE2b-256 4ae5d452f9db17f399c9cc28033a9de199acfd41d1c552087779765fa74b1f69

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 48a15aea659df050373a31e43f813671d43fd7bfa046d111cbb734bbd8b7d35c
MD5 9d8a63881516bb7ae545e279c13517d6
BLAKE2b-256 d452918844685e42e1a5e1a9fb822e857a67753d18df63bdf1a49ece2ec0d4c7

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 79702932c17c308da14596bb9945427a64c0b158fd88b873cec95b0e44d43767
MD5 b4ce892774bb5a42c93f9ed5d90d3fe7
BLAKE2b-256 b1383568aa3d364fc187ce7f328b3748e71d9f88fe6b6d512ebd7f6c2cae8ed2

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3fbd71a49a324f5ec0d6405f8fa6de913ab483dda3cad968f37b7ebacc9b4430
MD5 a1c340d65bbcef8daf7b54e6104ae0f2
BLAKE2b-256 f985261f52549b3c95fa20a3cb3d9d2defeb0c20c1e20b86e500e69195734492

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 73f4e70b8641d78fd0381f7a3e6f995a414442723678cc8f5753431c521cd08a
MD5 049e1dac2d5f94221899d8261704898b
BLAKE2b-256 55c3d10fe7d63b9333f503967f6bcef733f728a9f3f911b284254175e668d4d8

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0e2883c7cc196cfcde1b3d4c670c3518a21d39b8ab9e3e500bba7ffdc04b285e
MD5 e7ff4ea9562e1b1e7cb29fe015ef951b
BLAKE2b-256 4d396238517b6a56b2b855447cd6c2fabb78725a67f3671db8e653a094745943

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b4b1256f193249dd0135912b5c04130925e8472b823a911abc7a39f80b129b9f
MD5 b75179c3729ea476b79a0d16205cdd67
BLAKE2b-256 02c281ae1cb2ae1aa9f9ce7ee1d9a6b5d92d15ea67e673fe7e3db17a0b26ab4a

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.29-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.29-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bd35beedc75f9a862e1c729d4977dbe4ccb7da1746fb83addfe03ea497d0b02c
MD5 6310906ac8a8d78d77590de9f6bf6e83
BLAKE2b-256 d803f677e3a781f9547101deb15b81645afbffcd615d5d105e257afe1b402f85

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page