Skip to main content

SDK to interact with the ICICLE Model & Data Playgrounds

Project description

ICICLE Playgrounds

SDK to interact with the ICICLE Model & Data Playgrounds

ICICLE Playgrounds is a Python SDK designed for working with AI plug-n-play frameworks powered by Tapis Workflows. This library provides standardized Pydantic models and tools for seamless integration with the ICICLE (Intelligent CyberInfrastructure with Computational Learning in the Environment) ecosystem.

Features

  • 🔧 Plug-n-Play Framework: Built for easy integration with Tapis Workflows
  • 📊 Pydantic Models: Type-safe data structures for AI workflows
  • 🖼️ Image Processing: Support for image data handling and tensor operations
  • 🎯 Detection Results: Standardized formats for AI model outputs
  • 📋 Model Cards: PATRA (Partnership for Advanced Trusted Research in AI) model card support
  • 🔍 Bias & XAI Analysis: Tools for bias analysis and explainable AI

Installation

This project uses uv for dependency management. Make sure you have Python 3.12+ installed.

# Install using uv
uv add icicle-playgrounds

# Or install from source
git clone <repository-url>
cd icicle-playgrounds
uv sync

Quick Start

from icicle_playgrounds.pydantic.plug_n_play import Image, Tensor, DetectionResults
from icicle_playgrounds.pydantic.patra_model_cards import PatraModelCard

# Work with images and tensors
image = Image(...)
tensor = Tensor(...)

# Handle detection results
results = DetectionResults(...)

# Create model cards
model_card = PatraModelCard(...)

Project Structure

icicle_playgrounds/
├── pydantic/
│   ├── plug_n_play/          # Core plug-n-play data models
│   │   ├── Image.py          # Image handling
│   │   ├── Tensor.py         # Tensor operations
│   │   └── DetectionResults.py  # AI model output formats
│   └── patra_model_cards/    # PATRA model card implementations

Development

Prerequisites

  • Python 3.12+
  • uv package manager

Setup Development Environment

# Clone the repository
git clone <repository-url>
cd icicle-playgrounds

# Install dependencies
uv sync

# Install development dependencies
uv sync --group dev

Running Tests

# Run tests using pytest
uv run pytest

# Or using just (if available)
just test

Documentation Generation

This project includes a script to generate MDX documentation:

uv run python generate-mdx.py

Dependencies

  • httpx - HTTP client for API interactions
  • pillow - Image processing capabilities
  • pydantic - Data validation and serialization
  • torchvision - Computer vision utilities

Contributing

We welcome contributions! Please feel free to submit issues, feature requests, or pull requests.

License

This project is licensed under the terms specified in the LICENSE file.

About ICICLE

ICICLE (Intelligent CyberInfrastructure with Computational Learning in the Environment) is focused on developing AI-driven cyberinfrastructure solutions. This SDK facilitates integration with ICICLE's model and data playgrounds through standardized interfaces and workflows.

Support

For questions, issues, or support, please refer to the project's issue tracker or contact the ICICLE team.


Version: 0.1.5.4

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

icicle_playgrounds-0.1.5.5.tar.gz (21.2 kB view details)

Uploaded Source

Built Distribution

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

icicle_playgrounds-0.1.5.5-py3-none-any.whl (23.4 kB view details)

Uploaded Python 3

File details

Details for the file icicle_playgrounds-0.1.5.5.tar.gz.

File metadata

File hashes

Hashes for icicle_playgrounds-0.1.5.5.tar.gz
Algorithm Hash digest
SHA256 af8219090a37773c4339da4a7ed21a26a675b8e999d6be9acfca793124738231
MD5 bf09977851e963eb72b028fcda6a950b
BLAKE2b-256 da8c1322cd0ea660ee715007573cb700d380f5e003c71d911a6696200fbd02f0

See more details on using hashes here.

File details

Details for the file icicle_playgrounds-0.1.5.5-py3-none-any.whl.

File metadata

File hashes

Hashes for icicle_playgrounds-0.1.5.5-py3-none-any.whl
Algorithm Hash digest
SHA256 1d12f7b4ad2bdd45c080994000a25312d0a55a35de2c21249d5dfd856d36b16b
MD5 02239416da1753f48ed915a8d0db4998
BLAKE2b-256 85df345f660b110c59fe1a0f3df400dee2f0a6ed744a0308d4af269f654815cd

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