alterna ai
ALTERNA AI / ГЛАВА 20 · 06

20.6 Система останавливается при неизвестном действии

На предыдущей странице: защищаем результат проверками.

Отсутствующее разрешение означает отказ, а не скрытый запуск. Финальная сборка включает правила остановки вместе с моделью.

Совместимость словаря, параметров и runtime проверяется до запуска. Происхождение ответа и запреты действий входят в проект наравне с прямым расчётом. Финал соединяет знакомое.

Переносится не один файл весов, а совместимый набор artefacts

Deployment package включает weights или adapter, tokenizer, generation config, chat template, schema contract, licenses и manifest. Manifest фиксирует версии runtime/opset, ожидаемые filenames, размеры и SHA-256 точных bytes.

Получатель сначала проверяет digest и только потом загружает artefact. Canonical JSON для самого manifest использует заданные encoding, сортировку keys и separators, иначе эквивалентные объекты могут иметь разные bytes.

Hash подтверждает целостность относительно доверенного digest, но сам по себе не устанавливает автора. Для provenance нужны защищённый канал, подпись или registry policy. Model card описывает назначение, данные на допустимом уровне раскрытия, evaluation, ограничения и запрещённые сценарии. Smoke test после распаковки проверяет schema, tokenizer IDs и короткую generation до переключения traffic.

Продолжение. Package explorer строит цепочку contract → artefacts → per-file hashes → canonical manifest → release digest. Проверка помечает отсутствующий, лишний и изменённый файл разными ошибками. Release связывается с прошедшим evaluation run и сохраняет rollback target; одна версия package всегда разворачивает один и тот же набор зависимостей.

Граница применимости. Совпадение hash не доказывает качество, отсутствие уязвимостей или поддержку operator целевым runtime. Конвертация в ONNX или другой формат может изменить численные результаты, поэтому её artefact оценивают отдельно. Package без lifecycle для обновлений, отзыва, мониторинга и миграции schema остаётся архивом, а не полностью управляемым production release.

from hashlib import sha256
from json import dumps

model_bytes_20f = b'model-v1'
manifest_20f = {
    'schema_version': 1,
    'files': {'model.bin': sha256(model_bytes_20f).hexdigest()},
    'runtime': {'name': 'local-stdlib-fixture', 'opset': 1},
# Полный исполняемый пример — по ссылке ниже.

Код повторяет только что разобранные операции. Полный проверяемыйPython-пример главы доступен отдельным файлом; показанный короткий фрагмент не заменяет его реализацию.

Deny-by-default и limits сохраняются внутри поставляемого system contract.

Какие свойства проекта подтверждены, а какие потребуют новых данных и независимой оценки?

Python-примеры главы 20 Академическая база →