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.24.tar.gz (559.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.24-cp313-cp313-win_amd64.whl (239.2 kB view details)

Uploaded CPython 3.13Windows x86-64

elaraai_east_py_datascience-1.0.24-cp313-cp313-win32.whl (236.8 kB view details)

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.24-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (237.0 kB view details)

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

elaraai_east_py_datascience-1.0.24-cp313-cp313-macosx_11_0_arm64.whl (235.0 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.24-cp313-cp313-macosx_10_13_x86_64.whl (235.8 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.24-cp312-cp312-win_amd64.whl (239.2 kB view details)

Uploaded CPython 3.12Windows x86-64

elaraai_east_py_datascience-1.0.24-cp312-cp312-win32.whl (236.9 kB view details)

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.24-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (237.0 kB view details)

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

elaraai_east_py_datascience-1.0.24-cp312-cp312-macosx_11_0_arm64.whl (235.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.24-cp312-cp312-macosx_10_13_x86_64.whl (235.9 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.24-cp311-cp311-win_amd64.whl (238.9 kB view details)

Uploaded CPython 3.11Windows x86-64

elaraai_east_py_datascience-1.0.24-cp311-cp311-win32.whl (236.5 kB view details)

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.24-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (236.8 kB view details)

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

elaraai_east_py_datascience-1.0.24-cp311-cp311-macosx_11_0_arm64.whl (234.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.24-cp311-cp311-macosx_10_9_x86_64.whl (235.6 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.24.tar.gz
Algorithm Hash digest
SHA256 905aeb24bab53dfd937c55b6b6cde7bd59bb0798831c337b62bc5bafacd68dbb
MD5 52068fb1c6fee966dee8e6cb35dc996a
BLAKE2b-256 e5a3b044a411ad4ce0e5c735f309993bff6014208f9cc3a1400f9a9f90ab0488

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.24-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 9e4b66504bc2b82fb9a515f6983a178b0cce36e1664f62115c3c1f93a62e7da4
MD5 7dc584b416501e6fd5262d2b3ad278a7
BLAKE2b-256 388f2c25b11ce55d77609b97e9dce2072156a816c25e5e4a1b7d8e827e9210df

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.24-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 c522ed955698bd162ddc5d3ed225334f2b0028c04f9d9c40f50de6d1863986c4
MD5 c99dbf82c5e9b7924ed4e2efc419f639
BLAKE2b-256 9ad9f8b3fbe9fcff1db1d154041f3fd791932d05ee0be964875f903e18302a45

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.24-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.24-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4414389e3223db697fe90a82e7e25b0c5cb5e21d66e65d6dfa8243b111af2926
MD5 38eb4c1e5d5cbaff5e62debfca949440
BLAKE2b-256 ed6144ad26891fe75ca1018f069a7b5eba4a64bab97fbafcb561551de7b8c002

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.24-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c83f74f30f186b3e3f1bee1bc72ba6d1c56bdae28af45eaf0216405674903658
MD5 5fc2e57beeeae55570b1cadb90f89497
BLAKE2b-256 e53cf0c647bcb8558bac855ddc22f59b92c973e4a50b2e1e18999a7afd4b5d41

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.24-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 5bfa2d6e5416038dfdb7480eba24e1b8d1cd38b3baaf65dd3d364b9628971336
MD5 002588cee95101f48ecdee8282f713f4
BLAKE2b-256 419a01e0a3d49d90b3839e9157127ea3ada32903cc8ff498d08c401149280221

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.24-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 3cc7499f4a6574c7d2868bc08363527d286189c2c65a24aeedf2bf35189e0797
MD5 06f52f8b09711a1aa4f13faa55f1be65
BLAKE2b-256 b4358895ddb6f36ab5e808b757e3e3b2079cfa238f56f571245d9374cc213ff6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.24-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 6d5f5a7ebdc0164334406368a44ae612eb07739e140e9af9776420bff3887919
MD5 87f800bf3d944b456cb1f6ffb29e2c66
BLAKE2b-256 9afe32430d6589aec9c1a67d7969dd48cd85d14491db74cc5ab063ba97ba9f32

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.24-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.24-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d485108b472df03810b8ef694f86faced17f503eba1b5604fbd74ee9a6a0ccaf
MD5 68124ab35f11f34fa63fac9bc991dde0
BLAKE2b-256 7400e259688f19567f977f41fe3799c1ae0dc4f2e23cb6f137142bc9c154dfca

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.24-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ce8cc993ced0103a03308674fb8beb57c65942a53f98a3efd5f56c73145957a0
MD5 5736bbd92192a8ca9fc309001756e12e
BLAKE2b-256 1b3e9b4c488a62a0f5610968c51e786670fb30e959cfaaa5528455dd73dbd985

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.24-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 ba57a2f3fcb321943550645469ed5eef4b845b0fe54a7fe4d4e9a17f3f7c6fe6
MD5 27e760a076755b99c9447851140bff8d
BLAKE2b-256 82bbe0c9798995e3772733afa756fd0f94237a837b0db4f81b633896ec0b3274

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.24-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 d121978f036320e8ebcbfe7e70a164f7ae04ade1ce35e0b76e4e29029bff62cd
MD5 04362edf065029d69712c0482228e8e4
BLAKE2b-256 f128ccfd3947bca764ed47858eaf5bf27d520e9e21dbc9aa20cad3e76f8789eb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.24-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 37acca379d946354bfab4c90c099ec7a2b3aee54ca488952b3590c57dded8657
MD5 974c6190d2a724e76b23071b0bea2f52
BLAKE2b-256 caa00dca118504d3516b939f8410bcf6244cf8453c5c8b0ce867f384ae27f275

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.24-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.24-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9b01813eacae6e4f8a264ce47445dc1944caf8b018514bc52fde822a612e5171
MD5 46a9aa5943a18872079eb03b7fc2ef19
BLAKE2b-256 4aa6ac249957e21a539d7115f98a6a954e559df06e830518f5944ae4fd6c55ba

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.24-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 acca746c805cab24785eb3c59fdd02ce83c75c781ec70912f38ed3672eec4564
MD5 510d419a4e561d7c028e18716b6ed641
BLAKE2b-256 c1a709f29ea9c1872d1d2feceec484d2f8195714aca4e24a2f541a23883089b8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.24-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 515c381ad33cd3c3e41fb9ade46da1ec0cd21b4c7e0ab464a621f1adcb6e3351
MD5 cc068a942f990f148e51d67907d5d961
BLAKE2b-256 65c84f40b8ad5f0f77c69fd0a5ad93a3b9a761e13fb1576e70af1d3841640f93

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