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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.23-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.23-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.23-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.23.tar.gz.

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.23.tar.gz
Algorithm Hash digest
SHA256 9257a04e90c360f3785c7a0499c213667ebb16773360a4f92c904624b9fcc935
MD5 0873f95c57a6f73df1300517c9608c43
BLAKE2b-256 efb0cd04948f1c82fad7299da47e43b1551b7a0e4224d70d981b527e23665f8e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.23-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 2132dd26298e0233a5074d3f68ecbe84abde51ebd2b964899479eb7ad1c7849b
MD5 5409851cf623a016ff5114195e9c9f46
BLAKE2b-256 8ef27bc363747f2ddd27991ea36416b84ca1c84a36bf4f0fd2d32edc088d8306

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.23-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 678ce8a030a08ab2d1e64d80e99ad4e0e77a50b671840f0acf8ff235395b2b09
MD5 b7582b6649a0af94f65acc8655897e8f
BLAKE2b-256 9e46ac6ef03b631f7d1de7ffc7c28ce179b0aa46c0f66f37574aea6493444dd9

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.23-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.23-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4078f619cadb8592ad9254351a9386865adcafe187e4ff02de36a1fc41c87139
MD5 f796bf5b629a73220d3ddaa9321d4fa7
BLAKE2b-256 9d0187074d20045dbff7c6de513b8d8b8b0d2ae8233d953f42e1476c7e1bff46

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.23-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 55798904948fdf0baa52328ec8d570d4a544a528daf0c5b494008a9788c7211f
MD5 90bc7fc40fa41e810dca92b6d31571c6
BLAKE2b-256 16c7944974331cc0fc40f6b66ae010aeb9d20cbbb97788f1c8630fd7d1ce38d1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.23-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 17a9103baafd1dbfc66e673932d8835819576555905f2e93f20e6ff28b5a0a37
MD5 9efe08f6a1e4e97eb95daa0be3eed664
BLAKE2b-256 c83d792e8801751e49d7fa3b4cc3cc81bf3f3621af5e75ad7b6b25df71f567dc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.23-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 c52bf8a47393d0e75f0c36310cf5d2293d337c141ea90fee5f474b4691ff16e6
MD5 2f32725fcd67addffa4881959c1ed464
BLAKE2b-256 55f1c8e5812543ed2ff1925c7ec5f06f92e8157d6d950f58755ccb9999a47648

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.23-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 dbc449fa1e556877efba070951372bbb23494ddf2ebc2e75345d8e38523f46db
MD5 e694759dae01b6d9d7fe7f062cf3c980
BLAKE2b-256 0d1efe3a24ffdcc4aac87934e299902f17b24dd691898d5bc0b1715a6670d620

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.23-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.23-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2bff38b7bffcce92bcef2405c293a41a104460205d01b269fc1eb64a0dd925a0
MD5 2e908fb3824f3b5c2f597daaff0e1d3d
BLAKE2b-256 b1f01cca6a4ee42997a01b59b5fcd2e1d4fb670f7576d2d2befe30b28d4f8c64

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.23-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 924e6702c7e3e6819ae7baa7a8a186777cf817b9e92b03b4d5eb45794c9a6425
MD5 79b0fe3695fdfe25a2286d1d445afdfd
BLAKE2b-256 b7f97ea9efaa5ae82b638f57b33f130aba2f4e14b326bd301d7a12f5fe2c0578

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.23-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 6a6bad99817a96847ec00b85d90f5526e8ece9fb3a777ea232b5f71d2ad053e3
MD5 a58afabdfb5b843375607843e609838b
BLAKE2b-256 773ef360188ec425f331e03fad42b70cdc80c3ef3b3c9f60c13c04a70c688c5d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.23-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 54198848e26975609a3078566d7cf818e8e3b8a6ac65483d858fae6b518ec932
MD5 3ffb570e3541d83292abe366b581e6a2
BLAKE2b-256 3852d2199864278ab260bb49ea2def1c644807d24361a3d470c6a32ba533ecbe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.23-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 649cf62ea20187393cbf61d81264eb3cf2a4160645e89e7aecd8d62075ffbb7b
MD5 8c1a8b173fd1948923b9c960ecc25394
BLAKE2b-256 ba9afb4b7f533f8a38c3bbb85986927535cc316d0c23bbecb72ca0c35c70b362

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.23-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.23-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6bba0f72b604f95c5be0db2a859e24e01147f9f79d3a9474dbed754ffc8258b3
MD5 7f68ced60341b1606d870f9a9bc37504
BLAKE2b-256 392bea0623d51725799901107c4799058f4d08c0ebbd638024962438164e566c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.23-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c3fed965176c6140d01f76814d2c5475e4b6bb994872c110b42a6989697c8bad
MD5 456a81913529db28f44b17d74f5fb4ad
BLAKE2b-256 fafc2df390225d1f3df294d92f7902426fd658c78b5ec87de14c6a2f9be480cb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.23-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f1567c33a85b911a431b98d0cda1108bad3a3df433fb734e6c1201b46a4b5267
MD5 a95f4469f846ed28c132de3ccbe5922a
BLAKE2b-256 2b8c932e39d18ea5087b23f33bd47b2c1655fed0ea12407fff45ef9cb24298d9

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