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.25.tar.gz (559.5 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.25-cp313-cp313-win_amd64.whl (239.2 kB view details)

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.25-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.25-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.25-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.25-cp312-cp312-win_amd64.whl (239.2 kB view details)

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.25-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.25-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.25-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.25-cp311-cp311-win_amd64.whl (238.9 kB view details)

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.25-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.25-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.25-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.25.tar.gz.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.25.tar.gz
Algorithm Hash digest
SHA256 acb22b77e1348678692d3a2b5f0ba24c7103e8062fdc7e5fc46bc973f63f228a
MD5 d6e27455c61ac0411fe6caa889b08f21
BLAKE2b-256 29f9ff69ffddf4ee81c82a293b15f06c14b189dbe651076722803bedef6f1405

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.25-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 975f44a2a655e3fda493614dc3cae835a25329928ea097f9c9b045f0c79b2b3f
MD5 15a8908ef7a139f4de06f2b809c55454
BLAKE2b-256 6dc2bd23848c693cf98c3065db357be278d906dbf6db70f122869ec567ae4604

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.25-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 5717a32c0b722eebd6bea8db8206231efcbf6cc38a67aa3f349120e881024b51
MD5 9246cf801b67e2af65d8261b4984b160
BLAKE2b-256 e677454d635f9c52a836c6b48948af893350f1a84dd9fb8b6a9ca144111ac4e5

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.25-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.25-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bd11c541c4d8b31fccc6ff845fb6b9406894d29121c040d2bafa5d6fe4b1b49c
MD5 a51397a05419ca4159ebacdd89d04226
BLAKE2b-256 882361597ccbf610c3ee345d9865847cf0f501da579789653b515ee181910902

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.25-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e88885f4ac930841253d7c550c6b940372582518b31336bf4d2f2f0c8215b956
MD5 220081a509582e8cf1db90227da6f501
BLAKE2b-256 3235799f3583a6ab73d4bd491d7eaf114e370f8e269f0d3ae62088419ad91cb3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.25-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 0b97086bcf39193499f156b1a5f7839e95d4e87110baf05b7013f57f54baf3c7
MD5 fceb189111587db605b50ab1b109a995
BLAKE2b-256 2b187107273e0b0c22fc68d51bd78c0c26fa309ed8fd8931ae645e0263d58674

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.25-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 140fb288af91970ff44054abc3001ac972f3a50d3e7d88723de2808d4f0d3118
MD5 bcc53b433f42988c03b2f7da72997d51
BLAKE2b-256 c274a4cecef97f786c566c0c1e084cada3a08b6d2454d8186fb7b320ca0660ac

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.25-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 3d12b6b4c8bd2cef261a53b471a1f04d31b1d3184fe7ef81a35eedb0258df2b8
MD5 b95b2a0d909e7cf28e101c8635d0a7b6
BLAKE2b-256 7d94fce1ab6c627fe0c81df915383aec4c3a552cefc7501ae6eab2a1ec394d9e

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.25-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.25-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 33773a75b534d605c40fe2d67ffc95697c9c9f642adca1f80f119d2cca88e0d7
MD5 54ebcb2df8c8a50fc9866d041abb0f54
BLAKE2b-256 860bb5e2989d17aca7af4cbeb837026f344620620faa5b6fac92545e9e82973a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.25-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7fb6c4d6d6629b1175952afd625908466b69d940fc581129abc95754cf1d0529
MD5 defedb9894f75bb6b2fad33ef5e2cd5a
BLAKE2b-256 a6edecd6a03e79162eb7b21c9f95f62598863880d967c1b76e5cd42087afa094

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.25-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 54ad3967bf1cc78b7b1b92942dfcd4ea3764981e4d7f173a225a68e55b97c81e
MD5 46dfb3854d5283d5f67f456d2d06331d
BLAKE2b-256 17ec2d8a3b6618814a3b606ddd849f43e49c435c882eaca6fc0aa6c6f7cbe52e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.25-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 16636dcf61c12013d794c289b7e5bb5a3b60b45ec4140d4e8365575412f2cbb4
MD5 864c458d483ab51b970b36f004dc2305
BLAKE2b-256 df7ff13f0dbe4e6a7056d9087ac227557a5be49b802625d46affcea0c8af7310

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.25-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 f6955083d7658fea9edadb3b5bce62d73fe4e75f33663adc8414c43ab6118e66
MD5 b3720c83b3e5dd0f091baabc8f7555b6
BLAKE2b-256 d9b82b86f670e250acfc2e915e47b12bd50d9c45e6bb97d0f700736e675af522

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.25-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.25-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1d5983fdf6aca1a7e2d87ffade7c3f47b69c67fff248a92cc7534acf7dcb8a83
MD5 45f03932849b16f26a2696b91032ea80
BLAKE2b-256 63023a3f47f412a91d1cdd9c4d7c587392a76c416a01a15f82669d1220a556b2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.25-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0a733041074c7879440250563fcd6345f013dd99710cfe3c93f33f228210d6f0
MD5 41b3d3639e5926ea6ddbeb99f9a31a50
BLAKE2b-256 e1d9dc014a4691123518729e957f847a58008b88eefbe1572f37d9c26137f0bf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.25-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 45ae1c639ed99c5d4bb834edd4559ee8e4cabc523203374886e3a2c913008f48
MD5 6ebbf4528e33660032f20e85d5ef7a2f
BLAKE2b-256 007f2f6a982d231177d2819cab66897f58efb98c57024adebe41118515e5b5c6

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