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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.22-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.22-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.22-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.22-cp312-cp312-win_amd64.whl (239.2 kB view details)

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.22-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.22-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.22-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.22-cp311-cp311-win_amd64.whl (238.9 kB view details)

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.22-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.22-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.22-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.22.tar.gz.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.22.tar.gz
Algorithm Hash digest
SHA256 bd52351284db29565ea94cf146772641c413fa3df784d31e2fd8e26fa6ccf92f
MD5 0ecdb387134bba777b6222320a23c09b
BLAKE2b-256 a4a215eff4a3006b70235c1a91c808d58bf2ed926ce55a47c75c2c07254741ba

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.22-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 a0b65305d438dc781c103f8cb6672b3d7b5fc42a8f79c145eafb25df3f5ea68e
MD5 265c7dde69ab3abb6e4eac8f92f81f6c
BLAKE2b-256 afb064541b69a80a4528608e462b07fe96d6fe2ede10bc774aee7b89a94207d6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.22-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 9c3c73718b4fc2476838e739af3911770abbd21b6978dc2f9dd7a8848c2b7ec5
MD5 77595f2d817b9b42d82699be352149e0
BLAKE2b-256 7a2c8d80ba4f41872e4812c0487bc2a2b4f2880a9eb8c24aaa875f27dd403527

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.22-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.22-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e7761c56f712039d78730741b5fe97ad401399e838a188fa575bd996a3dca9ab
MD5 05d93be9247cac955a5fd6c62c802b10
BLAKE2b-256 3cff48168d34f5a224246c5257f02627ffc200d49cc1b3dd12e7dee64e979cd6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.22-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 66fa64dab31b27240d4a6f5225838b9a1bb95107311579740f379b80d1f6c3e0
MD5 af987cf76cf912420103306332b7ab4f
BLAKE2b-256 cec8a80f4eaffe51d1d237736bff2b0c024d4cb02482c3bfdc281c0f5d7d7c0e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.22-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a04095f63cae5d693ae74cc91d8df0b1533112ba7fecd169a124f3297d91dbc4
MD5 14da26ba1d4a1492706fe7dd423d8e3f
BLAKE2b-256 c35dd2467c2890bfda171c96cd638e9481c25d0e97273c3aff89b1242416347b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.22-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 36ce5c6119d05d96e2aa8b808e808dcc366934743af64352653163a179e2fc43
MD5 f1b4e2efbcd19a8c25ea9aa14cb3fff4
BLAKE2b-256 c2e09306ea1a9d20646c51960fb00b923c8b3277b0320d912f57493d1cc35bc1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.22-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 cbfb186f79377e804ba1ee85e6be852aa7c3a3142c05ed3f76cc54e737ea467a
MD5 c40ca5007cbe6584ed7c5c5de1f42448
BLAKE2b-256 b4747f8709572f9ac70fc57992530ccaddc38decb2d0ead5d610d09fcba14519

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.22-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.22-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f0687e150abc4ea6ed36707f016232e431b86fc546e7deb95fcdedd96a2967cd
MD5 a4a601c980f805af4a1e97fcb3096be2
BLAKE2b-256 709c5628e7245147fd7e8fce139b4846b045088dacbf2eb176aea7eedc3ab193

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.22-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 98fdbfc52042b26906a303195b91b1aaa8f025c80688028fc6b80204e90a1f0c
MD5 222f83451c3ddba181057b7a182a7c17
BLAKE2b-256 fba7b5b678987fbc520e8c028607814a2325fba754a9f6a9d65cf2eb95585977

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.22-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 825d51b9c71042c46dc60aff32a33aff97a6b63f16bec951062554cdec73aeb8
MD5 0e62e957402dab2377c2635d7730f0a1
BLAKE2b-256 866d081c205c2ba3acd9eb3a26c87788324bc43e9ed0e80bd2d6aa4f1298c97a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.22-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 1ed7aaca4dd52e5dff3f284ef0208cc26d71f6e68e95d5ab98b93f3bca6c0421
MD5 7829924e6f526ebc6a6b01fd6c52b7fb
BLAKE2b-256 caae466fc5479abd118613ce72859ef78e0845cac43c845904c43e1ed2aa0118

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.22-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 9e22a4e4fb500ad3f363c7fc66685b19314fc240e189ee30f32a41e532dd924a
MD5 3df5505d678184e3f6482b0508507c02
BLAKE2b-256 dc6189f32cf6d559b721399489fc58ce3eb7a3f17ccf6cd0b25599ee108f9d21

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.22-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.22-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a6db3805b35a9702305c0195e9cc3e175ce277814a4826a8ee4c898898003891
MD5 112b088df49095140cc55a9824ab1ded
BLAKE2b-256 69b8937ce5e797931aebf516dcc074a33ab6e7f5477d76b9c04cda9dc903c7f6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.22-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 01a1d738f81fce044b2651bb310c4cbafa4cf6a0a5de2e4bd08f942fb7f6d492
MD5 6c72d32d82ed21b3a6a5f2eee9cf8c4a
BLAKE2b-256 2f78a498ca67515d2daa4e6754dc441ad9c2b6b96a35ce2685201ff78c4ed369

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.22-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 15c6a7bf95b52658edf5f5951f13133bdedbcf37b653393a83f7351771205b4b
MD5 03430e1ee0e1d173f67c9dd87cc1a149
BLAKE2b-256 c174bb4a874605de857f2dfc4f34118fb88a795c90175ca55f797050f2b6c9cf

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