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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.19-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.19-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.19-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.19.tar.gz.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.19.tar.gz
Algorithm Hash digest
SHA256 76b7922d8176fd893159131a92f7ccb2cde00c4a1702ed2c7eda59a221e09c36
MD5 f24fc13b8a71ec95b0ba62a9daff79f0
BLAKE2b-256 c1dfc07e55051921ddb9a2854d55649cd58f4047f9276380ae512d50c498a8aa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.19-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 3d9d77d7669163408b8c675dc912a06c30e6a8351290a2112fa66d90a8d047d2
MD5 8aa4b3f5c32736a181803786baffa862
BLAKE2b-256 872e07a851a65e4471c7105af02d7a6563f966363ea11e25ca67da79430e6f6d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.19-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 7728515b85343f2afd02a68743b2589f1a4eb69318656c2697808a5f98a09950
MD5 ebcafc22f8150d54c092e0c780caabf5
BLAKE2b-256 e011849534d897727015674449777501bba3c8900d2f1fd86e8869aa3d052790

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.19-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.19-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e0a4b85cdd4e91b3a3ac20803a72d12549ef8cb84026a629bcd1fc7e801ae44d
MD5 8e56485db8a58a9b28058612630d55fd
BLAKE2b-256 a46775eb1a0b95d8c18179a30148097da8f960ee05b9a215447982e37815047a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.19-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 90c8de291b6652cbc114d162b0e87b0a5dd36aa086d80bbbbe7c6c3b8efcccc0
MD5 b5667371c58ac08d2805b868d7aec84d
BLAKE2b-256 5935807dca6a65ac6535ac6669bd8147ac01b5732c6ebe0f8134a2399e19bc17

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.19-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 44870dfc1eea645183ca25f42332ebc31ab75bebb2a6ca3a0e2605327bfb963a
MD5 69a1c1b5bc9a16607feb6ee1b8376d53
BLAKE2b-256 caae33c0e82366ad482783b7b45aa0fde89e20ace22986e6bc41f12a0645b572

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.19-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 8b505d37fd15a45bb5068a3d72cd1997185262ee20763371b7fdac412a967665
MD5 69fee33cff50c1b229e11708fba76088
BLAKE2b-256 269128cb77487bec82f0574fcf03f612b6eeacc9baa904ec93c0e57d4c4210f5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.19-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 24dd3cb64c2edfeee3e7dabe671d54c23e29b7aadb2ea1c1fb2902d2c334d24e
MD5 e92496237e6f5af66dffa142b0535502
BLAKE2b-256 cda1d37ea4fad4a145b7eb67f0aa01064214f02be6463bc7b2815d22bfae9d71

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.19-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.19-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b150f6d953c50e2dcf016d195a3284596519f59abd421a4bb6ed50400e04e5ab
MD5 df3cdc2dba5d7426d59dc00944cdb63f
BLAKE2b-256 a7368a5ef9038fe2668dbd4d4079191e13f58a8b4b4653fbe3b3ab18433491d7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.19-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4c605d119701c045784bc7026697999a371139d64531cfd0ce01d6ea9645c60a
MD5 b0c46948d02bb631761c5da5ef6cd2d9
BLAKE2b-256 27b5237438c8154010eec5c38be7dda491f302f39943ffec685bb32210d12824

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.19-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 4183ef0443b11ff5d7b32e85fa0b605672938b869239e3f3672ac17d9cab8864
MD5 5b2f4cee2980260068ebf70fcf74cea5
BLAKE2b-256 607d6666bc753a8d5110aa3263462cb2a5db85298749e2a0e56f2d3a4d0b544f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.19-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f91fb324ae03bf3537c32d57a2a6329eb49c638121191dc65de6cdf88e26da65
MD5 7740c213a131af89469c21ad8d208479
BLAKE2b-256 b970779e2a3b52488cde0b7bd7d0c63787d8cfeefc4cf6677186580c2402d7c5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.19-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 2356a1980ebbd4fab74c564351b2eeaddb6204aa555cfe6b2dbd969f07b3aad1
MD5 329772bb2aa84bcc9f93431bea6e814b
BLAKE2b-256 4156c89252bf343e1c0c05cb20ecbfc76791609c93aa751d3807d2d3e181e530

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.19-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.19-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5363d10054acaf73164dcf5b4115320302f51d14d431552ee99fca9f3524c189
MD5 f2e4d6668e4d19b6ac0db23b6f31f98e
BLAKE2b-256 956189ede126c0a53024351574142e371ca77068385a8a659daf841b10d0fb0a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.19-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 084f583ad71df51630d02cf8e9bf67175f014d8e532342596e1257cf8c87be07
MD5 0f79dd0e061abac78183d30f5548bd1e
BLAKE2b-256 9b4098d82c227e828c5a74993413b84a48d360e9b46da464ffdba6320a10dc92

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.19-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6bd44c8fd919cccbb638d4a5c32ce5113d8d586eab6241157e6dd385c17de70e
MD5 98b9bd0acff82fdfea976bf26f5d7db0
BLAKE2b-256 6780451b66dc5a22e8f76bcf680560918b99cf3678c9b9dec4142395dddc3832

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