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.30.tar.gz (564.7 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.30-cp313-cp313-win_amd64.whl (240.5 kB view details)

Uploaded CPython 3.13Windows x86-64

elaraai_east_py_datascience-1.0.30-cp313-cp313-win32.whl (238.2 kB view details)

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.30-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (238.4 kB view details)

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

elaraai_east_py_datascience-1.0.30-cp313-cp313-macosx_11_0_arm64.whl (236.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.30-cp313-cp313-macosx_10_13_x86_64.whl (237.2 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.30-cp312-cp312-win_amd64.whl (240.6 kB view details)

Uploaded CPython 3.12Windows x86-64

elaraai_east_py_datascience-1.0.30-cp312-cp312-win32.whl (238.2 kB view details)

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.30-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (238.4 kB view details)

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

elaraai_east_py_datascience-1.0.30-cp312-cp312-macosx_11_0_arm64.whl (236.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.30-cp312-cp312-macosx_10_13_x86_64.whl (237.2 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.30-cp311-cp311-win_amd64.whl (240.3 kB view details)

Uploaded CPython 3.11Windows x86-64

elaraai_east_py_datascience-1.0.30-cp311-cp311-win32.whl (237.9 kB view details)

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.30-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (238.2 kB view details)

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

elaraai_east_py_datascience-1.0.30-cp311-cp311-macosx_11_0_arm64.whl (236.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.30-cp311-cp311-macosx_10_9_x86_64.whl (237.0 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.30.tar.gz
Algorithm Hash digest
SHA256 0d9ce2a9655b1fb382a747a76821f4813c0da419e78190a28a59045352f75190
MD5 3d640e9d0cb424f910f8329000e1172e
BLAKE2b-256 fbc477e03e351a3a54500e64c458b806882eb0b6514f71c86530121d6e1bc201

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.30-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 44a692887ea8b4691de05f179f5dfe67f13a6791db62e77cb56894594948ad73
MD5 75ca4d694bc5808365fed197b5a8d880
BLAKE2b-256 9f3661fd947c0e1a90d6f3459b273d060bf657986b511de15ddd0850dfca4800

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.30-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 bb6667aa1bf486db1d9aa93a74da3526532a9d5316b1f11f7fb1a1a88ad8e31e
MD5 64ee7d272d7f8de5fd5013275e1e0e24
BLAKE2b-256 25d7d7ec537f86b403478a13704a1d9ab639929902f1e251b74116fbc929ee86

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.30-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.30-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4ee7c64b4dc0db4ef803862e74cb7473d617bf9d36f2f74166b5dff6cbc002f0
MD5 fedfbff8f2e76228a674e08e7e624b69
BLAKE2b-256 ce42dbfb22344eac71203e5941e7573fd593635335914fbfd0575dda7c3dde7a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.30-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3d0a54cd40d690e3b2ce65e65a5006c65d644af4dddd6284e97836ccfd22287c
MD5 c8c824007a3409b0933a01e5dcec624c
BLAKE2b-256 276f15b524724910182eff62d1442bdee20f1d5b94d171aa6575c441d4ecb3fa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.30-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 b02641b73a3cf7e8844bc3eba7833976808704d5ffc62434deb06f3074303137
MD5 8de27a0e3f5912c7b4f75d1f870aac06
BLAKE2b-256 4810cb97444b4f698ea3b34c14035fb9a0002f3f5a77d9aeac42ab3085939a3d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.30-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 013ae535f7838b924ec25f035772f216caccb31c68cb37ac7ba9127b8e1b17d8
MD5 449102d8d1482303623dd1e419bb8e18
BLAKE2b-256 d37b35df4055749ed314e5f3c182147ada2c3c59d16640bdd25cf8593eee605f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.30-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 76dbd2367f4fb0e73a00620fe6342a780c59e0d60151f15b20e7096d29763f35
MD5 1d6f6b9d344fbd012f3e9b89793423e1
BLAKE2b-256 3a8941e82955aa656f7c765680f7965652169336e1f0a93a1629899c805c5dce

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.30-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.30-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a270eeea239774f44ce50f75975d79c0f68df6ad7c32928c31e3af6b7c08053d
MD5 25819bd27280ac9a0504fc6e51e28932
BLAKE2b-256 afc9a5b488dc510bd7e18a728554ed5054351cf7dcb14e572cd739cb7a254a47

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.30-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 042f05c8b3843742150d0adbcfec4685db7983b6bf1505dbdc2c3f789e791422
MD5 232aeb7c7ae62ef3a90af4504445a74c
BLAKE2b-256 27b78a1d90534bcf65d91d48b07676a792d654f1823e4a87452f1f5396e02e9d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.30-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 4abc6fee6e49712f2a591dc58b9e13da1c21818f83959ee02da7c600508a0421
MD5 4f3237e4e8b47148ad5804b515f8f407
BLAKE2b-256 8bf0c8d8b78ecada721455eb68d940d67ead22ab442fd3ef91bb020094239911

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.30-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 82ad11106b5caa54f1cbca1d75c6383d3624eac422b0cb99e89f2a28ff2ac7b5
MD5 ed367d9dc76b815f2696e9782f014c93
BLAKE2b-256 6505222db1e9ff1e7091a6a482e63282ba36c2416ef990a1769629ca2a19fca4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.30-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 99b782c57030d44aa229f70607e9c57c9c854c62709cf1d59435f28335396835
MD5 6ad5f126fcc4476673b22132eab518d3
BLAKE2b-256 c90d4e494cb0e67f99b139399ef0d016eabcdae28f0f1aad553d1f4b7d1e5c83

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.30-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.30-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c7377d77dd5dd05b1720107c77d2658efac6208ec5a097735f86a37d0a7096d0
MD5 f031d4335b56d23eaf618a15d735a14a
BLAKE2b-256 c474b5abe201e10335a8557ef2d68c1c09f80dab2070d71887afc9f19cba9c97

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.30-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1690dd4aaae74f25b886b1431909c09d274af1c121f231197c554488cdeab62a
MD5 f6cf70f001336dbd83fbd6ba325b3b60
BLAKE2b-256 a14d9d40bae62a2f4dd80b606f19f01de9c0d034e2f655218502da7d3bd5e228

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.30-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d8c75895359aa059a5de4272bab066ade187a8b8fd8eb94b8ed1f9de84820c79
MD5 6d1112f69b00ed63dfe1a6de765fa39a
BLAKE2b-256 9610a85fa483a6f74d488e40b891d1b14cc3edf0487aed12e859565ce3daaea3

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