sidchalamala commited on
Commit
973efad
·
verified ·
1 Parent(s): 68a5aa9

Upload 2 files

Browse files
Files changed (2) hide show
  1. README.md +51 -3
  2. adapter_config.json +51 -0
README.md CHANGED
@@ -1,3 +1,51 @@
1
- ---
2
- license: apache-2.0
3
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ base_model: Qwen/Qwen2.5-Coder-1.5B-Instruct
4
+ library_name: peft
5
+ tags: [lora, code, dsl, aether]
6
+ ---
7
+
8
+ # Aether SOP-to-program LoRA v0.2 (Qwen2.5-Coder-1.5B-Instruct)
9
+
10
+ A LoRA adapter that turns a plain-English business procedure, plus the owner's policy and sheet list, into an Aether program. **The model is not a safety mechanism.** Every program it writes must pass the Aether checker before it runs. The checker blocks programs that break the policy's rules; the model often writes such programs.
11
+
12
+ "correct" below means passes the checker and has the same effects as the reference program (scorer field `safe_and_correct`). It is not a safety rating.
13
+
14
+ ## Final evaluation: frozen held-out trap set (30 tasks, each model evaluated once)
15
+
16
+ Each task asks for something the policy forbids or Aether cannot do. The correct answer is a program that does the permitted alternative. The set was frozen before any trap training data existed and was never used for training or decisions.
17
+
18
+ | System | Correct | 95% CI |
19
+ |---|---|---|
20
+ | Base model + reference card + 3 examples | 0/30 | 0.0-0.114 |
21
+ | v0.1 (synthetic data only) | 6/30 | 0.095-0.373 |
22
+ | **v0.2 (this adapter: + 413 trap samples)** | **6/30** | 0.095-0.373 |
23
+
24
+ - **Negative result:** adding 413 targeted trap samples did **not** improve held-out performance. v0.2 vs v0.1: 6 vs 6, paired exact McNemar p = 1.
25
+ - v0.2 vs the base model: p = 0.031.
26
+ - Novel trap types absent from all training data (delete rows, raise a limit): 0/4 for every system.
27
+ - In every evaluation, the checker blocked every program that broke a rule, and programs it accepted had 0 monitor violations. The model by itself solves 6/30 held-out traps.
28
+
29
+ ## Development benchmark (110 tasks, used during development)
30
+
31
+ This benchmark was used to build the scorer and compare models during development, so treat it as a development set, not a clean test.
32
+
33
+ | System | Correct | Traps (30) |
34
+ |---|---|---|
35
+ | Base model + reference card + 3 examples | 3/110 | 0 |
36
+ | v0.1 | 30/110 | 2 |
37
+ | **v0.2** | **34/110** | 3 |
38
+
39
+ v0.2 vs v0.1: paired p = 0.48.
40
+
41
+ ## Training
42
+
43
+ The v0.1 recipe (LoRA rank 16, learning rate 0.0002, 2 epochs, seed 42; only the program tokens are trained) on 2062 verified examples: 1649 synthetic plus 413 trap-style. Training took 42 minutes on one NVIDIA GeForce RTX 4070, at $0. The checkpoint was chosen by validation loss.
44
+
45
+ ## Limitations
46
+
47
+ - Trained on templated synthetic English only. Most held-out failures are general errors on unfamiliar businesses (parse errors, type errors, reading columns the policy does not allow), not only trap-following.
48
+ - All benchmark and held-out tasks were drafted by Claude, an AI assistant, not taken from real businesses.
49
+ - Small evaluation sets with wide intervals; one training seed per model.
50
+ - Aether's external actions (messages, money, calendars) are mocked. This is research software.
51
+ - Do not describe this model, or Aether as a whole, as "safe". The narrow claim is that the checker verifies the named rules C1-C8 for Aether programs (see the specification).
adapter_config.json ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alora_invocation_tokens": null,
3
+ "alpha_pattern": {},
4
+ "arrow_config": null,
5
+ "auto_mapping": null,
6
+ "base_model_name_or_path": "Qwen/Qwen2.5-Coder-1.5B-Instruct",
7
+ "bias": "none",
8
+ "corda_config": null,
9
+ "ensure_weight_tying": false,
10
+ "eva_config": null,
11
+ "exclude_modules": null,
12
+ "fan_in_fan_out": false,
13
+ "inference_mode": true,
14
+ "init_lora_weights": true,
15
+ "kasa_config": null,
16
+ "layer_replication": null,
17
+ "layers_pattern": null,
18
+ "layers_to_transform": null,
19
+ "loftq_config": {},
20
+ "lora_alpha": 32,
21
+ "lora_bias": false,
22
+ "lora_dropout": 0.05,
23
+ "lora_ga_config": null,
24
+ "megatron_config": null,
25
+ "megatron_core": "megatron.core",
26
+ "modules_to_save": null,
27
+ "monteclora_config": null,
28
+ "peft_type": "LORA",
29
+ "peft_version": "0.21.2",
30
+ "qalora_group_size": 16,
31
+ "r": 16,
32
+ "rank_pattern": {},
33
+ "revision": null,
34
+ "target_modules": [
35
+ "q_proj",
36
+ "k_proj",
37
+ "o_proj",
38
+ "down_proj",
39
+ "up_proj",
40
+ "v_proj",
41
+ "gate_proj"
42
+ ],
43
+ "target_parameters": null,
44
+ "task_type": "CAUSAL_LM",
45
+ "trainable_token_indices": null,
46
+ "use_bdlora": null,
47
+ "use_dora": false,
48
+ "use_qalora": false,
49
+ "use_rslora": false,
50
+ "velora_config": null
51
+ }