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.17.tar.gz (550.1 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.17-cp313-cp313-win_amd64.whl (236.5 kB view details)

Uploaded CPython 3.13Windows x86-64

elaraai_east_py_datascience-1.0.17-cp313-cp313-win32.whl (234.2 kB view details)

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.17-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (234.3 kB view details)

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

elaraai_east_py_datascience-1.0.17-cp313-cp313-macosx_11_0_arm64.whl (232.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.17-cp313-cp313-macosx_10_13_x86_64.whl (233.1 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.17-cp312-cp312-win_amd64.whl (236.6 kB view details)

Uploaded CPython 3.12Windows x86-64

elaraai_east_py_datascience-1.0.17-cp312-cp312-win32.whl (234.2 kB view details)

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.17-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (234.4 kB view details)

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

elaraai_east_py_datascience-1.0.17-cp312-cp312-macosx_11_0_arm64.whl (232.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.17-cp312-cp312-macosx_10_13_x86_64.whl (233.2 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.17-cp311-cp311-win_amd64.whl (236.2 kB view details)

Uploaded CPython 3.11Windows x86-64

elaraai_east_py_datascience-1.0.17-cp311-cp311-win32.whl (233.8 kB view details)

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.17-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (234.2 kB view details)

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

elaraai_east_py_datascience-1.0.17-cp311-cp311-macosx_11_0_arm64.whl (232.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.17-cp311-cp311-macosx_10_9_x86_64.whl (233.0 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.17.tar.gz
Algorithm Hash digest
SHA256 902bd93c8f85c3ee46a850f1609de6508a6e9da04d1c35bd03dc78d6799f43aa
MD5 41776e3db21d85e11dec54c348b9a070
BLAKE2b-256 99da54b5181ca751723595514cee993fa8ba99e797df60c79166070e335c37b6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.17-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 70d52f5ed4afc1ca75b47e30163796c290b266ac48748e2da84744c3422fa811
MD5 9b62f816ef7868dadde54ff801201363
BLAKE2b-256 48b1c1d13637015c09891d41a2d6daf6fd1cfce2688dad8d8768bbc5e58f2812

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.17-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 79ab3842818164e5cd11986be81128dffd43bd609d02a56c7e844f0d72b8933a
MD5 fb4058861e31e34925a0181fef82b459
BLAKE2b-256 56b56793156296113390556a55b03a695a2c57f969a3ed0b120c906a48163ab8

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.17-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.17-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d1425181a7e0061eca8093ae39cd3d9273cf4d9a871b18108a04896fa0681123
MD5 3d0873532235953b6bf936680cfe7dbe
BLAKE2b-256 8b506ed8a324f5de2ec236b7328beb7c3a6553921a260a43bb218fe8cff30d91

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.17-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4f6c708728586754886bca4007ac9ceb215bd5dd475085c588cec7afdc8c973c
MD5 a6ebff5995c27aae77783b1fdeb1a922
BLAKE2b-256 ca93bf94481dd5168228232b9ed0e8bb8370a91d327133e6096dd0a28a238901

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.17-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 dcce13ff82a15031cf08411de200c36f22723cca030e7500d8541c326b084e78
MD5 fc9188645b5fea35645d1736b2db5ed2
BLAKE2b-256 5ca1f5e8dfac34e01c395bcef18c722b398f5d1a1c8b7e9087384b0899f7e860

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.17-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 94bb182fcf1fd154dec4ef2e91374dc395eed4ffa764f5662fb446c7e52f0267
MD5 01b093cefb3edab2c23996203eef16a8
BLAKE2b-256 e6a13bb098d6c83fc1d9b0e6977b2ec10fcde0405b833e832656a49e7787e7de

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.17-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 556a51a35769094c35fade3526b95030f2f31ea321f32fcd168f2b711dca0bd7
MD5 7953056c36c141a633712aa6dd0e3a16
BLAKE2b-256 8582a3b186f2552abee75e4f7dfa2a24bb4cb688bc7dc32278df561992c7e9f9

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.17-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.17-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0ac51efbdefb1426b59562f50a523eae4ad0c1984b448d4a0284419c8b48987f
MD5 745c8b7dfb8b9df440ce713a9f15343a
BLAKE2b-256 7f9c0e4610fcd42c071a8ab0d3a8ca9feeae43f5ba35cd74a5d9332f1dbd7a62

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.17-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4e2802dc63d7a7d44dc5b5e95064d96404a4c85fe83040ace2ca45c85b97a490
MD5 66b90d4cff81d02ee67d1187a34040f8
BLAKE2b-256 3de3d93b384e7f481efdda97b65e81f499db15b885a545c1fe87ae145686ea5e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.17-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 2616434ac31a767049c8d9196f66ffbb9addb968be30becd7a178e9c151726ab
MD5 5c1a421b13a3f6a666ffb094b53828df
BLAKE2b-256 da519cf9c63bfdcbb320c38f15e5be672ceebeb9ec2a3abcb8dea810ccd50398

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.17-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 8423ba90bd7a0c884d235d45839665bb115a7a5c43d2b5224410c7a915c5aec6
MD5 f048303fcaa214a68f87057945658c38
BLAKE2b-256 d19edb09bc710305ff1e951d7da184731a9a0bffe7058f10855d6d81506af18a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.17-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 b6c1c7a4764fccc4b11f3416d4e1e755e1bab6c3c1b19edf094b2a56d03caab1
MD5 d80296ac50ef069c56a06859f5d313bf
BLAKE2b-256 d70ed8b3232a24eef31ff1be0689f029f78cbff642507435e3b27d7890e6eb70

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.17-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.17-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3fe42ec2ee2956efd2b2c2388d40ee2b245ad5448a363b377140a9c4cd5cd284
MD5 20372e67f469b00dc60fae52258af3a3
BLAKE2b-256 9372defc7e0daa539606a447ba9c2477ab365406239c1b705db00395b676936a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.17-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 53bb4eb7910eeedbf866d984ad335aca46426e6f83b5ed11468928037615ccc9
MD5 6d4044be9703c628fdfac0d568fc5c85
BLAKE2b-256 bf50147e60082119caa71d4a278ce62bfc3e31a26e8f904234a4de1a7d359f26

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.17-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3e34855427121b0a9573452d8609ae0efffe85c4e7c18069659bf4f0f4184146
MD5 0f4cefaf1a68024d1cb4d1ee4c9c4749
BLAKE2b-256 eba56ce804dd8c76f28271fec5e121f313b171fa0825a902433a1a58eaa1b044

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