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.32.tar.gz (569.8 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.32-cp313-cp313-win_amd64.whl (243.1 kB view details)

Uploaded CPython 3.13Windows x86-64

elaraai_east_py_datascience-1.0.32-cp313-cp313-win32.whl (240.7 kB view details)

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.32-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (240.9 kB view details)

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

elaraai_east_py_datascience-1.0.32-cp313-cp313-macosx_11_0_arm64.whl (238.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.32-cp313-cp313-macosx_10_13_x86_64.whl (239.7 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.32-cp312-cp312-win_amd64.whl (243.1 kB view details)

Uploaded CPython 3.12Windows x86-64

elaraai_east_py_datascience-1.0.32-cp312-cp312-win32.whl (240.8 kB view details)

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.32-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (240.9 kB view details)

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

elaraai_east_py_datascience-1.0.32-cp312-cp312-macosx_11_0_arm64.whl (238.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.32-cp312-cp312-macosx_10_13_x86_64.whl (239.8 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.32-cp311-cp311-win_amd64.whl (242.8 kB view details)

Uploaded CPython 3.11Windows x86-64

elaraai_east_py_datascience-1.0.32-cp311-cp311-win32.whl (240.4 kB view details)

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.32-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (240.7 kB view details)

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

elaraai_east_py_datascience-1.0.32-cp311-cp311-macosx_11_0_arm64.whl (238.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.32-cp311-cp311-macosx_10_9_x86_64.whl (239.5 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.32.tar.gz
Algorithm Hash digest
SHA256 56dc2bc954f0ed3730009c4ffa19e4bf48e0aa76d2b0b93d39e087d0624a4531
MD5 963775d461ba91eb4d474b12b9304f05
BLAKE2b-256 594416c13a889da6c2c900dd8d88e1837ad95360456432341f51c73ecfa72aa2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.32-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e7dcd14576cc630105df3c2aa9e5083a9bf9c053de5b52fc0155f946936b797e
MD5 11b4d937e5ca72dcd87a4034ec1548e7
BLAKE2b-256 33d4bb7030806abd513b45da1ccd6ba5e0e6df5e205d7f8af4eee545da41c20f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.32-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 cf7e86eaef70a785a789ca2963b7b14c9f47495d7baceb46a2d4ed9000f6200e
MD5 756a15591fc47f1b5faf00f258b0c639
BLAKE2b-256 3b21c8e2886e1f6f2c04d73c129ff0325d2b88972888fb95b9d721a50f7e44b2

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.32-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.32-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ec0e53fcec7f92613dab1c0b506cace3f26b42935bd96b1a0f885ce77d43642b
MD5 21a780ab92fdb9a2a7406b18446cc245
BLAKE2b-256 64a8b206c6e2ed5c3e0ede33b780bbe81e0f81e8df19b9da474e17e2f310bf5f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.32-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4b8fb139119d5dc92f2580f1a60aafbd2f9c1613fb8810019cd8904a9af2b50d
MD5 e33e447aacb9163bdc855ea59ce595b1
BLAKE2b-256 928a46a722de7a763054ea93a60c1c25157a1376e2705c87c4d03984bce02e2e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.32-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 bf34706a6c0615c6a86847b8df391f3ae2c5ec88e96f26e5492a708cce511b08
MD5 aa547d756929166574d0085cdbb05233
BLAKE2b-256 4d0f17eb415fce450dd0fc7fa41c8c96b6248be57ed4c1c6a1e7b6af4a16e266

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.32-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 36f82a3069e9e0fa22e5ab93deeb3403548ddb2c0d1154ddf943800f2cd1c918
MD5 4042582a988df6b223b91695c91d7ae7
BLAKE2b-256 0bd4553e74199df7e3b93cf2e98d51fd5d36ae8cd4c0dbbc8e7b071a1fd30900

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.32-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 d779421de2a60ecb0fa31cc040af81a7cf0ddbf88cabb1dea87e005e4d00720e
MD5 7f9cc0b764cf03d5afc939ef6ad35a94
BLAKE2b-256 ce1ee66e18e41cc7326d900a4a2ffe09613f002ca2032015486067c41c390bd3

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.32-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.32-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 690b96e36d3781fb05271b0aea9434832c66038e3610fe3ff425ce5a619f825f
MD5 f225b3092b4bd53384b266c53da905b8
BLAKE2b-256 7274273cb1fa4f9770626f9120c36c1e828aef1179ea45b3d45318967e1db145

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.32-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 20b04a3358a7cec779904a7d1325dd9171705ae51864b8bc16ac83be6b5b7819
MD5 f9668d4c6d11a7d73bf1be5b0e9a6436
BLAKE2b-256 3c0b074ae2051be18de92ce256d926402a8ca9862a4c209c02d97c0e43ae051c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.32-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 63b22a383297c658fbdfb263738257637258afe1645aa8b4270e7fb5d5fd2e11
MD5 5175c941d4c336fce9766511e0644363
BLAKE2b-256 e00b18cabb1ccda23939efa62c4f878d3bbeb2621f59a1a2bcb938aa8aeb7eab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.32-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 a481ef308a2d6659c17e70f774c2cd1ac35e69d5e46790ff967a398c199e5c3e
MD5 01c9580f9732568ff95579398105ec0b
BLAKE2b-256 9257b6f8c37e51efb8f8dcbbfe818faf6f09ec2e73a6eec2e67d1afa959a4b55

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.32-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 ddc76c01af1e9a14ede0a77f8f901fbfbe02e75b4c998613c129e094273e10b5
MD5 d521c41d9a3a919108a11a113da71b4f
BLAKE2b-256 34d9ead7faee20b67ddf5c05efc3f016e483cd87e7bb877e48a0375070a29fa2

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.32-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.32-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 76eec0a70ff6f5627560b7d22c165fff738318904735bf768aa75f626365171f
MD5 c0bdc4b8325f1c975626ce2489ea4396
BLAKE2b-256 de0f687c0eeed320e790fcb82e29742002c7210a3f8fcbc2b1b4799530807ce2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.32-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 323f00306381d33120c15a5bf5422bda0ccc46d1cb1a2d4f5e5eb8a52d3af023
MD5 0ebf9c00e5a639663b95a230b52778bc
BLAKE2b-256 bf5b3b43f3c276f484b723a16558838af43c42418943cf62d9d53f64db68c0ad

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.32-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 72af69683e2c164864069c6913e64ca6fab02f1c8b33813084af5f6af92e8d6f
MD5 d7faac104e37f47413e8aaa98c96cdc4
BLAKE2b-256 53ecfb20ece0365ae1dc704dca89c5a3e3014174eb5937573cbd18053f7dc01c

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