Files
vllm-omni/tests/edge/local/test_manifest.py
T
tzhouamandClaude Fable 5.1 4e3e8a1ebc [edge-infer] WIP snapshot: uncommitted M0/W1/W4/W5 edge work as of 2026-09-18
Verbatim copy of the edge/omni-edge working tree (tracked diffs + untracked
edge/local, tests/edge/local, docs/edge, pipeline files). Taken so that
vLLM-Omni v0.29.0rc1 can be merged on a branch without touching the
user's working tree. logs_edge/ and benchmark .npy outputs excluded.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-18 09:47:29 +08:00

100 lines
4.0 KiB
Python

# SPDX-License-Identifier: Apache-2.0
# SPDX-FileCopyrightText: Copyright contributors to the vLLM-Omni project
"""Identifying a checkpoint well enough to tell it from its siblings."""
import json
import pytest
from vllm_omni.edge.local.capabilities import FORMAT_DENSE, FORMAT_FP8, FORMAT_INT8
from vllm_omni.edge.local.manifest import build_manifest, runtime_versions
from .conftest import FP8_QUANT_CONFIG, INT8_QUANT_CONFIG, write_checkpoint
pytestmark = [pytest.mark.core_model, pytest.mark.cpu]
def test_quantization_format_is_read_from_the_config(tmp_path):
assert build_manifest(write_checkpoint(tmp_path / "d")).weight_format == FORMAT_DENSE
assert build_manifest(
write_checkpoint(tmp_path / "i", quantization=INT8_QUANT_CONFIG)
).weight_format == FORMAT_INT8
assert build_manifest(
write_checkpoint(tmp_path / "f", quantization=FP8_QUANT_CONFIG)
).weight_format == FORMAT_FP8
def test_compressed_tensors_int8_and_fp8_are_distinguished_by_format_not_method(tmp_path):
"""Both say ``compressed-tensors``; only ``format`` separates the one
Blackwell can execute from the one it cannot."""
int8 = build_manifest(write_checkpoint(tmp_path / "i", quantization=INT8_QUANT_CONFIG))
fp8 = build_manifest(write_checkpoint(tmp_path / "f", quantization=FP8_QUANT_CONFIG))
assert int8.quantization["quant_method"] == fp8.quantization["quant_method"]
assert int8.weight_format != fp8.weight_format
def test_two_quantizations_of_one_model_get_different_ids(tmp_path):
dense = build_manifest(write_checkpoint(tmp_path / "d"))
int8 = build_manifest(write_checkpoint(tmp_path / "i", quantization=INT8_QUANT_CONFIG))
assert dense.artifact_id != int8.artifact_id
def test_the_id_is_stable_across_reads(tmp_path):
path = write_checkpoint(tmp_path / "d")
assert build_manifest(path).artifact_id == build_manifest(path).artifact_id
def test_a_changed_tokenizer_changes_the_id(tmp_path):
"""The tokenizer decides what the model is asked, and moves independently
of the weights."""
path = write_checkpoint(tmp_path / "d")
before = build_manifest(path).artifact_id
(path / "chat_template.jinja").write_text("{{ different }}", encoding="utf-8")
assert build_manifest(path).artifact_id != before
def test_weights_are_not_hashed_unless_asked(tmp_path):
path = write_checkpoint(tmp_path / "d")
assert build_manifest(path).weight_sha256 is None
assert any("digest_weights" in n for n in build_manifest(path).notes)
assert build_manifest(path, digest_weights=True).weight_sha256 is not None
def test_weight_bytes_and_shards_are_recorded(tmp_path):
path = write_checkpoint(tmp_path / "d", weight_bytes=8192, shards=4)
manifest = build_manifest(path)
assert len(manifest.weight_files) == 4
assert manifest.weight_bytes == 8192
def test_a_directory_without_a_config_is_an_error(tmp_path):
(tmp_path / "empty").mkdir()
with pytest.raises(FileNotFoundError):
build_manifest(tmp_path / "empty")
def test_an_hf_snapshot_path_yields_its_revision(tmp_path):
root = tmp_path / "models--org--name" / "snapshots" / "deadbeef1234"
write_checkpoint(root)
assert build_manifest(root).revision == "deadbeef1234"
def test_a_local_checkpoint_reports_no_revision_rather_than_guessing(tmp_path):
assert build_manifest(write_checkpoint(tmp_path / "d")).revision is None
def test_the_runtime_records_both_the_wheel_and_the_checkout():
versions = runtime_versions()
assert versions.python
# The import path, not just the version string: an editable install and a
# site-packages copy report the same version and are different code.
assert versions.vllm_omni_file.endswith("__init__.py")
assert isinstance(versions.checkouts, dict)
def test_the_manifest_is_json_serialisable(tmp_path):
manifest = build_manifest(write_checkpoint(tmp_path / "d"))
back = json.loads(json.dumps(manifest.to_dict(), default=str))
assert back["artifact_id"] == manifest.artifact_id
assert back["architectures"] == ["Spark2_5ForCausalLM"]