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.31.tar.gz (569.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.31-cp313-cp313-win_amd64.whl (243.1 kB view details)

Uploaded CPython 3.13Windows x86-64

elaraai_east_py_datascience-1.0.31-cp313-cp313-win32.whl (240.7 kB view details)

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.31-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (240.9 kB view details)

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

elaraai_east_py_datascience-1.0.31-cp313-cp313-macosx_11_0_arm64.whl (238.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.31-cp313-cp313-macosx_10_13_x86_64.whl (239.7 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.31-cp312-cp312-win_amd64.whl (243.1 kB view details)

Uploaded CPython 3.12Windows x86-64

elaraai_east_py_datascience-1.0.31-cp312-cp312-win32.whl (240.8 kB view details)

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.31-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (240.9 kB view details)

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

elaraai_east_py_datascience-1.0.31-cp312-cp312-macosx_11_0_arm64.whl (238.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.31-cp312-cp312-macosx_10_13_x86_64.whl (239.8 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.31-cp311-cp311-win_amd64.whl (242.8 kB view details)

Uploaded CPython 3.11Windows x86-64

elaraai_east_py_datascience-1.0.31-cp311-cp311-win32.whl (240.4 kB view details)

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.31-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (240.7 kB view details)

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

elaraai_east_py_datascience-1.0.31-cp311-cp311-macosx_11_0_arm64.whl (238.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.31-cp311-cp311-macosx_10_9_x86_64.whl (239.5 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.31.tar.gz
Algorithm Hash digest
SHA256 9e8340ca26152377a86d286c58ee84884c74052c2967301f49af5e46a0eade79
MD5 408b0c47483dc6ac8c70630112677671
BLAKE2b-256 b215f2419f0399f40a78d2cf59912e85fb6ff6195d200d48c7d0af681b6fa4e8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.31-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ba035c8f61293cc527f07912d83c31a02e45fce745a2a264d35f2a7013e691c1
MD5 9d4bb12e7592c64312a24d778571e254
BLAKE2b-256 c2bfeca59bea3134675884ebc30d2f18c8bf8291204226bd430453c972416b96

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.31-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 5a6f5addd501c22b58de80817474bdf8038e2d14b0296e3667cdf1ed7d451d1f
MD5 52024e58ade12c372aff8bb5c34e1874
BLAKE2b-256 65551bd1da32aa2babb27624cb92a22651c43669b8842cf5c97309f23a7644b4

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.31-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.31-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 54fb1546d6f5bfa829dfbb27f536a47fcb4b65d88bbcefb1ff8a59aa1a59fe35
MD5 d5651ad168c5583755d55efa45d3580c
BLAKE2b-256 9e71405e2b08a946400c4d8b0d3fc54ac0f2424275b70d313446e6f92422a101

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.31-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 074df20430be10a9744ec5fd1989f8ddd457083e38f15a59cb2714253a312e3f
MD5 b9fb6e44b7493d31579d6dec333ae979
BLAKE2b-256 698295a0960e5183b6ef67cdf2e2d17cc443bc8139bcf9527c452149e227054a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.31-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 c7d2ddb6515b846c49ae5f51390e7ac1db4508b8daac7d71c73f9c08a1459e53
MD5 2dbf097582063bc7f67d8648cec23c8a
BLAKE2b-256 51c615da16dcb1488783fa5b6877647ce074843d5839e0b76c3976caa8f3ac24

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.31-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9525b77019b1228cfceaed7b3724d288f95e64d8dbd13bde5f1f2841be03007c
MD5 090407698b9b23e5e3ae6010300a5af8
BLAKE2b-256 cd85937ea98a8d809a0a6e996c27269536bb9fb5d795ce74cdfa8278493ed5bb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.31-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 50688d44efa31babd104a46c94eac76e87cbd619babeed9792cb3f4d36897b78
MD5 141f4ce031dc192e017385744414f032
BLAKE2b-256 5b066d982021fb615ea2d14859e90ee65ebdc8746139000a9c2b4b2257f2bcfb

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.31-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.31-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6c9504be0124d867a7e7eda06aee4a0e66c8ab82eec11335907b7668e738025e
MD5 958cb96f307c229572afc668d67b272f
BLAKE2b-256 7afc207e88f74b1d6acedaeb67b5875d11be9c28847c0d71ea934d0e322501f1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.31-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bc9606ac79d4c586a91e0dcc8e45f0d343a6d5f753a1b3394001724c63e91b2e
MD5 f96cccdd27fc11df6e57b91825a51873
BLAKE2b-256 420800c20e181c45342655cf5e2c62a1c05610f99d7ffc49d15b570b51b5cdc7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.31-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 98ed5985cfab27b8354320a98c9e533f4fa48dea8352ac8d265fe66cf4ee64c7
MD5 85ecd933ee4a603fa4aba6a67e14316f
BLAKE2b-256 83eb3f973664560dadabdf0e2bc1d7a27acff533d1ffb3ddf7c3d1fac72b9630

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.31-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 141f9944b7eea9bbab5f91344fe3704dde548244bb48c6891ee400bdb1691f90
MD5 b3dbd14a41ad60a98111a024ebe86203
BLAKE2b-256 411634c556492f09bce04ca7f903dcb37e6877f793c4cbc96b4702de5028ede7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.31-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 3accdcf25f1e1015a9c737b6323cbdbdd467ca0a0b82d06a110cb34096236cfa
MD5 e3c69f1180118dbcda6a26a3c67a9ed2
BLAKE2b-256 5f2df22b587c6cfac8a44446dfe0aebad2988f006dd70c6fa195a2e67c2ea1a8

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.31-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.31-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9dc175378bbebed4f8d372f3df7b33a9b3e1f8364c808f36ca2cb426b0872932
MD5 2265bef5f7bffe8c8fd3ac02bb0db5df
BLAKE2b-256 691bcbf80ed8bb6cf0bdafc93755d2c66be34798978e9b86fb21970ab7e7f491

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.31-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 82387d631399ae164fe53acb5654f5d81e47be83a2c6181c87e39e37b7e9094d
MD5 27ac2af4c398661122ef33a5fac3c486
BLAKE2b-256 0f586dd1cb496f75195d934c692d8464501f4146ddbf2f06552dd16e3c5b07e6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.31-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ef73fed53a829c025dca3bbf15ff23713b50aa69ef506ff859be7b06a5468ca5
MD5 00d7066975ab6d6d0d795375c5933f73
BLAKE2b-256 94a781865856edb54fb87748e4204551165e4f03163d101c8a1b62b08ac513b4

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