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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.15-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.15-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.15-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.15.tar.gz.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.15.tar.gz
Algorithm Hash digest
SHA256 2e5b79db0367f3bffed0b6a3ae5ed1d55f9208e1fa25c831b1ef1264969bfa83
MD5 e15a6d6f29da4a50e87249e4afcc657a
BLAKE2b-256 f16e5a6770ebe3fc3b64423275873e7bc184333fcca2b73fd216250b751d9ed7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.15-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 c12d83d00759218775f8cb465e5eef77a61c3eca6be9547ee2a4a938a33c04db
MD5 a7c8ee2404fac3ab32eb2a6883f461e6
BLAKE2b-256 dcc52e3425655be49569d8dda75468827e20f2c587417832791a876526e21e5d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.15-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 d2ab683390fca63f2f8c06fd71101385a3cfb9b76bd893e25176d293f1d3d7b5
MD5 f4209a7357dd11d86b570246d6e392de
BLAKE2b-256 736d212e252a3a60e15a369ab6b0f8fc4e638e3afd0a4f6b93bf3d8234bce870

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.15-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.15-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a30acdef110487db0be017415f439dc6b13c7b5a72ced0a22b9fc41c4e6947fc
MD5 048e397ec2cc57a2b1ea795e32e9a4cc
BLAKE2b-256 bb46609529a5a27d83bed5a0d03bcaac79a4462e98c4e2e79246385af63c9310

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.15-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 329791b107900406cfb84e158e8b9444bb51a981e77ad148a48f01ade10a21d4
MD5 113739c737db7079558ff4be54d2b53c
BLAKE2b-256 2c6afff3f55fcf403789ef62e605ba8e5df12dfced75c12695105b5f6e9d7db1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.15-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 146a4afffbc50b7843c44a313437a405c86cb629e0c7072ed0cee4ef44188e5f
MD5 755e2df9b7f681eb00de117e03a47de3
BLAKE2b-256 54304ac8f5b7af2351a91d2cad45148128123a482874d3a5cd62dd1bc0a38848

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.15-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 58a9585096f56e89a1a2c416e88ac28ab568d35947f416e59090e9f492ad10c2
MD5 54dfc9e23b39e04d493f6344a5b0d232
BLAKE2b-256 c413405430f450f07366cec7062dda241bd286219b0430adc8fcf727d23736af

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.15-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 d73f897de3133ff87be352ff7544fe0aad2d8d9018a6df3729c2cfe25d4cf35a
MD5 5fed06c260e244eb9018db582e5f3325
BLAKE2b-256 8976c932f94dd7478452b0f35a0b3be09a8a49f6a2900d2902fe67221650cb24

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.15-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.15-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7107ad5a8a8d90f9621589aaccce25b1c62eaaff573e00aad9f6f82fc12e27a2
MD5 92f5e8a099742eae6d2479bb4b4a594e
BLAKE2b-256 e01f47a43c5c719df403984cfc9d7832f09262d02552c9996f27484f9cef5762

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.15-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 accf23d9d24e20cd6f86f994c414d7752d0ecf934abeac9e04d40949db4767ba
MD5 561f4b17de548cf8fcc184e21e61a535
BLAKE2b-256 0cc63c2ca72811b8ae43b6317f6c912a002178c40a923e2476af0a2042f56e01

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.15-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 0efaff032822698cf4abfb0ac73afa376061660b62d399fe8fee8564e1cb0389
MD5 cde60d6a24eb0be10830193dea80ad6e
BLAKE2b-256 0acd50f247d9039d94198df86840b897574b23180f927c822d9e9fc70b5c36b6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.15-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 08794e2dca0e8f540d0518142a3f178e8af7178171e3a1b5ec52149448e5df43
MD5 d65c530d9035814e9c5ff3e6c21f807f
BLAKE2b-256 9f47a62d908b1198257718829b8add6a9351ed31acc0a2d286a9921fd248c479

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.15-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 eef7cce40499ee35696fe90003bdec6cf4e964f7791bb7c2182ba27a668f59b5
MD5 37d63ba3dc1ee6f3a5ae75afc034c155
BLAKE2b-256 d4052badb74ead609153a422ba57748716587bb3a4fd4702d7014304ce7381ff

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.15-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.15-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0651b3146346e654d7d0a6489492627b86baf56319e546ad44f3d86a127fe6ce
MD5 55d3f5a9ff5e36000af9848d4d2f1f69
BLAKE2b-256 94b423e2d2b8ee872329695401cebf79ccdcb04c8383a18efcf4777b90d7dcba

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.15-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0f958a26fb53ce313316c257699f59067a8f4fd8919f6594938b63607417ac53
MD5 834032bda7787545d6a76d67bc9d2be8
BLAKE2b-256 4e67221c5dd1be13655d4f1d2b89b4112e61306bd3f6bba6adfd3e7e9aae8b55

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.15-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 476dc7ffd5f61d281366dc9497ea6bb2d2a1ee818e88c83fa87beb32110ae71d
MD5 552f1db5a03ea9346c3c4c6a44b784cd
BLAKE2b-256 f28a5b8f83b24c331042bbcac207c384a9f4ba69497cd300fdc20d1d5b940435

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