mutterkey
KDE-first push-to-talk transcription tool for KDE Plasma
Loading...
Searching...
No Matches
modelvalidator.h
Go to the documentation of this file.
1#pragma once
2
5
6#include <optional>
7
18 qint64 maxManifestBytes = 64LL * 1024LL;
20 qint64 maxAssetCount = 16;
22 qint64 maxPackageBytes = 8LL * 1024 * 1024 * 1024;
24 qint64 maxWeightsBytes = 8LL * 1024 * 1024 * 1024;
25};
26
30class ModelValidator final
31{
32public:
37 [[nodiscard]] static ModelValidationLimits defaultLimits();
38
48 [[nodiscard]] static std::optional<ValidatedModelPackage>
49 validatePackagePath(const QString &path,
50 QStringView requiredEngine = {},
51 QStringView requiredModelFormat = {},
52 RuntimeError *error = nullptr,
53 const ModelValidationLimits &limits = defaultLimits());
54};
Validates native Mutterkey model packages before runtime loading.
static ModelValidationLimits defaultLimits()
Returns the default validation limits for native packages.
static std::optional< ValidatedModelPackage > validatePackagePath(const QString &path, QStringView requiredEngine={}, QStringView requiredModelFormat={}, RuntimeError *error=nullptr, const ModelValidationLimits &limits=defaultLimits())
Validates a native model package on disk.
Product-owned model package manifest and validated package value types.
Hard bounds applied while validating model packages.
qint64 maxWeightsBytes
Maximum weights asset size in bytes.
qint64 maxPackageBytes
Maximum total package size in bytes.
qint64 maxAssetCount
Maximum number of asset entries allowed in one manifest.
qint64 maxManifestBytes
Maximum accepted model.json size in bytes.
Structured runtime-layer failure with user-facing and diagnostic text.
Shared value types exchanged by the transcription pipeline.