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.12.tar.gz (544.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.12-cp313-cp313-win_amd64.whl (228.5 kB view details)

Uploaded CPython 3.13Windows x86-64

elaraai_east_py_datascience-1.0.12-cp313-cp313-win32.whl (226.1 kB view details)

Uploaded CPython 3.13Windows x86

elaraai_east_py_datascience-1.0.12-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (226.4 kB view details)

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

elaraai_east_py_datascience-1.0.12-cp313-cp313-macosx_11_0_arm64.whl (224.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.12-cp313-cp313-macosx_10_13_x86_64.whl (225.2 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.12-cp312-cp312-win_amd64.whl (228.5 kB view details)

Uploaded CPython 3.12Windows x86-64

elaraai_east_py_datascience-1.0.12-cp312-cp312-win32.whl (226.2 kB view details)

Uploaded CPython 3.12Windows x86

elaraai_east_py_datascience-1.0.12-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (226.4 kB view details)

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

elaraai_east_py_datascience-1.0.12-cp312-cp312-macosx_11_0_arm64.whl (224.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.12-cp312-cp312-macosx_10_13_x86_64.whl (225.2 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

elaraai_east_py_datascience-1.0.12-cp311-cp311-win_amd64.whl (228.2 kB view details)

Uploaded CPython 3.11Windows x86-64

elaraai_east_py_datascience-1.0.12-cp311-cp311-win32.whl (225.8 kB view details)

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.12-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (226.2 kB view details)

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

elaraai_east_py_datascience-1.0.12-cp311-cp311-macosx_11_0_arm64.whl (224.3 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

elaraai_east_py_datascience-1.0.12-cp311-cp311-macosx_10_9_x86_64.whl (225.0 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.12.tar.gz
Algorithm Hash digest
SHA256 455dc1a9a658533f1e7132555c166816e2cbb22b65f062322b0b09115dd90f15
MD5 5c1ff20f3f37c84add2204a12135291b
BLAKE2b-256 003e26d97123e4cf4482c5b799fbef44e36ba5a09cecaa34bcb10bfd2fd13d49

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.12-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 567dc454c418782d1205c64f14d81d8de422bd422dd3d5380709fa96c73bddb3
MD5 8364d8c8d3b53c9f191bfd27c3156496
BLAKE2b-256 f83c6773da617ed9f466f3747a7e8d439e4b957c6309bbd35f8bfaed34e7b624

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.12-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 1da71c39c3215a39f240a2d1a6cb28ce7516c657c74735e450f3f21b5f5efe9c
MD5 42bd3a500655974414cd150ef4333dc5
BLAKE2b-256 d800c47f28006e8f61ab1badce69bcc78357cf73ee2f4422eb2909be81759156

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.12-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.12-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 74f5159390604adfe45380560785bc93f9520aa9e0726261e6fae8674e6bc40f
MD5 a2387198e6a4e98d9f0d4cecfc9ba3c7
BLAKE2b-256 96ab0445fe0b8529d96795d9908d50ee3b49f3e2ba287dac7f6ef82d99914f3e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.12-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 49cc63db3f7c66024a10551ec2ca8b68f5279be02758f86587f18f35264ea4c0
MD5 67a2243ea3d509ea3c40394b2e7a5861
BLAKE2b-256 4b3da521d735337b5a2545b9008c92ca7265d8066f8672629861ab0625b92b0a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.12-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 1cb29fc482a8b803f27fd8342770c61f16e1af54b89d21a006faa749b6caf2b7
MD5 09c718dfaece60fb82a59e1f3e8d416d
BLAKE2b-256 e19b347b7718f78781f52ee4f826863cbc16a0393b77e9b0ea836725bb91c1d8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.12-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 21d0751a281676b264c2e4e830ce6c8355de7bf564d4fe873b22f42bfb7db9d2
MD5 91e6ec397b8d956a30fbaafdf20dbf1b
BLAKE2b-256 b429b65831bb19568c1e034f5019294490007c20fdb5a8fad4a4c4e21f670673

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.12-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 aa4adb3f161bbc47a11216d09738d87fad4db3d40c57c9488b72dbc7fc68c971
MD5 967308948422a3813805816723099c58
BLAKE2b-256 a55eb7fe5ac30d28d9d35950558d7a42b895e85aa13cf278e05f526ae4417463

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.12-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.12-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fe409a71a6e69e1d8f36cb3baf2f4eac59d9720c2a2bf3df750b61139c1d4b15
MD5 66173903a9d3a2776625f52259b71f6e
BLAKE2b-256 464ee084de4e881cc5a436f73f308062e2d00eaf2dc9bbdf3b5c78e885d194d4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.12-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8a25ef8c1e814c7d4b4b92bcc689a8ee42c5ada0a5f505ba0b67e7a5bf009ee4
MD5 3bbbfb14357ab2db876747dd3f6f9818
BLAKE2b-256 a4fd640dcee9079b5101b19410f143bf1b1e218ada5b72a1644f4c589c93048b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.12-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 d6fa4b3ff4a2a18599b89f983fd2b94a7347647d32a921cfcbff4b68db83b995
MD5 8502ea51faa89da2006caa2f4105e20c
BLAKE2b-256 c9054dfc049e186fd0b75287647e08dd7600116b65b610aacdff7e66416bf22f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.12-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ad9fec26f9cedb21e5bcac32d7015982cc98b71e62880f9c4c21c0cbfccc1edd
MD5 ab6077ba683d2d96c3a8578ee3cffeb7
BLAKE2b-256 6592d9d29c319c511f759601f6b794d867c498bd6b7eb31d58ab811b15135b55

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.12-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 ac2c289c8539c3ff1a642956c53d9c52bd5b32a6840baec535b78f0a7e0e41b6
MD5 b1a747655d8b99b81dd01a8b6f65d749
BLAKE2b-256 69a568aa5f29dbaf1f76fcabbc12f7a64d16da594b257fcc9dacec509e10bbb3

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.12-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.12-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bcd30cba813aa3ffb4a393a9636a03ee05126191a4f7a199a6092e5c0e7011f8
MD5 d2c42854a60e5861e15d192c0bba6cfd
BLAKE2b-256 631517c9ccaf367951da1789f55f96def016a3e60ce1c2178382492d0902423d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.12-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 39ac5bc53fd1423034f7085d35ff40f968c2870fa77502f37af32e0987b2268d
MD5 8293747564b6feb262b289d961bd5de9
BLAKE2b-256 794ec1c083d49cda742d360603c4b3f4e22d85a10c5c8c29e80aa828da6401da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.12-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 7543627facf8f13cfb1ac045389fb4868b36375e0d26d7d961774fc644e59a0a
MD5 e84f33db991a7f37444352f043fce61d
BLAKE2b-256 109127929e51aebcb35373fca088c8ef27014e552891f991ab790c38b1c0dd34

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