Text Classification
Transformers
Safetensors
decision-model
classification
julia
open-jev
head-finetune
low-resource
Instructions to use SHSLab/Qyvos with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use SHSLab/Qyvos with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-classification", model="SHSLab/Qyvos")# pip install -U transformers accelerate # Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("SHSLab/Qyvos", device_map="auto") - Notebooks
- Google Colab
- Kaggle
Qyvos v1: Julia-1 backbone (bit-exact) + Open-Jev head fine-tune (30k rows, low-RAM protocol)
31f7037 verified Download training/eval_qyvos.py from SHSLab/Qyvos: direct link, hf CLI and curl.
- Browser
- Download file 1.69 kB
-
https://huggingface.co/SHSLab/Qyvos/resolve/main/training/eval_qyvos.py
- Command line
-
hf download hf://SHSLab/Qyvos/training/eval_qyvos.py
-
curl -L -o eval_qyvos.py https://huggingface.co/SHSLab/Qyvos/resolve/main/training/eval_qyvos.py
1.69 kB
| #!/usr/bin/env python3 | |
| """Standalone honest eval of any checkpoint (or base model) on validation/test.""" | |
| import argparse | |
| import os | |
| import sys | |
| import time | |
| from pathlib import Path | |
| BASE = Path(os.environ.get("QYVOS_HOME", "/home/z/my-project/download/qyvos")) | |
| sys.path.insert(0, str(BASE / "Julia-1")) | |
| sys.path.insert(0, str(BASE / "scripts")) | |
| import torch | |
| from transformers import AutoTokenizer | |
| from julia.model import JuliaDecisionModel | |
| def main(): | |
| ap = argparse.ArgumentParser() | |
| ap.add_argument("--split", default="validation", choices=["validation", "test"]) | |
| ap.add_argument("--rows", type=int, default=900) | |
| ap.add_argument("--ckpt", default=None, help="head checkpoint to load (default: none = base)") | |
| ap.add_argument("--batch", type=int, default=8) | |
| args = ap.parse_args() | |
| import train_qyvos as T | |
| model = JuliaDecisionModel.from_pretrained(BASE / "Julia-1") | |
| tok = AutoTokenizer.from_pretrained(BASE / "Julia-1" / "tokenizer") | |
| if args.ckpt: | |
| payload = torch.load(args.ckpt, map_location="cpu", weights_only=False) | |
| model.load_state_dict(payload["model"], strict=False) | |
| print(f"loaded ckpt step={payload['step']} rows_seen={payload['rows_seen']}") | |
| class Cfg: | |
| eval_rows = args.rows | |
| eval_batch = args.batch | |
| max_length = 1024 | |
| head_length = 512 | |
| model.eval() | |
| t0 = time.time() | |
| acc, ce, detail = T.evaluate(model, tok, Cfg, split=args.split) | |
| print(f"split={args.split} rows={args.rows} acc={acc:.4f} softCE={ce:.4f} " | |
| + " ".join(f"{k}={v[0]:.4f}({v[1]})" for k, v in detail.items()) | |
| + f" [{time.time()-t0:.0f}s]") | |
| if __name__ == "__main__": | |
| main() | |