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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.10.tar.gz
Algorithm Hash digest
SHA256 9fd68a5a5be6a3c0466a3e7e0abe4ef9fff2c419bb74823736917558abba7f3f
MD5 4c0fe0bcb093a2dba169f98a21c04017
BLAKE2b-256 cd997ca56296cf683487c17e8b657d8d2087a99bf8dc1eb3a4aa9197b3561c19

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.10-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 f50a9a56457477501d94e5a90064c135ca376b81b85cac98cd9de74c22bba7a3
MD5 8225c418f12dac7442f56afca52ef9fa
BLAKE2b-256 6eba8f41054e1c14683f58be58424326ea8d79a25cd9597f527e82f5b6b487c5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.10-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 e93e711469c7151126d8b4857af00c496dc0de20199453efed4b872ea4135a74
MD5 5aefaa56c5e48b59e04676d4f8e6444f
BLAKE2b-256 f1cc3817379fff82a4f2b4b93ed49c0c56a05a2ff4ad1d11b4f972242066fae7

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.10-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.10-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ad4e45b1e5c2a0b9e2f81da4535cff03d088e699bd4c7ab172c9bb4e2a5220ec
MD5 ffef64ee3dd478419c36965de99889eb
BLAKE2b-256 15609ad1a2d4e21b4b65af285961ce6d3ab88ad55f57c77075c4c217efcd06a1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.10-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 64f5f7baf249abe7c4d238cffcb76b70608d706e4773ab1611ace36d12ba2607
MD5 4021a60d9532065f8cbc368fca76e3c1
BLAKE2b-256 4f062abfbbf8cd5495b9596ae290f07caccf6de15e1362e8f483462280f759a0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.10-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 3005e5721871f4b889e9a572538c8bacc2724184e1dee40f60e8934cacd1ba02
MD5 7f42422e5d577a3262c7dacf6c0f3d4b
BLAKE2b-256 2761b5d0a25ff0222323d64aa2936b16318e491f40c13f44b26e8271968cd301

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.10-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 51355a24754cb73f2cdb208edf3ee14a46ba782561a5ee48336add383fa6c2da
MD5 f579d7daf898207098249980512ea217
BLAKE2b-256 c105b5435b46ec58ae2406cb91bd43a885b06626e9429bf2cb130493909bfcfe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.10-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 ae49e9b35ef23706b86231e944e5ad9db4abc23aca02821e73b1bcd4a790569c
MD5 b88f19f503ad38001437ced33e0927d3
BLAKE2b-256 9e84a387fd2866a3b6667c9c685dedcf14eee5166d0f6000b0fce98e84c66c56

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.10-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.10-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ba649ec97d5c8fc04b338ecd7dbc86e6cd34f582f96ee39cd60e4bda46858dca
MD5 d7ad2736d3781c89b4bdc65a5cfb3bcf
BLAKE2b-256 e897ba7140e591b39886d7c95d8e4b06a55df623f9068c533c06f5a09c5cf21c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.10-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0f06776f916dcf3d962282bdd6905016ef5c753afb0fc8352dc4eb6e9b1fa72f
MD5 672ce1361394ac43bb38c8f70ea7122a
BLAKE2b-256 61ec23969c41894e0b7f9a62b7789cd77c829de383c10176583293fb314131ed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.10-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 65ed48219cb4f58873e2eb40fc3a7ca8f0b20d15867e04bc7f5919764c94e815
MD5 d4843e01dedd4d4fbb2706daab56e30f
BLAKE2b-256 a9c56003d93ab3c34c8d79abe3aed6e4fe05bc3f58a3eb9a6234d156355a255f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.10-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 a7ac82c231c22112a6ca714366fc03f587ff709feb5fe2708aecc0cb067da127
MD5 a738e764c93b0f7752ddf8d577783199
BLAKE2b-256 4a0996b8e0f61e80aff291a0f28d345700264b1fddc44c6e2243c4aa5e6633a1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.10-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 e2000ea68800cfea8158ab32ba45ec7aea8922a1d1fc4bc8bc0307fa99b2becf
MD5 7f55b3a7238754143f75b99524dfcb91
BLAKE2b-256 367a624fd5b1fd609b5e19a986f6d2f705c0fa62bb4a40759aab0dccbb788c47

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.10-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.10-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 675517daa30478e71e087d68a6c6635786abe93d781b847c5e1ab32c87b72968
MD5 74f188161cfa307a72875ffcf6fc2a1b
BLAKE2b-256 d02179c82cb2014f6c0a1af594b4345a2f63a32a6eec1c983db2a0e7d0e0d12a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.10-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ae4c954064a9da3f4d9c0482a851e2f234121c166433e548e74bc8ba97feb1c3
MD5 b4bd405d87de59dd5488503b20b664a3
BLAKE2b-256 f4bbc35440ac0e711bbcd50f91297772db23fc58fa20d03f3109ff180218aec7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.10-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1ecb75973f9d7e279326e30b18df6f794cf71ecdaa2dce499f1c550ba1d244ae
MD5 0e5d56a349a987863202617d7366c99f
BLAKE2b-256 c213847a62431bd12d201959e37b0fe071692de4ff0c2b53cbcf5dd598d715f5

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