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.16.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.16-cp313-cp313-win_amd64.whl (236.5 kB view details)

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.16-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.16-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.16-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.16.tar.gz.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.16.tar.gz
Algorithm Hash digest
SHA256 f1f0ff70c16e77a0d7d7f3eb2af2e449012464886257d044757d079287e97a0a
MD5 047efd0a188d22539532c239394841c8
BLAKE2b-256 8ef9769f9f3d4f769e9ce5955691ca56eb8811b25d891aa9263ad5263812c6d1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.16-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 70173776af8a9f0a1471105e9a3c78c67ca3087445f97f534f78eb05d4e8faa8
MD5 8bc1bbc12b40253f2e78dfe5c58fa263
BLAKE2b-256 292e190a831a76b58e8b0c867494b6295c55cfd1b90a5a3bcc177295de945966

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.16-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 d64bbaf5d8cb4033fe0fdc53afa3c29c99b4d559681b8b8f49af840791791750
MD5 65cb4d1ac111c422fbca96aa4e41cca6
BLAKE2b-256 58e36b66db877787908636f76f3a515f6044f4c7eabfe3715b4ccb074ce14a47

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.16-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.16-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c63658080a11e5311150e29ea01b8eac0349d4919816efc3e2d50dd049e93e75
MD5 c829985a29438bce846f3bb00298e5ae
BLAKE2b-256 f6d6d9497d74d3ba6f5df8ad2983bdabd8796f2c5a6c4aafaef48a54cf1f41e2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.16-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f430b40a1b5bc6dd5335835b0d8aa24681a8db2d2200b367b3db2040d8557386
MD5 a7668d1dcc85a1179fb138dbe73c540c
BLAKE2b-256 5534b2030d1a75ff42d75df5d3576e11c663f01d5b25a3bc1290fbf53d068d81

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.16-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 4ff854560618740fd1f15e1e057d4b6db9f3578442950042db6ed84d4f27b8de
MD5 123170cb1252ef41d6564b61822eab82
BLAKE2b-256 998b8ea97db1ae591298b2813572e16185dee329886f5f9cc7b3848b6648983c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.16-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b8906769f0b3e65026005812197c4b6d489e908b1461b2ca1a4e632b8af9cb5c
MD5 6c2e2fd395267a99a17083ecfc34ad7f
BLAKE2b-256 c8cfdb454369e1472ae3c1cc3c8c4c45b866787dd827c8cfa4425006f3e0e21a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.16-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 282e4b8023a7109ce4264e8785e7669b5cfc619ae532e45e13ca7cca81de7991
MD5 ab6850c6062d0eb7c546dbd6f9b031a3
BLAKE2b-256 55f3da2efc3bafced5b19cbc6ff4a882de121a7e6ede6b608a5b2d40f257a174

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.16-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.16-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 463f3077bc01780a83cc9084f67a41e1ece80a4c87ce3748116f12a366746801
MD5 50d4943a1b70615c307e76e19d2b3270
BLAKE2b-256 f183525833829d4b4f621dff8752d88328f9eb39cd89bf108c1c8e808d5e7c5d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.16-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 789eb611eea5fa48ca90679189570df63e2b05a9c2bbdae6ff6e904bca10b65b
MD5 999cbd3d9c23e012619d358c26e749fe
BLAKE2b-256 5493c431871c2a5f2383fb122b924d0c30f68b02cae29788d62bbc84639d7155

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.16-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 917dcf9572ed4a0e9ec22c8f9062427076764febbc071e8709fff36ba9ee13da
MD5 fc214f36c782db7aaefd0ee166639884
BLAKE2b-256 97e2bac338039de3565dd2cbc3e9f666fcc89a2cf26d0bb065a73bb7b2604a51

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.16-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9891baba6bf382276a6883505d23816618f90f91ac8f26e276376c4fc7435854
MD5 5a1f2fddd230e9f8638a738ea1821b43
BLAKE2b-256 d60ef49975c43364a4df73ab3b33430798385a801e5a1b8531320fbd508f3d29

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.16-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 ba053adb891c7a8d1bdad7dcd579f79e7e057f104747d16ae297fdaaecabb1f5
MD5 74cff1d6edcfea4c224b7b1cb5a594a3
BLAKE2b-256 f5b8095ec1984103a97b70997c004d7d859a1b6a7a52eabc104a16a095eedc9d

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.16-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.16-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e4283c3df20ad83a5c02d371161f245cb61c648799bfc83209a628a284edbcf4
MD5 91690955c9ff5312a15c145f75a1dfa2
BLAKE2b-256 494b72b9418dfe494b573c571b2659559241209e2c3142b470e7e362b6eb6d65

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.16-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d5260fe7c624bcf53946ec1a6aacfe5550167fd2c94e5e660bae761101e97b1d
MD5 01db62f67c0e390f3954a650de9b9ad1
BLAKE2b-256 8dfdfd3a0ab0df1c98bfb2c660954e76857ee82e7885e630c928debe2148d0b0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.16-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f8eb3a275a05ef87ca3233378285495825e84b83606a79b98c6e6d305d4ea60f
MD5 1380cdcf7d01961898ae01e3dfe0bd8d
BLAKE2b-256 f55652c09e42e7ff0f03424e61cbc1028c13eb3c7522aa8c0ffafe9c85b162c2

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