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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.7-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.7-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.7-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.7-cp312-cp312-win_amd64.whl (228.0 kB view details)

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.7-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.7-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.7-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.7-cp311-cp311-win_amd64.whl (227.7 kB view details)

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.7.tar.gz
Algorithm Hash digest
SHA256 c443e565c6f3a5c8cad32f677e8b871dda3ba0b545ee88b17d281edf814a1d44
MD5 2ea008c95d2cd2568ecab1b3fdc0f057
BLAKE2b-256 99f111843e6026f3ef0c1d81d99e9ae2271ff73e168ab00b4316cbd6f2cf5372

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.7-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 508e3262d286f2f15d15b11e8e0b4662264c4b23c6c57891e0444bcd7aebc2e3
MD5 c06a9a31f0884cf0285f0cf4b673465e
BLAKE2b-256 f0a90d547b9be3d950efbd8f258c1b861a9f8167f5f1d88a9bc3140e52dfcbd6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.7-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 05e578aabb686cd89def9ccda676a39ca2aacfd11fc2eecc5cee1528c1a79587
MD5 b67335565a39c9fd9987291d39d6feef
BLAKE2b-256 00256342fc4908ac8450d821dd8625929f161ef637244abed8d9fa07cf1c6780

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.7-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.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 547eeb784cd187bd51cd2001a6943ef40ef0f3767c748ff796004a2120a2e968
MD5 bb281bcbd5804637f569735e52937357
BLAKE2b-256 a17db4ca854f6d8baf9f43a8b201c84c3768fb90d493f62172b349f2f213b03f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.7-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e7adffe916838499f137566826d7fa2f4b48a180b32b78e81d8f1a24fd50cc13
MD5 6290866c62f299341aee46426e136c52
BLAKE2b-256 ae412f483f53036a3eb4faf682c34c3e072337e5b33ab7164342c32190e1c3da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.7-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 8b7b2acaf0ac70bfbb6f435095928771dcc41c5e982a966f9d9cab8706ba514f
MD5 8e2b1db390c50cdc3cc2fec661f67c4a
BLAKE2b-256 501648d7c058b8c2f6c6fb99aed8878dbe0d3a54eb2f6235d2c058ea6fd5223e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.7-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e68bffe50373887300fddafd0f8a9d1b73a0b44e125ec6f30e09899848537dec
MD5 9e4ac54c0cfa8084768763567afa4f19
BLAKE2b-256 cf0bfde9c320639f8b7339da28635f9f47aecbf4b7dcca1bea6d78d8e5abfc93

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.7-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 7ab4e50527f75a88d78afe43f90a8689b942f6dccd72faae80ea0f0d7af21e68
MD5 4470a0d4faeb985bb58aec46a7f68dac
BLAKE2b-256 e722db97dbc96cc11df45433891758051fad9e7cca66af3bc91d106420d3f913

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.7-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.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 372e76c3a2ec151eb892701910b069c6053d39494be758d64a533d31243ec6e0
MD5 1eddcd23a6261aca307adb747bf1d4cc
BLAKE2b-256 1d6dcd287fea52a435f335962b72a437e159df71a099ee98f4a2be9be54ba15c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.7-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9defef7ba97f9a01b788df13e8fa673a812fe82b362986820daafc1c89f175e9
MD5 5a0906e549379318ab0df75bf01cd999
BLAKE2b-256 70b8a66853e90ec703db5cbcf8e354c4ae60d7d6777955a95ba65b62815cc16f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.7-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 ef73e042e3428749e2d607a558b0fd9687fe6b1e53ae52bdf709c380c19d680e
MD5 f11f4b673c295fa73659fe220ac6b2b6
BLAKE2b-256 4e23894f69cbd427c96bcc8bf1037e73b1f838a970a8d1d36bb835e0eb5491c6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.7-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 2b71a93adcf1c031957690152d23fdaed5dbe4a5e5f5ecbf9d56a9f21af4afc4
MD5 f5dd337baf772a81a259dd4fc6a166fd
BLAKE2b-256 4db051f62591ff4f45c0b80d29e55b97f170c8240cac239b6afab32152648a23

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.7-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 3274bee8c7c151d986d2e4e11a0a41569a754e526ca59b0855ddb16b9070e356
MD5 6f046156734eb67745be94951ad89dec
BLAKE2b-256 c437a08cf5c790da1f588b23ee91a5461d7404070017f878429b88499fb018ac

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.7-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.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a981b16ed1d7e83fa7593b5b8b4e6ee0680ac6d5cc65ae7cf17c48fc744600c3
MD5 70dc875a36c5f01bbe1e9781606a65ae
BLAKE2b-256 cbb595183c0bd2963a414be338e611b20c8ae5a5c204cd00e89336f8e27bf216

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.7-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e48041eb83cec355719022d27c632cab6c442b6404d5f78d0ec02f4e97f7be88
MD5 f2d58f96c2b090ce5db12e3d7a649370
BLAKE2b-256 29eceed847e34f450bef29cfac332d62be0cf285d6761cc9c4c02b3e470f386d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.7-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b1b6cabfb1d98d5d9c68cfc9f4d2fd3462a964cb296f35c6300fff5e0053ce4e
MD5 8d76eb0ba44421fca2fc33c712a69d82
BLAKE2b-256 92e2ca4d22360eb168162c644b93f51041a00a9f89b642c0fed4fd2e941e5d31

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