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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.6.tar.gz
Algorithm Hash digest
SHA256 127c8e93600c583e83f885d83823c45e4b89dcf736944b662bd3cbda2b5f40c2
MD5 f1cb67fac28f402cbcb4790a3cae3329
BLAKE2b-256 a609cc04324d7fa1cfbab1d096979e5d29ddfb39b3042158e9fed18467c3852d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.6-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e025563abb359ef520be600ad87d7f73ae0e5c04d4b85bdb93abfc6f3aaf0751
MD5 123bf848891eb6378f7ab54a8e5eb991
BLAKE2b-256 288379f4c07531dc5250b664f669710268b895338bf328016ebd2593d41e676a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.6-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 9cc2c55fe4d8b69b96fa730e41b846174f10a64e7322f83d1fd530073f3f7336
MD5 712db1654edbd449fad43353d48352bc
BLAKE2b-256 058f5ab1c3b2e4676083f5ba382b7d03056e0c672dd1956645953a9ae3361d34

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.6-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.6-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8df70453f74d0853036524d2c1e379747335044f6676c3fc83e85721758edeba
MD5 0082fad217c6623f8adc4bfd4765ee8a
BLAKE2b-256 bdb69cb9ccbc54a1b8b992eafa2b9b8ef4716394fe3e03c3b8bf5632edd53219

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.6-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e156651034559ac286b3a6a6043f36057bac0801da44a8bee9b98d05a036bc19
MD5 b2e5d76046e109d61d0754535319e0e6
BLAKE2b-256 1c054f8286e14b56929fc6c61108b8f5c6f526e96c02464e36cbf09236d6089b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.6-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 34748884ac5f866da44cfc08cd0787f66d634d67a39742fedbd87fbeed038d29
MD5 6225ded91e2b4fd6aa4ea1b58027d769
BLAKE2b-256 2641c88e6a933b956a7e582d036d51d52752f31518ed869ee220c00b4f2d11fa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.6-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 0a53e5ab2bb4ab5185d2617a87ce1068c172151820ea537ddc0bd68260108471
MD5 253856e0123dfdab01a05ae283799dce
BLAKE2b-256 76c1928478406e8f955a5d06c2a8e14a147bee9eabe255bc62108f8fe0bc0547

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.6-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 3178f407f3fb9d50ab687d40e517a5a2586b0b83e22f4c276e3368461c194cf3
MD5 859be3a10c70a9a81a16e687a58fb8f3
BLAKE2b-256 36db311e17cd0193b637e64f9d5fe10b37025b6eb5ad87c029257eaa54ad99c6

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.6-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.6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ae2626de3f95efcd991ebe79576f7af9c4e3397b45d5a989cc36f2c8479be99b
MD5 04a8e633cdcfc760c75018c257ee4692
BLAKE2b-256 af066aa677303c1511d9719b10e58289defb0515577b3e1a20290f6dcc4b14dc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.6-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4894fc479681d30f497e26bc2ad2cfe80e33056b16fa4c5b34e373734e506d6c
MD5 6b1c6b3eec72feaeff7edf59a20067a5
BLAKE2b-256 03082907cbdb7a6604d4e3181174702e93bde52673d63cfed316dc008056a116

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.6-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 29ef4ea96e84a89c51c639e358e8548954127acb6a959ae9800164c3ff83c79a
MD5 2560c87f0d50a72fb91ca81e345e6945
BLAKE2b-256 13f69ec8c7f0f74837fca991c7993f78dce08b516ed310733efd2103dc8e0a0c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e1d2f9772670ca7a556efc05c94441e4a183fe21e9447b0c1ae55adea137fdcf
MD5 de6e9ab2e5a15b0857716f3a97d86686
BLAKE2b-256 616201d9242afa5c5bf9595a964e6a87e13b086e1906dc4e72c199b27b326a23

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.6-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 042e106549afe2b17d15af45d34ca4ce292feb559c1664ac59037dd93abeabaf
MD5 a231bc6273589a32552af78c1e81fcf8
BLAKE2b-256 151e5c9746224534fc787e4bcd0ce4e4e725d4199ede625c81226f8e2d4dacf8

See more details on using hashes here.

File details

Details for the file elaraai_east_py_datascience-1.0.6-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.6-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1c01e221f595f9a62cc5e717499f915247eb6719f93c8dde14d74759638c714d
MD5 6cd6342f9091d89a4b4416250b22c9dd
BLAKE2b-256 57e98fd73b57d0dc33a5ba471c0a8a0dcdc15c0044317efa459fe11448115d67

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.6-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fdf919d7715b88b0aaa8483da059a59a1e50f449aefb69ddaefbcfdd27d2555b
MD5 8dcf1f1cca6056edf3ace6ad38f0a6b9
BLAKE2b-256 40d9e9a3cb530346745c52c71d470a0a9109afa07580138f61447e041be9ba05

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for elaraai_east_py_datascience-1.0.6-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f11ef650f0d87622f5b39b6ebf0f7c0b09e62f3338a78ba2cb2fbb385d7fda12
MD5 997500d255ffad9f841c2dd90e488b88
BLAKE2b-256 3384f317f0c924f4623f1295b9d88fb04c0ce7961ea8bf2b27463425963e274e

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