{
 "schema": "gaige-receipt-export/1",
 "exported_by": "gaige 0.0.2",
 "receipt": {
  "id": "20260722-163959-fast-detect-gpt",
  "generated_utc": "2026-07-22T21:40:31+00:00",
  "gaige_version": "0.0.1"
 },
 "instrument": {
  "host": {
   "os": "Linux",
   "arch": "x86_64",
   "device": "cuda"
  },
  "detector": {
   "detector": "fast-detect-gpt",
   "paper": "Bao et al., Fast-DetectGPT (ICLR 2024), analytic single-model variant",
   "model_id": "tiiuae/falcon-7b",
   "quant_requested": "4bit",
   "quant_verified": {
    "linear4bit_modules": 128,
    "resident_gb": 4.04
   },
   "max_tokens": 1024,
   "versions": {
    "torch": "2.13.0+cu130",
    "transformers": "4.49.0",
    "cuda": "13.0",
    "python": "3.12.3",
    "bitsandbytes": "0.49.2"
   },
   "device": "cuda",
   "device_requested": "cuda",
   "device_fallback": false,
   "model_auto_selected": false,
   "compute": {
    "name": "NVIDIA RTX 5000 Ada Generation Laptop GPU"
   },
   "score_semantics": "analytic sampling discrepancy; higher = more AI-like; RAW criterion (uncalibrated by design)"
  }
 },
 "corpus": {
  "name": "hc3-mini(n=100,seed=17)",
  "sha256": "7d2819d3e83bd10dc3cef56b1fcd2b19f09ada6ef59d671b25498635f6937d01",
  "counts": {
   "human": 100,
   "ai": 100
  },
  "meta": {
   "source": "HC3 (Hello-SimpleAI) via HF hub",
   "url": "https://huggingface.co/datasets/Hello-SimpleAI/HC3/resolve/main/all.jsonl",
   "raw_sha256": "ee231f82283d754050a4dc58ecf9331afaf5daea7283c6da0b096ed0fb2774cf",
   "filters": {
    "min_words": 50,
    "max_words": 300
   },
   "n_per_class": 100,
   "seed": 17,
   "note": "known-AI side is ChatGPT-era text; detectors may score newer model families differently"
  }
 },
 "metrics": {
  "auroc": 0.972,
  "auroc_ci": [
   0.9457875,
   0.993805
  ],
  "n_boot": 1000
 },
 "thresholds": [
  {
   "target_fpr": 0.01,
   "threshold": 2.122894287109375,
   "achieved_fpr": 0.01,
   "achieved_tpr": 0.86,
   "tpr_ci": [
    0.79,
    0.92
   ]
  },
  {
   "target_fpr": 0.05,
   "threshold": 1.8319025039672852,
   "achieved_fpr": 0.05,
   "achieved_tpr": 0.91,
   "tpr_ci": [
    0.85,
    0.96
   ]
  }
 ],
 "conformal": [
  {
   "alpha": 0.05,
   "threshold": 1.8467863798141482,
   "n_calibration": 100,
   "order_statistic": 96,
   "conditional_fpr_mean": 0.04950495049504951,
   "conditional_fpr_sd": 0.021478263150361998,
   "guarantee": "P(human flagged) <= 0.05, marginal over calibration draws, under exchangeability (split conformal)",
   "tpr": 0.9
  },
  {
   "alpha": 0.01,
   "threshold": 2.4445590972900395,
   "n_calibration": 100,
   "order_statistic": 100,
   "conditional_fpr_mean": 0.009900990099009901,
   "conditional_fpr_sd": 0.009803441019571034,
   "guarantee": "P(human flagged) <= 0.01, marginal over calibration draws, under exchangeability (split conformal)",
   "tpr": 0.76
  },
  {
   "alpha": 0.005,
   "unavailable": "alpha=0.005 needs >= 199 human calibration samples, got 100. A tighter guarantee than your data supports is not a guarantee."
  }
 ],
 "subgroups": {
  "min_subgroup": 20,
  "by_threshold": [
   {
    "target_fpr": 0.01,
    "threshold": 2.122894287109375,
    "strata": {
     "length_bucket": {
      "0-100w": {
       "n_human": 42,
       "n_ai": 7,
       "fpr": 0.0,
       "fpr_ci": [
        0.0,
        0.0
       ],
       "tpr": null,
       "tpr_ci": null,
       "rate_withheld": true
      },
      "100-250w": {
       "n_human": 39,
       "n_ai": 81,
       "fpr": 0.0,
       "fpr_ci": [
        0.0,
        0.0
       ],
       "tpr": 0.8518518518518519,
       "tpr_ci": [
        0.7774691358024695,
        0.9259259259259259
       ],
       "rate_withheld": false
      },
      "250-500w": {
       "n_human": 19,
       "n_ai": 12,
       "fpr": null,
       "fpr_ci": null,
       "tpr": null,
       "tpr_ci": null,
       "rate_withheld": true
      }
     }
    },
    "max_fpr_disparity": {
     "length_bucket": {
      "gap": 0.0,
      "worst_group": "0-100w",
      "worst_fpr": 0.0,
      "best_group": "0-100w",
      "best_fpr": 0.0,
      "ratio": null
     }
    }
   },
   {
    "target_fpr": 0.05,
    "threshold": 1.8319025039672852,
    "strata": {
     "length_bucket": {
      "0-100w": {
       "n_human": 42,
       "n_ai": 7,
       "fpr": 0.047619047619047616,
       "fpr_ci": [
        0.0,
        0.11904761904761904
       ],
       "tpr": null,
       "tpr_ci": null,
       "rate_withheld": true
      },
      "100-250w": {
       "n_human": 39,
       "n_ai": 81,
       "fpr": 0.02564102564102564,
       "fpr_ci": [
        0.0,
        0.07692307692307693
       ],
       "tpr": 0.8888888888888888,
       "tpr_ci": [
        0.8148148148148148,
        0.9506172839506173
       ],
       "rate_withheld": false
      },
      "250-500w": {
       "n_human": 19,
       "n_ai": 12,
       "fpr": null,
       "fpr_ci": null,
       "tpr": null,
       "tpr_ci": null,
       "rate_withheld": true
      }
     }
    },
    "max_fpr_disparity": {
     "length_bucket": {
      "gap": 0.021978021978021976,
      "worst_group": "0-100w",
      "worst_fpr": 0.047619047619047616,
      "best_group": "100-250w",
      "best_fpr": 0.02564102564102564,
      "ratio": 1.8571428571428572
     }
    }
   }
  ]
 },
 "base_rate": {
  "volume": 75000,
  "volume_note": "default is Vanderbilt's published 75,000 submissions/year",
  "at": [
   {
    "target_fpr": 0.01,
    "expected_false_positives": 750.0,
    "ppv_at_prevalence": [
     {
      "prevalence": 0.01,
      "ppv": 0.4648648648648648
     },
     {
      "prevalence": 0.1,
      "ppv": 0.9052631578947369
     },
     {
      "prevalence": 0.5,
      "ppv": 0.9885057471264368
     }
    ]
   },
   {
    "target_fpr": 0.05,
    "expected_false_positives": 3750.0,
    "ppv_at_prevalence": [
     {
      "prevalence": 0.01,
      "ppv": 0.1552901023890785
     },
     {
      "prevalence": 0.1,
      "ppv": 0.6691176470588236
     },
     {
      "prevalence": 0.5,
      "ppv": 0.9479166666666666
     }
    ]
   }
  ]
 },
 "reproduce": {
  "run": "gaige run --corpus hc3-mini --n 100 --seed 17 --detector fast-detect-gpt --model tiiuae/falcon-7b --quant 4bit --device cuda --max-tokens 1024"
 }
}