Skip to main content

3GPP-based 5G/6G Metamodel

Latest PyPi version Documentation Status BSD 3-Clause Clear license CodeFactor Latest release Pull requests welcome

metamodel_3gpp is a Pydantic-based, implementation-agnostic model of 5G/6G mobile networks built around 3GPP concepts.

It describes network topology, services, and deployment configuration independently of any implementation, orchestrator, or vendor. This shared representation supports experiments, testbeds, simulations, and reproducible deployments across different environments.

Key concepts

The metamodel separates the logical description of a network from the details of how a particular implementation deploys it. It provides typed, validation-friendly models that are easy to serialize and extend.

The main models are:

Model Description
MetaModel Aggregates the complete network description
Core 5G/6G core network functions and their configuration
RAN Radio access network components
RIC RAN Intelligent Controller topology
RU Radio unit configuration
Slice Network slices and their DNNs
UE UE subscriptions and sessions

Installation

Install the package from PyPI:

pip install metamodel_3gpp

Or install the latest source from GitHub:

git clone https://github.com/ifran-project/metamodel_3gpp.git
cd metamodel_3gpp
pip install -e .

Quick start

Create a network using the default topology:

from metamodel_3gpp import MetaModel

network = MetaModel()

# Export as JSON-compatible data or YAML
print(network.model_dump(mode="json"))
print(network.to_yaml())

The default topology includes:

  • A 5G core with amf, ausf, bsf, nssf, nrf, pcf, smf, upf, udm, and udr
  • One RAN gNB
  • One simulated radio unit (sim_ru)
  • One UE (sim_ue)
  • One network slice (internet)
  • One RIC instance (ric)

Custom networks

Build a network from a YAML configuration with MetaModel.from_yaml():

from metamodel_3gpp import MetaModel

network = MetaModel.from_yaml_file("network.yaml")

print(network.to_yaml(exclude_defaults=False))

A network configuration is organized around these top-level sections:

core:
  components: {}  # Core network functions

ran:
  components: {}  # RAN components, such as gNBs

ric:
  components: {}  # RIC components

rus: {}            # Radio units
ues: {}            # UE profiles and subscriptions
slices: {}         # Network slices and DNNs

Add component-specific configuration under the relevant section. All the models provide helpers for loading YAML or JSON from text or files.

Contributing

Contributions are welcome. To add or improve network concepts, extend the metamodel with additional typed fields or model classes and submit a pull request.

License

Distributed under the BSD 3-Clause Clear license. See LICENSE for details.

Metadata

Release files for metamodel-3gpp 0.0.6

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

Source distribution (sdist)

Source distribution for metamodel-3gpp 0.0.6
File Size Uploaded Provenance Actions
metamodel_3gpp-0.0.6.tar.gz 22.7 kB With provenance Details for metamodel_3gpp-0.0.6.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for metamodel-3gpp 0.0.6
File Interpreter ABI Platform Actions
metamodel_3gpp-0.0.6-py3-none-any.whl Python 3 none any Details for metamodel_3gpp-0.0.6-py3-none-any.whl

Total release size: 48.7 kB

Release files / metamodel_3gpp-0.0.6.tar.gz

Download URL metamodel_3gpp-0.0.6.tar.gz
Size 22.7 kB
Tags Source
SHA-256 checksum
How to use checksums
5792b5c8bf18f6d0ebbe3b123bac21727944f6b75103ed12ed59fd8558cb57a7
BLAKE2b-256 checksum
How to use checksums
97c21b314182c628f24a85e09324e1d97f0a3f1b705b6af40ac7864c65f4a885
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 11, 2026.

Transparency log

Release files / metamodel_3gpp-0.0.6-py3-none-any.whl

Download URL metamodel_3gpp-0.0.6-py3-none-any.whl
Size 26.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3f85eb87c7f7cf78f861e67172287333f2c16bd45ed7e41365535f8524b273fe
BLAKE2b-256 checksum
How to use checksums
a398d8134ec976851b63a30e9fe61c4c0cd224e1bf8e2c6d193935e77be8941c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 11, 2026.

Transparency log

Security for metamodel-3gpp 0.0.6

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.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for metamodel_3gpp-0.0.6.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 11, 2026.

Transparency log

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

0.0.6 This release

2 release files Full 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