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.5.0.tar.gz (225.0 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.5.0-py3-none-any.whl (66.1 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for cuvis_ai_schemas-0.5.0.tar.gz
Algorithm Hash digest
SHA256 2425c8b4e96cdaafcf5f10761e18516bce2d52f2cf6ff6d2bb18a64b4259df94
MD5 ac78a9c85671ec44afb91c1fee6b426d
BLAKE2b-256 6cbdad4c3e0ff6acf2c058dc0eed9147c3072f60ebdfb80870d8dae1d8cfa675

See more details on using hashes here.

Provenance

The following attestation bundles were made for cuvis_ai_schemas-0.5.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.5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for cuvis_ai_schemas-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 647bf3d9ffb00c79b29433418423a805a2ee2d95a5f1b039ab1a1716045529ab
MD5 a8307303e8edc7537c9a86a269e1413a
BLAKE2b-256 a545d4325baba0a1ab8623a8308de6892919ee0098781c8ec5d87a8520e32f2c

See more details on using hashes here.

Provenance

The following attestation bundles were made for cuvis_ai_schemas-0.5.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