Skip to main content

Garden: tools to simplify access to scientific AI advances.

Project description

🌱 Garden: FAIR AI/ML Model Publishing Framework

NSF-2209892 PyPI Tests tests codecov

At a Glance:

  • Easy Model Publishing: Publish pre-trained AI/ML models from a notebook with just a few commands
  • Reproducible Environments: Use containers to ensure consistent execution across different systems
  • Remote Execution: Run your models (or others) remotely on HPC resources seamlessly
  • Discoverable Collections: Organize models into "Gardens" for easy discovery and comparison
  • Metadata Management: Capture and manage metadata of related datasets, papers, or code repositories for better searchability

Why Garden?

Garden addresses key challenges faced by academic researchers in discovering, reproducing, and running AI/ML models:

  1. Reproducibility: Garden eliminates environment inconsistencies by containerizing models, ensuring they run consistently across different systems.

  2. Discoverability: With curated "Gardens" of models, researchers can easily find, compare, and curate relevant models for their work.

  3. Accessibility: Garden simplifies the process of running models on diverse computing resources, from local machines to HPC clusters, via Globus Compute integration.

  4. Time-saving: By handling environment management and system-specific quirks, Garden significantly reduces the time researchers spend on setup and configuration.

  5. Collaboration: FAIR principles (Findable, Accessible, Interoperable, Reusable) and standardized publishing make it easier for researchers to share their work and build upon others' contributions.

Garden aims to let researchers focus on their science, not on the intricacies of software environments and computing infrastructure.

What's a Garden?

A "Garden" is a citable collection of published pre-trained AI/ML models, called "Entrypoints".

Ok, What's an Entrypoint?

An "Entrypoint" is just a python function you define in a regular jupyter notebook which typically invokes one or more of your pre-trained models.

When you give us that notebook, we "freeze it in amber" by containerizing it (along with any environment dependencies) and give you a citable DOI in return.

Now, anyone with the DOI can easily invoke that exact function, in the exact same environment, on any remote compute resources they have access to (via Globus Compute):

remote-inference-screenshot

Quick Start

  1. Install the garden CLI:

    pipx install garden-ai
    
  2. Set up Docker on your system (required for local development and testing)

    We recommend installing Docker Desktop for most users.

  3. Start a notebook in an isolated environment:

    garden-ai notebook start my_model.ipynb --base-image=3.10-sklearn
    
  4. Define a function invoking your model in the notebook and publish it:

    garden-ai notebook publish my_model.ipynb
    

For a more detailed walkthrough, check out our 15-minute tutorial.

Documentation

For more documentation, including installation instructions, tutorials, and API references, see our latest docs.

Contributing

We welcome contributions from the community! Please see our Contributing Guide for more information on how to get started.

Support

This work was supported by the National Science Foundation under NSF Award Number: 2209892 "Frameworks: Garden: A FAIR Framework for Publishing and Applying AI Models for Translational Research in Science, Engineering, Education, and Industry".

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

garden_ai-2.2.5.tar.gz (65.2 kB view details)

Uploaded Source

Built Distribution

garden_ai-2.2.5-py3-none-any.whl (85.6 kB view details)

Uploaded Python 3

File details

Details for the file garden_ai-2.2.5.tar.gz.

File metadata

  • Download URL: garden_ai-2.2.5.tar.gz
  • Upload date:
  • Size: 65.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.10.2 Linux/6.5.0-1025-azure

File hashes

Hashes for garden_ai-2.2.5.tar.gz
Algorithm Hash digest
SHA256 697da2ff515d0e0188f94dc2794155c696ab329f913cf3fdbf5f3a00986e2a58
MD5 d0c1d84dcadb8b9a77bfede873dfb1f8
BLAKE2b-256 d138afe33f6c8671a61f69b5365e4148fa04064a99516cc63c7cd39d355d10de

See more details on using hashes here.

Provenance

File details

Details for the file garden_ai-2.2.5-py3-none-any.whl.

File metadata

  • Download URL: garden_ai-2.2.5-py3-none-any.whl
  • Upload date:
  • Size: 85.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.10.2 Linux/6.5.0-1025-azure

File hashes

Hashes for garden_ai-2.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 f23a9ca8abc4ba70d20e20b42b3eaf6f6fcf1160ee544ad44109b732de5e7fdb
MD5 2ff010d8bfcf5f54e8f9344f9076f792
BLAKE2b-256 d6b2847010f1368a47631236ab6f738098db24c2a612b1bef75235fe6c2f6594

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page