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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.14-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.14-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.14-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.14-cp312-cp312-win_amd64.whl (236.6 kB view details)

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.14-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.14-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.14-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.14-cp311-cp311-win_amd64.whl (236.2 kB view details)

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.14-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.14-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.14-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.14.tar.gz.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.14.tar.gz
Algorithm Hash digest
SHA256 d9d606eac72051cdf4f33d93ecfee2c4bc7c3e100d68edc7e37a15eaf7f22cf2
MD5 ad213b1682313e3941a447d48636af73
BLAKE2b-256 d08a76c4463db76cf9418fbeb0205ce22262103e92fbb8c11c7059868fb29fdb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.14-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 7682727d698bcd5812741795b7fa08ff8cdc6e658780e4cb45ccd23f2ed5cf4f
MD5 4e48fc88b319e18be4e6b12a1e1e748d
BLAKE2b-256 a452380529019713d2670167abaf555f56a451e17b8ad0301633b38d26092bbe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.14-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 8ca301e3bf176adc9f76ec5c282ea80dc1f2aaf6febd030f74cdd736b319e1f7
MD5 0cec8b568c318b8996cb372dcb95820a
BLAKE2b-256 a3f55f081959fb7f574d442ef092b348cce5a4899b6349320e520f76ddb2acf7

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.14-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.14-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 118bc57e920304357ce18d0adbfab0fe61f5206c56109844a16423a093053063
MD5 f2960cbbbfb0e54383569328d4e694f7
BLAKE2b-256 48d7dd14df45158484a2983edd266016a85ced4a685c2b27bf31d28d35ac9e62

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.14-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e6e01d625b93eabc5f0d03b655393030d662a57d4c2eafece55269219c11ff67
MD5 c53ce79104c323e205bfe1977afac216
BLAKE2b-256 525cb58e67d1141a54e6de97cb4f064fe0305924a531cfe24a240f497bd3be03

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.14-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 f252b875f66fd742cf684b308a9d19d9b147c4de4f4c7e192b7a9d0047d4e026
MD5 c99542db816d664e0db0847d0498ea66
BLAKE2b-256 0c97d49a99d187d2bb00e9758ad00da7b1d739eb7947c7a27227d2407bf6f942

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.14-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 646eb4dfec4c5becc3f154c906761b0e97d7c2dcd6aff9a3cb37f44f0fbe7dd2
MD5 b903d2325029ba749d104f4b1f4cd85e
BLAKE2b-256 172b7655dac30e4118a0935645d32cd247b3dd2fb53de811ad38f2d9b38b34cd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.14-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 15d471d6cbc0e006ae57e92b0179a8ca8aa96c53ecb2d4beac3a382cec657ff8
MD5 670a8e1bb1742ea9dfa55edcb7cbefb6
BLAKE2b-256 b30a0681934154b53c1e397307d00ab71d321ff751bf80f12eff11911852d53f

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.14-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.14-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5325200a226ff0160894ea3a0ee77ffaf03db6ea754335fd9de0cd84719e7297
MD5 066f46a1e7f81c5b4dd242be8afea218
BLAKE2b-256 4f970ad21b8ca2798658186e35bd7be6537dae16278ad48c573f6bce337d26ed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.14-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 828bba783e95be2774964141561f802c413b9742f9196ad585bdc01712bdd15e
MD5 0e5470ffdedade85958f409ccc60633e
BLAKE2b-256 9fc812df15a75b36f384396fd8a350d48201ad6c3829eb301bea873dd0c1906f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.14-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 b9c5d4c36fe460fe17847166f36efd3388572c36caca079530e9b1fdb5a6be0a
MD5 1abc28eb04d60d2a84c7d6f7437a1c2a
BLAKE2b-256 4de3345cb5d265f3f025398f676f0fed17d4f951bd609c3967485b8d1133264e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.14-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9088108ed7b5b96381369200137e5d02213fde21d0fc1d92dbee991d1ec4ce8c
MD5 b34700dff11d7266b0abd61084c0a4fd
BLAKE2b-256 ee2f265871dd03e823bda8ac66ff85625dc476191beeff267093935ac17ea128

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.14-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 143d69d858ffd88820294a5728b7aa81ecb73ed652859482dfeaab158b529525
MD5 ca0ae5ea7f8c76ad3682c0101312daa4
BLAKE2b-256 6c6b57f0799033175680e7cd77ea51c6db6628e20078e336d9ad076ebc3d1af3

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.14-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.14-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 399c5cc79e6c25d44f30fb03cd13f1bd1a137f57787b08d7d9bee74d1392f81b
MD5 20193ee91d2bc682ba48e9112cafa760
BLAKE2b-256 ed83a1b849c7d91c23f8cf02946d43e08a112b8dc9bc3b015e23e8f08b65e8cb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.14-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1d2863e7217e645d56b6c10268f2254eb248290789bc50e516e45426a6dc92d6
MD5 a574b3fbad8b53bbec4414ce8a3e4b8b
BLAKE2b-256 1d879496d351be51d9cfb2bdac914f46f1a075b35505ce4574983b041e3d6e38

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.14-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3bb5f0ed3aa24678cc870a1d2634769b7cc685ec664961ba54ad45534e323098
MD5 2d06efe2e1e9b2224575ec9ab6e9f2b3
BLAKE2b-256 734a2bf5b3fe07839c4086579c2600bb8f3679c50714f9c2d5d0f578ba5a9c60

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