abhshkp commited on
Commit
1b8d85b
·
verified ·
1 Parent(s): 8ec4d99

Upload kaggle/run_exp3_multi.py with huggingface_hub

Browse files
Files changed (1) hide show
  1. kaggle/run_exp3_multi.py +63 -0
kaggle/run_exp3_multi.py ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python3
2
+ """
3
+ ================================================================================
4
+ LITM v4 — Experiment 3: Multi-Needle Retrieval
5
+ Standalone Kaggle-ready script.
6
+ ================================================================================
7
+ """
8
+ import argparse
9
+ import logging
10
+ import os
11
+ import sys
12
+
13
+ sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
14
+
15
+ from experiments.multi_needle import run_multi_needle
16
+
17
+ logging.basicConfig(
18
+ format="%(asctime)s - %(levelname)s - %(message)s",
19
+ level=logging.INFO,
20
+ stream=sys.stdout,
21
+ )
22
+ logger = logging.getLogger(__name__)
23
+
24
+
25
+ def parse_args():
26
+ p = argparse.ArgumentParser(description="LITM v4 - Exp 3: Multi-Needle")
27
+ p.add_argument("--model", default="Qwen/Qwen2.5-1.5B-Instruct")
28
+ p.add_argument("--n-examples", type=int, default=30)
29
+ p.add_argument("--n-sentences", type=int, default=300)
30
+ p.add_argument("--output", default="/kaggle/working/litm_results")
31
+ return p.parse_args()
32
+
33
+
34
+ def main():
35
+ args = parse_args()
36
+ out_dir = os.path.join(args.output, "exp3_multi")
37
+ os.makedirs(out_dir, exist_ok=True)
38
+
39
+ logger.info("=" * 60)
40
+ logger.info("LITM v4 - Experiment 3: Multi-Needle Retrieval")
41
+ logger.info(f"Model: {args.model}")
42
+ logger.info(f"Examples: {args.n_examples} | Sentences: {args.n_sentences}")
43
+ logger.info(f"Output: {out_dir}")
44
+ logger.info("=" * 60)
45
+
46
+ result = run_multi_needle(
47
+ model_name=args.model,
48
+ num_sentences=args.n_sentences,
49
+ num_examples=args.n_examples,
50
+ out_dir=out_dir,
51
+ )
52
+
53
+ logger.info("\n" + "=" * 60)
54
+ logger.info("EXPERIMENT 3 COMPLETE")
55
+ logger.info(f"Start accuracy: {result.get('start', 'N/A')}")
56
+ logger.info(f"Middle accuracy: {result.get('middle', 'N/A')}")
57
+ logger.info(f"End accuracy: {result.get('end', 'N/A')}")
58
+ logger.info(f"Results saved to: {out_dir}")
59
+ logger.info("=" * 60)
60
+
61
+
62
+ if __name__ == "__main__":
63
+ main()