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.6.tar.gz (21.4 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.6-py3-none-any.whl (23.4 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for icicle_playgrounds-0.1.5.6.tar.gz
Algorithm Hash digest
SHA256 6b3ed22122d5d43c54f1bef1330da0ecde4b30d1c0b51bcc088688f7827e19a3
MD5 ef9502810259a866fe8fe40e986bd334
BLAKE2b-256 94d1fdb6904ffa26b81dcf00f898ecc7f7c3e521cccaad2532c0821ee9b554ab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for icicle_playgrounds-0.1.5.6-py3-none-any.whl
Algorithm Hash digest
SHA256 23ac6011dd92505df902d7facd3003353888fc6f4491aafed0fc3116792e1f5b
MD5 16e96cb76e76b63cd70a2391a779a484
BLAKE2b-256 6c8739a62f15e262125bd8ed688ef6d53a3ac013bb05ffc5216592a5e77e02fd

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