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 Causal inference with DoWhy, EconML, and PyALE Backdoor-adjusted effect estimation, refutation tests, heterogeneous treatment effects (CATE), ALE dose-response curves

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.8.tar.gz (534.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.8-cp313-cp313-win_amd64.whl (227.9 kB view details)

Uploaded CPython 3.13Windows x86-64

elaraai_east_py_datascience-1.0.8-cp313-cp313-win32.whl (225.6 kB view details)

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.8-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (225.8 kB view details)

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

elaraai_east_py_datascience-1.0.8-cp313-cp313-macosx_11_0_arm64.whl (223.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.8-cp313-cp313-macosx_10_13_x86_64.whl (224.6 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.8-cp312-cp312-win_amd64.whl (228.0 kB view details)

Uploaded CPython 3.12Windows x86-64

elaraai_east_py_datascience-1.0.8-cp312-cp312-win32.whl (225.7 kB view details)

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.8-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (225.9 kB view details)

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

elaraai_east_py_datascience-1.0.8-cp312-cp312-macosx_11_0_arm64.whl (223.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.8-cp312-cp312-macosx_10_13_x86_64.whl (224.7 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.8-cp311-cp311-win_amd64.whl (227.7 kB view details)

Uploaded CPython 3.11Windows x86-64

elaraai_east_py_datascience-1.0.8-cp311-cp311-win32.whl (225.3 kB view details)

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.8-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (225.7 kB view details)

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

elaraai_east_py_datascience-1.0.8-cp311-cp311-macosx_11_0_arm64.whl (223.7 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.8-cp311-cp311-macosx_10_9_x86_64.whl (224.5 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.8.tar.gz
Algorithm Hash digest
SHA256 f69f6c4a8ddb07812d8dcfc83dd82dbe22cc8c519cd267d3a54f547a674e22a5
MD5 22e4c4bccb549a864613e78b957bf2f5
BLAKE2b-256 8f4cea66197f4102961aa6421acc66f259786cb8a9ac1d9c41f51f02b9ff3159

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.8-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 90821f67d3b25790ddfbea8e03712b1d7953ddbf07cda40c3b1875e7dd2122c6
MD5 b1f35d9f0f87685792e90ab96f651500
BLAKE2b-256 3c3633f2f8ff0ef704f441fd7a5e30bfee1de95ce2f7a8bed04c2122d37695a2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.8-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 cf015533ce01bca07bddfc9c2820e09edc1ca0c3e4385cf6db20b859bf2f746a
MD5 7fbf9a7d54b3194af2cc5c03e967e875
BLAKE2b-256 9dd9e57a596899f377bcdc74bf085da76754f94743076c7a2312bc5551bbcb49

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.8-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.8-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 de2fa1dc50933e322590f45caa01dda6ce242e528ffe02a86dee23c3ddb9780e
MD5 f86a13233a08e849078c19fb37727297
BLAKE2b-256 4968a097577aed67bdaf92d735cd984ebde9ace3538c43ef5e7f6687c18a7c24

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.8-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0063028d56b3abd108a1193911151eb7d26fd6c2ec89edf11302788e4f002634
MD5 0f1b8eb1a3684c799adc01d62d2052e9
BLAKE2b-256 d1493024d05541530d111318da3c8c0d2c56f7bf5e91a7f639019ed0b54adcb3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.8-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 9f1bb543e151a2c42e16b38ae4b519afe2e1ef0b31562dc47a26d7ef42f03251
MD5 02297a0fc3cb61d580b2ca0240a859f0
BLAKE2b-256 24033fc84064f3a5c0a41543f731afe4422487e448426bbe35d6d0cb81b27962

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.8-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 4f580453083e72a9cf36a3f5a4ced15570c644a20b1bd77e2a8c866b03f4eb45
MD5 68d9a64d207d232bf472b8291b1d8ad0
BLAKE2b-256 876195712e5661de57fd615ce10b1a1b0652a5fe550bdabb4c492b762db0fb4d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.8-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 dcadbbe766ae017f604f04566ced128a7754224a394cb0569f4404fa74d56915
MD5 3d135b9e0d6c192c9be1fea1e5c2f37c
BLAKE2b-256 dadea3a5978ff9157c3c014e4fc2449a8c088bb5fff17e96753bbcbc994a31a9

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.8-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.8-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ed6944224722bf488e2d719e0703a34e434014734a06356769aa8fd0bb8bd82c
MD5 16cd8e82d0ea72fd13c2a017d9654cfd
BLAKE2b-256 12869abfa2aa3267da9a1416b1783bab36b5fbd7d0eb823558f1737847558cb9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.8-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2bcf5273a991ff07882c4802c84dd6d19530edc3036bb90a61bcb6bd6a7a0f72
MD5 29f86a98b265c1025ef5f7d3a43f8996
BLAKE2b-256 574e827939d2461c64166e5ec8164e3b6af93dc465cd16a90ff27dc65d321786

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.8-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 ee2910e329693991d01b167102a1443c7a52d2630913ebb0d15735cbabaabff7
MD5 2f0ccfcfa361422caf515e74855d3e76
BLAKE2b-256 10ea0c233799ad2286dc37d240d43d818fc7ef306ae41399980e94d6a2e2284d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.8-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 fddad32f0a6936c7732e5ad299acec9cbaa226a55e06ef7697d2b8470aa401ca
MD5 1fdb1731ad41ebef2ac8b112df427d9c
BLAKE2b-256 ec4406260693e8674b22a7e855c6662b1124308f870e54420dc3504d8d811ff3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.8-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 63675f8ad263ca13713568e4d450547edb84cda91d5d3c6255519c5629ea5a63
MD5 f38fbcb9643e1746a35c9065316bb53b
BLAKE2b-256 965829ac653d7305da9cd3b07d87d97baca2419169986cbd2eb59d92f17c1fe4

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.8-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.8-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 81afdf741ef710ded15fdb6e7bf6d47e94e9c59d152a6c9db8fa62c1eecc381b
MD5 07083f16c740ee1225240fdbb178c77e
BLAKE2b-256 d2048449e9f6ea201a1fabd4669ca81c1f98d2c0d9171bb6862e0529caa2f0f0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.8-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7f45f96bbb1f9852ef4a2e897dc8c350f41913ecd9657fe041d51aa8f4fed16f
MD5 a84ffd6037a530cead41a692859ef734
BLAKE2b-256 219c2c0e747ed85cd7b6789ef83e05f8f290cffc976f3ab4df20f9c32d9d6fe3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.8-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a4c8f3c06e7709186df89aba6029421056cc67624e955b75c37ed44b63b89447
MD5 f0f200d4c9674997293e5e478c54eca3
BLAKE2b-256 a2a1240564a7a80b5cbcac4f52202f09b4b6751a2b88bf719a4214cc9136b82d

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