Skip to main content

Python package for automatic generation of scientific computing software pipelines.

Project description

Fluidize

Python PyPI License Documentation

An Open Framework for AI-Driven Scientific Computing

fluidize-python is a library for building modular, reproducible scientific computing pipelines. It provides a unified interface to a wide range of physical simulation tools, eliminating the need to navigate the inconsistent, incomplete instructions that often vary from tool to tool.

This library marks our first step toward AI-orchestrated scientific computing. By standardizing tools and practices within our framework, AI agents can automatically build, configure, and execute computational pipelines across domains and simulation platforms. Our goal is to improve today’s simulation tools so AI can assist researchers and scientists in accelerating the pace of innovation and scientific discovery.

Quick Start

Installation

Prerequesites:

  • Python 3.9+

  • Docker Desktop (for local execution). Download and install Docker Desktop from https://docs.docker.com/desktop/.

    After installation, verify with:

    docker --version
    

From PyPI

pip install fluidize

From Source

git clone https://github.com/Fluidize-Inc/fluidize-python.git
cd fluidize-python
make install

Run Examples

Example projects are located in this folder: examples/. There you can find an Jupyter Notebook of a simple simulation

The Problem

Students and researchers face significant barriers when working with different simulation tools:

  • Setup overhead – Installing and configuring someone else’s research code can take an enormous amount of time.
  • Diverse architectures – Scientific software is built using a wide range of tools and architectures, each with its own complexities and quirks.
  • Time drain – Good software engineering practices are important, but in practice they often slow down the process of getting immediate results.
  • Reproducibility issues – Sharing and reproducing experiments is frequently cumbersome and error-prone.
  • Scaling friction – Moving from a local prototype to a cloud environment or dedicated compute cluster can be slow and difficult.

The Solution

Fluidize provides a standardized wrapper that turns complex scientific software into modular components. This makes it possible to:

  • Expose a single API endpoint for any scientific computing software—any language, any tool, any complexity.
  • Easily connect tools that were never designed to work together.
  • Adopt consistent I/O patterns across all simulations.

All of this works with minimal or no changes to the existing codebase, allowing our framework to scale effortlessly to any repository.

Architecture

Nodes

The foundational building blocks of Fluidize. Each node encapsulates a computational unit with:

File Purpose
properties.yaml Container configuration, working directory, and output paths
metadata.yaml Node description, version, authors, and repository URL
Dockerfile Environment setup and dependency installation
parameters.json Tunable parameters for experiments
main.sh Execution script for the source code
source/ Original scientific computing code

Key Features:

  • Predictable input/output paths
  • Modular and extensible design
  • No source code modification required
  • Automated node generation support (Public launch soon)

Projects

The project currently hosts a simple layer for composing and managing multiple nodes:

File Purpose
graph.json Node connectivity and data flow definition
metadata.yaml Project description and configuration

Docker engine is used for local execution. With API calls, we use the Kubernetes engine with Argo Workflow Manager.

Documentation

Comprehensive documentation is available at https://Fluidize-Inc.github.io/fluidize-python/

Contributing

We would love contributions and collaborations! Please see our Contributing Guide for details.

Also - we would love to help streamline your research pipeline! Please reach out at henry@fluidize.ai or henrybae@g.harvard.edu.

Roadmap

This is just the beginning of what we think is a really exciting new era for how we learn science and do research. We will be releasing the following tools built from this framework:

  • Fluidize Playground: Automatically explore and build simulation pipelines with natural language.
  • Auto-Fluidize: Automatically convert obscure scientific software to run anywhere

License

This project is licensed under the MIT License - see the LICENSE file for details.

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

fluidize-0.0.2.tar.gz (2.1 MB view details)

Uploaded Source

Built Distribution

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

fluidize-0.0.2-py3-none-any.whl (100.0 kB view details)

Uploaded Python 3

File details

Details for the file fluidize-0.0.2.tar.gz.

File metadata

  • Download URL: fluidize-0.0.2.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.14

File hashes

Hashes for fluidize-0.0.2.tar.gz
Algorithm Hash digest
SHA256 66fcaed7649cbc7df80e6734c43cc1e80961eba3934de7e81c35c5594899017b
MD5 7b7733b13b25348413dfcc01355dc3b3
BLAKE2b-256 88eedf929f328953c26460a3d3113b8c52d227e7e5e26012211195a8013d8874

See more details on using hashes here.

File details

Details for the file fluidize-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: fluidize-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 100.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.14

File hashes

Hashes for fluidize-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7bd46a04ecb66681cea132c094c4a39aff7d8cc49d71241a8c7e38970c95fb47
MD5 6eda06151d98e15a6a87dfa531427e4a
BLAKE2b-256 8014ba87a0d02e961e8ab4b0c647588d78896d76e169dfc3e6edb93c7ef88358

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