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.13.tar.gz (549.3 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.13-cp313-cp313-win_amd64.whl (236.5 kB view details)

Uploaded CPython 3.13Windows x86-64

elaraai_east_py_datascience-1.0.13-cp313-cp313-win32.whl (234.2 kB view details)

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.13-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (234.3 kB view details)

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

elaraai_east_py_datascience-1.0.13-cp313-cp313-macosx_11_0_arm64.whl (232.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.13-cp313-cp313-macosx_10_13_x86_64.whl (233.1 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.13-cp312-cp312-win_amd64.whl (236.6 kB view details)

Uploaded CPython 3.12Windows x86-64

elaraai_east_py_datascience-1.0.13-cp312-cp312-win32.whl (234.2 kB view details)

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.13-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (234.4 kB view details)

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

elaraai_east_py_datascience-1.0.13-cp312-cp312-macosx_11_0_arm64.whl (232.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.13-cp312-cp312-macosx_10_13_x86_64.whl (233.2 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.13-cp311-cp311-win_amd64.whl (236.2 kB view details)

Uploaded CPython 3.11Windows x86-64

elaraai_east_py_datascience-1.0.13-cp311-cp311-win32.whl (233.8 kB view details)

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.13-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (234.2 kB view details)

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

elaraai_east_py_datascience-1.0.13-cp311-cp311-macosx_11_0_arm64.whl (232.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.13-cp311-cp311-macosx_10_9_x86_64.whl (233.0 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.13.tar.gz
Algorithm Hash digest
SHA256 8f692c53e74c5fbbb5b7f7425914b182f9e726c96948847b6753299040e7f6ae
MD5 9fab5a52b0fefc1a8da1efad10dafc1b
BLAKE2b-256 e0adbc351bfb92936b0c52701fa1e2e846e6f1ed32a1271449b6b67de0271f16

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.13-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 b7492af47161dfdddf7ecb2be1578655d7358a5d2c346b8e3cea185961d7a84b
MD5 0162a3f9e5d4ffbc82fd24b2b25a478e
BLAKE2b-256 e130aa9b2f006ef1c7e2381417eaa3c0828583cb14cc9be7fc15324c9fffd5cf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.13-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 3f49eb4bdcab9b9ece3a8d8fed24ba1b36ea9fbdb3d03d7be20512009f1861c9
MD5 2ea70f745b66f491392685ce62f5362c
BLAKE2b-256 6c2e4c2f4c8df363e496bc0e97fe2c5ff47bcd4b3afb2a74b373511f2fd5c66e

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.13-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.13-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 789a36508392f8edc36723836e01ff2d71ed58e2fd449eee6039a9a6d3fa256c
MD5 d56c716f7b4b3796ba5a7516941bea9e
BLAKE2b-256 c7b7b0dff728fff7587b53b310cf91476c5be1184029ce6ae6ed881854c92458

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.13-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 09fa5c887fe29b834fb25712f494127393ed88416552c78845b4292053275c34
MD5 d57628d18861e68d278247b8a013a986
BLAKE2b-256 17d47295f4bd28abc8a81d00d957d91765a3839d131a180a814ef9e185b21a9c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.13-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 83acabf3ece4ff2d43957b5d16bda7f263e93ee39bbc55c103f0a98c4a2f3ebb
MD5 c117232905208c9739330f1c356ed9a3
BLAKE2b-256 e3b19820d216db46a74e2fd8c34f56974fe6b40385838b95f102a5d3b87c7d39

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.13-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 1e2e294ac22d6d4c22b90dd4571251023619311a30d6b22d4a88464928fabb7b
MD5 b4d2584d004b6440733300c442cd6424
BLAKE2b-256 aba7c5f78c0b490cbd98865ea6a95351a7937c4acb50b6e1bcc0e0edf7c40557

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.13-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 d75b9300c9aca2c13bedfe6fbfa61f5ac188cc518b640f874da7093ee66324a4
MD5 849228fdd50df112bca6c2a59d17c104
BLAKE2b-256 e09015a3f67df69a49a3e2d21f80603392c8b883c951eb032ecffbe4894ca9bc

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.13-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.13-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 19244e83429cb181c2005a196f639572ccdc739f4c42a9a6cc345e28d013dc7d
MD5 7249bde5186a10c275c418ec0e8d46f6
BLAKE2b-256 98e54f631c3ea573d56c051f802eaeb4105e435b607e32cd7d744c32ceb822a0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.13-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 63409c7ec65f9ab80104c5d0888fabb4a38f50d366fe0c91a9d98226e664e494
MD5 9d029a6cee929cdf7b99c5afe1f3b68b
BLAKE2b-256 322b0821f1404786cda6ec4cdce2cd4968545614aa38df1439ca01e2465d5cb3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.13-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 5673c8e14b75e243a86ddde0ebb1e5c5c08bf0de1154b33abb9c11b76366e040
MD5 87171f8419522d2a8c33e5a231ea57de
BLAKE2b-256 461a4b453c4ad1d8e66d4501306bfe7aa8e8729837ce98ad3725b1f37f633693

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.13-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f4d7253c03d3bccd86d78c87d5e688601914349bb34107054334c143ec1bc7f5
MD5 4d8108e0ec374ede3439c453bdea2fbf
BLAKE2b-256 daa8c313a55618d3f2d261e8a020110569b238b94356089ae3147d46ed5ce201

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.13-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 7c7dc121d170bb4a61199c8e6fd7e0f4e7f795fdfcfad7ac7346f730549fb672
MD5 085916fd6b5ae2a846e5c5b04d3da2c2
BLAKE2b-256 fcb787ce0baea4d0147942cbcaeebe7f32bb905136a64447dbb13fd4e2438673

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.13-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.13-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 54e7072f0c94035eed1d4c0b65a633bd144737aa09f5c9c4866ffdd22aa7f418
MD5 fcfaab0ebd98b84421f6b8daaedf4822
BLAKE2b-256 de6c8a4879a1cf3502c849de9fe0e262aba4ef5c0a02cfee084776d5e5e859a0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.13-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 23f4cdbec53128d0839509f62cd049648bd29a09f6976047c5a7d1ce8af3c91c
MD5 4f712c5dde3f66dc9fcd5ff53df93fb1
BLAKE2b-256 5c0fc03413db77f642b31874359288c7855d806a84dde2da1ec97fcaeb17a5e4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.13-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c2307589d95e93d31993d54f4158718ceb183223e38db28e99804e3dd15e97c4
MD5 70179160610cdac2267bbae2c2daa685
BLAKE2b-256 756e98b23949e02f6880e99edd6f17f996fe0d70eccc6af3fb6889c0b469ba9b

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