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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.21-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.21-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.21-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.21.tar.gz.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.21.tar.gz
Algorithm Hash digest
SHA256 9dc228ffefdea9a0063dd4b45114da5f4aa7fb2e49592cc15261c9f1270c936d
MD5 fbbf0417c71d9b20907f0171b32777c6
BLAKE2b-256 c8a1e2b71a8b431d6973a1f047d579362f2a71babf41110c65d32e07908093d0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.21-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 d4919949f94fb42cabdac5d1e8881003f1a9198b7df0f9db04a9500057dcc2c5
MD5 99a3bf3f5908a9db8493d90b85eae3d4
BLAKE2b-256 0e3cebd0cf9d053395727e8b756463d0e401057f8c017f8a927abdee2f8bc454

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.21-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 37207d0cabd93f1c191b1628df6c1e4d416d3c0e1adfb47731878eb9fa57de57
MD5 568e323288a427a32a2bfd7208776c56
BLAKE2b-256 466f1af5a4cecfd5d3cd144e988bcf8319ddbce4b87402e7560743da918d827f

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.21-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.21-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8a4115e84185816a5a0a20491065b8040c2e7108a66031d0a8d29c2b60b50202
MD5 4948d2250eaee0d7f734a97f3002ac13
BLAKE2b-256 c912429dca41f4929302e1f104268d03fe835de0cf00f39249c355ac16fc0a0d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.21-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 143e97df3bdd05b1eebae18f5b18bfcae840c0ca59173da727de2d216e21aee2
MD5 483aa60ff74a8be4c440cd9e855ad511
BLAKE2b-256 93bfc64ff1fcca409e7bd4211f8692c0a856f3104782e0c2811efd363fac0f5f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.21-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 10c8c89ba473dd3d9b047b8b25ba51ff8cf06186850add4a6dd4df41023dc1d7
MD5 c900d78225c5a0278a17a569c57a7012
BLAKE2b-256 3f4b40ccb7f03be1478b1aa9d2de777d9c64573e1e433687d1703b704e0f2e68

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.21-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 fa42674e92e54cfba285c96e79a18a2c1c63fd235e5db3d24315d9de19ad072e
MD5 b8ced21ca091ac954664a3418e85c62d
BLAKE2b-256 9e31411d9c8bef71d16f27ba223c97266261d704404fd8062fd5ba0f6680c307

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.21-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 a462b793af3b7364ca34f9f781ef4255db8b4e7ae2221b9ecc1bd0fc51c37d56
MD5 42f57082b1ef573bfc7684c61d68e0f3
BLAKE2b-256 b5d1cb6f9e4aa31e424890e5f66818f686075a8c2079530b33e24d72903d1601

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.21-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.21-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3a32114bb5bae45b19ce6ef99387e87f2cbf78929983bdec1eb5578bc1be2bb4
MD5 6b92864ad1dd9381c6f0750c224eea1a
BLAKE2b-256 72aebe638ab61f81f610931bc7d741ea9b85086443d0de6184810164ae4bc346

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.21-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 86dce41fd641af5bfb0acd18d23396848a86c3cf21eeed60d4dfec30616d3073
MD5 d885790e63925e1225de9e6df7390741
BLAKE2b-256 7bd3079d7ea21cdde6f83f1a5663ef373422438e3dd49eb30eba8bbc03a6ebb5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.21-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a4c05b9276d999a67dc3684e164dede9c2997a6313ee787a9169f2dd1290cd22
MD5 7c5d1ea016b27ec551a9ded925dbd692
BLAKE2b-256 4904256e518ac8bc8c243d60f4031bdbdfa870c7f7993ca1aebc424857a6b6cb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.21-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f226c8b87996ccd17d06667894b1c934c9e093a5828b52a8e2973127945fbdaf
MD5 5a190bde999d4ecb8d1afc3c080d198f
BLAKE2b-256 5a08aaea8d90eab0c13c1a537064cec87b9a68e057c6739ab043790f31eab469

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.21-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 2aa4198de77f21b69ddcc7864909c2cd3729bc7d57c1692f176a20429093e290
MD5 d39853da46d3055eaedb53517d248126
BLAKE2b-256 4ce81cc9da5790b4b55936d8a66993c4b8600bbbb5438fff5d81f5a1b8728625

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.21-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.21-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4bf1620b97323eb0f4abfe845d8ac91a3f58ad01f58850ea639d488e14f46c69
MD5 28a04610de9ab300b93adf3cf0e16ad4
BLAKE2b-256 6be503f02dc8978bc9f22457166c66a416fd86e2681d298e81d975406859e5da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.21-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5c30a7065ea6884ef89973f27b4e388f9018bedf2909154dd931d92bb5874d68
MD5 f95cc93d7762c47d46269fee41091616
BLAKE2b-256 2a7403d2165fa4a3a65f48e47992cac63d24fef3fc1d4623923efc5cc5e0663e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.21-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f46ae8b8ac7e2694f1836b7686320a1eddc26da1143fedb0088c7ad66700b86b
MD5 6bb6942ae49716d5d2a599dc54054aee
BLAKE2b-256 d363ee71cf17c4a43fbacaf769a846d420d7660f442ea31ca0508de12a4411f0

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