Skip to main content

Lightweight schema definitions for cuvis-ai ecosystem

Project description

cuvis-ai-schemas

Lightweight schema definitions for the cuvis-ai ecosystem.

PyPI version CI Status codecov License Python

Overview

cuvis-ai-schemas is a centralized, dependency-light package of schema definitions used across the cuvis-ai ecosystem. It enables type-safe communication between services without heavy runtime requirements.

Key points:

  • Minimal deps (pydantic + pyyaml)
  • Full Pydantic validation
  • Optional extras for proto, torch, numpy, lightning

Installation

uv add cuvis-ai-schemas
uv add "cuvis-ai-schemas[proto]"
uv add "cuvis-ai-schemas[full]"

Extras:

  • proto: gRPC and protobuf support
  • torch: PyTorch dtype handling (validation only)
  • numpy: NumPy array support
  • lightning: PyTorch Lightning training configs
  • full: All features
  • dev: Development dependencies

Usage

from cuvis_ai_schemas.pipeline import PipelineConfig, NodeConfig

pipeline = PipelineConfig(
    nodes=[NodeConfig(id="node_1", class_name="DataLoader", params={"batch_size": 32})],
    connections=[],
)

pipeline_json = pipeline.to_json()
pipeline = PipelineConfig.from_json(pipeline_json)

Development

uv sync --extra dev
uv run pytest tests/ -v
uv run ruff check cuvis_ai_schemas/ tests/
uv run ruff format cuvis_ai_schemas/ tests/
uv run mypy cuvis_ai_schemas/

Contributing

Contributions are welcome. Please:

  1. Ensure tests pass
  2. Run ruff format and ruff check
  3. Keep type hints and update docs as needed

License

Licensed under the Apache License 2.0. See LICENSE 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

cuvis_ai_schemas-0.3.0.tar.gz (129.2 kB view details)

Uploaded Source

Built Distribution

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

cuvis_ai_schemas-0.3.0-py3-none-any.whl (47.5 kB view details)

Uploaded Python 3

File details

Details for the file cuvis_ai_schemas-0.3.0.tar.gz.

File metadata

  • Download URL: cuvis_ai_schemas-0.3.0.tar.gz
  • Upload date:
  • Size: 129.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cuvis_ai_schemas-0.3.0.tar.gz
Algorithm Hash digest
SHA256 7c593bce250eb14a1ab512714a7c532152cb0b604759ac3392fc309b1106c7d0
MD5 a32144c94c54e32e68f9696d827002ec
BLAKE2b-256 3b886abec000894108c7206e545b7d4a546e76b4e49194b6e61929712bfc7353

See more details on using hashes here.

Provenance

The following attestation bundles were made for cuvis_ai_schemas-0.3.0.tar.gz:

Publisher: pypi-release.yml on cubert-hyperspectral/cuvis-ai-schemas

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cuvis_ai_schemas-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for cuvis_ai_schemas-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4f8991ab7050c93875e248273fcc6b965f7d169c68dd1cbc4f9ff3fe093b367b
MD5 cb9be00fa6f444f3ac6872d21af5a015
BLAKE2b-256 90255cd461357ced5b7e5a404d7b4460ef9e94145ff7911526a6c2995836257e

See more details on using hashes here.

Provenance

The following attestation bundles were made for cuvis_ai_schemas-0.3.0-py3-none-any.whl:

Publisher: pypi-release.yml on cubert-hyperspectral/cuvis-ai-schemas

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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