abhshkp commited on
Commit
c300ba0
·
verified ·
1 Parent(s): 567c66c

Upload kaggle/run_exp1a_kv100.py with huggingface_hub

Browse files
Files changed (1) hide show
  1. kaggle/run_exp1a_kv100.py +64 -0
kaggle/run_exp1a_kv100.py ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python3
2
+ """
3
+ ================================================================================
4
+ LITM v4 — Experiment 1A: KV Retrieval (100 keys)
5
+ Standalone Kaggle-ready script. Run individually or in sequence.
6
+ ================================================================================
7
+ """
8
+ import argparse
9
+ import logging
10
+ import os
11
+ import sys
12
+
13
+ # Add parent directory to path for imports
14
+ sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
15
+
16
+ from experiments.kv_retrieval import run_kv_retrieval
17
+
18
+ logging.basicConfig(
19
+ format="%(asctime)s - %(levelname)s - %(message)s",
20
+ level=logging.INFO,
21
+ stream=sys.stdout,
22
+ )
23
+ logger = logging.getLogger(__name__)
24
+
25
+
26
+ def parse_args():
27
+ p = argparse.ArgumentParser(description="LITM v4 - Exp 1A: KV Retrieval (100 keys)")
28
+ p.add_argument("--model", default="Qwen/Qwen2.5-1.5B-Instruct", help="HF model name")
29
+ p.add_argument("--n-examples", type=int, default=50, help="Examples per position")
30
+ p.add_argument("--n-keys", type=int, default=100, help="Number of KV pairs")
31
+ p.add_argument("--output", default="/kaggle/working/litm_results", help="Output directory")
32
+ return p.parse_args()
33
+
34
+
35
+ def main():
36
+ args = parse_args()
37
+ out_dir = os.path.join(args.output, "exp1a_kv100")
38
+ os.makedirs(out_dir, exist_ok=True)
39
+
40
+ logger.info("=" * 60)
41
+ logger.info("LITM v4 - Experiment 1A: KV Retrieval (100 keys)")
42
+ logger.info(f"Model: {args.model}")
43
+ logger.info(f"Examples per position: {args.n_examples}")
44
+ logger.info(f"Keys: {args.n_keys}")
45
+ logger.info(f"Output: {out_dir}")
46
+ logger.info("=" * 60)
47
+
48
+ result = run_kv_retrieval(
49
+ model_name=args.model,
50
+ num_keys=args.n_keys,
51
+ num_examples=args.n_examples,
52
+ out_dir=out_dir,
53
+ prefix="kv100",
54
+ )
55
+
56
+ logger.info("\n" + "=" * 60)
57
+ logger.info("EXPERIMENT 1A COMPLETE")
58
+ logger.info(f"PBI: {result.get('pbi', 'N/A')}")
59
+ logger.info(f"Results saved to: {out_dir}")
60
+ logger.info("=" * 60)
61
+
62
+
63
+ if __name__ == "__main__":
64
+ main()