Skip to main content

Package for representation of numerical data in format of integers or strings.

Project description

Dashboard License Python Versions Website

Neuralk Foundry

A Modular Machine Learning Framework for Industrial Tasks

[Dashboard] [Examples & Tutorials]


๐ŸŽ‰ Welcome to Neuralk Foundry

Neuralk Foundry is a lightweight yet powerful framework for building modular machine learning pipelines โ€” particularly well-suited for industrial tasks and representation learning. Whether you're prototyping or scaling up, Foundry helps you build, combine, and orchestrate steps cleanly and efficiently.

Foundry is also the engine behind TabBench, Neuralk's internal benchmark for evaluating ML models on real-world tabular datasets.

Why Foundry?

Most ML frameworks fall into one of two camps:

  • Rigid benchmarks and academic pipelines: great for simple supervised learning tasks, but brittle or limited when adapting to more complex use cases.
  • Heavyweight MLOps frameworks (e.g., ZenML, Metaflow): offer full orchestration but at the cost of steep setup and reduced flexibility.

Foundry sits in between. It gives you just the right level of structure to scale from prototype to production โ€” without locking you into opinionated tooling.


๐Ÿš€ Key Features

Composable Workflows : Define steps in terms of their inputs and outputs โ€” no black boxes.

Supports Heterogeneous Tasks : Classification, regression, ranking, record linkage, and more.

Customizable & Extensible : Plug in your own logic or replace any step with a variant.

Built-in Caching & Logging : Avoid recomputation and keep track of metrics automatically.

Workflow Explorer UI : Inspect and debug workflows through an interactive, visual interface.

Reproducibility by Design : Strong separation between configuration, code, and data.


๐Ÿง  How Things Are Organized

Foundry is a modular framework. Its codebase is split into submodules that reflect each phase of the ML pipeline:

neuralk_foundry_ce/
โ”œโ”€โ”€ datasets/               # Dataset loading utilities
โ”œโ”€โ”€ sample_selection/
โ”‚   โ”œโ”€โ”€ splitter/           # Data splitting strategies (e.g., stratified shuffle)
โ”‚   โ””โ”€โ”€ blocking/           # Candidate pair selection (e.g., for deduplication)
โ”œโ”€โ”€ feature_engineering/
โ”‚   โ”œโ”€โ”€ preprocessing/      # Traditional preprocessing for tabular data
โ”‚   โ”œโ”€โ”€ vectorizer/         # Text and other unstructured data vectorization
โ”‚   โ””โ”€โ”€ blocking/           # Pair processing modules for matching/merging
โ”œโ”€โ”€ models/
โ”‚   โ”œโ”€โ”€ classifier/         # Classification models
โ”‚   โ”œโ”€โ”€ regressor/          # Regression models
โ”‚   โ”œโ”€โ”€ embedder/           # Embedding/representation learning
โ”‚   โ””โ”€โ”€ clustering/         # Clustering and unsupervised methods
โ”œโ”€โ”€ workflow/               # Core execution engine: Step, Workflow, etc.
โ””โ”€โ”€ utils/                  # Helper functions and shared infrastructure

Each component (e.g., a model or preprocessing step) inherits from a base Step class and declares:

  • Its expected inputs
  • The outputs it produces
  • Any configurable parameters

Steps can then be connected into a Workflow, either manually or through a task-specific template (e.g., Classification).


โš™๏ธ Quick-Start Installation

Install the package from PyPI:

pip install neuralk_foundry_ce

๐Ÿ”ฌ Development Installation

Clone the Repository

git clone https://github.com/Neuralk-AI/NeuralkFoundry-CE
cd NeuralkFoundry-CE

Create a Dedicated Environment (recommended)

Neuralk Foundry relies on a variety of external machine learning libraries. As a result, managing package versions can be delicate. To avoid compatibility issues, we strongly recommend installing Foundry in a dedicated virtual environment (e.g., using conda or venv).

conda create -n foundry python=3.11
conda activate foundry

Install the Package

pip install -e .

Examples and tutorials

Citing Foundry

If you incorporate any part of this repository into your work, please reference it using the following citation:

@article{neuralk2025foundry,
         title={Foundry: A Modular Machine Learning Framework for Industrial Tasks}, 
         author={Neuralk-AI},
         year={2025},
         publisher = {GitHub},
         howpublished = {\url{https://github.com/Neuralk-AI/NeuralkFoundry-CE}},
}

Contact

If you have any questions or wish to propose new features please feel free to open an issue or contact us at alex@neuralk-ai.com.

For collaborations please contact us at antoine@neuralk-ai.com.

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

neuralk_foundry_ce-0.0.1.tar.gz (61.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

neuralk_foundry_ce-0.0.1-py3-none-any.whl (79.8 kB view details)

Uploaded Python 3

File details

Details for the file neuralk_foundry_ce-0.0.1.tar.gz.

File metadata

  • Download URL: neuralk_foundry_ce-0.0.1.tar.gz
  • Upload date:
  • Size: 61.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.6

File hashes

Hashes for neuralk_foundry_ce-0.0.1.tar.gz
Algorithm Hash digest
SHA256 4fec23729fd7972eca137623cc5d005fa7dad36a8db1633b431ff9ed04844c94
MD5 d1bdc9755848d9245412a64d56b93801
BLAKE2b-256 3541cb7388e49790bb9e35fd7332444f7cb871d80d67cfc24528bae7d009d8ea

See more details on using hashes here.

File details

Details for the file neuralk_foundry_ce-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for neuralk_foundry_ce-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 dca636ff2898bb00ed17d73258a610fc267b17f0cda7186735fa83d4bd812d70
MD5 8249e8de4ea401a98bb514d382579e70
BLAKE2b-256 7ba102626d80cd93e1c97c64abf12658abeed6a7f537bfdf3d4fd4c1e5648005

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