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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.27-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.27-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.27-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.27.tar.gz.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.27.tar.gz
Algorithm Hash digest
SHA256 a75c210252bd317434a47ed4e94bdd6f22295692e2bd3e9b17fb8443fc93434b
MD5 fafe4bc28b6ccfc19ebe7f344fb09b40
BLAKE2b-256 697e4318d772d70f5e2f727542764e3f5c7ae25f51f9a520455506fef4063514

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.27-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 eb1c352eccb556937051574bb2220c1446b6545abb0ab07c559fee7f5eca981d
MD5 d7ab78d30208c185edf7e81b43bbb3fe
BLAKE2b-256 db7e39cffb4a5cedf92d39367f01887d80be5b06aa6da859a10b377d309bc399

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.27-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 5b9779768554b12ab15e48640451ec16d734d35528a489fb484c9f64b24d9ff5
MD5 586ab40c097247795d5878c65e88f216
BLAKE2b-256 50e944a0bae254a8f92ccc8009bdea895dc6b15cfd493c7d68d513466cba1cf2

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.27-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.27-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 67f4d2c49eba1872211b766631f3dcb40dde2d5c3cda4ee8496e1926084593b1
MD5 6662b1a3b4f2652ce8cb65a9380dbfa6
BLAKE2b-256 54438976c08d06c13c9e03479a5ba063e94d5de9df3e70c4a5cc52e0689f3d1c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.27-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6b18d224c7a3779bacdfd5d920bbbbca8e89367c07fd0f3bef7d65aee04ae0b9
MD5 e659ffa57dfbb29f4b7c63b580acf354
BLAKE2b-256 3b9168c765b34b8f8329ab893cf89f5dd32b96acfccd9fa386b5e4ccaad290e5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.27-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 99bd30619289b02a3b47ea8c7d98ff7657e4f1de7a7a93e99137f9ffc5d377a7
MD5 7863551cd0c5159b20c4511c873898cd
BLAKE2b-256 8fdcd57ac2f4d4e79c382c6ed2dab721510a2f6d7af9aa9c5843810dcdecf12b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.27-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9259d314f1ba299151eb240cfc7c09726e5bbe0816b7fd33e06f913b0fc734f6
MD5 aaeac03d2592a22279683d97ca79fdea
BLAKE2b-256 63a2dc64e67c870564f463e900adf61bac3816e4a64f79caac9de32394127be0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.27-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 04514f29f5d65b519de44fbe4605c3d43be987730fa8ae8652a28e3ac6bedf1e
MD5 2492b0b94ff4c6be850009f8d996ab87
BLAKE2b-256 d54b5f991c8786b08daca706a2cd355d06276306c425ec6e027884d28991a220

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.27-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.27-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 77676e927aa8b1bad0b0c4e748af8e389d6459714f7d9c8cb2cc5f902fe0c91f
MD5 c57c8a49a449a2b9caa96595b345c929
BLAKE2b-256 c002003b582e6dac484711997a4e14df4e1810b44d5d9a67cceffc2891fc1001

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.27-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b0caf12d1eb228148b3aa9b5141ed7f41dba2a17bb7dd9c600fdfc969b4581a9
MD5 0502d6b67593fecc2fd334951d9f3629
BLAKE2b-256 09096fed192003037dc9279ad6e361e726ef0156053d411450ae459e84cc46a5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.27-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 d58205116c1d9e9b61e53279b0ba106eafde947b1e129b3b9cbdaeecfc23f9e4
MD5 ba2171889997c415ac3b251f12546ace
BLAKE2b-256 7543e2b217257dd7839f1040e952c1e685031ac1521574588bd1a5c698f0fc09

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.27-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 88d6ff1a5fcc6f3ab6243635e0e1d8e51a5f1f0c44f8858b3af5febd2d87923d
MD5 fe02bebab7ffb9c5c1b014f1067abb5f
BLAKE2b-256 3762590bd3292ce0574c2636677bef39873f1ba41710fee11554713aa9e1a1db

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.27-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 5c5e56ccfaea90075434560499e80a98411379d7db2a1f73d6883612b51c14e7
MD5 d7138ed24ed3496cdbd443b84b2a61d5
BLAKE2b-256 afe9afa01649825339c6d648159c66a41bd9b6c37f962797bb7b8fe6d4099e28

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.27-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.27-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 665e0d93c95e56a5491fc0b24301ddba0c17c2e4cf5d5c39de27115c8f93ffaa
MD5 3806de899d299a288fb99fe0d1371c89
BLAKE2b-256 547c1e172bb403c77a54b68fa05ee9f6a3a4844e62b22e5e89a676245197ded2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.27-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0a5931cb622a122e6eeea433624c27c1a80e3bcf7c97095c8b29848c939057b8
MD5 b917aa674ea38e5f08ecdca4ac05d8e9
BLAKE2b-256 35ded13eb4aa0ecf187a0f8fdb4a69ceaee87d27ce8918bff1cf8e72597c0ab9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.27-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 fce8fb2ffb76d8a6a89e4384e174aeca3dc9348b41b53aa11a5de62f01b67fa8
MD5 7a1da8501b6c8eb563d393acb7fea100
BLAKE2b-256 a46ba11b7a1f98a755f3dd77459fa84f79fef4bb49ec15a858962d6179cea943

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