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 Causal inference with DoWhy, EconML, and PyALE Backdoor-adjusted effect estimation, refutation tests, heterogeneous treatment effects (CATE), ALE dose-response curves

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.9.tar.gz (535.5 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.9-cp313-cp313-win_amd64.whl (227.9 kB view details)

Uploaded CPython 3.13Windows x86-64

elaraai_east_py_datascience-1.0.9-cp313-cp313-win32.whl (225.6 kB view details)

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (225.8 kB view details)

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

elaraai_east_py_datascience-1.0.9-cp313-cp313-macosx_11_0_arm64.whl (223.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.9-cp313-cp313-macosx_10_13_x86_64.whl (224.6 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.9-cp312-cp312-win_amd64.whl (228.0 kB view details)

Uploaded CPython 3.12Windows x86-64

elaraai_east_py_datascience-1.0.9-cp312-cp312-win32.whl (225.7 kB view details)

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (225.9 kB view details)

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

elaraai_east_py_datascience-1.0.9-cp312-cp312-macosx_11_0_arm64.whl (223.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.9-cp312-cp312-macosx_10_13_x86_64.whl (224.7 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.9-cp311-cp311-win_amd64.whl (227.7 kB view details)

Uploaded CPython 3.11Windows x86-64

elaraai_east_py_datascience-1.0.9-cp311-cp311-win32.whl (225.3 kB view details)

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (225.7 kB view details)

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

elaraai_east_py_datascience-1.0.9-cp311-cp311-macosx_11_0_arm64.whl (223.7 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.9-cp311-cp311-macosx_10_9_x86_64.whl (224.5 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.9.tar.gz
Algorithm Hash digest
SHA256 c151ca63ae9cfef4ab5e93bb731b84ebe4bc05c46a4ae595ed8acd9b524b2f3b
MD5 62f7d9ce01805d297185a2c559697c61
BLAKE2b-256 192307fc0df316844a55c3bf6aafb2ac90bcea6fdd99b6d87ede9722dcf18621

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.9-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 7ccd37e051a7cab84250cb6132e86996af57338e95c0044b86bc4303fb9ee52c
MD5 e44e4bfc07cb7cb818afa61850affa7a
BLAKE2b-256 1fd534c3b3373787eff1385582c953b7465ade685ad55b2695f4ed37c2d1060c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.9-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 dfa9fdd1bd798dd0e2b7b2f037d914caee7c1a79f520ffce2a5f21d0dc68bae3
MD5 9aa73795fbff644680ac69ecb9682ddc
BLAKE2b-256 c8d6687abf24c5b246406e5ffeb361ddd5017ce75fa63a7fe548be3ffc312575

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.9-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.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e0398e74f1daa3d1f104eebfcbca9e95126b4fc8a4e4331472440c9b6c15efe9
MD5 08d23b1b165a2e0c6479f65dbdf3ae1f
BLAKE2b-256 c98b7eaaf8b69224f76cc0fd3691605f1fed4565288f83ff5e5a4b393db4c306

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.9-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 684aafa4d6a4e087c9fd2fc0183e9c8b3470e9889752cb42d1e47c0e4e26cf00
MD5 d0bb921dd6f5dcbf03fb93255f9782a9
BLAKE2b-256 1fe74d5490c45f33b3a914d906cac36f9a7b1fc8823d1f1d5fb3d4ec0d111275

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.9-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 6ac779370adcceb537b49e5d40794a7faddf8e5d16b11d1c0160d4a471aebad9
MD5 0439d1578c7d05dbdd27d81076ca1f98
BLAKE2b-256 2b29c17d3d916c0510ef109258964cf2e48b215b0e624d8882cfd49c28aa66ed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.9-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 3b92a0b577d98e77ba096c8dd8189ad960c36e39e477aaddf2e0c3ff6191bb54
MD5 9d82a1b5471928e8050917d1867b6b8b
BLAKE2b-256 97569e59edf19a932a4bb145e3f38e0eb5445994998cc5bba61adf4a32e5a8e7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.9-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 03f5cb965d11dafa10cc4e361608b3d454057f1c1bc66237f769748829a6ebe4
MD5 4642d3549bac9a6c8050bc7d8a5cef2f
BLAKE2b-256 56870e614fedb4e1de5b7f08a27e022ce0b002b932f3db3030478ce3bb2699e5

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.9-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.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c6cab1d3d5d7e72d75da9e8e8ef4c9d2bf0ae1847b2e070c51049d811f4407b3
MD5 67b6d1a6ab1e8eb9a9344d41cfaf27a6
BLAKE2b-256 4af17369a8825baac5b2c3e1eef4d9237be994d0ea95882c0991bab680585c64

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.9-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 df7fd7e9d704236d96c2ba0be63f0cd9cdfcbd78b8a0a4d0bc88374af2c2d5aa
MD5 c1201cc17a216463a48230d6d135e1e4
BLAKE2b-256 fe32df1245f5e41a0281a9ff62432ae0bf6ca68dc113d9d322757a5e0f4d9e46

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.9-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 ef893ac108aa314b999df259e1f75169a4b3d46192e569a0049e413094cf59e7
MD5 d6b3dfa93980372057d02877b742b94a
BLAKE2b-256 77480e8b673bd6c46a23200ce1fe939c32fbe54d78920abcc2903587532585f6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.9-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 8a2c4c73cce995452b37e149d920e1da91d72efcc30a0e9aafeab3928e44b47d
MD5 f229ee66259e8ac1fe4c03801c8f6b6c
BLAKE2b-256 5f7f8679e58494048fe736328faf1745b6983ff0386d2d75f69db52d9b1cd1c5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.9-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 9d500763983f02c7abc2838292e757cb026214ea7c54cb84ed024f37ac5eb22a
MD5 4d9c967459f679450bf81205ee4f5432
BLAKE2b-256 ceb376bceda6c7a50f95ce9fd180be02be7716394b03e453f417c81f06220e04

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.9-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.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 90df6961d8d3577807d1469a917777a2b8f936440fd35c272283f1ad16500858
MD5 621dbe7da324877396d638b83c352255
BLAKE2b-256 a2f060aba5ff738f368c17ff6fd532c53425b08a9ae5afff4f6b1a0120df52fa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.9-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8d799a6ab4d59e3559d12c169c7d2a27fd8005e4ef485ca22d98a0240d778ccc
MD5 b3957524b6dc65d75b5836f16786978f
BLAKE2b-256 f3cfd26a70703bd4c02e94e2bccf140082860f277fa3c0efa7cb58d3aad8f527

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.9-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ae72173a52e850a5647b188510f02da59659817343b470b6d775bfa0a3a489e9
MD5 efc9706870f40bd49664ab95d04e9090
BLAKE2b-256 2d2d6e1e67102e43055011f318e5876c1c7e54c4886fe987f74934e50789e211

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