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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

elaraai_east_py_datascience-1.0.5-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.5-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.5-cp311-cp311-macosx_10_9_x86_64.whl (224.4 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.5.tar.gz
Algorithm Hash digest
SHA256 1ceaeb1ca60e834c023fef3b4b8cc854922b81397c8c9e904a60e8927fd816ff
MD5 0760225896f816ce7b276c3a8c911c0e
BLAKE2b-256 2226525bb9cb4be1a2bb18d8a5acc508fc769efcc0b76252168d7e2b687db50d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.5-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 1b8484d1db1dd2c7077bc3a4bfb40725afe2ef6d15a3bf60939fa15f7a65f177
MD5 b775420b121ceed5db01abd82dd62143
BLAKE2b-256 ee22c5a3c1f4b85dbde44aa3103b2248dbcfc8bdc61cc2f60e7e69c381368f08

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.5-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 4a8b35b138221a86c12ad7a9be3808023f1bf20ee037066e8fe16a8709dc3d3a
MD5 094ebc07dc4143152fa23a5b73f7c4bd
BLAKE2b-256 364eeae92072dea4eef311a35e477f2505629f60bd8d86c3deb29e8a35429d83

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.5-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.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5cdb3d112ac6f39a205f839b42971c42a399babd8fecb781e43b207770a3f53e
MD5 1892859f340d115950ab4a1e36d98259
BLAKE2b-256 9399c20275925e042db2616d0c1e6ceffef7251cb087443b7becd5419ba3d047

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.5-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 57c6496e54fd3eb5ec07ba13bcb8afe22527c61acf8e6779b92a826f2c1a707f
MD5 953ed11c0a82009c273e436fb94c5a1f
BLAKE2b-256 f0f14b1f162e348b0480435655018a8a3b607cc3e1196c9aa5b83ed1761ac134

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.5-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 7248518cc64f9fc0cf3a83cffb23838483057d197ce0190a3bbb86b384120bc8
MD5 d2e9975c2cef348d0a727ca691f7c155
BLAKE2b-256 d46156526e67f126ac71058c0fc496f71f4ae55e6bcb3c7cdbf5aa5fc5939c36

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.5-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 8a53552d594cbe2fda795287ed121ede4df394778ef808dd1aa69da58f8dbdc5
MD5 2c3c47ed8e2e6e97cba794dae4387952
BLAKE2b-256 44eb10f1c1e8bd17e1b4d241377a3088ce8c533fa16a3cfa363210700f1bb08b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.5-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 d127547bacf915f91e9925e4314dd243d36e7135cb42fed732ee530b0fa7d5dd
MD5 fa3e029f698685cfa36517bd1a688427
BLAKE2b-256 360e1077ad73e8642fbe10fa165a566ba3b12bf9c31e8a2a3264b77dc2821180

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.5-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.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ed064819b3f921f212929e318c8b96cf2139df1c8d6b81855b6040304f8db2f2
MD5 3c4829f64f6deaf075d7a3316705d8e4
BLAKE2b-256 d6f3310ba8947e0d5103d286a8c11555135e8846051158366ec455ad1a54d57b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.5-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1e527332e9c53fe84d00f1646f9682e6822802031949ef8f3527f8a130de35d1
MD5 e1ceec7a22255279a916af1c41c05301
BLAKE2b-256 92349e4cd064e3d18b47dad866af1b3c8ab17cc1b8172252aea4a9a5231d55bd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.5-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 58649396fb8671fbed47053828463da55c9c04b4877e0955e00daf6a679772e5
MD5 c18043d4a6bebf4eccc8b3f00112951d
BLAKE2b-256 250c67efeed6df79e1591da29eed4b3211ca79d7a32d282091b14a29833f7c80

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.5-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 8bae2cb7170b99d3bb2a2795e402e5b932ec35eb8ffabe9970546a4d45475fe0
MD5 8b0bdbd6bce81e15fe0a2bb63d858392
BLAKE2b-256 7bdaa2362473619911532ad74b15b91b495950d40d2a6af1a0d334f4946f9635

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.5-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 eef1633d5a96fd121e27943bf756e89ab467997d95308bbf5b3bb3c13a5454f6
MD5 745b53059bf504d56d843b32c8af4095
BLAKE2b-256 ba8afad000e09ad98ddf36d6c94d11155e19787e1443e3598fb8143d2259dfc1

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.5-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.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2b5716ff15cc9551fa3ae5db07ff464ee4cb737e93e4d12cd21de1e74cf52317
MD5 0dc25cf48a6fb2b62c0e0d73cadf8dbc
BLAKE2b-256 cb0c248313c3836e63bbb1169e01d7d6dc0d8104d07f7aff339fbe4775232a5e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2389c48154eb944757420af1954b9e13d6b61f31f93a1a74a1e548147a931a3f
MD5 bea43d783e1e9d77ebefb7b3f104dbb5
BLAKE2b-256 ddbc78a9499080ee7cecb22585ea6d88a9c7565e71b48a5b6a9cab612368c7ae

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.5-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 44b99c47d5ec20c52ddbe4919807d5e1ad2c4958c13dd6c59017dafb654360fc
MD5 d913afc2960fb9125c136a8f4039474a
BLAKE2b-256 75133eb81b8750127be74ce8e9e5aee75e21cc2e1bd6f965a4042f0be89626f2

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