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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.11-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (225.9 kB view details)

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

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.11.tar.gz
Algorithm Hash digest
SHA256 06e676da03614452b3f0451b9f6ac757b4163b407b16f153202f4e11d01ce1e4
MD5 081a9f65af3f335c13650cde787977ab
BLAKE2b-256 7089a2b89dc787bc563f95b1393b6edc6d250a0303858fc9be4c054fcde26d86

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.11-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 7dea6b4e82c389a2862a598ba802a8419f73fb1a918fd4997f321e8ee775e42c
MD5 309e319392f67f11c0adef7599f3d8fd
BLAKE2b-256 29fab747df54dd73ad2452a22432efc63a0ca3b23f3401feddf66da91348247b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.11-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 3810f06a4a9d531b4a78154d6b24afafb07e7989aa05624bb1942aaa330e2f95
MD5 3f0a3c99584843e61ed0f8f7e2755ca5
BLAKE2b-256 202abe6c7df4b9fa3f6a296581efaa29adb9d341d00863a209620e6dc92a2a37

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.11-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.11-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 630a998fe8d31772e08753788430734d414575a0c6f032e42184181b60867633
MD5 922e22bf6df62396c0aa610af6863228
BLAKE2b-256 29805f5b7b2625077e224fd479ffa81a5c0312d45a2524ac9449da561dbcc137

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.11-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 14f0e913e3b7acef968a9d7844a693b88af70bfad0104eb4bb3fc76e79ea4cd6
MD5 c9a03ed945a8373b5e4f03ddce00a28f
BLAKE2b-256 e6a8fc029ef169d9a4bb6cf759f9c76b2e5b6e1b9e441ad1d13bb70fb8e98c1d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.11-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 53e5a6bab9f7add4b28919b9a8b9d8d9f432cec59178afdd63571456efb1b0b2
MD5 db032187c4474e1cd8b849ede44b754f
BLAKE2b-256 9a0845f1a54daf48d0c0cf7a11358a659537fb44d3d91a80889b85804bc0b963

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.11-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 88d19b83aa4908aabb04d6912d9b6f539756ba13a4b4350cc64ddd27c4e76a7f
MD5 e95f2bf799812e2dd778f7faf369944c
BLAKE2b-256 3a167448089192d7986e8ab8d70c0e69f5093b56ed5ae9e88c0933f7ed9a3d8c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.11-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 5a925246d073612471a20b7394f07049db23229ef86095530a5e3e93c65fbd6a
MD5 941fa78bf7e4ac97b1b2c0c9d8a4134a
BLAKE2b-256 8128888c5a6a19eb475ce87556cef1136377e7b2aa615c1dbdec24a6f2cca601

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.11-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.11-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3223b805b907782d6fff21171af48c25ddc540c42ce8530cf7460462cb3e7754
MD5 725f2d7012b9d785255ab176dcab7766
BLAKE2b-256 8b6ce72b305822b5a20e8fbd2f8af44e9fd06d30b7a5cbce43bdab652d8830e7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.11-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e79e3ef8fdce8967086057618d367d4765730dec00ba7a4118b99f23e11b2f27
MD5 2586366b146ddaac2ce8f27ca9943606
BLAKE2b-256 556de89c7240b7d7be77c167f8ccb1b7c18dc228bd5559dd771cd914e5126cac

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.11-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 d5b39d67261a2e4fad53ea59f7f8a521dc8f731dfcc2b8e249ab73b86cf2f95c
MD5 bf6a4690b3c03d6efb8588d048537e46
BLAKE2b-256 0a6c07da910504a21ceee30882bc12c7bc038d8d4036d1bb1a920bef9525a520

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.11-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 31b2ba1d54bb0ba80268bf2b79be5042d8e55689b68e0278cfda5a9232167821
MD5 47df944c7b4781bdc77a2780b619f58d
BLAKE2b-256 29a3cb737bd63e5a7eb5efab782207a95d79bd25b00393bd7e4fffdb2bc3c4e1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.11-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 c86c359517b4ce60944ef68c7c071a781e838a7e3e57c67d61d7c8dceded95f3
MD5 9b17846ef48efc766dda97c4d068b74c
BLAKE2b-256 46a6f6e47b2654a813a3d408609068ba4672500c442f5e86e091e48022005c25

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.11-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.11-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 17724ffa59f768cacd67d75d330d1c4dfd4e9aa4d8a54fff9fe182d922c2da97
MD5 e48a94f03a0cf0507faf2d1c6697f1c1
BLAKE2b-256 9d179cbf3eba21f4eb80c89f887f8a542753a0acc4fb32dc3b618ef26946ba8f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.11-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3d7d5efbae04a96dad92ce70fa127b1cb3bf8bddf6257c66350b87c61082c09f
MD5 f5ad2d349f415150d3d986ae64f2e72b
BLAKE2b-256 aa1e8d740c23fabb746c299ec1631bd43a34e187367451de9fcb700ebcde1edf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.11-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4ce03f6e8856abf91e6e25e50aaaee9b973645249e28dd3e44ddcf4c08ba669a
MD5 b3d4e74a509d4d837c4802d70b01da96
BLAKE2b-256 8b07a9521725f2b37bac1138db1a2a0b4f642a16ca2cec94281419f5fd0933ac

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