Skip to main content

tests codecov PyPI - Version docs

Machine Learning and Optimization for Communications (MOKka)

(german: Maschinelles Lernen und Optimierung für Kommunikationssysteme)

This Python package is intended to provide signal and information processing blocks in popular machine learning frameworks. Most of the functionality currently is provided for the PyTorch machine learning framework. Some parts are already implemented to interface with the Sionna Python package.

Prerequisites

This package uses UV for fast Python package management and virtual environments. UV is a modern alternative to pip/poetry that provides significantly faster dependency resolution and installation.

Installation

# Install using UV (fastest method)
uv add mokka

# Or using pip (traditional method)
pip install mokka

From Source

# Clone the repository
git clone https://github.com/kit-cel/mokka.git
cd mokka

# Install with all optional extras using UV
uv sync --all-extras

# Or install specific extras (e.g., torch + dev tools)
uv sync --extra torch --extra dev

Development Setup

# Install development dependencies
uv sync --with=dev

# Install pre-commit hooks for code quality
pre-commit install

For more advanced usage, refer to the UV documentation.

Usage

This package provides a range of modules, covering a range of functions within a communication system. To access functionality within a specific module first import mokka and then access of modules is possible, e.g. mokka.mapping.torch provides constellation mappers and demappers implemented with and compatible to the PyTorch framework.

Development

For consistent development, we use pre-commit hooks to check code formatting and documentation before commits. The project has been updated to use UV for faster dependency management.

Development Installation

# Install in development mode with UV
uv sync --editable --extra torch --extra dev

# Install pre-commit hooks
pre-commit install

Common Development Commands

# Run tests with coverage
uv run pytest --cov=src --cov-report=xml

# Format code
uv run ruff format

# Lint code
uv run ruff check

# Type checking
uv run mypy src

The pre-commit hooks will automatically run formatting and linting checks on each commit. For more information about the development workflow, see the Contributing Guide.

Acknowledgment

This work has received funding from the European Research Council (ERC) under the European Union's Horizon2020 research and innovation programme (grant agreement No. 101001899).

Metadata

Release files for mokka 1.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mokka 1.2.1
File Size Uploaded Provenance Actions
mokka-1.2.1.tar.gz 80.5 kB Without provenance Details for mokka-1.2.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for mokka 1.2.1
File Interpreter ABI Platform Actions
mokka-1.2.1-py3-none-any.whl Python 3 none any Details for mokka-1.2.1-py3-none-any.whl

Total release size: 172.7 kB

Release files / mokka-1.2.1.tar.gz

Download URL mokka-1.2.1.tar.gz
Size 80.5 kB
Tags Source
SHA-256 checksum
How to use checksums
3f22d0fb606889c165353a59714c5637d52054ad4049e31717e4b1444a5de6c8
BLAKE2b-256 checksum
How to use checksums
ba5e9dcb1bf3d9828b82e5ca9b28c09a0c75c13b8147af9504e744e00d5b7ecb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / mokka-1.2.1-py3-none-any.whl

Download URL mokka-1.2.1-py3-none-any.whl
Size 92.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cf9de4ee3f5728d56dfb9183257d22c0d5af53c42230660ea9348a136b15f19e
BLAKE2b-256 checksum
How to use checksums
f7a44edbf77e4608604b441f18f2d8a017c0056b009215bc5ea793976175e907
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for mokka 1.2.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.2.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page