Spaces:
Running
Running
| from __future__ import annotations | |
| import argparse | |
| import sys | |
| from pathlib import Path | |
| sys.path.insert(0, str(Path(__file__).resolve().parents[1])) | |
| from environment.direction_library import DirectionLibrary | |
| def main() -> None: | |
| parser = argparse.ArgumentParser(description="Precompute seige direction vectors.") | |
| parser.add_argument("--library-path", default="data/direction_library.json") | |
| parser.add_argument("--probe-path", default="data/intent_probes.pkl") | |
| parser.add_argument("--hidden-size", type=int, default=1024) | |
| parser.add_argument("--mode", choices=["mock", "hf"], default="mock") | |
| parser.add_argument("--model-id", default="google/gemma-4-E2B") | |
| args = parser.parse_args() | |
| if args.mode == "mock": | |
| library = DirectionLibrary( | |
| library_path="", | |
| probe_path="", | |
| hidden_size=args.hidden_size, | |
| ) | |
| library.save(args.library_path, args.probe_path) | |
| print(f"Saved random direction vectors (mock mode) to {args.library_path} and {args.probe_path}") | |
| else: | |
| _precompute_real_directions(args.model_id, args.library_path, args.probe_path) | |
| def _precompute_real_directions(model_id: str, library_path: str, probe_path: str) -> None: | |
| print(f"Precomputing real directions for {model_id} (not fully implemented).") | |
| # Real contrastive extraction — implement from design doc | |
| # CONTRASTIVE_PAIRS, INTENT_EXAMPLES, get_layer_activations(), etc. | |
| pass | |
| if __name__ == "__main__": | |
| main() | |