hacnho's picture
Upload build_poc.py with huggingface_hub
01b0979 verified
Raw
History Blame Contribute Delete
1.11 kB
#!/usr/bin/env python3
from __future__ import annotations
import hashlib
import json
from pathlib import Path
import msgspec
ROOT = Path(__file__).resolve().parent
ARTIFACTS = ROOT / "artifacts"
CONTROL = ARTIFACTS / "control.msgpack"
MALICIOUS = ARTIFACTS / "decoder_trigger.msgpack"
def sha256(path: Path) -> str:
return hashlib.sha256(path.read_bytes()).hexdigest()
def main() -> None:
manifest = {
"format": "MessagePack (.msgpack)",
"loader": "msgspec.msgpack.Decoder(type=ModelState).decode",
"msgspec_version": msgspec.__version__,
"control": {
"path": str(CONTROL),
"size": CONTROL.stat().st_size,
"sha256": sha256(CONTROL),
},
"malicious": {
"path": str(MALICIOUS),
"size": MALICIOUS.stat().st_size,
"sha256": sha256(MALICIOUS),
},
"trigger_vector": [4, 2, 7],
}
(ARTIFACTS / "manifest.json").write_text(json.dumps(manifest, indent=2) + "\n", encoding="utf-8")
print(json.dumps(manifest, indent=2))
if __name__ == "__main__":
main()