#!/usr/bin/env python3 """Verifikasi Day 1: model path, tes unit, ringkasan gate mimpi.""" from __future__ import annotations import json import sys from pathlib import Path sys.path.insert(0, ".") from model.loader import diagnosis_lingkungan_model, resolve_model_path def main() -> int: print("=== Diagnosis model ===") diag = diagnosis_lingkungan_model() for k, v in diag.items(): print(f" {k}: {v}") path = resolve_model_path() print(f"\nresolve_model_path() → {path}") print(f"file exists: {Path(path).is_file()}") log_gate = Path("tests/results/mimpi_uji_log.json") if log_gate.is_file(): data = json.loads(log_gate.read_text(encoding="utf-8")) print(f"\n=== Gate mimpi uji (lokal) ===") print(f" {data['passed']}/{data['total']} ({data['rate_percent']}%) gate_85={data['gate_85']}") else: print("\n(Gate log belum ada — jalankan: python scripts/run_mimpi_uji.py)") print("\n=== Space (manual) ===") print(" https://huggingface.co/spaces/build-small-hackathon/oneiros") print(" https://build-small-hackathon-oneiros.hf.space") print(" Cek Logs: diagnosis [oneiros] + status Running + 1 mimpi contoh di UI.") if not Path(path).is_file(): print("\n❌ Model tidak ditemukan — unduh GGUF atau tunggu preload Space.") return 1 if diag.get("shard_pair_ok") is False and "q4_k_m" in path: print("\n⚠ Shard 00002 belum ada di folder yang sama — preload Space mungkin belum selesai.") print("\n✅ Verifikasi lokal OK (path model ada).") return 0 if __name__ == "__main__": sys.exit(main())