kfallah commited on
Commit
ecc1989
·
verified ·
1 Parent(s): 408a34b

Trained default: EXP-012 reward_lcb_b0.2 (tuned fp16 + tuned 4-bit MLX)

Browse files
.gitattributes CHANGED
@@ -33,3 +33,5 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ encoder-fp16/tokenizer.json filter=lfs diff=lfs merge=lfs -text
37
+ encoder-mlx-4bit/tokenizer.json filter=lfs diff=lfs merge=lfs -text
README.md CHANGED
@@ -1,39 +1,89 @@
1
  ---
 
 
2
  tags:
3
- - routing
4
- - code
5
- library_name: coding-router
 
6
  ---
7
 
8
- # coding-router — default routing artifact
9
 
10
- The default kNN routing artifact for [coding-router](https://github.com/experientiallabs/coding-router):
11
- routes every coding-agent request to the cheapest OpenAI/Anthropic model likely to solve it.
 
 
12
 
13
- - `router.json` arm specs (model + reasoning effort + pricing), kNN hyperparameters
14
- (k=12, tau=0.5, sim_floor=0.35), fallback arm, provenance.
15
- - `router.npz` — reference-task embeddings plus per-arm resolved/cost cells measured on
16
- DeepSWE tasks across 41 OpenAI/Anthropic arms.
17
 
18
- Embedding space: **Qwen3-Embedding-0.6B**, computed fully locally at serve time
19
- (`mlx-community/Qwen3-Embedding-0.6B-4bit-DWQ` via MLX on Apple Silicon;
20
- `Qwen/Qwen3-Embedding-0.6B` via sentence-transformers elsewhere). Routing decisions never
21
- call an embeddings API. Off-distribution queries abstain to the strongest arm rather than
22
- trusting a thin neighborhood.
23
 
24
- Holdout (repo-grouped 80/20 over DeepSWE): quality parity with the always-strongest-arm
25
- baseline at a fraction of its cost (median cost ratio ≈ 3.8× cheaper across seeds in this
26
- embedding space).
 
 
 
27
 
28
- ## Use
 
 
29
 
30
- You never fetch this by hand — `uv run python -m router.serve` downloads it on first run,
31
- then runs offline. New router versions (including future RL-trained ones) overwrite this
32
- repo in place; old versions stay in the repo's git history.
33
 
34
- Fit your own artifact from your own traces with
35
- [world-model-optimizer](https://github.com/experientiallabs/world-model-optimizer)
36
- (`wmo optimize route`).
 
 
 
 
37
 
38
- This artifact contains only benchmark-task embeddings and measured outcomes no user
39
- data of any kind.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
+ license: apache-2.0
3
+ base_model: Qwen/Qwen3-Embedding-0.6B
4
  tags:
5
+ - router
6
+ - model-routing
7
+ - embeddings
8
+ - mlx
9
  ---
10
 
11
+ # coding-router — trained default artifact (v1)
12
 
13
+ The default routing artifact for [experiential-labs/coding-router](https://github.com/experiential-labs/coding-router):
14
+ given a coding task (or a whole agent conversation), pick the cheapest OpenAI/Anthropic
15
+ model+effort arm predicted to solve it. Routing runs fully locally — the encoder below
16
+ runs in-process; API keys are only ever used to dispatch the chosen model.
17
 
18
+ This release replaces the kNN-over-base-embeddings artifact with a **trained** router
19
+ (EXP-012 winning recipe `reward_lcb_b0.2`), shipped in two encoder formats plus one
20
+ head/calibration payload.
 
21
 
22
+ ## Files
 
 
 
 
23
 
24
+ | path | what |
25
+ |---|---|
26
+ | `router.json` | arm list + per-arm request kwargs, decision-rule params (`T`, `lam`, `sim_floor`), provenance (`kind: "trained"`) |
27
+ | `router.npz` | `emb` — 110-task DeepSWE evidence bank in the tuned space; `graded` — 41×110 outcome matrix (the calibration side of the vote); `med_cost` — per-arm median $/task |
28
+ | `encoder-fp16/` | merged (LoRA→base) Qwen3-Embedding-0.6B, fp16 safetensors — loads via sentence-transformers / transformers on CUDA or CPU |
29
+ | `encoder-mlx-4bit/` | the same merged encoder, 4-bit MLX (group size 64) for Apple Silicon — loads via `mlx_embeddings` |
30
 
31
+ Both encoder dirs are the SAME model in two precisions; the bank and every query must
32
+ be embedded by one of them (backend agreement measured below). The server picks MLX on
33
+ Apple Silicon and torch elsewhere, and downloads only the directory it needs.
34
 
35
+ ## What the router is
 
 
36
 
37
+ Qwen3-Embedding-0.6B with LoRA r=16 on the attention projections, trained by exact
38
+ expected reward −E_π[graded − λ·cost] over the LiveCodeBench 7×76 outcome matrix with a
39
+ KL(π‖π_init) anchor (β=0.2), plus a trained soft-vote temperature `T`. At inference:
40
+ embed the task → softmax(sims/`T`) vote over the DeepSWE bank → per-arm P(solve) →
41
+ argmax of u = P(solve) − `lam`·med_cost. If no bank task is within `sim_floor` cosine
42
+ similarity the router abstains: it escalates to the strongest arm rather than trust the
43
+ vote off-distribution.
44
 
45
+ Final-mint policy: one training run with the sweep's exact code and seed; (checkpoint,
46
+ `lam`) selected only on the six standard seeds' inner DeepSWE-train splits (the sweep's
47
+ own selection discipline); the shipped bank is the full 110-task evidence. The artifact
48
+ was never selected or early-stopped on the holdout numbers reported below.
49
+
50
+ ## Honest numbers (EXP-012, 6-seed repo-split holdout, DeepSWE v1.1)
51
+
52
+ Two baselines, deliberately:
53
+
54
+ | policy | graded | cost/split | read |
55
+ |---|---|---|---|
56
+ | always-best-train arm (deployable baseline) | 0.9336 | $126.28 | what you could actually deploy without hindsight |
57
+ | **this router (per-seed selection, sweep)** | **0.9484** | **$60.17** | **+0.015 graded, 2.1× cheaper** |
58
+ | hindsight-best static arm (opus-5@high) | 0.9635 | $135.73 | the router is at parity with it, NOT better |
59
+
60
+ Minted-artifact re-evaluation (this exact shipped artifact's encoder + single global
61
+ (step=50, lam=0.01) instead of per-seed selection, same 6 splits, sweep eval code):
62
+ graded **0.9353 at $50.21/split** — slightly below the per-seed-selected sweep mean
63
+ (that gap is the per-seed selection's optimism, deliberately not shipped), cheaper,
64
+ and still above the always-best-train baseline on both axes. The shipped checkpoint
65
+ and `lam` were selected on inner train-side splits only; the holdout numbers above
66
+ were computed after the artifact was frozen.
67
+
68
+ Quality-BEATING routing on this data is dead (held-out oracle analysis, EXP-018): the
69
+ honest framing is parity-quality at a large cost saving vs any deployable policy.
70
+ **Cost figures are matrix-based (June 2026 collection) and pending live re-benchmark
71
+ (EXP-014 measured live cost/quality drift on several arms).**
72
+
73
+ ## Backend agreement (fp16 vs MLX 4-bit)
74
+
75
+ Over 20 probe texts (DeepSWE issues, LCB tasks, short interactive prompts): max
76
+ per-arm |ΔP(solve)| = **0.0274**; decisions and abstentions agreed on **20/20**
77
+ probes, no arm-ranking flips (`provenance/agreement.json`). Cross-backend embedding
78
+ cosine runs 0.91–0.97 — the temperature-softmax vote absorbs the quantization noise.
79
+
80
+ ## Scope warning
81
+
82
+ Validated on repo-issue-shaped inputs (p50 ≈ 2,000 chars, long-horizon SWE tasks).
83
+ Short one-line prompts sit below `sim_floor` and abstain to the strongest arm — safe,
84
+ but no saving. Always check `Decision.off_distribution`.
85
+
86
+ ## Rollback
87
+
88
+ The previous kNN artifact keeps loading with the same product code (`kind` defaults to
89
+ `"knn"`); pin the prior revision of this repo to roll back.
encoder-fp16/1_Pooling/config.json ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "word_embedding_dimension": 1024,
3
+ "pooling_mode_cls_token": false,
4
+ "pooling_mode_mean_tokens": false,
5
+ "pooling_mode_max_tokens": false,
6
+ "pooling_mode_mean_sqrt_len_tokens": false,
7
+ "pooling_mode_weightedmean_tokens": false,
8
+ "pooling_mode_lasttoken": true,
9
+ "include_prompt": true
10
+ }
encoder-fp16/chat_template.jinja ADDED
@@ -0,0 +1,85 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {%- if tools %}
2
+ {{- '<|im_start|>system\n' }}
3
+ {%- if messages[0].role == 'system' %}
4
+ {{- messages[0].content + '\n\n' }}
5
+ {%- endif %}
6
+ {{- "# Tools\n\nYou may call one or more functions to assist with the user query.\n\nYou are provided with function signatures within <tools></tools> XML tags:\n<tools>" }}
7
+ {%- for tool in tools %}
8
+ {{- "\n" }}
9
+ {{- tool | tojson }}
10
+ {%- endfor %}
11
+ {{- "\n</tools>\n\nFor each function call, return a json object with function name and arguments within <tool_call></tool_call> XML tags:\n<tool_call>\n{\"name\": <function-name>, \"arguments\": <args-json-object>}\n</tool_call><|im_end|>\n" }}
12
+ {%- else %}
13
+ {%- if messages[0].role == 'system' %}
14
+ {{- '<|im_start|>system\n' + messages[0].content + '<|im_end|>\n' }}
15
+ {%- endif %}
16
+ {%- endif %}
17
+ {%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %}
18
+ {%- for message in messages[::-1] %}
19
+ {%- set index = (messages|length - 1) - loop.index0 %}
20
+ {%- if ns.multi_step_tool and message.role == "user" and not(message.content.startswith('<tool_response>') and message.content.endswith('</tool_response>')) %}
21
+ {%- set ns.multi_step_tool = false %}
22
+ {%- set ns.last_query_index = index %}
23
+ {%- endif %}
24
+ {%- endfor %}
25
+ {%- for message in messages %}
26
+ {%- if (message.role == "user") or (message.role == "system" and not loop.first) %}
27
+ {{- '<|im_start|>' + message.role + '\n' + message.content + '<|im_end|>' + '\n' }}
28
+ {%- elif message.role == "assistant" %}
29
+ {%- set content = message.content %}
30
+ {%- set reasoning_content = '' %}
31
+ {%- if message.reasoning_content is defined and message.reasoning_content is not none %}
32
+ {%- set reasoning_content = message.reasoning_content %}
33
+ {%- else %}
34
+ {%- if '</think>' in message.content %}
35
+ {%- set content = message.content.split('</think>')[-1].lstrip('\n') %}
36
+ {%- set reasoning_content = message.content.split('</think>')[0].rstrip('\n').split('<think>')[-1].lstrip('\n') %}
37
+ {%- endif %}
38
+ {%- endif %}
39
+ {%- if loop.index0 > ns.last_query_index %}
40
+ {%- if loop.last or (not loop.last and reasoning_content) %}
41
+ {{- '<|im_start|>' + message.role + '\n<think>\n' + reasoning_content.strip('\n') + '\n</think>\n\n' + content.lstrip('\n') }}
42
+ {%- else %}
43
+ {{- '<|im_start|>' + message.role + '\n' + content }}
44
+ {%- endif %}
45
+ {%- else %}
46
+ {{- '<|im_start|>' + message.role + '\n' + content }}
47
+ {%- endif %}
48
+ {%- if message.tool_calls %}
49
+ {%- for tool_call in message.tool_calls %}
50
+ {%- if (loop.first and content) or (not loop.first) %}
51
+ {{- '\n' }}
52
+ {%- endif %}
53
+ {%- if tool_call.function %}
54
+ {%- set tool_call = tool_call.function %}
55
+ {%- endif %}
56
+ {{- '<tool_call>\n{"name": "' }}
57
+ {{- tool_call.name }}
58
+ {{- '", "arguments": ' }}
59
+ {%- if tool_call.arguments is string %}
60
+ {{- tool_call.arguments }}
61
+ {%- else %}
62
+ {{- tool_call.arguments | tojson }}
63
+ {%- endif %}
64
+ {{- '}\n</tool_call>' }}
65
+ {%- endfor %}
66
+ {%- endif %}
67
+ {{- '<|im_end|>\n' }}
68
+ {%- elif message.role == "tool" %}
69
+ {%- if loop.first or (messages[loop.index0 - 1].role != "tool") %}
70
+ {{- '<|im_start|>user' }}
71
+ {%- endif %}
72
+ {{- '\n<tool_response>\n' }}
73
+ {{- message.content }}
74
+ {{- '\n</tool_response>' }}
75
+ {%- if loop.last or (messages[loop.index0 + 1].role != "tool") %}
76
+ {{- '<|im_end|>\n' }}
77
+ {%- endif %}
78
+ {%- endif %}
79
+ {%- endfor %}
80
+ {%- if add_generation_prompt %}
81
+ {{- '<|im_start|>assistant\n' }}
82
+ {%- if enable_thinking is defined and enable_thinking is false %}
83
+ {{- '<think>\n\n</think>\n\n' }}
84
+ {%- endif %}
85
+ {%- endif %}
encoder-fp16/config.json ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "Qwen3Model"
4
+ ],
5
+ "attention_bias": false,
6
+ "attention_dropout": 0.0,
7
+ "bos_token_id": 151643,
8
+ "dtype": "float16",
9
+ "eos_token_id": 151643,
10
+ "head_dim": 128,
11
+ "hidden_act": "silu",
12
+ "hidden_size": 1024,
13
+ "initializer_range": 0.02,
14
+ "intermediate_size": 3072,
15
+ "layer_types": [
16
+ "full_attention",
17
+ "full_attention",
18
+ "full_attention",
19
+ "full_attention",
20
+ "full_attention",
21
+ "full_attention",
22
+ "full_attention",
23
+ "full_attention",
24
+ "full_attention",
25
+ "full_attention",
26
+ "full_attention",
27
+ "full_attention",
28
+ "full_attention",
29
+ "full_attention",
30
+ "full_attention",
31
+ "full_attention",
32
+ "full_attention",
33
+ "full_attention",
34
+ "full_attention",
35
+ "full_attention",
36
+ "full_attention",
37
+ "full_attention",
38
+ "full_attention",
39
+ "full_attention",
40
+ "full_attention",
41
+ "full_attention",
42
+ "full_attention",
43
+ "full_attention"
44
+ ],
45
+ "max_position_embeddings": 32768,
46
+ "max_window_layers": 28,
47
+ "model_type": "qwen3",
48
+ "num_attention_heads": 16,
49
+ "num_hidden_layers": 28,
50
+ "num_key_value_heads": 8,
51
+ "pad_token_id": null,
52
+ "rms_norm_eps": 1e-06,
53
+ "rope_parameters": {
54
+ "rope_theta": 1000000,
55
+ "rope_type": "default"
56
+ },
57
+ "sliding_window": null,
58
+ "tie_word_embeddings": true,
59
+ "transformers_version": "5.14.1",
60
+ "use_cache": true,
61
+ "use_sliding_window": false,
62
+ "vocab_size": 151669
63
+ }
encoder-fp16/config_sentence_transformers.json ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "prompts": {
3
+ "query": "Instruct: Given a web search query, retrieve relevant passages that answer the query\nQuery:",
4
+ "document": ""
5
+ },
6
+ "default_prompt_name": null,
7
+ "similarity_fn_name": "cosine"
8
+ }
encoder-fp16/model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:734f269be9b14ca9d861ff6f3b826dee8f73997c71bac68187e1bd22aa6b249c
3
+ size 1191586112
encoder-fp16/modules.json ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "idx": 0,
4
+ "name": "0",
5
+ "path": "",
6
+ "type": "sentence_transformers.models.Transformer"
7
+ },
8
+ {
9
+ "idx": 1,
10
+ "name": "1",
11
+ "path": "1_Pooling",
12
+ "type": "sentence_transformers.models.Pooling"
13
+ },
14
+ {
15
+ "idx": 2,
16
+ "name": "2",
17
+ "path": "2_Normalize",
18
+ "type": "sentence_transformers.models.Normalize"
19
+ }
20
+ ]
encoder-fp16/tokenizer.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:93623af029cdc69b87f2864d3b2cc2424fdf16684f15e139b5b9d08ec34ced91
3
+ size 11423701
encoder-fp16/tokenizer_config.json ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_prefix_space": false,
3
+ "backend": "tokenizers",
4
+ "bos_token": null,
5
+ "clean_up_tokenization_spaces": false,
6
+ "eos_token": "<|im_end|>",
7
+ "errors": "replace",
8
+ "is_local": false,
9
+ "local_files_only": false,
10
+ "model_max_length": 131072,
11
+ "pad_token": "<|endoftext|>",
12
+ "split_special_tokens": false,
13
+ "tokenizer_class": "Qwen2Tokenizer",
14
+ "unk_token": null
15
+ }
encoder-mlx-4bit/chat_template.jinja ADDED
@@ -0,0 +1,85 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {%- if tools %}
2
+ {{- '<|im_start|>system\n' }}
3
+ {%- if messages[0].role == 'system' %}
4
+ {{- messages[0].content + '\n\n' }}
5
+ {%- endif %}
6
+ {{- "# Tools\n\nYou may call one or more functions to assist with the user query.\n\nYou are provided with function signatures within <tools></tools> XML tags:\n<tools>" }}
7
+ {%- for tool in tools %}
8
+ {{- "\n" }}
9
+ {{- tool | tojson }}
10
+ {%- endfor %}
11
+ {{- "\n</tools>\n\nFor each function call, return a json object with function name and arguments within <tool_call></tool_call> XML tags:\n<tool_call>\n{\"name\": <function-name>, \"arguments\": <args-json-object>}\n</tool_call><|im_end|>\n" }}
12
+ {%- else %}
13
+ {%- if messages[0].role == 'system' %}
14
+ {{- '<|im_start|>system\n' + messages[0].content + '<|im_end|>\n' }}
15
+ {%- endif %}
16
+ {%- endif %}
17
+ {%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %}
18
+ {%- for message in messages[::-1] %}
19
+ {%- set index = (messages|length - 1) - loop.index0 %}
20
+ {%- if ns.multi_step_tool and message.role == "user" and not(message.content.startswith('<tool_response>') and message.content.endswith('</tool_response>')) %}
21
+ {%- set ns.multi_step_tool = false %}
22
+ {%- set ns.last_query_index = index %}
23
+ {%- endif %}
24
+ {%- endfor %}
25
+ {%- for message in messages %}
26
+ {%- if (message.role == "user") or (message.role == "system" and not loop.first) %}
27
+ {{- '<|im_start|>' + message.role + '\n' + message.content + '<|im_end|>' + '\n' }}
28
+ {%- elif message.role == "assistant" %}
29
+ {%- set content = message.content %}
30
+ {%- set reasoning_content = '' %}
31
+ {%- if message.reasoning_content is defined and message.reasoning_content is not none %}
32
+ {%- set reasoning_content = message.reasoning_content %}
33
+ {%- else %}
34
+ {%- if '</think>' in message.content %}
35
+ {%- set content = message.content.split('</think>')[-1].lstrip('\n') %}
36
+ {%- set reasoning_content = message.content.split('</think>')[0].rstrip('\n').split('<think>')[-1].lstrip('\n') %}
37
+ {%- endif %}
38
+ {%- endif %}
39
+ {%- if loop.index0 > ns.last_query_index %}
40
+ {%- if loop.last or (not loop.last and reasoning_content) %}
41
+ {{- '<|im_start|>' + message.role + '\n<think>\n' + reasoning_content.strip('\n') + '\n</think>\n\n' + content.lstrip('\n') }}
42
+ {%- else %}
43
+ {{- '<|im_start|>' + message.role + '\n' + content }}
44
+ {%- endif %}
45
+ {%- else %}
46
+ {{- '<|im_start|>' + message.role + '\n' + content }}
47
+ {%- endif %}
48
+ {%- if message.tool_calls %}
49
+ {%- for tool_call in message.tool_calls %}
50
+ {%- if (loop.first and content) or (not loop.first) %}
51
+ {{- '\n' }}
52
+ {%- endif %}
53
+ {%- if tool_call.function %}
54
+ {%- set tool_call = tool_call.function %}
55
+ {%- endif %}
56
+ {{- '<tool_call>\n{"name": "' }}
57
+ {{- tool_call.name }}
58
+ {{- '", "arguments": ' }}
59
+ {%- if tool_call.arguments is string %}
60
+ {{- tool_call.arguments }}
61
+ {%- else %}
62
+ {{- tool_call.arguments | tojson }}
63
+ {%- endif %}
64
+ {{- '}\n</tool_call>' }}
65
+ {%- endfor %}
66
+ {%- endif %}
67
+ {{- '<|im_end|>\n' }}
68
+ {%- elif message.role == "tool" %}
69
+ {%- if loop.first or (messages[loop.index0 - 1].role != "tool") %}
70
+ {{- '<|im_start|>user' }}
71
+ {%- endif %}
72
+ {{- '\n<tool_response>\n' }}
73
+ {{- message.content }}
74
+ {{- '\n</tool_response>' }}
75
+ {%- if loop.last or (messages[loop.index0 + 1].role != "tool") %}
76
+ {{- '<|im_end|>\n' }}
77
+ {%- endif %}
78
+ {%- endif %}
79
+ {%- endfor %}
80
+ {%- if add_generation_prompt %}
81
+ {{- '<|im_start|>assistant\n' }}
82
+ {%- if enable_thinking is defined and enable_thinking is false %}
83
+ {{- '<think>\n\n</think>\n\n' }}
84
+ {%- endif %}
85
+ {%- endif %}
encoder-mlx-4bit/config.json ADDED
@@ -0,0 +1,71 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "Qwen3Model"
4
+ ],
5
+ "attention_bias": false,
6
+ "attention_dropout": 0.0,
7
+ "bos_token_id": 151643,
8
+ "dtype": "float16",
9
+ "eos_token_id": 151643,
10
+ "head_dim": 128,
11
+ "hidden_act": "silu",
12
+ "hidden_size": 1024,
13
+ "initializer_range": 0.02,
14
+ "intermediate_size": 3072,
15
+ "layer_types": [
16
+ "full_attention",
17
+ "full_attention",
18
+ "full_attention",
19
+ "full_attention",
20
+ "full_attention",
21
+ "full_attention",
22
+ "full_attention",
23
+ "full_attention",
24
+ "full_attention",
25
+ "full_attention",
26
+ "full_attention",
27
+ "full_attention",
28
+ "full_attention",
29
+ "full_attention",
30
+ "full_attention",
31
+ "full_attention",
32
+ "full_attention",
33
+ "full_attention",
34
+ "full_attention",
35
+ "full_attention",
36
+ "full_attention",
37
+ "full_attention",
38
+ "full_attention",
39
+ "full_attention",
40
+ "full_attention",
41
+ "full_attention",
42
+ "full_attention",
43
+ "full_attention"
44
+ ],
45
+ "max_position_embeddings": 32768,
46
+ "max_window_layers": 28,
47
+ "model_type": "qwen3",
48
+ "num_attention_heads": 16,
49
+ "num_hidden_layers": 28,
50
+ "num_key_value_heads": 8,
51
+ "pad_token_id": null,
52
+ "rms_norm_eps": 1e-06,
53
+ "rope_parameters": {
54
+ "rope_theta": 1000000,
55
+ "rope_type": "default"
56
+ },
57
+ "sliding_window": null,
58
+ "tie_word_embeddings": true,
59
+ "transformers_version": "5.14.1",
60
+ "use_cache": true,
61
+ "use_sliding_window": false,
62
+ "vocab_size": 151669,
63
+ "quantization": {
64
+ "group_size": 64,
65
+ "bits": 4
66
+ },
67
+ "quantization_config": {
68
+ "group_size": 64,
69
+ "bits": 4
70
+ }
71
+ }
encoder-mlx-4bit/model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9bc318baec5626eea24d59051c8f2054ef105b0b79cbd430d35e930f303a5568
3
+ size 335296249
encoder-mlx-4bit/model.safetensors.index.json ADDED
@@ -0,0 +1,711 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "metadata": {
3
+ "total_size": 335218496
4
+ },
5
+ "weight_map": {
6
+ "model.embed_tokens.biases": "model.safetensors",
7
+ "model.embed_tokens.scales": "model.safetensors",
8
+ "model.embed_tokens.weight": "model.safetensors",
9
+ "model.layers.0.input_layernorm.weight": "model.safetensors",
10
+ "model.layers.0.mlp.down_proj.biases": "model.safetensors",
11
+ "model.layers.0.mlp.down_proj.scales": "model.safetensors",
12
+ "model.layers.0.mlp.down_proj.weight": "model.safetensors",
13
+ "model.layers.0.mlp.gate_proj.biases": "model.safetensors",
14
+ "model.layers.0.mlp.gate_proj.scales": "model.safetensors",
15
+ "model.layers.0.mlp.gate_proj.weight": "model.safetensors",
16
+ "model.layers.0.mlp.up_proj.biases": "model.safetensors",
17
+ "model.layers.0.mlp.up_proj.scales": "model.safetensors",
18
+ "model.layers.0.mlp.up_proj.weight": "model.safetensors",
19
+ "model.layers.0.post_attention_layernorm.weight": "model.safetensors",
20
+ "model.layers.0.self_attn.k_norm.weight": "model.safetensors",
21
+ "model.layers.0.self_attn.k_proj.biases": "model.safetensors",
22
+ "model.layers.0.self_attn.k_proj.scales": "model.safetensors",
23
+ "model.layers.0.self_attn.k_proj.weight": "model.safetensors",
24
+ "model.layers.0.self_attn.o_proj.biases": "model.safetensors",
25
+ "model.layers.0.self_attn.o_proj.scales": "model.safetensors",
26
+ "model.layers.0.self_attn.o_proj.weight": "model.safetensors",
27
+ "model.layers.0.self_attn.q_norm.weight": "model.safetensors",
28
+ "model.layers.0.self_attn.q_proj.biases": "model.safetensors",
29
+ "model.layers.0.self_attn.q_proj.scales": "model.safetensors",
30
+ "model.layers.0.self_attn.q_proj.weight": "model.safetensors",
31
+ "model.layers.0.self_attn.v_proj.biases": "model.safetensors",
32
+ "model.layers.0.self_attn.v_proj.scales": "model.safetensors",
33
+ "model.layers.0.self_attn.v_proj.weight": "model.safetensors",
34
+ "model.layers.1.input_layernorm.weight": "model.safetensors",
35
+ "model.layers.1.mlp.down_proj.biases": "model.safetensors",
36
+ "model.layers.1.mlp.down_proj.scales": "model.safetensors",
37
+ "model.layers.1.mlp.down_proj.weight": "model.safetensors",
38
+ "model.layers.1.mlp.gate_proj.biases": "model.safetensors",
39
+ "model.layers.1.mlp.gate_proj.scales": "model.safetensors",
40
+ "model.layers.1.mlp.gate_proj.weight": "model.safetensors",
41
+ "model.layers.1.mlp.up_proj.biases": "model.safetensors",
42
+ "model.layers.1.mlp.up_proj.scales": "model.safetensors",
43
+ "model.layers.1.mlp.up_proj.weight": "model.safetensors",
44
+ "model.layers.1.post_attention_layernorm.weight": "model.safetensors",
45
+ "model.layers.1.self_attn.k_norm.weight": "model.safetensors",
46
+ "model.layers.1.self_attn.k_proj.biases": "model.safetensors",
47
+ "model.layers.1.self_attn.k_proj.scales": "model.safetensors",
48
+ "model.layers.1.self_attn.k_proj.weight": "model.safetensors",
49
+ "model.layers.1.self_attn.o_proj.biases": "model.safetensors",
50
+ "model.layers.1.self_attn.o_proj.scales": "model.safetensors",
51
+ "model.layers.1.self_attn.o_proj.weight": "model.safetensors",
52
+ "model.layers.1.self_attn.q_norm.weight": "model.safetensors",
53
+ "model.layers.1.self_attn.q_proj.biases": "model.safetensors",
54
+ "model.layers.1.self_attn.q_proj.scales": "model.safetensors",
55
+ "model.layers.1.self_attn.q_proj.weight": "model.safetensors",
56
+ "model.layers.1.self_attn.v_proj.biases": "model.safetensors",
57
+ "model.layers.1.self_attn.v_proj.scales": "model.safetensors",
58
+ "model.layers.1.self_attn.v_proj.weight": "model.safetensors",
59
+ "model.layers.10.input_layernorm.weight": "model.safetensors",
60
+ "model.layers.10.mlp.down_proj.biases": "model.safetensors",
61
+ "model.layers.10.mlp.down_proj.scales": "model.safetensors",
62
+ "model.layers.10.mlp.down_proj.weight": "model.safetensors",
63
+ "model.layers.10.mlp.gate_proj.biases": "model.safetensors",
64
+ "model.layers.10.mlp.gate_proj.scales": "model.safetensors",
65
+ "model.layers.10.mlp.gate_proj.weight": "model.safetensors",
66
+ "model.layers.10.mlp.up_proj.biases": "model.safetensors",
67
+ "model.layers.10.mlp.up_proj.scales": "model.safetensors",
68
+ "model.layers.10.mlp.up_proj.weight": "model.safetensors",
69
+ "model.layers.10.post_attention_layernorm.weight": "model.safetensors",
70
+ "model.layers.10.self_attn.k_norm.weight": "model.safetensors",
71
+ "model.layers.10.self_attn.k_proj.biases": "model.safetensors",
72
+ "model.layers.10.self_attn.k_proj.scales": "model.safetensors",
73
+ "model.layers.10.self_attn.k_proj.weight": "model.safetensors",
74
+ "model.layers.10.self_attn.o_proj.biases": "model.safetensors",
75
+ "model.layers.10.self_attn.o_proj.scales": "model.safetensors",
76
+ "model.layers.10.self_attn.o_proj.weight": "model.safetensors",
77
+ "model.layers.10.self_attn.q_norm.weight": "model.safetensors",
78
+ "model.layers.10.self_attn.q_proj.biases": "model.safetensors",
79
+ "model.layers.10.self_attn.q_proj.scales": "model.safetensors",
80
+ "model.layers.10.self_attn.q_proj.weight": "model.safetensors",
81
+ "model.layers.10.self_attn.v_proj.biases": "model.safetensors",
82
+ "model.layers.10.self_attn.v_proj.scales": "model.safetensors",
83
+ "model.layers.10.self_attn.v_proj.weight": "model.safetensors",
84
+ "model.layers.11.input_layernorm.weight": "model.safetensors",
85
+ "model.layers.11.mlp.down_proj.biases": "model.safetensors",
86
+ "model.layers.11.mlp.down_proj.scales": "model.safetensors",
87
+ "model.layers.11.mlp.down_proj.weight": "model.safetensors",
88
+ "model.layers.11.mlp.gate_proj.biases": "model.safetensors",
89
+ "model.layers.11.mlp.gate_proj.scales": "model.safetensors",
90
+ "model.layers.11.mlp.gate_proj.weight": "model.safetensors",
91
+ "model.layers.11.mlp.up_proj.biases": "model.safetensors",
92
+ "model.layers.11.mlp.up_proj.scales": "model.safetensors",
93
+ "model.layers.11.mlp.up_proj.weight": "model.safetensors",
94
+ "model.layers.11.post_attention_layernorm.weight": "model.safetensors",
95
+ "model.layers.11.self_attn.k_norm.weight": "model.safetensors",
96
+ "model.layers.11.self_attn.k_proj.biases": "model.safetensors",
97
+ "model.layers.11.self_attn.k_proj.scales": "model.safetensors",
98
+ "model.layers.11.self_attn.k_proj.weight": "model.safetensors",
99
+ "model.layers.11.self_attn.o_proj.biases": "model.safetensors",
100
+ "model.layers.11.self_attn.o_proj.scales": "model.safetensors",
101
+ "model.layers.11.self_attn.o_proj.weight": "model.safetensors",
102
+ "model.layers.11.self_attn.q_norm.weight": "model.safetensors",
103
+ "model.layers.11.self_attn.q_proj.biases": "model.safetensors",
104
+ "model.layers.11.self_attn.q_proj.scales": "model.safetensors",
105
+ "model.layers.11.self_attn.q_proj.weight": "model.safetensors",
106
+ "model.layers.11.self_attn.v_proj.biases": "model.safetensors",
107
+ "model.layers.11.self_attn.v_proj.scales": "model.safetensors",
108
+ "model.layers.11.self_attn.v_proj.weight": "model.safetensors",
109
+ "model.layers.12.input_layernorm.weight": "model.safetensors",
110
+ "model.layers.12.mlp.down_proj.biases": "model.safetensors",
111
+ "model.layers.12.mlp.down_proj.scales": "model.safetensors",
112
+ "model.layers.12.mlp.down_proj.weight": "model.safetensors",
113
+ "model.layers.12.mlp.gate_proj.biases": "model.safetensors",
114
+ "model.layers.12.mlp.gate_proj.scales": "model.safetensors",
115
+ "model.layers.12.mlp.gate_proj.weight": "model.safetensors",
116
+ "model.layers.12.mlp.up_proj.biases": "model.safetensors",
117
+ "model.layers.12.mlp.up_proj.scales": "model.safetensors",
118
+ "model.layers.12.mlp.up_proj.weight": "model.safetensors",
119
+ "model.layers.12.post_attention_layernorm.weight": "model.safetensors",
120
+ "model.layers.12.self_attn.k_norm.weight": "model.safetensors",
121
+ "model.layers.12.self_attn.k_proj.biases": "model.safetensors",
122
+ "model.layers.12.self_attn.k_proj.scales": "model.safetensors",
123
+ "model.layers.12.self_attn.k_proj.weight": "model.safetensors",
124
+ "model.layers.12.self_attn.o_proj.biases": "model.safetensors",
125
+ "model.layers.12.self_attn.o_proj.scales": "model.safetensors",
126
+ "model.layers.12.self_attn.o_proj.weight": "model.safetensors",
127
+ "model.layers.12.self_attn.q_norm.weight": "model.safetensors",
128
+ "model.layers.12.self_attn.q_proj.biases": "model.safetensors",
129
+ "model.layers.12.self_attn.q_proj.scales": "model.safetensors",
130
+ "model.layers.12.self_attn.q_proj.weight": "model.safetensors",
131
+ "model.layers.12.self_attn.v_proj.biases": "model.safetensors",
132
+ "model.layers.12.self_attn.v_proj.scales": "model.safetensors",
133
+ "model.layers.12.self_attn.v_proj.weight": "model.safetensors",
134
+ "model.layers.13.input_layernorm.weight": "model.safetensors",
135
+ "model.layers.13.mlp.down_proj.biases": "model.safetensors",
136
+ "model.layers.13.mlp.down_proj.scales": "model.safetensors",
137
+ "model.layers.13.mlp.down_proj.weight": "model.safetensors",
138
+ "model.layers.13.mlp.gate_proj.biases": "model.safetensors",
139
+ "model.layers.13.mlp.gate_proj.scales": "model.safetensors",
140
+ "model.layers.13.mlp.gate_proj.weight": "model.safetensors",
141
+ "model.layers.13.mlp.up_proj.biases": "model.safetensors",
142
+ "model.layers.13.mlp.up_proj.scales": "model.safetensors",
143
+ "model.layers.13.mlp.up_proj.weight": "model.safetensors",
144
+ "model.layers.13.post_attention_layernorm.weight": "model.safetensors",
145
+ "model.layers.13.self_attn.k_norm.weight": "model.safetensors",
146
+ "model.layers.13.self_attn.k_proj.biases": "model.safetensors",
147
+ "model.layers.13.self_attn.k_proj.scales": "model.safetensors",
148
+ "model.layers.13.self_attn.k_proj.weight": "model.safetensors",
149
+ "model.layers.13.self_attn.o_proj.biases": "model.safetensors",
150
+ "model.layers.13.self_attn.o_proj.scales": "model.safetensors",
151
+ "model.layers.13.self_attn.o_proj.weight": "model.safetensors",
152
+ "model.layers.13.self_attn.q_norm.weight": "model.safetensors",
153
+ "model.layers.13.self_attn.q_proj.biases": "model.safetensors",
154
+ "model.layers.13.self_attn.q_proj.scales": "model.safetensors",
155
+ "model.layers.13.self_attn.q_proj.weight": "model.safetensors",
156
+ "model.layers.13.self_attn.v_proj.biases": "model.safetensors",
157
+ "model.layers.13.self_attn.v_proj.scales": "model.safetensors",
158
+ "model.layers.13.self_attn.v_proj.weight": "model.safetensors",
159
+ "model.layers.14.input_layernorm.weight": "model.safetensors",
160
+ "model.layers.14.mlp.down_proj.biases": "model.safetensors",
161
+ "model.layers.14.mlp.down_proj.scales": "model.safetensors",
162
+ "model.layers.14.mlp.down_proj.weight": "model.safetensors",
163
+ "model.layers.14.mlp.gate_proj.biases": "model.safetensors",
164
+ "model.layers.14.mlp.gate_proj.scales": "model.safetensors",
165
+ "model.layers.14.mlp.gate_proj.weight": "model.safetensors",
166
+ "model.layers.14.mlp.up_proj.biases": "model.safetensors",
167
+ "model.layers.14.mlp.up_proj.scales": "model.safetensors",
168
+ "model.layers.14.mlp.up_proj.weight": "model.safetensors",
169
+ "model.layers.14.post_attention_layernorm.weight": "model.safetensors",
170
+ "model.layers.14.self_attn.k_norm.weight": "model.safetensors",
171
+ "model.layers.14.self_attn.k_proj.biases": "model.safetensors",
172
+ "model.layers.14.self_attn.k_proj.scales": "model.safetensors",
173
+ "model.layers.14.self_attn.k_proj.weight": "model.safetensors",
174
+ "model.layers.14.self_attn.o_proj.biases": "model.safetensors",
175
+ "model.layers.14.self_attn.o_proj.scales": "model.safetensors",
176
+ "model.layers.14.self_attn.o_proj.weight": "model.safetensors",
177
+ "model.layers.14.self_attn.q_norm.weight": "model.safetensors",
178
+ "model.layers.14.self_attn.q_proj.biases": "model.safetensors",
179
+ "model.layers.14.self_attn.q_proj.scales": "model.safetensors",
180
+ "model.layers.14.self_attn.q_proj.weight": "model.safetensors",
181
+ "model.layers.14.self_attn.v_proj.biases": "model.safetensors",
182
+ "model.layers.14.self_attn.v_proj.scales": "model.safetensors",
183
+ "model.layers.14.self_attn.v_proj.weight": "model.safetensors",
184
+ "model.layers.15.input_layernorm.weight": "model.safetensors",
185
+ "model.layers.15.mlp.down_proj.biases": "model.safetensors",
186
+ "model.layers.15.mlp.down_proj.scales": "model.safetensors",
187
+ "model.layers.15.mlp.down_proj.weight": "model.safetensors",
188
+ "model.layers.15.mlp.gate_proj.biases": "model.safetensors",
189
+ "model.layers.15.mlp.gate_proj.scales": "model.safetensors",
190
+ "model.layers.15.mlp.gate_proj.weight": "model.safetensors",
191
+ "model.layers.15.mlp.up_proj.biases": "model.safetensors",
192
+ "model.layers.15.mlp.up_proj.scales": "model.safetensors",
193
+ "model.layers.15.mlp.up_proj.weight": "model.safetensors",
194
+ "model.layers.15.post_attention_layernorm.weight": "model.safetensors",
195
+ "model.layers.15.self_attn.k_norm.weight": "model.safetensors",
196
+ "model.layers.15.self_attn.k_proj.biases": "model.safetensors",
197
+ "model.layers.15.self_attn.k_proj.scales": "model.safetensors",
198
+ "model.layers.15.self_attn.k_proj.weight": "model.safetensors",
199
+ "model.layers.15.self_attn.o_proj.biases": "model.safetensors",
200
+ "model.layers.15.self_attn.o_proj.scales": "model.safetensors",
201
+ "model.layers.15.self_attn.o_proj.weight": "model.safetensors",
202
+ "model.layers.15.self_attn.q_norm.weight": "model.safetensors",
203
+ "model.layers.15.self_attn.q_proj.biases": "model.safetensors",
204
+ "model.layers.15.self_attn.q_proj.scales": "model.safetensors",
205
+ "model.layers.15.self_attn.q_proj.weight": "model.safetensors",
206
+ "model.layers.15.self_attn.v_proj.biases": "model.safetensors",
207
+ "model.layers.15.self_attn.v_proj.scales": "model.safetensors",
208
+ "model.layers.15.self_attn.v_proj.weight": "model.safetensors",
209
+ "model.layers.16.input_layernorm.weight": "model.safetensors",
210
+ "model.layers.16.mlp.down_proj.biases": "model.safetensors",
211
+ "model.layers.16.mlp.down_proj.scales": "model.safetensors",
212
+ "model.layers.16.mlp.down_proj.weight": "model.safetensors",
213
+ "model.layers.16.mlp.gate_proj.biases": "model.safetensors",
214
+ "model.layers.16.mlp.gate_proj.scales": "model.safetensors",
215
+ "model.layers.16.mlp.gate_proj.weight": "model.safetensors",
216
+ "model.layers.16.mlp.up_proj.biases": "model.safetensors",
217
+ "model.layers.16.mlp.up_proj.scales": "model.safetensors",
218
+ "model.layers.16.mlp.up_proj.weight": "model.safetensors",
219
+ "model.layers.16.post_attention_layernorm.weight": "model.safetensors",
220
+ "model.layers.16.self_attn.k_norm.weight": "model.safetensors",
221
+ "model.layers.16.self_attn.k_proj.biases": "model.safetensors",
222
+ "model.layers.16.self_attn.k_proj.scales": "model.safetensors",
223
+ "model.layers.16.self_attn.k_proj.weight": "model.safetensors",
224
+ "model.layers.16.self_attn.o_proj.biases": "model.safetensors",
225
+ "model.layers.16.self_attn.o_proj.scales": "model.safetensors",
226
+ "model.layers.16.self_attn.o_proj.weight": "model.safetensors",
227
+ "model.layers.16.self_attn.q_norm.weight": "model.safetensors",
228
+ "model.layers.16.self_attn.q_proj.biases": "model.safetensors",
229
+ "model.layers.16.self_attn.q_proj.scales": "model.safetensors",
230
+ "model.layers.16.self_attn.q_proj.weight": "model.safetensors",
231
+ "model.layers.16.self_attn.v_proj.biases": "model.safetensors",
232
+ "model.layers.16.self_attn.v_proj.scales": "model.safetensors",
233
+ "model.layers.16.self_attn.v_proj.weight": "model.safetensors",
234
+ "model.layers.17.input_layernorm.weight": "model.safetensors",
235
+ "model.layers.17.mlp.down_proj.biases": "model.safetensors",
236
+ "model.layers.17.mlp.down_proj.scales": "model.safetensors",
237
+ "model.layers.17.mlp.down_proj.weight": "model.safetensors",
238
+ "model.layers.17.mlp.gate_proj.biases": "model.safetensors",
239
+ "model.layers.17.mlp.gate_proj.scales": "model.safetensors",
240
+ "model.layers.17.mlp.gate_proj.weight": "model.safetensors",
241
+ "model.layers.17.mlp.up_proj.biases": "model.safetensors",
242
+ "model.layers.17.mlp.up_proj.scales": "model.safetensors",
243
+ "model.layers.17.mlp.up_proj.weight": "model.safetensors",
244
+ "model.layers.17.post_attention_layernorm.weight": "model.safetensors",
245
+ "model.layers.17.self_attn.k_norm.weight": "model.safetensors",
246
+ "model.layers.17.self_attn.k_proj.biases": "model.safetensors",
247
+ "model.layers.17.self_attn.k_proj.scales": "model.safetensors",
248
+ "model.layers.17.self_attn.k_proj.weight": "model.safetensors",
249
+ "model.layers.17.self_attn.o_proj.biases": "model.safetensors",
250
+ "model.layers.17.self_attn.o_proj.scales": "model.safetensors",
251
+ "model.layers.17.self_attn.o_proj.weight": "model.safetensors",
252
+ "model.layers.17.self_attn.q_norm.weight": "model.safetensors",
253
+ "model.layers.17.self_attn.q_proj.biases": "model.safetensors",
254
+ "model.layers.17.self_attn.q_proj.scales": "model.safetensors",
255
+ "model.layers.17.self_attn.q_proj.weight": "model.safetensors",
256
+ "model.layers.17.self_attn.v_proj.biases": "model.safetensors",
257
+ "model.layers.17.self_attn.v_proj.scales": "model.safetensors",
258
+ "model.layers.17.self_attn.v_proj.weight": "model.safetensors",
259
+ "model.layers.18.input_layernorm.weight": "model.safetensors",
260
+ "model.layers.18.mlp.down_proj.biases": "model.safetensors",
261
+ "model.layers.18.mlp.down_proj.scales": "model.safetensors",
262
+ "model.layers.18.mlp.down_proj.weight": "model.safetensors",
263
+ "model.layers.18.mlp.gate_proj.biases": "model.safetensors",
264
+ "model.layers.18.mlp.gate_proj.scales": "model.safetensors",
265
+ "model.layers.18.mlp.gate_proj.weight": "model.safetensors",
266
+ "model.layers.18.mlp.up_proj.biases": "model.safetensors",
267
+ "model.layers.18.mlp.up_proj.scales": "model.safetensors",
268
+ "model.layers.18.mlp.up_proj.weight": "model.safetensors",
269
+ "model.layers.18.post_attention_layernorm.weight": "model.safetensors",
270
+ "model.layers.18.self_attn.k_norm.weight": "model.safetensors",
271
+ "model.layers.18.self_attn.k_proj.biases": "model.safetensors",
272
+ "model.layers.18.self_attn.k_proj.scales": "model.safetensors",
273
+ "model.layers.18.self_attn.k_proj.weight": "model.safetensors",
274
+ "model.layers.18.self_attn.o_proj.biases": "model.safetensors",
275
+ "model.layers.18.self_attn.o_proj.scales": "model.safetensors",
276
+ "model.layers.18.self_attn.o_proj.weight": "model.safetensors",
277
+ "model.layers.18.self_attn.q_norm.weight": "model.safetensors",
278
+ "model.layers.18.self_attn.q_proj.biases": "model.safetensors",
279
+ "model.layers.18.self_attn.q_proj.scales": "model.safetensors",
280
+ "model.layers.18.self_attn.q_proj.weight": "model.safetensors",
281
+ "model.layers.18.self_attn.v_proj.biases": "model.safetensors",
282
+ "model.layers.18.self_attn.v_proj.scales": "model.safetensors",
283
+ "model.layers.18.self_attn.v_proj.weight": "model.safetensors",
284
+ "model.layers.19.input_layernorm.weight": "model.safetensors",
285
+ "model.layers.19.mlp.down_proj.biases": "model.safetensors",
286
+ "model.layers.19.mlp.down_proj.scales": "model.safetensors",
287
+ "model.layers.19.mlp.down_proj.weight": "model.safetensors",
288
+ "model.layers.19.mlp.gate_proj.biases": "model.safetensors",
289
+ "model.layers.19.mlp.gate_proj.scales": "model.safetensors",
290
+ "model.layers.19.mlp.gate_proj.weight": "model.safetensors",
291
+ "model.layers.19.mlp.up_proj.biases": "model.safetensors",
292
+ "model.layers.19.mlp.up_proj.scales": "model.safetensors",
293
+ "model.layers.19.mlp.up_proj.weight": "model.safetensors",
294
+ "model.layers.19.post_attention_layernorm.weight": "model.safetensors",
295
+ "model.layers.19.self_attn.k_norm.weight": "model.safetensors",
296
+ "model.layers.19.self_attn.k_proj.biases": "model.safetensors",
297
+ "model.layers.19.self_attn.k_proj.scales": "model.safetensors",
298
+ "model.layers.19.self_attn.k_proj.weight": "model.safetensors",
299
+ "model.layers.19.self_attn.o_proj.biases": "model.safetensors",
300
+ "model.layers.19.self_attn.o_proj.scales": "model.safetensors",
301
+ "model.layers.19.self_attn.o_proj.weight": "model.safetensors",
302
+ "model.layers.19.self_attn.q_norm.weight": "model.safetensors",
303
+ "model.layers.19.self_attn.q_proj.biases": "model.safetensors",
304
+ "model.layers.19.self_attn.q_proj.scales": "model.safetensors",
305
+ "model.layers.19.self_attn.q_proj.weight": "model.safetensors",
306
+ "model.layers.19.self_attn.v_proj.biases": "model.safetensors",
307
+ "model.layers.19.self_attn.v_proj.scales": "model.safetensors",
308
+ "model.layers.19.self_attn.v_proj.weight": "model.safetensors",
309
+ "model.layers.2.input_layernorm.weight": "model.safetensors",
310
+ "model.layers.2.mlp.down_proj.biases": "model.safetensors",
311
+ "model.layers.2.mlp.down_proj.scales": "model.safetensors",
312
+ "model.layers.2.mlp.down_proj.weight": "model.safetensors",
313
+ "model.layers.2.mlp.gate_proj.biases": "model.safetensors",
314
+ "model.layers.2.mlp.gate_proj.scales": "model.safetensors",
315
+ "model.layers.2.mlp.gate_proj.weight": "model.safetensors",
316
+ "model.layers.2.mlp.up_proj.biases": "model.safetensors",
317
+ "model.layers.2.mlp.up_proj.scales": "model.safetensors",
318
+ "model.layers.2.mlp.up_proj.weight": "model.safetensors",
319
+ "model.layers.2.post_attention_layernorm.weight": "model.safetensors",
320
+ "model.layers.2.self_attn.k_norm.weight": "model.safetensors",
321
+ "model.layers.2.self_attn.k_proj.biases": "model.safetensors",
322
+ "model.layers.2.self_attn.k_proj.scales": "model.safetensors",
323
+ "model.layers.2.self_attn.k_proj.weight": "model.safetensors",
324
+ "model.layers.2.self_attn.o_proj.biases": "model.safetensors",
325
+ "model.layers.2.self_attn.o_proj.scales": "model.safetensors",
326
+ "model.layers.2.self_attn.o_proj.weight": "model.safetensors",
327
+ "model.layers.2.self_attn.q_norm.weight": "model.safetensors",
328
+ "model.layers.2.self_attn.q_proj.biases": "model.safetensors",
329
+ "model.layers.2.self_attn.q_proj.scales": "model.safetensors",
330
+ "model.layers.2.self_attn.q_proj.weight": "model.safetensors",
331
+ "model.layers.2.self_attn.v_proj.biases": "model.safetensors",
332
+ "model.layers.2.self_attn.v_proj.scales": "model.safetensors",
333
+ "model.layers.2.self_attn.v_proj.weight": "model.safetensors",
334
+ "model.layers.20.input_layernorm.weight": "model.safetensors",
335
+ "model.layers.20.mlp.down_proj.biases": "model.safetensors",
336
+ "model.layers.20.mlp.down_proj.scales": "model.safetensors",
337
+ "model.layers.20.mlp.down_proj.weight": "model.safetensors",
338
+ "model.layers.20.mlp.gate_proj.biases": "model.safetensors",
339
+ "model.layers.20.mlp.gate_proj.scales": "model.safetensors",
340
+ "model.layers.20.mlp.gate_proj.weight": "model.safetensors",
341
+ "model.layers.20.mlp.up_proj.biases": "model.safetensors",
342
+ "model.layers.20.mlp.up_proj.scales": "model.safetensors",
343
+ "model.layers.20.mlp.up_proj.weight": "model.safetensors",
344
+ "model.layers.20.post_attention_layernorm.weight": "model.safetensors",
345
+ "model.layers.20.self_attn.k_norm.weight": "model.safetensors",
346
+ "model.layers.20.self_attn.k_proj.biases": "model.safetensors",
347
+ "model.layers.20.self_attn.k_proj.scales": "model.safetensors",
348
+ "model.layers.20.self_attn.k_proj.weight": "model.safetensors",
349
+ "model.layers.20.self_attn.o_proj.biases": "model.safetensors",
350
+ "model.layers.20.self_attn.o_proj.scales": "model.safetensors",
351
+ "model.layers.20.self_attn.o_proj.weight": "model.safetensors",
352
+ "model.layers.20.self_attn.q_norm.weight": "model.safetensors",
353
+ "model.layers.20.self_attn.q_proj.biases": "model.safetensors",
354
+ "model.layers.20.self_attn.q_proj.scales": "model.safetensors",
355
+ "model.layers.20.self_attn.q_proj.weight": "model.safetensors",
356
+ "model.layers.20.self_attn.v_proj.biases": "model.safetensors",
357
+ "model.layers.20.self_attn.v_proj.scales": "model.safetensors",
358
+ "model.layers.20.self_attn.v_proj.weight": "model.safetensors",
359
+ "model.layers.21.input_layernorm.weight": "model.safetensors",
360
+ "model.layers.21.mlp.down_proj.biases": "model.safetensors",
361
+ "model.layers.21.mlp.down_proj.scales": "model.safetensors",
362
+ "model.layers.21.mlp.down_proj.weight": "model.safetensors",
363
+ "model.layers.21.mlp.gate_proj.biases": "model.safetensors",
364
+ "model.layers.21.mlp.gate_proj.scales": "model.safetensors",
365
+ "model.layers.21.mlp.gate_proj.weight": "model.safetensors",
366
+ "model.layers.21.mlp.up_proj.biases": "model.safetensors",
367
+ "model.layers.21.mlp.up_proj.scales": "model.safetensors",
368
+ "model.layers.21.mlp.up_proj.weight": "model.safetensors",
369
+ "model.layers.21.post_attention_layernorm.weight": "model.safetensors",
370
+ "model.layers.21.self_attn.k_norm.weight": "model.safetensors",
371
+ "model.layers.21.self_attn.k_proj.biases": "model.safetensors",
372
+ "model.layers.21.self_attn.k_proj.scales": "model.safetensors",
373
+ "model.layers.21.self_attn.k_proj.weight": "model.safetensors",
374
+ "model.layers.21.self_attn.o_proj.biases": "model.safetensors",
375
+ "model.layers.21.self_attn.o_proj.scales": "model.safetensors",
376
+ "model.layers.21.self_attn.o_proj.weight": "model.safetensors",
377
+ "model.layers.21.self_attn.q_norm.weight": "model.safetensors",
378
+ "model.layers.21.self_attn.q_proj.biases": "model.safetensors",
379
+ "model.layers.21.self_attn.q_proj.scales": "model.safetensors",
380
+ "model.layers.21.self_attn.q_proj.weight": "model.safetensors",
381
+ "model.layers.21.self_attn.v_proj.biases": "model.safetensors",
382
+ "model.layers.21.self_attn.v_proj.scales": "model.safetensors",
383
+ "model.layers.21.self_attn.v_proj.weight": "model.safetensors",
384
+ "model.layers.22.input_layernorm.weight": "model.safetensors",
385
+ "model.layers.22.mlp.down_proj.biases": "model.safetensors",
386
+ "model.layers.22.mlp.down_proj.scales": "model.safetensors",
387
+ "model.layers.22.mlp.down_proj.weight": "model.safetensors",
388
+ "model.layers.22.mlp.gate_proj.biases": "model.safetensors",
389
+ "model.layers.22.mlp.gate_proj.scales": "model.safetensors",
390
+ "model.layers.22.mlp.gate_proj.weight": "model.safetensors",
391
+ "model.layers.22.mlp.up_proj.biases": "model.safetensors",
392
+ "model.layers.22.mlp.up_proj.scales": "model.safetensors",
393
+ "model.layers.22.mlp.up_proj.weight": "model.safetensors",
394
+ "model.layers.22.post_attention_layernorm.weight": "model.safetensors",
395
+ "model.layers.22.self_attn.k_norm.weight": "model.safetensors",
396
+ "model.layers.22.self_attn.k_proj.biases": "model.safetensors",
397
+ "model.layers.22.self_attn.k_proj.scales": "model.safetensors",
398
+ "model.layers.22.self_attn.k_proj.weight": "model.safetensors",
399
+ "model.layers.22.self_attn.o_proj.biases": "model.safetensors",
400
+ "model.layers.22.self_attn.o_proj.scales": "model.safetensors",
401
+ "model.layers.22.self_attn.o_proj.weight": "model.safetensors",
402
+ "model.layers.22.self_attn.q_norm.weight": "model.safetensors",
403
+ "model.layers.22.self_attn.q_proj.biases": "model.safetensors",
404
+ "model.layers.22.self_attn.q_proj.scales": "model.safetensors",
405
+ "model.layers.22.self_attn.q_proj.weight": "model.safetensors",
406
+ "model.layers.22.self_attn.v_proj.biases": "model.safetensors",
407
+ "model.layers.22.self_attn.v_proj.scales": "model.safetensors",
408
+ "model.layers.22.self_attn.v_proj.weight": "model.safetensors",
409
+ "model.layers.23.input_layernorm.weight": "model.safetensors",
410
+ "model.layers.23.mlp.down_proj.biases": "model.safetensors",
411
+ "model.layers.23.mlp.down_proj.scales": "model.safetensors",
412
+ "model.layers.23.mlp.down_proj.weight": "model.safetensors",
413
+ "model.layers.23.mlp.gate_proj.biases": "model.safetensors",
414
+ "model.layers.23.mlp.gate_proj.scales": "model.safetensors",
415
+ "model.layers.23.mlp.gate_proj.weight": "model.safetensors",
416
+ "model.layers.23.mlp.up_proj.biases": "model.safetensors",
417
+ "model.layers.23.mlp.up_proj.scales": "model.safetensors",
418
+ "model.layers.23.mlp.up_proj.weight": "model.safetensors",
419
+ "model.layers.23.post_attention_layernorm.weight": "model.safetensors",
420
+ "model.layers.23.self_attn.k_norm.weight": "model.safetensors",
421
+ "model.layers.23.self_attn.k_proj.biases": "model.safetensors",
422
+ "model.layers.23.self_attn.k_proj.scales": "model.safetensors",
423
+ "model.layers.23.self_attn.k_proj.weight": "model.safetensors",
424
+ "model.layers.23.self_attn.o_proj.biases": "model.safetensors",
425
+ "model.layers.23.self_attn.o_proj.scales": "model.safetensors",
426
+ "model.layers.23.self_attn.o_proj.weight": "model.safetensors",
427
+ "model.layers.23.self_attn.q_norm.weight": "model.safetensors",
428
+ "model.layers.23.self_attn.q_proj.biases": "model.safetensors",
429
+ "model.layers.23.self_attn.q_proj.scales": "model.safetensors",
430
+ "model.layers.23.self_attn.q_proj.weight": "model.safetensors",
431
+ "model.layers.23.self_attn.v_proj.biases": "model.safetensors",
432
+ "model.layers.23.self_attn.v_proj.scales": "model.safetensors",
433
+ "model.layers.23.self_attn.v_proj.weight": "model.safetensors",
434
+ "model.layers.24.input_layernorm.weight": "model.safetensors",
435
+ "model.layers.24.mlp.down_proj.biases": "model.safetensors",
436
+ "model.layers.24.mlp.down_proj.scales": "model.safetensors",
437
+ "model.layers.24.mlp.down_proj.weight": "model.safetensors",
438
+ "model.layers.24.mlp.gate_proj.biases": "model.safetensors",
439
+ "model.layers.24.mlp.gate_proj.scales": "model.safetensors",
440
+ "model.layers.24.mlp.gate_proj.weight": "model.safetensors",
441
+ "model.layers.24.mlp.up_proj.biases": "model.safetensors",
442
+ "model.layers.24.mlp.up_proj.scales": "model.safetensors",
443
+ "model.layers.24.mlp.up_proj.weight": "model.safetensors",
444
+ "model.layers.24.post_attention_layernorm.weight": "model.safetensors",
445
+ "model.layers.24.self_attn.k_norm.weight": "model.safetensors",
446
+ "model.layers.24.self_attn.k_proj.biases": "model.safetensors",
447
+ "model.layers.24.self_attn.k_proj.scales": "model.safetensors",
448
+ "model.layers.24.self_attn.k_proj.weight": "model.safetensors",
449
+ "model.layers.24.self_attn.o_proj.biases": "model.safetensors",
450
+ "model.layers.24.self_attn.o_proj.scales": "model.safetensors",
451
+ "model.layers.24.self_attn.o_proj.weight": "model.safetensors",
452
+ "model.layers.24.self_attn.q_norm.weight": "model.safetensors",
453
+ "model.layers.24.self_attn.q_proj.biases": "model.safetensors",
454
+ "model.layers.24.self_attn.q_proj.scales": "model.safetensors",
455
+ "model.layers.24.self_attn.q_proj.weight": "model.safetensors",
456
+ "model.layers.24.self_attn.v_proj.biases": "model.safetensors",
457
+ "model.layers.24.self_attn.v_proj.scales": "model.safetensors",
458
+ "model.layers.24.self_attn.v_proj.weight": "model.safetensors",
459
+ "model.layers.25.input_layernorm.weight": "model.safetensors",
460
+ "model.layers.25.mlp.down_proj.biases": "model.safetensors",
461
+ "model.layers.25.mlp.down_proj.scales": "model.safetensors",
462
+ "model.layers.25.mlp.down_proj.weight": "model.safetensors",
463
+ "model.layers.25.mlp.gate_proj.biases": "model.safetensors",
464
+ "model.layers.25.mlp.gate_proj.scales": "model.safetensors",
465
+ "model.layers.25.mlp.gate_proj.weight": "model.safetensors",
466
+ "model.layers.25.mlp.up_proj.biases": "model.safetensors",
467
+ "model.layers.25.mlp.up_proj.scales": "model.safetensors",
468
+ "model.layers.25.mlp.up_proj.weight": "model.safetensors",
469
+ "model.layers.25.post_attention_layernorm.weight": "model.safetensors",
470
+ "model.layers.25.self_attn.k_norm.weight": "model.safetensors",
471
+ "model.layers.25.self_attn.k_proj.biases": "model.safetensors",
472
+ "model.layers.25.self_attn.k_proj.scales": "model.safetensors",
473
+ "model.layers.25.self_attn.k_proj.weight": "model.safetensors",
474
+ "model.layers.25.self_attn.o_proj.biases": "model.safetensors",
475
+ "model.layers.25.self_attn.o_proj.scales": "model.safetensors",
476
+ "model.layers.25.self_attn.o_proj.weight": "model.safetensors",
477
+ "model.layers.25.self_attn.q_norm.weight": "model.safetensors",
478
+ "model.layers.25.self_attn.q_proj.biases": "model.safetensors",
479
+ "model.layers.25.self_attn.q_proj.scales": "model.safetensors",
480
+ "model.layers.25.self_attn.q_proj.weight": "model.safetensors",
481
+ "model.layers.25.self_attn.v_proj.biases": "model.safetensors",
482
+ "model.layers.25.self_attn.v_proj.scales": "model.safetensors",
483
+ "model.layers.25.self_attn.v_proj.weight": "model.safetensors",
484
+ "model.layers.26.input_layernorm.weight": "model.safetensors",
485
+ "model.layers.26.mlp.down_proj.biases": "model.safetensors",
486
+ "model.layers.26.mlp.down_proj.scales": "model.safetensors",
487
+ "model.layers.26.mlp.down_proj.weight": "model.safetensors",
488
+ "model.layers.26.mlp.gate_proj.biases": "model.safetensors",
489
+ "model.layers.26.mlp.gate_proj.scales": "model.safetensors",
490
+ "model.layers.26.mlp.gate_proj.weight": "model.safetensors",
491
+ "model.layers.26.mlp.up_proj.biases": "model.safetensors",
492
+ "model.layers.26.mlp.up_proj.scales": "model.safetensors",
493
+ "model.layers.26.mlp.up_proj.weight": "model.safetensors",
494
+ "model.layers.26.post_attention_layernorm.weight": "model.safetensors",
495
+ "model.layers.26.self_attn.k_norm.weight": "model.safetensors",
496
+ "model.layers.26.self_attn.k_proj.biases": "model.safetensors",
497
+ "model.layers.26.self_attn.k_proj.scales": "model.safetensors",
498
+ "model.layers.26.self_attn.k_proj.weight": "model.safetensors",
499
+ "model.layers.26.self_attn.o_proj.biases": "model.safetensors",
500
+ "model.layers.26.self_attn.o_proj.scales": "model.safetensors",
501
+ "model.layers.26.self_attn.o_proj.weight": "model.safetensors",
502
+ "model.layers.26.self_attn.q_norm.weight": "model.safetensors",
503
+ "model.layers.26.self_attn.q_proj.biases": "model.safetensors",
504
+ "model.layers.26.self_attn.q_proj.scales": "model.safetensors",
505
+ "model.layers.26.self_attn.q_proj.weight": "model.safetensors",
506
+ "model.layers.26.self_attn.v_proj.biases": "model.safetensors",
507
+ "model.layers.26.self_attn.v_proj.scales": "model.safetensors",
508
+ "model.layers.26.self_attn.v_proj.weight": "model.safetensors",
509
+ "model.layers.27.input_layernorm.weight": "model.safetensors",
510
+ "model.layers.27.mlp.down_proj.biases": "model.safetensors",
511
+ "model.layers.27.mlp.down_proj.scales": "model.safetensors",
512
+ "model.layers.27.mlp.down_proj.weight": "model.safetensors",
513
+ "model.layers.27.mlp.gate_proj.biases": "model.safetensors",
514
+ "model.layers.27.mlp.gate_proj.scales": "model.safetensors",
515
+ "model.layers.27.mlp.gate_proj.weight": "model.safetensors",
516
+ "model.layers.27.mlp.up_proj.biases": "model.safetensors",
517
+ "model.layers.27.mlp.up_proj.scales": "model.safetensors",
518
+ "model.layers.27.mlp.up_proj.weight": "model.safetensors",
519
+ "model.layers.27.post_attention_layernorm.weight": "model.safetensors",
520
+ "model.layers.27.self_attn.k_norm.weight": "model.safetensors",
521
+ "model.layers.27.self_attn.k_proj.biases": "model.safetensors",
522
+ "model.layers.27.self_attn.k_proj.scales": "model.safetensors",
523
+ "model.layers.27.self_attn.k_proj.weight": "model.safetensors",
524
+ "model.layers.27.self_attn.o_proj.biases": "model.safetensors",
525
+ "model.layers.27.self_attn.o_proj.scales": "model.safetensors",
526
+ "model.layers.27.self_attn.o_proj.weight": "model.safetensors",
527
+ "model.layers.27.self_attn.q_norm.weight": "model.safetensors",
528
+ "model.layers.27.self_attn.q_proj.biases": "model.safetensors",
529
+ "model.layers.27.self_attn.q_proj.scales": "model.safetensors",
530
+ "model.layers.27.self_attn.q_proj.weight": "model.safetensors",
531
+ "model.layers.27.self_attn.v_proj.biases": "model.safetensors",
532
+ "model.layers.27.self_attn.v_proj.scales": "model.safetensors",
533
+ "model.layers.27.self_attn.v_proj.weight": "model.safetensors",
534
+ "model.layers.3.input_layernorm.weight": "model.safetensors",
535
+ "model.layers.3.mlp.down_proj.biases": "model.safetensors",
536
+ "model.layers.3.mlp.down_proj.scales": "model.safetensors",
537
+ "model.layers.3.mlp.down_proj.weight": "model.safetensors",
538
+ "model.layers.3.mlp.gate_proj.biases": "model.safetensors",
539
+ "model.layers.3.mlp.gate_proj.scales": "model.safetensors",
540
+ "model.layers.3.mlp.gate_proj.weight": "model.safetensors",
541
+ "model.layers.3.mlp.up_proj.biases": "model.safetensors",
542
+ "model.layers.3.mlp.up_proj.scales": "model.safetensors",
543
+ "model.layers.3.mlp.up_proj.weight": "model.safetensors",
544
+ "model.layers.3.post_attention_layernorm.weight": "model.safetensors",
545
+ "model.layers.3.self_attn.k_norm.weight": "model.safetensors",
546
+ "model.layers.3.self_attn.k_proj.biases": "model.safetensors",
547
+ "model.layers.3.self_attn.k_proj.scales": "model.safetensors",
548
+ "model.layers.3.self_attn.k_proj.weight": "model.safetensors",
549
+ "model.layers.3.self_attn.o_proj.biases": "model.safetensors",
550
+ "model.layers.3.self_attn.o_proj.scales": "model.safetensors",
551
+ "model.layers.3.self_attn.o_proj.weight": "model.safetensors",
552
+ "model.layers.3.self_attn.q_norm.weight": "model.safetensors",
553
+ "model.layers.3.self_attn.q_proj.biases": "model.safetensors",
554
+ "model.layers.3.self_attn.q_proj.scales": "model.safetensors",
555
+ "model.layers.3.self_attn.q_proj.weight": "model.safetensors",
556
+ "model.layers.3.self_attn.v_proj.biases": "model.safetensors",
557
+ "model.layers.3.self_attn.v_proj.scales": "model.safetensors",
558
+ "model.layers.3.self_attn.v_proj.weight": "model.safetensors",
559
+ "model.layers.4.input_layernorm.weight": "model.safetensors",
560
+ "model.layers.4.mlp.down_proj.biases": "model.safetensors",
561
+ "model.layers.4.mlp.down_proj.scales": "model.safetensors",
562
+ "model.layers.4.mlp.down_proj.weight": "model.safetensors",
563
+ "model.layers.4.mlp.gate_proj.biases": "model.safetensors",
564
+ "model.layers.4.mlp.gate_proj.scales": "model.safetensors",
565
+ "model.layers.4.mlp.gate_proj.weight": "model.safetensors",
566
+ "model.layers.4.mlp.up_proj.biases": "model.safetensors",
567
+ "model.layers.4.mlp.up_proj.scales": "model.safetensors",
568
+ "model.layers.4.mlp.up_proj.weight": "model.safetensors",
569
+ "model.layers.4.post_attention_layernorm.weight": "model.safetensors",
570
+ "model.layers.4.self_attn.k_norm.weight": "model.safetensors",
571
+ "model.layers.4.self_attn.k_proj.biases": "model.safetensors",
572
+ "model.layers.4.self_attn.k_proj.scales": "model.safetensors",
573
+ "model.layers.4.self_attn.k_proj.weight": "model.safetensors",
574
+ "model.layers.4.self_attn.o_proj.biases": "model.safetensors",
575
+ "model.layers.4.self_attn.o_proj.scales": "model.safetensors",
576
+ "model.layers.4.self_attn.o_proj.weight": "model.safetensors",
577
+ "model.layers.4.self_attn.q_norm.weight": "model.safetensors",
578
+ "model.layers.4.self_attn.q_proj.biases": "model.safetensors",
579
+ "model.layers.4.self_attn.q_proj.scales": "model.safetensors",
580
+ "model.layers.4.self_attn.q_proj.weight": "model.safetensors",
581
+ "model.layers.4.self_attn.v_proj.biases": "model.safetensors",
582
+ "model.layers.4.self_attn.v_proj.scales": "model.safetensors",
583
+ "model.layers.4.self_attn.v_proj.weight": "model.safetensors",
584
+ "model.layers.5.input_layernorm.weight": "model.safetensors",
585
+ "model.layers.5.mlp.down_proj.biases": "model.safetensors",
586
+ "model.layers.5.mlp.down_proj.scales": "model.safetensors",
587
+ "model.layers.5.mlp.down_proj.weight": "model.safetensors",
588
+ "model.layers.5.mlp.gate_proj.biases": "model.safetensors",
589
+ "model.layers.5.mlp.gate_proj.scales": "model.safetensors",
590
+ "model.layers.5.mlp.gate_proj.weight": "model.safetensors",
591
+ "model.layers.5.mlp.up_proj.biases": "model.safetensors",
592
+ "model.layers.5.mlp.up_proj.scales": "model.safetensors",
593
+ "model.layers.5.mlp.up_proj.weight": "model.safetensors",
594
+ "model.layers.5.post_attention_layernorm.weight": "model.safetensors",
595
+ "model.layers.5.self_attn.k_norm.weight": "model.safetensors",
596
+ "model.layers.5.self_attn.k_proj.biases": "model.safetensors",
597
+ "model.layers.5.self_attn.k_proj.scales": "model.safetensors",
598
+ "model.layers.5.self_attn.k_proj.weight": "model.safetensors",
599
+ "model.layers.5.self_attn.o_proj.biases": "model.safetensors",
600
+ "model.layers.5.self_attn.o_proj.scales": "model.safetensors",
601
+ "model.layers.5.self_attn.o_proj.weight": "model.safetensors",
602
+ "model.layers.5.self_attn.q_norm.weight": "model.safetensors",
603
+ "model.layers.5.self_attn.q_proj.biases": "model.safetensors",
604
+ "model.layers.5.self_attn.q_proj.scales": "model.safetensors",
605
+ "model.layers.5.self_attn.q_proj.weight": "model.safetensors",
606
+ "model.layers.5.self_attn.v_proj.biases": "model.safetensors",
607
+ "model.layers.5.self_attn.v_proj.scales": "model.safetensors",
608
+ "model.layers.5.self_attn.v_proj.weight": "model.safetensors",
609
+ "model.layers.6.input_layernorm.weight": "model.safetensors",
610
+ "model.layers.6.mlp.down_proj.biases": "model.safetensors",
611
+ "model.layers.6.mlp.down_proj.scales": "model.safetensors",
612
+ "model.layers.6.mlp.down_proj.weight": "model.safetensors",
613
+ "model.layers.6.mlp.gate_proj.biases": "model.safetensors",
614
+ "model.layers.6.mlp.gate_proj.scales": "model.safetensors",
615
+ "model.layers.6.mlp.gate_proj.weight": "model.safetensors",
616
+ "model.layers.6.mlp.up_proj.biases": "model.safetensors",
617
+ "model.layers.6.mlp.up_proj.scales": "model.safetensors",
618
+ "model.layers.6.mlp.up_proj.weight": "model.safetensors",
619
+ "model.layers.6.post_attention_layernorm.weight": "model.safetensors",
620
+ "model.layers.6.self_attn.k_norm.weight": "model.safetensors",
621
+ "model.layers.6.self_attn.k_proj.biases": "model.safetensors",
622
+ "model.layers.6.self_attn.k_proj.scales": "model.safetensors",
623
+ "model.layers.6.self_attn.k_proj.weight": "model.safetensors",
624
+ "model.layers.6.self_attn.o_proj.biases": "model.safetensors",
625
+ "model.layers.6.self_attn.o_proj.scales": "model.safetensors",
626
+ "model.layers.6.self_attn.o_proj.weight": "model.safetensors",
627
+ "model.layers.6.self_attn.q_norm.weight": "model.safetensors",
628
+ "model.layers.6.self_attn.q_proj.biases": "model.safetensors",
629
+ "model.layers.6.self_attn.q_proj.scales": "model.safetensors",
630
+ "model.layers.6.self_attn.q_proj.weight": "model.safetensors",
631
+ "model.layers.6.self_attn.v_proj.biases": "model.safetensors",
632
+ "model.layers.6.self_attn.v_proj.scales": "model.safetensors",
633
+ "model.layers.6.self_attn.v_proj.weight": "model.safetensors",
634
+ "model.layers.7.input_layernorm.weight": "model.safetensors",
635
+ "model.layers.7.mlp.down_proj.biases": "model.safetensors",
636
+ "model.layers.7.mlp.down_proj.scales": "model.safetensors",
637
+ "model.layers.7.mlp.down_proj.weight": "model.safetensors",
638
+ "model.layers.7.mlp.gate_proj.biases": "model.safetensors",
639
+ "model.layers.7.mlp.gate_proj.scales": "model.safetensors",
640
+ "model.layers.7.mlp.gate_proj.weight": "model.safetensors",
641
+ "model.layers.7.mlp.up_proj.biases": "model.safetensors",
642
+ "model.layers.7.mlp.up_proj.scales": "model.safetensors",
643
+ "model.layers.7.mlp.up_proj.weight": "model.safetensors",
644
+ "model.layers.7.post_attention_layernorm.weight": "model.safetensors",
645
+ "model.layers.7.self_attn.k_norm.weight": "model.safetensors",
646
+ "model.layers.7.self_attn.k_proj.biases": "model.safetensors",
647
+ "model.layers.7.self_attn.k_proj.scales": "model.safetensors",
648
+ "model.layers.7.self_attn.k_proj.weight": "model.safetensors",
649
+ "model.layers.7.self_attn.o_proj.biases": "model.safetensors",
650
+ "model.layers.7.self_attn.o_proj.scales": "model.safetensors",
651
+ "model.layers.7.self_attn.o_proj.weight": "model.safetensors",
652
+ "model.layers.7.self_attn.q_norm.weight": "model.safetensors",
653
+ "model.layers.7.self_attn.q_proj.biases": "model.safetensors",
654
+ "model.layers.7.self_attn.q_proj.scales": "model.safetensors",
655
+ "model.layers.7.self_attn.q_proj.weight": "model.safetensors",
656
+ "model.layers.7.self_attn.v_proj.biases": "model.safetensors",
657
+ "model.layers.7.self_attn.v_proj.scales": "model.safetensors",
658
+ "model.layers.7.self_attn.v_proj.weight": "model.safetensors",
659
+ "model.layers.8.input_layernorm.weight": "model.safetensors",
660
+ "model.layers.8.mlp.down_proj.biases": "model.safetensors",
661
+ "model.layers.8.mlp.down_proj.scales": "model.safetensors",
662
+ "model.layers.8.mlp.down_proj.weight": "model.safetensors",
663
+ "model.layers.8.mlp.gate_proj.biases": "model.safetensors",
664
+ "model.layers.8.mlp.gate_proj.scales": "model.safetensors",
665
+ "model.layers.8.mlp.gate_proj.weight": "model.safetensors",
666
+ "model.layers.8.mlp.up_proj.biases": "model.safetensors",
667
+ "model.layers.8.mlp.up_proj.scales": "model.safetensors",
668
+ "model.layers.8.mlp.up_proj.weight": "model.safetensors",
669
+ "model.layers.8.post_attention_layernorm.weight": "model.safetensors",
670
+ "model.layers.8.self_attn.k_norm.weight": "model.safetensors",
671
+ "model.layers.8.self_attn.k_proj.biases": "model.safetensors",
672
+ "model.layers.8.self_attn.k_proj.scales": "model.safetensors",
673
+ "model.layers.8.self_attn.k_proj.weight": "model.safetensors",
674
+ "model.layers.8.self_attn.o_proj.biases": "model.safetensors",
675
+ "model.layers.8.self_attn.o_proj.scales": "model.safetensors",
676
+ "model.layers.8.self_attn.o_proj.weight": "model.safetensors",
677
+ "model.layers.8.self_attn.q_norm.weight": "model.safetensors",
678
+ "model.layers.8.self_attn.q_proj.biases": "model.safetensors",
679
+ "model.layers.8.self_attn.q_proj.scales": "model.safetensors",
680
+ "model.layers.8.self_attn.q_proj.weight": "model.safetensors",
681
+ "model.layers.8.self_attn.v_proj.biases": "model.safetensors",
682
+ "model.layers.8.self_attn.v_proj.scales": "model.safetensors",
683
+ "model.layers.8.self_attn.v_proj.weight": "model.safetensors",
684
+ "model.layers.9.input_layernorm.weight": "model.safetensors",
685
+ "model.layers.9.mlp.down_proj.biases": "model.safetensors",
686
+ "model.layers.9.mlp.down_proj.scales": "model.safetensors",
687
+ "model.layers.9.mlp.down_proj.weight": "model.safetensors",
688
+ "model.layers.9.mlp.gate_proj.biases": "model.safetensors",
689
+ "model.layers.9.mlp.gate_proj.scales": "model.safetensors",
690
+ "model.layers.9.mlp.gate_proj.weight": "model.safetensors",
691
+ "model.layers.9.mlp.up_proj.biases": "model.safetensors",
692
+ "model.layers.9.mlp.up_proj.scales": "model.safetensors",
693
+ "model.layers.9.mlp.up_proj.weight": "model.safetensors",
694
+ "model.layers.9.post_attention_layernorm.weight": "model.safetensors",
695
+ "model.layers.9.self_attn.k_norm.weight": "model.safetensors",
696
+ "model.layers.9.self_attn.k_proj.biases": "model.safetensors",
697
+ "model.layers.9.self_attn.k_proj.scales": "model.safetensors",
698
+ "model.layers.9.self_attn.k_proj.weight": "model.safetensors",
699
+ "model.layers.9.self_attn.o_proj.biases": "model.safetensors",
700
+ "model.layers.9.self_attn.o_proj.scales": "model.safetensors",
701
+ "model.layers.9.self_attn.o_proj.weight": "model.safetensors",
702
+ "model.layers.9.self_attn.q_norm.weight": "model.safetensors",
703
+ "model.layers.9.self_attn.q_proj.biases": "model.safetensors",
704
+ "model.layers.9.self_attn.q_proj.scales": "model.safetensors",
705
+ "model.layers.9.self_attn.q_proj.weight": "model.safetensors",
706
+ "model.layers.9.self_attn.v_proj.biases": "model.safetensors",
707
+ "model.layers.9.self_attn.v_proj.scales": "model.safetensors",
708
+ "model.layers.9.self_attn.v_proj.weight": "model.safetensors",
709
+ "model.norm.weight": "model.safetensors"
710
+ }
711
+ }
encoder-mlx-4bit/tokenizer.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:93623af029cdc69b87f2864d3b2cc2424fdf16684f15e139b5b9d08ec34ced91
3
+ size 11423701
encoder-mlx-4bit/tokenizer_config.json ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_prefix_space": false,
3
+ "backend": "tokenizers",
4
+ "bos_token": null,
5
+ "clean_up_tokenization_spaces": false,
6
+ "eos_token": "<|im_end|>",
7
+ "errors": "replace",
8
+ "is_local": false,
9
+ "local_files_only": false,
10
+ "model_max_length": 131072,
11
+ "pad_token": "<|endoftext|>",
12
+ "split_special_tokens": false,
13
+ "tokenizer_class": "Qwen2Tokenizer",
14
+ "unk_token": null
15
+ }
router.json CHANGED
@@ -1,573 +1,580 @@
1
  {
2
- "version": "v0",
3
- "embed_model": "mlx-community/Qwen3-Embedding-0.6B-4bit-DWQ",
4
- "arms": [
5
- "mini_swe_agent_claude_fable_5_high",
6
- "mini_swe_agent_claude_fable_5_low",
7
- "mini_swe_agent_claude_fable_5_max",
8
- "mini_swe_agent_claude_fable_5_medium",
9
- "mini_swe_agent_claude_fable_5_xhigh",
10
- "mini_swe_agent_claude_opus_4_8_high",
11
- "mini_swe_agent_claude_opus_4_8_low",
12
- "mini_swe_agent_claude_opus_4_8_max",
13
- "mini_swe_agent_claude_opus_4_8_medium",
14
- "mini_swe_agent_claude_opus_4_8_xhigh",
15
- "mini_swe_agent_claude_opus_5_high",
16
- "mini_swe_agent_claude_opus_5_low",
17
- "mini_swe_agent_claude_opus_5_max",
18
- "mini_swe_agent_claude_opus_5_medium",
19
- "mini_swe_agent_claude_opus_5_xhigh",
20
- "mini_swe_agent_claude_sonnet_4_6_high",
21
- "mini_swe_agent_claude_sonnet_5_high",
22
- "mini_swe_agent_claude_sonnet_5_low",
23
- "mini_swe_agent_claude_sonnet_5_max",
24
- "mini_swe_agent_claude_sonnet_5_medium",
25
- "mini_swe_agent_claude_sonnet_5_xhigh",
26
- "mini_swe_agent_gpt_5_4_xhigh",
27
- "mini_swe_agent_gpt_5_5_high",
28
- "mini_swe_agent_gpt_5_5_low",
29
- "mini_swe_agent_gpt_5_5_medium",
30
- "mini_swe_agent_gpt_5_5_xhigh",
31
- "mini_swe_agent_gpt_5_6_luna_high",
32
- "mini_swe_agent_gpt_5_6_luna_low",
33
- "mini_swe_agent_gpt_5_6_luna_max",
34
- "mini_swe_agent_gpt_5_6_luna_medium",
35
- "mini_swe_agent_gpt_5_6_luna_xhigh",
36
- "mini_swe_agent_gpt_5_6_sol_high",
37
- "mini_swe_agent_gpt_5_6_sol_low",
38
- "mini_swe_agent_gpt_5_6_sol_max",
39
- "mini_swe_agent_gpt_5_6_sol_medium",
40
- "mini_swe_agent_gpt_5_6_sol_xhigh",
41
- "mini_swe_agent_gpt_5_6_terra_high",
42
- "mini_swe_agent_gpt_5_6_terra_low",
43
- "mini_swe_agent_gpt_5_6_terra_max",
44
- "mini_swe_agent_gpt_5_6_terra_medium",
45
- "mini_swe_agent_gpt_5_6_terra_xhigh"
46
- ],
47
- "arm_spec": {
48
- "mini_swe_agent_claude_fable_5_high": {
49
- "model": "claude-fable-5",
50
- "effort": "high",
51
- "provider": "anthropic",
52
- "request_kwargs": {
53
- "model": "claude-fable-5",
54
- "thinking": {
55
- "type": "adaptive"
56
- },
57
- "output_config": {
58
- "effort": "high"
59
- }
60
- }
61
- },
62
- "mini_swe_agent_claude_fable_5_low": {
63
- "model": "claude-fable-5",
64
- "effort": "low",
65
- "provider": "anthropic",
66
- "request_kwargs": {
67
- "model": "claude-fable-5",
68
- "thinking": {
69
- "type": "adaptive"
70
- },
71
- "output_config": {
72
- "effort": "low"
73
- }
74
- }
75
- },
76
- "mini_swe_agent_claude_fable_5_max": {
77
- "model": "claude-fable-5",
78
- "effort": "max",
79
- "provider": "anthropic",
80
- "request_kwargs": {
81
- "model": "claude-fable-5",
82
- "thinking": {
83
- "type": "adaptive"
84
- },
85
- "output_config": {
86
- "effort": "max"
87
- }
88
- }
89
- },
90
- "mini_swe_agent_claude_fable_5_medium": {
91
- "model": "claude-fable-5",
92
- "effort": "medium",
93
- "provider": "anthropic",
94
- "request_kwargs": {
95
- "model": "claude-fable-5",
96
- "thinking": {
97
- "type": "adaptive"
98
- },
99
- "output_config": {
100
- "effort": "medium"
101
- }
102
- }
103
- },
104
- "mini_swe_agent_claude_fable_5_xhigh": {
105
- "model": "claude-fable-5",
106
- "effort": "xhigh",
107
- "provider": "anthropic",
108
- "request_kwargs": {
109
- "model": "claude-fable-5",
110
- "thinking": {
111
- "type": "adaptive"
112
- },
113
- "output_config": {
114
- "effort": "xhigh"
115
- }
116
- }
117
- },
118
- "mini_swe_agent_claude_opus_4_8_high": {
119
- "model": "claude-opus-4-8",
120
- "effort": "high",
121
- "provider": "anthropic",
122
- "request_kwargs": {
123
- "model": "claude-opus-4-8",
124
- "thinking": {
125
- "type": "adaptive"
126
- },
127
- "output_config": {
128
- "effort": "high"
129
- }
130
- }
131
- },
132
- "mini_swe_agent_claude_opus_4_8_low": {
133
- "model": "claude-opus-4-8",
134
- "effort": "low",
135
- "provider": "anthropic",
136
- "request_kwargs": {
137
- "model": "claude-opus-4-8",
138
- "thinking": {
139
- "type": "adaptive"
140
- },
141
- "output_config": {
142
- "effort": "low"
143
- }
144
- }
145
- },
146
- "mini_swe_agent_claude_opus_4_8_max": {
147
- "model": "claude-opus-4-8",
148
- "effort": "max",
149
- "provider": "anthropic",
150
- "request_kwargs": {
151
- "model": "claude-opus-4-8",
152
- "thinking": {
153
- "type": "adaptive"
154
- },
155
- "output_config": {
156
- "effort": "max"
157
- }
158
- }
159
- },
160
- "mini_swe_agent_claude_opus_4_8_medium": {
161
- "model": "claude-opus-4-8",
162
- "effort": "medium",
163
- "provider": "anthropic",
164
- "request_kwargs": {
165
- "model": "claude-opus-4-8",
166
- "thinking": {
167
- "type": "adaptive"
168
- },
169
- "output_config": {
170
- "effort": "medium"
171
- }
172
- }
173
- },
174
- "mini_swe_agent_claude_opus_4_8_xhigh": {
175
- "model": "claude-opus-4-8",
176
- "effort": "xhigh",
177
- "provider": "anthropic",
178
- "request_kwargs": {
179
- "model": "claude-opus-4-8",
180
- "thinking": {
181
- "type": "adaptive"
182
- },
183
- "output_config": {
184
- "effort": "xhigh"
185
- }
186
- }
187
- },
188
- "mini_swe_agent_claude_opus_5_high": {
189
- "model": "claude-opus-5",
190
- "effort": "high",
191
- "provider": "anthropic",
192
- "request_kwargs": {
193
- "model": "claude-opus-5",
194
- "thinking": {
195
- "type": "adaptive"
196
- },
197
- "output_config": {
198
- "effort": "high"
199
- }
200
- }
201
- },
202
- "mini_swe_agent_claude_opus_5_low": {
203
- "model": "claude-opus-5",
204
- "effort": "low",
205
- "provider": "anthropic",
206
- "request_kwargs": {
207
- "model": "claude-opus-5",
208
- "thinking": {
209
- "type": "adaptive"
210
- },
211
- "output_config": {
212
- "effort": "low"
213
- }
214
- }
215
- },
216
- "mini_swe_agent_claude_opus_5_max": {
217
- "model": "claude-opus-5",
218
- "effort": "max",
219
- "provider": "anthropic",
220
- "request_kwargs": {
221
- "model": "claude-opus-5",
222
- "thinking": {
223
- "type": "adaptive"
224
- },
225
- "output_config": {
226
- "effort": "max"
227
- }
228
- }
229
- },
230
- "mini_swe_agent_claude_opus_5_medium": {
231
- "model": "claude-opus-5",
232
- "effort": "medium",
233
- "provider": "anthropic",
234
- "request_kwargs": {
235
- "model": "claude-opus-5",
236
- "thinking": {
237
- "type": "adaptive"
238
- },
239
- "output_config": {
240
- "effort": "medium"
241
- }
242
- }
243
- },
244
- "mini_swe_agent_claude_opus_5_xhigh": {
245
- "model": "claude-opus-5",
246
- "effort": "xhigh",
247
- "provider": "anthropic",
248
- "request_kwargs": {
249
- "model": "claude-opus-5",
250
- "thinking": {
251
- "type": "adaptive"
252
- },
253
- "output_config": {
254
- "effort": "xhigh"
255
- }
256
- }
257
- },
258
- "mini_swe_agent_claude_sonnet_4_6_high": {
259
- "model": "claude-sonnet-4-6",
260
- "effort": "high",
261
- "provider": "anthropic",
262
- "request_kwargs": {
263
- "model": "claude-sonnet-4-6",
264
- "thinking": {
265
- "type": "adaptive"
266
- },
267
- "output_config": {
268
- "effort": "high"
269
- }
270
- }
271
- },
272
- "mini_swe_agent_claude_sonnet_5_high": {
273
- "model": "claude-sonnet-5",
274
- "effort": "high",
275
- "provider": "anthropic",
276
- "request_kwargs": {
277
- "model": "claude-sonnet-5",
278
- "thinking": {
279
- "type": "adaptive"
280
- },
281
- "output_config": {
282
- "effort": "high"
283
- }
284
- }
285
- },
286
- "mini_swe_agent_claude_sonnet_5_low": {
287
- "model": "claude-sonnet-5",
288
- "effort": "low",
289
- "provider": "anthropic",
290
- "request_kwargs": {
291
- "model": "claude-sonnet-5",
292
- "thinking": {
293
- "type": "adaptive"
294
- },
295
- "output_config": {
296
- "effort": "low"
297
- }
298
- }
299
- },
300
- "mini_swe_agent_claude_sonnet_5_max": {
301
- "model": "claude-sonnet-5",
302
- "effort": "max",
303
- "provider": "anthropic",
304
- "request_kwargs": {
305
- "model": "claude-sonnet-5",
306
- "thinking": {
307
- "type": "adaptive"
308
- },
309
- "output_config": {
310
- "effort": "max"
311
- }
312
- }
313
- },
314
- "mini_swe_agent_claude_sonnet_5_medium": {
315
- "model": "claude-sonnet-5",
316
- "effort": "medium",
317
- "provider": "anthropic",
318
- "request_kwargs": {
319
- "model": "claude-sonnet-5",
320
- "thinking": {
321
- "type": "adaptive"
322
- },
323
- "output_config": {
324
- "effort": "medium"
325
- }
326
- }
327
- },
328
- "mini_swe_agent_claude_sonnet_5_xhigh": {
329
- "model": "claude-sonnet-5",
330
- "effort": "xhigh",
331
- "provider": "anthropic",
332
- "request_kwargs": {
333
- "model": "claude-sonnet-5",
334
- "thinking": {
335
- "type": "adaptive"
336
- },
337
- "output_config": {
338
- "effort": "xhigh"
339
- }
340
- }
341
- },
342
- "mini_swe_agent_gpt_5_4_xhigh": {
343
- "model": "gpt-5.4",
344
- "effort": "xhigh",
345
- "provider": "openai",
346
- "request_kwargs": {
347
- "model": "gpt-5.4",
348
- "reasoning": {
349
- "effort": "xhigh"
350
- }
351
- }
352
- },
353
- "mini_swe_agent_gpt_5_5_high": {
354
- "model": "gpt-5.5",
355
- "effort": "high",
356
- "provider": "openai",
357
- "request_kwargs": {
358
- "model": "gpt-5.5",
359
- "reasoning": {
360
- "effort": "high"
361
- }
362
- }
363
- },
364
- "mini_swe_agent_gpt_5_5_low": {
365
- "model": "gpt-5.5",
366
- "effort": "low",
367
- "provider": "openai",
368
- "request_kwargs": {
369
- "model": "gpt-5.5",
370
- "reasoning": {
371
- "effort": "low"
372
- }
373
- }
374
- },
375
- "mini_swe_agent_gpt_5_5_medium": {
376
- "model": "gpt-5.5",
377
- "effort": "medium",
378
- "provider": "openai",
379
- "request_kwargs": {
380
- "model": "gpt-5.5",
381
- "reasoning": {
382
- "effort": "medium"
383
- }
384
- }
385
- },
386
- "mini_swe_agent_gpt_5_5_xhigh": {
387
- "model": "gpt-5.5",
388
- "effort": "xhigh",
389
- "provider": "openai",
390
- "request_kwargs": {
391
- "model": "gpt-5.5",
392
- "reasoning": {
393
- "effort": "xhigh"
394
- }
395
- }
396
- },
397
- "mini_swe_agent_gpt_5_6_luna_high": {
398
- "model": "gpt-5.6-luna",
399
- "effort": "high",
400
- "provider": "openai",
401
- "request_kwargs": {
402
- "model": "gpt-5.6-luna",
403
- "reasoning": {
404
- "effort": "high"
405
- }
406
- }
407
- },
408
- "mini_swe_agent_gpt_5_6_luna_low": {
409
- "model": "gpt-5.6-luna",
410
- "effort": "low",
411
- "provider": "openai",
412
- "request_kwargs": {
413
- "model": "gpt-5.6-luna",
414
- "reasoning": {
415
- "effort": "low"
416
- }
417
- }
418
- },
419
- "mini_swe_agent_gpt_5_6_luna_max": {
420
- "model": "gpt-5.6-luna",
421
- "effort": "max",
422
- "provider": "openai",
423
- "request_kwargs": {
424
- "model": "gpt-5.6-luna",
425
- "reasoning": {
426
- "effort": "max"
427
- }
428
- }
429
- },
430
- "mini_swe_agent_gpt_5_6_luna_medium": {
431
- "model": "gpt-5.6-luna",
432
- "effort": "medium",
433
- "provider": "openai",
434
- "request_kwargs": {
435
- "model": "gpt-5.6-luna",
436
- "reasoning": {
437
- "effort": "medium"
438
- }
439
- }
440
- },
441
- "mini_swe_agent_gpt_5_6_luna_xhigh": {
442
- "model": "gpt-5.6-luna",
443
- "effort": "xhigh",
444
- "provider": "openai",
445
- "request_kwargs": {
446
- "model": "gpt-5.6-luna",
447
- "reasoning": {
448
- "effort": "xhigh"
449
- }
450
- }
451
- },
452
- "mini_swe_agent_gpt_5_6_sol_high": {
453
- "model": "gpt-5.6-sol",
454
- "effort": "high",
455
- "provider": "openai",
456
- "request_kwargs": {
457
- "model": "gpt-5.6-sol",
458
- "reasoning": {
459
- "effort": "high"
460
- }
461
- }
462
- },
463
- "mini_swe_agent_gpt_5_6_sol_low": {
464
- "model": "gpt-5.6-sol",
465
- "effort": "low",
466
- "provider": "openai",
467
- "request_kwargs": {
468
- "model": "gpt-5.6-sol",
469
- "reasoning": {
470
- "effort": "low"
471
- }
472
- }
473
- },
474
- "mini_swe_agent_gpt_5_6_sol_max": {
475
- "model": "gpt-5.6-sol",
476
- "effort": "max",
477
- "provider": "openai",
478
- "request_kwargs": {
479
- "model": "gpt-5.6-sol",
480
- "reasoning": {
481
- "effort": "max"
482
- }
483
- }
484
- },
485
- "mini_swe_agent_gpt_5_6_sol_medium": {
486
- "model": "gpt-5.6-sol",
487
- "effort": "medium",
488
- "provider": "openai",
489
- "request_kwargs": {
490
- "model": "gpt-5.6-sol",
491
- "reasoning": {
492
- "effort": "medium"
493
- }
494
- }
495
- },
496
- "mini_swe_agent_gpt_5_6_sol_xhigh": {
497
- "model": "gpt-5.6-sol",
498
- "effort": "xhigh",
499
- "provider": "openai",
500
- "request_kwargs": {
501
- "model": "gpt-5.6-sol",
502
- "reasoning": {
503
- "effort": "xhigh"
504
- }
505
- }
506
- },
507
- "mini_swe_agent_gpt_5_6_terra_high": {
508
- "model": "gpt-5.6-terra",
509
- "effort": "high",
510
- "provider": "openai",
511
- "request_kwargs": {
512
- "model": "gpt-5.6-terra",
513
- "reasoning": {
514
- "effort": "high"
515
- }
516
- }
517
- },
518
- "mini_swe_agent_gpt_5_6_terra_low": {
519
- "model": "gpt-5.6-terra",
520
- "effort": "low",
521
- "provider": "openai",
522
- "request_kwargs": {
523
- "model": "gpt-5.6-terra",
524
- "reasoning": {
525
- "effort": "low"
526
- }
527
- }
528
- },
529
- "mini_swe_agent_gpt_5_6_terra_max": {
530
- "model": "gpt-5.6-terra",
531
- "effort": "max",
532
- "provider": "openai",
533
- "request_kwargs": {
534
- "model": "gpt-5.6-terra",
535
- "reasoning": {
536
- "effort": "max"
537
- }
538
- }
539
- },
540
- "mini_swe_agent_gpt_5_6_terra_medium": {
541
- "model": "gpt-5.6-terra",
542
- "effort": "medium",
543
- "provider": "openai",
544
- "request_kwargs": {
545
- "model": "gpt-5.6-terra",
546
- "reasoning": {
547
- "effort": "medium"
548
- }
549
- }
550
- },
551
- "mini_swe_agent_gpt_5_6_terra_xhigh": {
552
- "model": "gpt-5.6-terra",
553
- "effort": "xhigh",
554
- "provider": "openai",
555
- "request_kwargs": {
556
- "model": "gpt-5.6-terra",
557
- "reasoning": {
558
- "effort": "xhigh"
559
- }
560
- }
561
- }
562
- },
563
- "k": 12,
564
- "tau": 0.5,
565
- "sim_floor": 0.35,
566
- "fallback_arm_index": 10,
567
- "provenance": "Same DeepSWE v1.1 supervision as the cloud-embedded router_v0.json (41 arms x 110 tasks over 88 repos), but embedded locally with mlx-community/Qwen3-Embedding-0.6B-4bit-DWQ instead of OpenAI. A separate 80/20 repo-split holdout (not the 5-fold CV below) found LOCAL embeddings gave cost ratio median 3.79x vs OpenAI's 3.18x, graded-delta median -0.021 vs -0.015, across 6 seeds -- comparable, not yet validated at the same rigor as the cloud variant's nested-CV headline number. | embeddings computed in-process (mlx_embeddings on Apple Silicon; sentence-transformers Qwen/Qwen3-Embedding-0.6B elsewhere)",
568
- "scope_warning": "INPUT SHAPE MATTERS. Fit on repo-issue statements of p10=955 / p50=1976 / p90=3450 characters. In-distribution nearest-neighbour cosine similarity runs min 0.266 / p50 0.439; sim_floor=0.35 is the p10, so it abstains on the least-covered ~10% of in-distribution tasks. Short one-line prompts score 0.14-0.34 and will ALWAYS abstain to the strongest arm -- safe, but no saving. Long-horizon tasks only (median 61 agent steps). NOT validated on short interactive requests or on any held-out benchmark. Always check Decision.off_distribution before trusting a route.",
569
- "measured_artifact_behaviour": "Self-test numbers below (this artifact, re-run under the same repo-grouped folds) are the only measured claim for this variant -- no separate ungated-vs-guarded comparison has been run yet, unlike the cloud variant.",
570
- "n_tasks": 110,
571
- "n_repos": 88,
572
- "embed_backend": "local"
 
 
 
 
 
 
 
573
  }
 
1
  {
2
+ "version": "v1-trained",
3
+ "kind": "trained",
4
+ "hf_repo": "experiential-labs/coding-router",
5
+ "embed_model_mlx": "encoder-mlx-4bit",
6
+ "embed_model_torch": "encoder-fp16",
7
+ "T": 0.05453708011655199,
8
+ "lam": 0.01,
9
+ "sim_floor": 0.459,
10
+ "fallback_arm_index": 10,
11
+ "arms": [
12
+ "mini_swe_agent_claude_fable_5_high",
13
+ "mini_swe_agent_claude_fable_5_low",
14
+ "mini_swe_agent_claude_fable_5_max",
15
+ "mini_swe_agent_claude_fable_5_medium",
16
+ "mini_swe_agent_claude_fable_5_xhigh",
17
+ "mini_swe_agent_claude_opus_4_8_high",
18
+ "mini_swe_agent_claude_opus_4_8_low",
19
+ "mini_swe_agent_claude_opus_4_8_max",
20
+ "mini_swe_agent_claude_opus_4_8_medium",
21
+ "mini_swe_agent_claude_opus_4_8_xhigh",
22
+ "mini_swe_agent_claude_opus_5_high",
23
+ "mini_swe_agent_claude_opus_5_low",
24
+ "mini_swe_agent_claude_opus_5_max",
25
+ "mini_swe_agent_claude_opus_5_medium",
26
+ "mini_swe_agent_claude_opus_5_xhigh",
27
+ "mini_swe_agent_claude_sonnet_4_6_high",
28
+ "mini_swe_agent_claude_sonnet_5_high",
29
+ "mini_swe_agent_claude_sonnet_5_low",
30
+ "mini_swe_agent_claude_sonnet_5_max",
31
+ "mini_swe_agent_claude_sonnet_5_medium",
32
+ "mini_swe_agent_claude_sonnet_5_xhigh",
33
+ "mini_swe_agent_gpt_5_4_xhigh",
34
+ "mini_swe_agent_gpt_5_5_high",
35
+ "mini_swe_agent_gpt_5_5_low",
36
+ "mini_swe_agent_gpt_5_5_medium",
37
+ "mini_swe_agent_gpt_5_5_xhigh",
38
+ "mini_swe_agent_gpt_5_6_luna_high",
39
+ "mini_swe_agent_gpt_5_6_luna_low",
40
+ "mini_swe_agent_gpt_5_6_luna_max",
41
+ "mini_swe_agent_gpt_5_6_luna_medium",
42
+ "mini_swe_agent_gpt_5_6_luna_xhigh",
43
+ "mini_swe_agent_gpt_5_6_sol_high",
44
+ "mini_swe_agent_gpt_5_6_sol_low",
45
+ "mini_swe_agent_gpt_5_6_sol_max",
46
+ "mini_swe_agent_gpt_5_6_sol_medium",
47
+ "mini_swe_agent_gpt_5_6_sol_xhigh",
48
+ "mini_swe_agent_gpt_5_6_terra_high",
49
+ "mini_swe_agent_gpt_5_6_terra_low",
50
+ "mini_swe_agent_gpt_5_6_terra_max",
51
+ "mini_swe_agent_gpt_5_6_terra_medium",
52
+ "mini_swe_agent_gpt_5_6_terra_xhigh"
53
+ ],
54
+ "arm_spec": {
55
+ "mini_swe_agent_claude_fable_5_high": {
56
+ "model": "claude-fable-5",
57
+ "effort": "high",
58
+ "provider": "anthropic",
59
+ "request_kwargs": {
60
+ "model": "claude-fable-5",
61
+ "thinking": {
62
+ "type": "adaptive"
63
+ },
64
+ "output_config": {
65
+ "effort": "high"
66
+ }
67
+ }
68
+ },
69
+ "mini_swe_agent_claude_fable_5_low": {
70
+ "model": "claude-fable-5",
71
+ "effort": "low",
72
+ "provider": "anthropic",
73
+ "request_kwargs": {
74
+ "model": "claude-fable-5",
75
+ "thinking": {
76
+ "type": "adaptive"
77
+ },
78
+ "output_config": {
79
+ "effort": "low"
80
+ }
81
+ }
82
+ },
83
+ "mini_swe_agent_claude_fable_5_max": {
84
+ "model": "claude-fable-5",
85
+ "effort": "max",
86
+ "provider": "anthropic",
87
+ "request_kwargs": {
88
+ "model": "claude-fable-5",
89
+ "thinking": {
90
+ "type": "adaptive"
91
+ },
92
+ "output_config": {
93
+ "effort": "max"
94
+ }
95
+ }
96
+ },
97
+ "mini_swe_agent_claude_fable_5_medium": {
98
+ "model": "claude-fable-5",
99
+ "effort": "medium",
100
+ "provider": "anthropic",
101
+ "request_kwargs": {
102
+ "model": "claude-fable-5",
103
+ "thinking": {
104
+ "type": "adaptive"
105
+ },
106
+ "output_config": {
107
+ "effort": "medium"
108
+ }
109
+ }
110
+ },
111
+ "mini_swe_agent_claude_fable_5_xhigh": {
112
+ "model": "claude-fable-5",
113
+ "effort": "xhigh",
114
+ "provider": "anthropic",
115
+ "request_kwargs": {
116
+ "model": "claude-fable-5",
117
+ "thinking": {
118
+ "type": "adaptive"
119
+ },
120
+ "output_config": {
121
+ "effort": "xhigh"
122
+ }
123
+ }
124
+ },
125
+ "mini_swe_agent_claude_opus_4_8_high": {
126
+ "model": "claude-opus-4-8",
127
+ "effort": "high",
128
+ "provider": "anthropic",
129
+ "request_kwargs": {
130
+ "model": "claude-opus-4-8",
131
+ "thinking": {
132
+ "type": "adaptive"
133
+ },
134
+ "output_config": {
135
+ "effort": "high"
136
+ }
137
+ }
138
+ },
139
+ "mini_swe_agent_claude_opus_4_8_low": {
140
+ "model": "claude-opus-4-8",
141
+ "effort": "low",
142
+ "provider": "anthropic",
143
+ "request_kwargs": {
144
+ "model": "claude-opus-4-8",
145
+ "thinking": {
146
+ "type": "adaptive"
147
+ },
148
+ "output_config": {
149
+ "effort": "low"
150
+ }
151
+ }
152
+ },
153
+ "mini_swe_agent_claude_opus_4_8_max": {
154
+ "model": "claude-opus-4-8",
155
+ "effort": "max",
156
+ "provider": "anthropic",
157
+ "request_kwargs": {
158
+ "model": "claude-opus-4-8",
159
+ "thinking": {
160
+ "type": "adaptive"
161
+ },
162
+ "output_config": {
163
+ "effort": "max"
164
+ }
165
+ }
166
+ },
167
+ "mini_swe_agent_claude_opus_4_8_medium": {
168
+ "model": "claude-opus-4-8",
169
+ "effort": "medium",
170
+ "provider": "anthropic",
171
+ "request_kwargs": {
172
+ "model": "claude-opus-4-8",
173
+ "thinking": {
174
+ "type": "adaptive"
175
+ },
176
+ "output_config": {
177
+ "effort": "medium"
178
+ }
179
+ }
180
+ },
181
+ "mini_swe_agent_claude_opus_4_8_xhigh": {
182
+ "model": "claude-opus-4-8",
183
+ "effort": "xhigh",
184
+ "provider": "anthropic",
185
+ "request_kwargs": {
186
+ "model": "claude-opus-4-8",
187
+ "thinking": {
188
+ "type": "adaptive"
189
+ },
190
+ "output_config": {
191
+ "effort": "xhigh"
192
+ }
193
+ }
194
+ },
195
+ "mini_swe_agent_claude_opus_5_high": {
196
+ "model": "claude-opus-5",
197
+ "effort": "high",
198
+ "provider": "anthropic",
199
+ "request_kwargs": {
200
+ "model": "claude-opus-5",
201
+ "thinking": {
202
+ "type": "adaptive"
203
+ },
204
+ "output_config": {
205
+ "effort": "high"
206
+ }
207
+ }
208
+ },
209
+ "mini_swe_agent_claude_opus_5_low": {
210
+ "model": "claude-opus-5",
211
+ "effort": "low",
212
+ "provider": "anthropic",
213
+ "request_kwargs": {
214
+ "model": "claude-opus-5",
215
+ "thinking": {
216
+ "type": "adaptive"
217
+ },
218
+ "output_config": {
219
+ "effort": "low"
220
+ }
221
+ }
222
+ },
223
+ "mini_swe_agent_claude_opus_5_max": {
224
+ "model": "claude-opus-5",
225
+ "effort": "max",
226
+ "provider": "anthropic",
227
+ "request_kwargs": {
228
+ "model": "claude-opus-5",
229
+ "thinking": {
230
+ "type": "adaptive"
231
+ },
232
+ "output_config": {
233
+ "effort": "max"
234
+ }
235
+ }
236
+ },
237
+ "mini_swe_agent_claude_opus_5_medium": {
238
+ "model": "claude-opus-5",
239
+ "effort": "medium",
240
+ "provider": "anthropic",
241
+ "request_kwargs": {
242
+ "model": "claude-opus-5",
243
+ "thinking": {
244
+ "type": "adaptive"
245
+ },
246
+ "output_config": {
247
+ "effort": "medium"
248
+ }
249
+ }
250
+ },
251
+ "mini_swe_agent_claude_opus_5_xhigh": {
252
+ "model": "claude-opus-5",
253
+ "effort": "xhigh",
254
+ "provider": "anthropic",
255
+ "request_kwargs": {
256
+ "model": "claude-opus-5",
257
+ "thinking": {
258
+ "type": "adaptive"
259
+ },
260
+ "output_config": {
261
+ "effort": "xhigh"
262
+ }
263
+ }
264
+ },
265
+ "mini_swe_agent_claude_sonnet_4_6_high": {
266
+ "model": "claude-sonnet-4-6",
267
+ "effort": "high",
268
+ "provider": "anthropic",
269
+ "request_kwargs": {
270
+ "model": "claude-sonnet-4-6",
271
+ "thinking": {
272
+ "type": "adaptive"
273
+ },
274
+ "output_config": {
275
+ "effort": "high"
276
+ }
277
+ }
278
+ },
279
+ "mini_swe_agent_claude_sonnet_5_high": {
280
+ "model": "claude-sonnet-5",
281
+ "effort": "high",
282
+ "provider": "anthropic",
283
+ "request_kwargs": {
284
+ "model": "claude-sonnet-5",
285
+ "thinking": {
286
+ "type": "adaptive"
287
+ },
288
+ "output_config": {
289
+ "effort": "high"
290
+ }
291
+ }
292
+ },
293
+ "mini_swe_agent_claude_sonnet_5_low": {
294
+ "model": "claude-sonnet-5",
295
+ "effort": "low",
296
+ "provider": "anthropic",
297
+ "request_kwargs": {
298
+ "model": "claude-sonnet-5",
299
+ "thinking": {
300
+ "type": "adaptive"
301
+ },
302
+ "output_config": {
303
+ "effort": "low"
304
+ }
305
+ }
306
+ },
307
+ "mini_swe_agent_claude_sonnet_5_max": {
308
+ "model": "claude-sonnet-5",
309
+ "effort": "max",
310
+ "provider": "anthropic",
311
+ "request_kwargs": {
312
+ "model": "claude-sonnet-5",
313
+ "thinking": {
314
+ "type": "adaptive"
315
+ },
316
+ "output_config": {
317
+ "effort": "max"
318
+ }
319
+ }
320
+ },
321
+ "mini_swe_agent_claude_sonnet_5_medium": {
322
+ "model": "claude-sonnet-5",
323
+ "effort": "medium",
324
+ "provider": "anthropic",
325
+ "request_kwargs": {
326
+ "model": "claude-sonnet-5",
327
+ "thinking": {
328
+ "type": "adaptive"
329
+ },
330
+ "output_config": {
331
+ "effort": "medium"
332
+ }
333
+ }
334
+ },
335
+ "mini_swe_agent_claude_sonnet_5_xhigh": {
336
+ "model": "claude-sonnet-5",
337
+ "effort": "xhigh",
338
+ "provider": "anthropic",
339
+ "request_kwargs": {
340
+ "model": "claude-sonnet-5",
341
+ "thinking": {
342
+ "type": "adaptive"
343
+ },
344
+ "output_config": {
345
+ "effort": "xhigh"
346
+ }
347
+ }
348
+ },
349
+ "mini_swe_agent_gpt_5_4_xhigh": {
350
+ "model": "gpt-5.4",
351
+ "effort": "xhigh",
352
+ "provider": "openai",
353
+ "request_kwargs": {
354
+ "model": "gpt-5.4",
355
+ "reasoning": {
356
+ "effort": "xhigh"
357
+ }
358
+ }
359
+ },
360
+ "mini_swe_agent_gpt_5_5_high": {
361
+ "model": "gpt-5.5",
362
+ "effort": "high",
363
+ "provider": "openai",
364
+ "request_kwargs": {
365
+ "model": "gpt-5.5",
366
+ "reasoning": {
367
+ "effort": "high"
368
+ }
369
+ }
370
+ },
371
+ "mini_swe_agent_gpt_5_5_low": {
372
+ "model": "gpt-5.5",
373
+ "effort": "low",
374
+ "provider": "openai",
375
+ "request_kwargs": {
376
+ "model": "gpt-5.5",
377
+ "reasoning": {
378
+ "effort": "low"
379
+ }
380
+ }
381
+ },
382
+ "mini_swe_agent_gpt_5_5_medium": {
383
+ "model": "gpt-5.5",
384
+ "effort": "medium",
385
+ "provider": "openai",
386
+ "request_kwargs": {
387
+ "model": "gpt-5.5",
388
+ "reasoning": {
389
+ "effort": "medium"
390
+ }
391
+ }
392
+ },
393
+ "mini_swe_agent_gpt_5_5_xhigh": {
394
+ "model": "gpt-5.5",
395
+ "effort": "xhigh",
396
+ "provider": "openai",
397
+ "request_kwargs": {
398
+ "model": "gpt-5.5",
399
+ "reasoning": {
400
+ "effort": "xhigh"
401
+ }
402
+ }
403
+ },
404
+ "mini_swe_agent_gpt_5_6_luna_high": {
405
+ "model": "gpt-5.6-luna",
406
+ "effort": "high",
407
+ "provider": "openai",
408
+ "request_kwargs": {
409
+ "model": "gpt-5.6-luna",
410
+ "reasoning": {
411
+ "effort": "high"
412
+ }
413
+ }
414
+ },
415
+ "mini_swe_agent_gpt_5_6_luna_low": {
416
+ "model": "gpt-5.6-luna",
417
+ "effort": "low",
418
+ "provider": "openai",
419
+ "request_kwargs": {
420
+ "model": "gpt-5.6-luna",
421
+ "reasoning": {
422
+ "effort": "low"
423
+ }
424
+ }
425
+ },
426
+ "mini_swe_agent_gpt_5_6_luna_max": {
427
+ "model": "gpt-5.6-luna",
428
+ "effort": "max",
429
+ "provider": "openai",
430
+ "request_kwargs": {
431
+ "model": "gpt-5.6-luna",
432
+ "reasoning": {
433
+ "effort": "max"
434
+ }
435
+ }
436
+ },
437
+ "mini_swe_agent_gpt_5_6_luna_medium": {
438
+ "model": "gpt-5.6-luna",
439
+ "effort": "medium",
440
+ "provider": "openai",
441
+ "request_kwargs": {
442
+ "model": "gpt-5.6-luna",
443
+ "reasoning": {
444
+ "effort": "medium"
445
+ }
446
+ }
447
+ },
448
+ "mini_swe_agent_gpt_5_6_luna_xhigh": {
449
+ "model": "gpt-5.6-luna",
450
+ "effort": "xhigh",
451
+ "provider": "openai",
452
+ "request_kwargs": {
453
+ "model": "gpt-5.6-luna",
454
+ "reasoning": {
455
+ "effort": "xhigh"
456
+ }
457
+ }
458
+ },
459
+ "mini_swe_agent_gpt_5_6_sol_high": {
460
+ "model": "gpt-5.6-sol",
461
+ "effort": "high",
462
+ "provider": "openai",
463
+ "request_kwargs": {
464
+ "model": "gpt-5.6-sol",
465
+ "reasoning": {
466
+ "effort": "high"
467
+ }
468
+ }
469
+ },
470
+ "mini_swe_agent_gpt_5_6_sol_low": {
471
+ "model": "gpt-5.6-sol",
472
+ "effort": "low",
473
+ "provider": "openai",
474
+ "request_kwargs": {
475
+ "model": "gpt-5.6-sol",
476
+ "reasoning": {
477
+ "effort": "low"
478
+ }
479
+ }
480
+ },
481
+ "mini_swe_agent_gpt_5_6_sol_max": {
482
+ "model": "gpt-5.6-sol",
483
+ "effort": "max",
484
+ "provider": "openai",
485
+ "request_kwargs": {
486
+ "model": "gpt-5.6-sol",
487
+ "reasoning": {
488
+ "effort": "max"
489
+ }
490
+ }
491
+ },
492
+ "mini_swe_agent_gpt_5_6_sol_medium": {
493
+ "model": "gpt-5.6-sol",
494
+ "effort": "medium",
495
+ "provider": "openai",
496
+ "request_kwargs": {
497
+ "model": "gpt-5.6-sol",
498
+ "reasoning": {
499
+ "effort": "medium"
500
+ }
501
+ }
502
+ },
503
+ "mini_swe_agent_gpt_5_6_sol_xhigh": {
504
+ "model": "gpt-5.6-sol",
505
+ "effort": "xhigh",
506
+ "provider": "openai",
507
+ "request_kwargs": {
508
+ "model": "gpt-5.6-sol",
509
+ "reasoning": {
510
+ "effort": "xhigh"
511
+ }
512
+ }
513
+ },
514
+ "mini_swe_agent_gpt_5_6_terra_high": {
515
+ "model": "gpt-5.6-terra",
516
+ "effort": "high",
517
+ "provider": "openai",
518
+ "request_kwargs": {
519
+ "model": "gpt-5.6-terra",
520
+ "reasoning": {
521
+ "effort": "high"
522
+ }
523
+ }
524
+ },
525
+ "mini_swe_agent_gpt_5_6_terra_low": {
526
+ "model": "gpt-5.6-terra",
527
+ "effort": "low",
528
+ "provider": "openai",
529
+ "request_kwargs": {
530
+ "model": "gpt-5.6-terra",
531
+ "reasoning": {
532
+ "effort": "low"
533
+ }
534
+ }
535
+ },
536
+ "mini_swe_agent_gpt_5_6_terra_max": {
537
+ "model": "gpt-5.6-terra",
538
+ "effort": "max",
539
+ "provider": "openai",
540
+ "request_kwargs": {
541
+ "model": "gpt-5.6-terra",
542
+ "reasoning": {
543
+ "effort": "max"
544
+ }
545
+ }
546
+ },
547
+ "mini_swe_agent_gpt_5_6_terra_medium": {
548
+ "model": "gpt-5.6-terra",
549
+ "effort": "medium",
550
+ "provider": "openai",
551
+ "request_kwargs": {
552
+ "model": "gpt-5.6-terra",
553
+ "reasoning": {
554
+ "effort": "medium"
555
+ }
556
+ }
557
+ },
558
+ "mini_swe_agent_gpt_5_6_terra_xhigh": {
559
+ "model": "gpt-5.6-terra",
560
+ "effort": "xhigh",
561
+ "provider": "openai",
562
+ "request_kwargs": {
563
+ "model": "gpt-5.6-terra",
564
+ "reasoning": {
565
+ "effort": "xhigh"
566
+ }
567
+ }
568
+ }
569
+ },
570
+ "n_tasks": 110,
571
+ "n_repos": 88,
572
+ "provenance": "EXP-012 winning recipe `reward_lcb_b0.2`: Qwen3-Embedding-0.6B with LoRA r=16 (q/k/v/o projections) trained by exact expected reward -E_pi[graded - 3.0*cost] on the LiveCodeBench 7x76 matrix, KL(pi||pi_init) anchor beta=0.2, 150 steps, checkpoint step 50 (T=0.0545), lam=0.01 -- (step, lam) selected ONLY on the six standard seeds' inner 75/25 DeepSWE-train splits (feasibility inner_graded >= inner-best-arm - 0.01, then max mean cost ratio; feasible on 5/6 inner splits). Memory/calibration side: the full 110-task DeepSWE v1.1 evidence (41 arms x 110 tasks, 88 repos), bank embedded with the merged fp16 encoder via sentence-transformers. Sweep evidence (per-seed selection, 6 seeds): selected-holdout mean graded 0.9484 at $60.17/split -- +0.015 graded and 2.1x cheaper than the deployable always-best-train baseline (0.9336/$126.28); parity, NOT better, vs the hindsight-best static arm. Cost figures are matrix-based (June 2026 collection) and pending live re-benchmark per EXP-014 (live drift measured).",
573
+ "scope_warning": "INPUT SHAPE MATTERS. The decision rule was validated on repo-issue statements (p50 ~2,000 chars, long-horizon SWE tasks, median 61 agent steps). The encoder was tuned on LCB competitive-programming tasks and evaluated ONLY on the DeepSWE holdout; sim_floor abstains (escalates to the strongest arm) when no bank task is close in the TUNED space. Short one-line prompts will usually abstain -- safe, but no saving. Always check Decision.off_distribution.",
574
+ "embed_backend": "local",
575
+ "selection": {
576
+ "feas_count": 5,
577
+ "mean_inner_ratio": 2.4618640944304526,
578
+ "mean_inner_graded": 0.9208466112613678
579
+ }
580
  }
router.npz CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:9b6a0299f4bbd5adc2136df826e629f4336cb8f9503a2cdeafe623e9a80bd612
3
- size 275358
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:29b71850c753cfc04f5dc992cdaf8e9eb4211388b8cb652fd0df21243ac91303
3
+ size 274172