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.33.tar.gz (569.8 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.33-cp313-cp313-win_amd64.whl (243.1 kB view details)

Uploaded CPython 3.13Windows x86-64

elaraai_east_py_datascience-1.0.33-cp313-cp313-win32.whl (240.7 kB view details)

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.33-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (240.9 kB view details)

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

elaraai_east_py_datascience-1.0.33-cp313-cp313-macosx_11_0_arm64.whl (238.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.33-cp313-cp313-macosx_10_13_x86_64.whl (239.7 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.33-cp312-cp312-win_amd64.whl (243.1 kB view details)

Uploaded CPython 3.12Windows x86-64

elaraai_east_py_datascience-1.0.33-cp312-cp312-win32.whl (240.8 kB view details)

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.33-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (240.9 kB view details)

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

elaraai_east_py_datascience-1.0.33-cp312-cp312-macosx_11_0_arm64.whl (238.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.33-cp312-cp312-macosx_10_13_x86_64.whl (239.8 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.33-cp311-cp311-win_amd64.whl (242.8 kB view details)

Uploaded CPython 3.11Windows x86-64

elaraai_east_py_datascience-1.0.33-cp311-cp311-win32.whl (240.4 kB view details)

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.33-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (240.7 kB view details)

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

elaraai_east_py_datascience-1.0.33-cp311-cp311-macosx_11_0_arm64.whl (238.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.33-cp311-cp311-macosx_10_9_x86_64.whl (239.5 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.33.tar.gz
Algorithm Hash digest
SHA256 2f8ff7ad7ede503c530b5157685ae60da9793952a1c6c058c492a09df170bbc5
MD5 14004fcadd439e60564f1404eb6bbf51
BLAKE2b-256 0671315f1b9d8616aaa8119d2a3f8e6aa0d558d753dfd52df45c99223a2a8559

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.33-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e66c878ee85b0616bab3e798491005d9b0e13b01e7b92a2c4013caead739b2dd
MD5 bb72af6759d76997168055aa6829dd73
BLAKE2b-256 3a5a8b30fea807a92b0c27cd22fdef608f69949df3404e4e3696344d8aebe459

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.33-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 112154cd8adb72da44071b6600c5bf0e2aa8895c9ebae53bffa4ab426eb7b01a
MD5 a86db6a1a5d3c3d6e2d99aaecf70a35e
BLAKE2b-256 b86a3c595179e812b0bb9a3eb6ab0150bb74baee46a55c377e5793781e76a1b1

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.33-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.33-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5ed7bc6540fbcf56544908e16c5077379e93d88b091a2b799c25934ae1dffeb8
MD5 38c8f87b3990310675dba97c00e808c8
BLAKE2b-256 1b1a17be07c277491a14d7a078d224dbed263b4ff248c9d154f8a6677c869c12

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.33-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4704ca207e1fea7d595800199e42c200ec395dcdaa71a2a4715ff53459b3c4f8
MD5 e01f3eabd090bb54187ed119257d1ed5
BLAKE2b-256 74e9c8d9aca35d9671f498011416a8febeea91a66551cb05b51fbb2d2bd75166

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.33-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 950817332c6a0922d3641f3c845ee46a2cfd98a2d037dc936e310163fb230316
MD5 a15e6d1d9878f06aca7f616336371d32
BLAKE2b-256 5d95bb37d3c74434be94a6dbef9676af53d5982e0dc38bbd1e13ba3cbd613a8a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.33-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 8362216b16cc776d050b2d5a8b7dcb5b56bccb5d877a8cf3c92da5ff27c501d0
MD5 dfe41f3b7a10d41cd8b93d4b7c5abbf1
BLAKE2b-256 9c9e0b84acde5ec9be535943c69d87b79099359d03901290bdff8910422ddc10

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.33-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 258cf62830d772b20f8f07cfe0bd5d4f4d634c898b5dd8f79d4e3f8b6dd419c7
MD5 fc862af7971049aa887a03e4e2f6ff43
BLAKE2b-256 a22fb3ba8bb6f81220ececde77e6acd3874a0804d8ee11c6230951fc7a3a9264

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.33-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.33-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 81131d42a85d0ed43a8dd8a14bb69e8bfd57eecb6026776832bc975ed6b16100
MD5 746ac59b820384be526d8d1f1bce99fe
BLAKE2b-256 790eab8ade6ebf900052ec1c3dffa66998b29e6be9ea82181c3ac417eafc9262

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.33-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b9fb5ba75fe825ac5f5b323e17883565ba5a76a36e8c59256c0be0e111ce49b6
MD5 88f2185cfd09100a191a85183150ae12
BLAKE2b-256 444a43a01824e9f524deb34dfd0b5d7b2c4ef33108931a3d04c47cacc79459c0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.33-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 3a91ee5870c29e7ec892191f17ebd2dd0ad9fdbfc7f28b1fcf54f27d93dec893
MD5 7f0b92292449d6bd6cc986fd0c9d8beb
BLAKE2b-256 7cf39834eb4a2b6689bacc46b1cdf801042bd3e943af6c565c8cee36154a2c78

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.33-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 bfcb6981fdf83d5e9eec26a3915745f4b92d8a44e25e8d7b02c8546267bebfc3
MD5 4c646d3553d83125d4bb23456d50d0cf
BLAKE2b-256 d9e3cd362a41fe5ba8cd11462ddc96991c2013d7290c149942fa8afbee14b23f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.33-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 7210bc9d0653678062e2ff4c668c965f24732a9807f482c8ed677c27c65cdf73
MD5 6c5bd05f84302103d273ac3ced75c626
BLAKE2b-256 41bf98a8ee0ca96ef4299b1ed3e1ff8324e87332789783a544d44ea813d004ab

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.33-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.33-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8e4e2724d254bf8f6e61e2b0b9d02fef4f966aff52b3c9e426dcd0dc3e5ffeee
MD5 c640d8c5c82fb0cb0dfce0c40229fc9e
BLAKE2b-256 957c7fdaa66798255a445b8cacefd4f0bd11447504518daff41ca93f0db8d887

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.33-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 290eeda0a0640542a57621d4d855cdf26a8ee05e4b5d22d18e4c5016f6393691
MD5 57a0df931492397c293efa4b5efb2109
BLAKE2b-256 9570b0d049797d923738b85b8fab47f698bb196d1c17e5ea22fd7ceb685c4eae

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.33-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 65a7080bc77b6618489a88b7f070f4a6ab550679f3ce2aa2830e0276f1fe45b9
MD5 449d7cab3544835115ad7cc972ca963c
BLAKE2b-256 3c8e981a314bf19a90abfd5eae7971d58351355df4d9fc4de5d65aad980bc1a7

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