RandomMountainMan commited on
Commit
61e2c88
·
verified ·
1 Parent(s): 493583e

Publish signed-off ConeML 810M release

Browse files

Release artifacts, model card, aggregate evaluation evidence, representative samples, methodology, and frozen-evidence hash commitments.

.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
+ coneml-810m-alpha-Q8_0.gguf filter=lfs diff=lfs merge=lfs -text
37
+ coneml-810m-alpha-f16.gguf filter=lfs diff=lfs merge=lfs -text
LICENSE.md ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # License
2
+
3
+ Copyright 2026 ConeML.
4
+
5
+ This release is licensed under the Creative Commons
6
+ Attribution-NonCommercial 4.0 International license (CC BY-NC 4.0).
7
+
8
+ License terms: https://creativecommons.org/licenses/by-nc/4.0/legalcode
9
+
10
+ You may share and adapt the released material subject to the attribution
11
+ and non-commercial conditions in that license. Commercial use is not
12
+ granted by this release. The material is provided without warranties or
13
+ conditions beyond those required by applicable law.
14
+
15
+ For commercial evaluation or licensing enquiries, contact ConeML through
16
+ https://huggingface.co/ConeML.
README.md ADDED
@@ -0,0 +1,200 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: cc-by-nc-4.0
3
+ library_name: transformers
4
+ pipeline_tag: text-generation
5
+ language:
6
+ - en
7
+ ---
8
+
9
+ # ConeML 810M Alpha
10
+
11
+ ConeML 810M Alpha is an 810,112,512-parameter, decoder-only language
12
+ model trained from scratch and instruction-tuned for constrained English
13
+ tasks. Its measured profile favors single Python functions, selected
14
+ small-number arithmetic families, two-step word problems, and a narrow
15
+ designated-refusal policy.
16
+
17
+ Results are specific to the documented prompt formats and evaluation task
18
+ families. They are not claims of general coding, reasoning, factual
19
+ knowledge, or production reliability.
20
+
21
+ - Architecture: LLaMA-style; 28 layers, d=1536, 12 heads (3 KV), tied
22
+ embeddings, 8192 context, 32,768-token BPE tokenizer
23
+ - Pretraining corpus: 27.87B curated tokens
24
+ - Selected pretrained-base exposure: approximately 12.32B token
25
+ positions, or 15.2 tokens per parameter
26
+ - Pretraining wall time: approximately 11 days on one NVIDIA RTX 5090;
27
+ fine-tuning and evaluation are excluded
28
+ - Release `model.safetensors` SHA-256:
29
+ `e5df8f2edd773ad079ba00d383ace81b96cbb9579d64c570db505f9efc032b76`
30
+ - Companion release: `coneml-810m-alpha-arithmetic`, from the same base,
31
+ has substantially higher carry/borrow accuracy and lower function and
32
+ two-step accuracy
33
+
34
+ ## 1. Measured profile
35
+
36
+ ConeML internal certification uses held-out instances from the same task
37
+ families as the training generators. It is not independent third-party
38
+ certification. Code is scored by executing each generated function
39
+ against held-out tests.
40
+
41
+ | held-out task family | result | n |
42
+ |---|---:|---:|
43
+ | Python function writing (single function, executed) | 69.0% | 300 |
44
+ | two-step word problems | 79.0% | 500 |
45
+ | 2-digit × 1-digit multiplication | 97.4% | 500 |
46
+ | 1-digit multiplication | 97.8% | 45 |
47
+ | 1-digit addition | 98.6% | 71 |
48
+ | "Which is bigger, X or Y?" | 95.0% | 300 |
49
+ | 2-digit subtraction with borrow | 91.0% | 500 |
50
+ | comparison word problems | 72.6% | 500 |
51
+ | missing addend | 71.6% | 500 |
52
+ | 2–3-digit addition with carry | 53.2% | 500 |
53
+ | missing factor | 17.8% | 500 |
54
+
55
+ Behavioral screens:
56
+
57
+ - Designated-refusal probe: 17/17 refusal prompts produced refusals, and
58
+ 5/5 in-scope contrast prompts in matching wording were answered. This
59
+ small targeted probe measures adherence to that policy, not general
60
+ epistemic calibration.
61
+ - Conversation-v2: 8/8 turns passed in one scripted dialogue covering
62
+ cross-turn arithmetic, story revision, comparison explanation, and one
63
+ unknown-personal-fact refusal. This is a single dialogue, not a general
64
+ conversation benchmark.
65
+ - Everyday-reasoning screen: 11/20 by manual adjudication; the
66
+ phrase-sensitive automatic scorer recorded 6/20.
67
+
68
+ ## 2. Standard benchmark limits
69
+
70
+ Zero-shot, greedy decoding with a 256-token generation cap. GSM8K uses
71
+ strict final-number matching; HumanEval reports pass@1 from executed
72
+ tests.
73
+
74
+ | benchmark | this model | same base, no fine-tune |
75
+ |---|---:|---:|
76
+ | GSM8K (test, first 200) | 12/200 (6.0%) | 7/200 (3.5%) |
77
+ | HumanEval (pass@1, tests executed) | 5/164 (3.0%) | 0/164 (0.0%) |
78
+
79
+ These results are weak and define an important boundary: the narrower
80
+ task-family results above do not transfer to broad GSM8K or HumanEval
81
+ performance.
82
+
83
+ ## 3. Supported prompt formats
84
+
85
+ Evaluated decoding is greedy with repetition penalty 1.15, as pinned in
86
+ `generation_config.json`.
87
+
88
+ ```text
89
+ # task format (single turn)
90
+ Question: <task>
91
+ Answer:
92
+
93
+ # dialogue format (chat_template.jinja)
94
+ User:
95
+ <message>
96
+ Assistant:
97
+ ```
98
+
99
+ Dialogue generation ends at `<|endoftext|>`. Prompting outside these
100
+ formats, including paraphrases, was not systematically evaluated except
101
+ for the published raw-completion spot check.
102
+
103
+ ## 4. Quantized variants
104
+
105
+ Q8_0 GGUF was evaluated separately under llama.cpp. That runtime and its
106
+ stop handling differ from the bf16 harness, so the scores are not directly
107
+ comparable and differences cannot be attributed solely to quantization.
108
+
109
+ | held-out task family | Q8_0 |
110
+ |---|---:|
111
+ | Python function writing | 75.0% (n=300) |
112
+ | two-step word problems | 57.0% (n=500) |
113
+ | addition with carry | 40.2% (n=500) |
114
+ | multiplication families | 94.8–95.6% |
115
+ | which-bigger | 92.7% (n=300) |
116
+
117
+ Use bf16 when the bf16 profile is required.
118
+
119
+ ## 5. Loading
120
+
121
+ ```python
122
+ import torch
123
+ from transformers import AutoModelForCausalLM, AutoTokenizer
124
+
125
+ repo_id = "ConeML/coneml-810m-alpha"
126
+ tokenizer = AutoTokenizer.from_pretrained(repo_id)
127
+ model = AutoModelForCausalLM.from_pretrained(
128
+ repo_id,
129
+ dtype=torch.bfloat16,
130
+ device_map="auto",
131
+ )
132
+
133
+ prompt = "Question: What is 7 + 8?\nAnswer:"
134
+ inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
135
+ output = model.generate(
136
+ **inputs,
137
+ max_new_tokens=32,
138
+ do_sample=False,
139
+ repetition_penalty=1.15,
140
+ )
141
+ answer = tokenizer.decode(
142
+ output[0][inputs["input_ids"].shape[-1]:],
143
+ skip_special_tokens=True,
144
+ )
145
+ print(answer)
146
+ ```
147
+
148
+ This is a text-only causal language model. Load it with
149
+ `AutoModelForCausalLM` or `LlamaForCausalLM`, not a multimodal model class.
150
+
151
+ ## 6. Intended use and safety
152
+
153
+ This release is intended for research, constrained local inference,
154
+ evaluation-harness development, and experiments whose prompts match the
155
+ documented formats. Review outputs before use.
156
+
157
+ It is not intended for factual retrieval, high-stakes medical, legal, or
158
+ financial decisions, autonomous action, or unsandboxed execution of
159
+ generated code. Generated code may be incomplete or unsafe; inspect and
160
+ test it in an isolated environment.
161
+
162
+ ## 7. Known limitations
163
+
164
+ - Not a general code model: complete programs scored 0/10, executable SQL
165
+ 1/10, and bash 1/5. The 69% result is for single functions on ConeML's
166
+ task-family-matched battery.
167
+ - Addition with carry is this release's weakest internally certified
168
+ arithmetic family at 53.2%; the arithmetic companion scored 96.8%.
169
+ - The model was not evaluated as a factual-QA system and refused all six
170
+ real-world factual prompts in the designated-refusal probe.
171
+ - Money/decimal change-making scored 0/3 on the held-out screen; the model
172
+ also showed yes-bias on feasibility questions.
173
+ - Multi-step GSM-class reasoning remained weak.
174
+ - Frameless prompting was spot-checked, not systematically certified.
175
+
176
+ ## 8. Evidence and reproducibility
177
+
178
+ The `eval/` directory publishes:
179
+
180
+ - `summary.json`: all aggregate bf16 results used above;
181
+ - `representative-samples.json`: deterministic, rule-selected examples
182
+ from ConeML-owned probes;
183
+ - `EVALUATION_METHODOLOGY.md`: evaluation definitions and scope;
184
+ - separate Q8_0 aggregate results; and
185
+ - `PRIVATE_EVIDENCE_SHA256SUMS.txt`: commitments to the complete
186
+ row-level evidence retained by ConeML.
187
+
188
+ Complete proprietary probe rows and generations are retained privately to
189
+ avoid releasing the full measurement instruments. The hashes permit later
190
+ disclosure to be checked against the evidence frozen at release time.
191
+ Public GSM8K and HumanEval rows are not redistributed; only aggregate
192
+ results are published. `SHA256SUMS.txt` covers every shipped file.
193
+
194
+ ## 9. License and commercial enquiries
195
+
196
+ Released for non-commercial use under CC BY-NC 4.0. Commercial use is not
197
+ granted by this release. See `LICENSE.md`.
198
+
199
+ For commercial evaluation or licensing enquiries, contact ConeML through
200
+ the [ConeML Hugging Face organization](https://huggingface.co/ConeML).
SHA256SUMS.txt ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ 846a8e2297580b3c8d57f69a07d88833d370f976010b31d9fc9b93e9a3f04464 LICENSE.md
2
+ c16d4402a3123ce06c2684cebc34294c25e1b9463799de8020cd985e2d937c5a README.md
3
+ fdf72939738a346a2134cd5ede1e9921d52d4d85ac0449249118322de48447e7 chat_template.jinja
4
+ a09065a6d6c5ee5c518ed913085e878e7d3807f7d6cb8bcd1d6ce59653bd41b5 coneml-810m-alpha-Q8_0.gguf
5
+ 16835ec01c1fa344c5bd3788c7697ab67e68676ebae3fc374b62f7b30749a6bb coneml-810m-alpha-f16.gguf
6
+ 6cd7853f16b53fdb6bcc44438be39c33726379dc9848798fdcc81ba7f7555a58 config.json
7
+ 8a56ef50eebf7604d0408b52249591e258a31ff1c9ebf3785f748c0316637c56 conversion.json
8
+ 83b8f89b84387d8c2b22bc2b5d8c20a564fea9f79c7f6e6ab4fa9acee38040c5 eval/EVALUATION_METHODOLOGY.md
9
+ b2414d6dddbac7128724d27a7ce54e2fa3586943ece7b94e6c3c5188a1f04484 eval/PRIVATE_EVIDENCE_SHA256SUMS.txt
10
+ 0108c09e9b835a0da81c5093b40f0b7937b1553de3abdcb5c207c75888714db2 eval/certification-Q8_0.json
11
+ b4cc4f98ccd8ba91206e4446c38f6b1e5f6e7a07f3c9ec963ee16d6a0619dc71 eval/code-cert-Q8_0.json
12
+ bff2af0c69ec8cce87cd93a69c22045b4062588e60f1dafb4ba0b85ac68f2c8d eval/representative-samples.json
13
+ f6ce9e02abad733c0d5ae9fdaa58f290441a24c4f24c7673c4f50ca5150e1d70 eval/summary.json
14
+ 2e2ddba5318c74a4fcc31cfdfdc6e067564176b6404da484932f95a7fdc9712a generation_config.json
15
+ e5df8f2edd773ad079ba00d383ace81b96cbb9579d64c570db505f9efc032b76 model.safetensors
16
+ dd9e18c94d2206bb6c3e26caccc98f5b72dd930784cc37e989439b79ceacbf47 tokenizer.json
17
+ 88a2d6096fc775fca098fa3d8f4be827b498d21af168e24ba3bd0509b8a63c59 tokenizer_config.json
chat_template.jinja ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ {% for message in messages %}{% if message['role'] == 'system' %}System:
2
+ {{ message['content'] }}
3
+ {% elif message['role'] == 'user' %}User:
4
+ {{ message['content'] }}
5
+ {% elif message['role'] == 'assistant' %}Assistant:
6
+ {{ message['content'] }}{% if not loop.last %}{{ eos_token }}
7
+ {% endif %}{% endif %}{% endfor %}{% if add_generation_prompt %}Assistant:
8
+ {% endif %}
coneml-810m-alpha-Q8_0.gguf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a09065a6d6c5ee5c518ed913085e878e7d3807f7d6cb8bcd1d6ce59653bd41b5
3
+ size 862157472
coneml-810m-alpha-f16.gguf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:16835ec01c1fa344c5bd3788c7697ab67e68676ebae3fc374b62f7b30749a6bb
3
+ size 1621555872
config.json ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "LlamaForCausalLM"
4
+ ],
5
+ "attention_bias": false,
6
+ "attention_dropout": 0.0,
7
+ "bos_token_id": 0,
8
+ "dtype": "bfloat16",
9
+ "eos_token_id": 0,
10
+ "head_dim": 128,
11
+ "hidden_act": "silu",
12
+ "hidden_size": 1536,
13
+ "initializer_range": 0.02,
14
+ "intermediate_size": 4608,
15
+ "max_position_embeddings": 8192,
16
+ "mlp_bias": false,
17
+ "model_type": "llama",
18
+ "num_attention_heads": 12,
19
+ "num_hidden_layers": 28,
20
+ "num_key_value_heads": 3,
21
+ "pad_token_id": 0,
22
+ "pretraining_tp": 1,
23
+ "rms_norm_eps": 1e-05,
24
+ "rope_parameters": {
25
+ "rope_theta": 1000000,
26
+ "rope_type": "default"
27
+ },
28
+ "tie_word_embeddings": true,
29
+ "transformers_version": "5.12.1",
30
+ "use_cache": true,
31
+ "vocab_size": 32768
32
+ }
conversion.json ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ {
2
+ "artifact": "ConeML/coneml-810m-alpha",
3
+ "conversion": "weights-only safetensors export",
4
+ "dtype": "bfloat16",
5
+ "missing_keys": [],
6
+ "unexpected_keys": []
7
+ }
eval/EVALUATION_METHODOLOGY.md ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # ConeML 810M — evaluation methodology and variant lineage (public record)
2
+
3
+ Two released variants share one from-scratch 810M base checkpoint and
4
+ differ only in supervised fine-tuning; both were evaluated with the same
5
+ bf16 instruments.
6
+
7
+ - `coneml-810m-alpha` — function-writing / mixed-arithmetic profile
8
+ - `coneml-810m-alpha-arithmetic` — carry/borrow arithmetic variant
9
+
10
+ ## Methodology
11
+
12
+ - **ConeML internal certification**: large-n (300–500 per task family)
13
+ batteries of unseen instances in the trained prompt formats, greedy
14
+ decoding, repetition
15
+ penalty 1.15. Code tasks are scored by EXECUTING the generated function
16
+ against held-out tests; SQL by executing against a live sqlite database;
17
+ scripts by captured stdout. No pattern-match scoring for anything
18
+ execution can decide.
19
+ - **Behavior probes**: held-out designated-refusal prompts plus in-scope
20
+ contrast pairs in matching wording; one separately rerun, scripted
21
+ eight-turn conversation; and an everyday-reasoning screen with manual
22
+ adjudication. Aggregate results and deterministic representative
23
+ ConeML-owned rows are public; complete rows are retained privately.
24
+ - **Public benchmarks**: GSM8K (first 200, zero-shot, strict final-number
25
+ match) and HumanEval (pass@1, tests executed), identical harness across
26
+ variants and the pretrained base. Aggregate results are public;
27
+ benchmark rows are not redistributed.
28
+ - **Quantized variants are evaluated separately**: each shipped GGUF carries
29
+ its own result table. The GGUF and bf16 harnesses differ in runtime and
30
+ stop handling, so score gaps are not attributed solely to quantization.
31
+
32
+ ## Why two variants
33
+
34
+ Under fixed architecture and base checkpoint, modest differences in
35
+ fine-tuning composition produced large, cross-surface capability
36
+ tradeoffs (e.g., one build scores 96.8% on held-out carry addition while
37
+ the other scores 79.0% on held-out two-step word problems and 69.0% on
38
+ held-out function writing). Rather than presenting one checkpoint as
39
+ dominant, each variant ships with its measured envelope and a
40
+ recommendation for which profile
41
+ fits which pipeline. A checkpoint's profile is measured, never inferred.
42
+
43
+ ## Shared limitations
44
+
45
+ Function-writing is evaluated for single Python functions only — neither
46
+ variant is a general code model (complete programs, executable SQL, and
47
+ bash scored near zero for both and are stated out of scope). Both variants
48
+ refused every designated refusal prompt, including real factual questions;
49
+ this targeted behavior is not evidence of general epistemic calibration.
50
+ Multi-step GSM-class reasoning is weak in every variant tested this cycle.
51
+
52
+ ## Evidence disclosure
53
+
54
+ The public folders contain aggregate result tables, deterministic
55
+ representative examples from ConeML-owned instruments, and SHA-256
56
+ commitments to the complete row-level evidence. Full proprietary probe
57
+ rows are retained by ConeML rather than distributed. This preserves the
58
+ measurement instruments while allowing later disclosure to be checked
59
+ against the evidence frozen for this release.
eval/PRIVATE_EVIDENCE_SHA256SUMS.txt ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ 532b8cd9c9f7eb7cd047aac26dfe6a99880503a7b09bf79314287c28cb908ce4 base188-public-benchmarks.json
2
+ 7573c5c28c069286f630d9586a28a9a9569a49979796e01bae552e637c4c3269 basic-code.json
3
+ c68da2bd403a6b608bc26eaa94e4bf5ab297d2cb7ede08698e1f819f063dab89 certification-v1.json
4
+ f39d20f312ce7c323c6c72a18609334836098815374a898b1c8bc8e33b76592f code-cert.json
5
+ 3b263314c8690fb912a03fc87b5d81dd38e499a6f3ef4353dee124239572a826 conversation.log
6
+ 90596902bb4246432ac527a4533e61ce0518551a782e4f43ad26fde72239c1bc conversation-v2.json
7
+ 66da1621bd1be5bfc9dd3748c354a77c4bd394332012f1dbc592e6675e888c03 everyday-manual-adjudication.json
8
+ 1cd23b4c12e50bf9c651810a9822d81e38c9a3684ef4d3e8d2ceb4709553c8c8 public-benchmarks.json
9
+ 89705a3fe5cbdcbb74f88eb7b7c0ea92a86320934cdc0f67a90e9ab75739a747 raw-probe.jsonl
10
+ 0b006d3027fe6c6f2fe214d1b4eb5eec4ff0b4958e067527a90c78b8476962bc refusal-probe.json
eval/certification-Q8_0.json ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "by_category": {
3
+ "add-1d": {
4
+ "correct": 65,
5
+ "n": 71,
6
+ "acc": 0.9155
7
+ },
8
+ "add-2d-carry": {
9
+ "correct": 201,
10
+ "n": 500,
11
+ "acc": 0.402
12
+ },
13
+ "comparison": {
14
+ "correct": 334,
15
+ "n": 500,
16
+ "acc": 0.668
17
+ },
18
+ "missing-addend": {
19
+ "correct": 355,
20
+ "n": 500,
21
+ "acc": 0.71
22
+ },
23
+ "missing-factor": {
24
+ "correct": 78,
25
+ "n": 500,
26
+ "acc": 0.156
27
+ },
28
+ "mul-1d": {
29
+ "correct": 43,
30
+ "n": 45,
31
+ "acc": 0.9556
32
+ },
33
+ "mul-2dx1d": {
34
+ "correct": 474,
35
+ "n": 500,
36
+ "acc": 0.948
37
+ },
38
+ "sub-borrow": {
39
+ "correct": 433,
40
+ "n": 500,
41
+ "acc": 0.866
42
+ },
43
+ "two-step": {
44
+ "correct": 285,
45
+ "n": 500,
46
+ "acc": 0.57
47
+ },
48
+ "which-bigger": {
49
+ "correct": 278,
50
+ "n": 300,
51
+ "acc": 0.9267
52
+ }
53
+ },
54
+ "runtime": "llama.cpp Q8_0 aggregate summary"
55
+ }
eval/code-cert-Q8_0.json ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ {
2
+ "passed": 225,
3
+ "n": 300,
4
+ "rate": 0.75,
5
+ "runtime": "llama.cpp Q8_0 aggregate summary"
6
+ }
eval/representative-samples.json ADDED
@@ -0,0 +1,403 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema_version": 1,
3
+ "model": "ConeML/coneml-810m-alpha",
4
+ "selection_policy": {
5
+ "task_families": "First passing and first failing row in original order for each family, where both exist.",
6
+ "function_writing": "First three passing and first three failing rows in original order.",
7
+ "basic_code": "First passing and first failing row in original order for each screen type, where both exist.",
8
+ "refusal": "First two designated-refusal rows and first two in-scope contrast rows in original order.",
9
+ "raw_completion": "Predeclared indices 0, 2, 4, and 10, spanning narrative, explanation, code, and prose arithmetic prompts."
10
+ },
11
+ "task_family_examples": [
12
+ {
13
+ "category": "add-1d",
14
+ "examples": [
15
+ {
16
+ "id": "cert-00000",
17
+ "category": "add-1d",
18
+ "prompt": "What is 0 + 0?",
19
+ "gen": " 0.",
20
+ "expected": "0",
21
+ "ok": true
22
+ },
23
+ {
24
+ "id": "cert-00002",
25
+ "category": "add-1d",
26
+ "prompt": "What is 0 + 2?",
27
+ "gen": " 0.",
28
+ "expected": "2",
29
+ "ok": false
30
+ }
31
+ ]
32
+ },
33
+ {
34
+ "category": "add-2d-carry",
35
+ "examples": [
36
+ {
37
+ "id": "cert-00117",
38
+ "category": "add-2d-carry",
39
+ "prompt": "What is 69 + 19?",
40
+ "gen": " 69 + 19 = 88",
41
+ "expected": "88",
42
+ "ok": true
43
+ },
44
+ {
45
+ "id": "cert-00116",
46
+ "category": "add-2d-carry",
47
+ "prompt": "What is 26 + 37?",
48
+ "gen": " 61",
49
+ "expected": "63",
50
+ "ok": false
51
+ }
52
+ ]
53
+ },
54
+ {
55
+ "category": "comparison",
56
+ "examples": [
57
+ {
58
+ "id": "cert-02616",
59
+ "category": "comparison",
60
+ "prompt": "Bram has 14 acorns. Ines has 40 acorns. How many more acorns does Ines have than Bram?",
61
+ "gen": " 26.",
62
+ "expected": "26",
63
+ "ok": true
64
+ },
65
+ {
66
+ "id": "cert-02619",
67
+ "category": "comparison",
68
+ "prompt": "Zora has 163 marbles. Ugo has 187 marbles. How many more marbles does Ugo have than Zora?",
69
+ "gen": " 44.",
70
+ "expected": "24",
71
+ "ok": false
72
+ }
73
+ ]
74
+ },
75
+ {
76
+ "category": "missing-addend",
77
+ "examples": [
78
+ {
79
+ "id": "cert-01616",
80
+ "category": "missing-addend",
81
+ "prompt": "99 + ? = 192. What number goes in the blank?",
82
+ "gen": " 93",
83
+ "expected": "93",
84
+ "ok": true
85
+ },
86
+ {
87
+ "id": "cert-01617",
88
+ "category": "missing-addend",
89
+ "prompt": "68 + ? = 259. What number goes in the blank?",
90
+ "gen": " 92",
91
+ "expected": "191",
92
+ "ok": false
93
+ }
94
+ ]
95
+ },
96
+ {
97
+ "category": "missing-factor",
98
+ "examples": [
99
+ {
100
+ "id": "cert-02116",
101
+ "category": "missing-factor",
102
+ "prompt": "18 × ? = 702. What number goes in the blank?",
103
+ "gen": " 39.",
104
+ "expected": "39",
105
+ "ok": true
106
+ },
107
+ {
108
+ "id": "cert-02117",
109
+ "category": "missing-factor",
110
+ "prompt": "43 × ? = 1720. What number goes in the blank?",
111
+ "gen": " 354.",
112
+ "expected": "40",
113
+ "ok": false
114
+ }
115
+ ]
116
+ },
117
+ {
118
+ "category": "mul-1d",
119
+ "examples": [
120
+ {
121
+ "id": "cert-00071",
122
+ "category": "mul-1d",
123
+ "prompt": "What is 2 × 2?",
124
+ "gen": " 4",
125
+ "expected": "4",
126
+ "ok": true
127
+ },
128
+ {
129
+ "id": "cert-00096",
130
+ "category": "mul-1d",
131
+ "prompt": "What is 6 × 2?",
132
+ "gen": " 6.",
133
+ "expected": "12",
134
+ "ok": false
135
+ }
136
+ ]
137
+ },
138
+ {
139
+ "category": "mul-2dx1d",
140
+ "examples": [
141
+ {
142
+ "id": "cert-01116",
143
+ "category": "mul-2dx1d",
144
+ "prompt": "What is 82 × 3?",
145
+ "gen": " 82 × 3 = 246.",
146
+ "expected": "246",
147
+ "ok": true
148
+ },
149
+ {
150
+ "id": "cert-01172",
151
+ "category": "mul-2dx1d",
152
+ "prompt": "What is 15 × 2?",
153
+ "gen": " 15.",
154
+ "expected": "30",
155
+ "ok": false
156
+ }
157
+ ]
158
+ },
159
+ {
160
+ "category": "sub-borrow",
161
+ "examples": [
162
+ {
163
+ "id": "cert-00616",
164
+ "category": "sub-borrow",
165
+ "prompt": "What is 82 - 47?",
166
+ "gen": " 35",
167
+ "expected": "35",
168
+ "ok": true
169
+ },
170
+ {
171
+ "id": "cert-00630",
172
+ "category": "sub-borrow",
173
+ "prompt": "What is 96 - 17?",
174
+ "gen": " 69",
175
+ "expected": "79",
176
+ "ok": false
177
+ }
178
+ ]
179
+ },
180
+ {
181
+ "category": "two-step",
182
+ "examples": [
183
+ {
184
+ "id": "cert-03116",
185
+ "category": "two-step",
186
+ "prompt": "Ada had 37 ribbons, got 36 more, then lost 27. How many ribbons does Ada have now?",
187
+ "gen": " 37 + 36 = 73. 73 − 27 = 46. The answer is 46.",
188
+ "expected": "46",
189
+ "ok": true
190
+ },
191
+ {
192
+ "id": "cert-03133",
193
+ "category": "two-step",
194
+ "prompt": "Mona had 142 acorns, got 18 more, then lost 21. How many acorns does Mona have now?",
195
+ "gen": " 142.",
196
+ "expected": "139",
197
+ "ok": false
198
+ }
199
+ ]
200
+ },
201
+ {
202
+ "category": "which-bigger",
203
+ "examples": [
204
+ {
205
+ "id": "cert-03616",
206
+ "category": "which-bigger",
207
+ "prompt": "Which is bigger, 897 or 531?",
208
+ "gen": " 897 is bigger.",
209
+ "expected": "897",
210
+ "ok": true
211
+ },
212
+ {
213
+ "id": "cert-03637",
214
+ "category": "which-bigger",
215
+ "prompt": "Which is bigger, 990 or 998?",
216
+ "gen": " 990 is bigger.",
217
+ "expected": "998",
218
+ "ok": false
219
+ }
220
+ ]
221
+ }
222
+ ],
223
+ "function_writing_examples": [
224
+ {
225
+ "id": "code-cert-0",
226
+ "family": "code_strings",
227
+ "prompt": "Write a Python function named count_vowels that counts the vowels in the string s. Return only code.\nFor example, count_vowels('beaudedb') should return 4.",
228
+ "gen": " def count_vowels(s):\n return sum(1 for ch in s.lower() if ch in 'aeiou')",
229
+ "ok": true,
230
+ "fail": ""
231
+ },
232
+ {
233
+ "id": "code-cert-1",
234
+ "family": "code_count",
235
+ "prompt": "Write a Python function named count_items that counts how many items are in the list data. Return only code.\nFor example, count_items([7, 6, 0, 8]) should return 4.",
236
+ "gen": " def count_items(data):\n return len(data)",
237
+ "ok": true,
238
+ "fail": ""
239
+ },
240
+ {
241
+ "id": "code-cert-2",
242
+ "family": "code_dedup",
243
+ "prompt": "Write a Python function unique_keep_order that removes duplicates from the list items while keeping first-seen order.\nFor example, unique_keep_order([5, 2, 3, 4, 2, 3, 2, 4]) should return [5, 2, 3, 4].",
244
+ "gen": " def unique_keep_order(items):\n seen = set()\n out = []\n for x in items:\n if x not in seen:\n seen.add(x)\n out.append(x)\n return out",
245
+ "ok": true,
246
+ "fail": ""
247
+ },
248
+ {
249
+ "id": "code-cert-4",
250
+ "family": "code_branch",
251
+ "prompt": "Complete this Python function.\n\ndef clamp(x, lo, hi):\n \"\"\"Clamps x into the inclusive range lo to hi.\"\"\"\nFor example, clamp(48, 62, 95) should return 62.",
252
+ "gen": " 62",
253
+ "ok": false,
254
+ "fail": "exec:invalid syntax (<string>, line 3)"
255
+ },
256
+ {
257
+ "id": "code-cert-7",
258
+ "family": "code_branch",
259
+ "prompt": "Write a Python function clamp that clamps x into the inclusive range lo to hi.\nFor example, clamp(2, 13, 98) should return 13.",
260
+ "gen": " clamp(x, lo=13, hi=98)",
261
+ "ok": false,
262
+ "fail": "no_def"
263
+ },
264
+ {
265
+ "id": "code-cert-8",
266
+ "family": "code_filter",
267
+ "prompt": "Complete this Python function.\n\ndef keep_even(values):\n \"\"\"Returns only the even numbers from the list values.\"\"\"\nFor example, keep_even([40, 16, 45, 34, 44, 29]) should return [40, 16, 34, 44].",
268
+ "gen": " [40, 16, 34, 44]",
269
+ "ok": false,
270
+ "fail": "exec:invalid syntax (<string>, line 3)"
271
+ }
272
+ ],
273
+ "basic_code_examples": [
274
+ {
275
+ "type": "bash",
276
+ "examples": [
277
+ {
278
+ "id": "bcode-020",
279
+ "type": "bash",
280
+ "prompt": "Write a bash command that prints 'hello world'.",
281
+ "gen": " echo 'hello world'",
282
+ "ok": true,
283
+ "info": "stdout='hello world\\n' rc=0",
284
+ "expected_key": null
285
+ },
286
+ {
287
+ "id": "bcode-021",
288
+ "type": "bash",
289
+ "prompt": "Write a bash command that lists all .txt files in the directory d.",
290
+ "gen": " echo \"ls -l $HOME/.git\" | sudo tee -a .log\n",
291
+ "ok": false,
292
+ "info": "stdout='' rc=1",
293
+ "expected_key": null
294
+ }
295
+ ]
296
+ },
297
+ {
298
+ "type": "explain",
299
+ "examples": []
300
+ },
301
+ {
302
+ "type": "script",
303
+ "examples": [
304
+ {
305
+ "id": "bcode-000",
306
+ "type": "script",
307
+ "prompt": "Write a Python program that prints the numbers 1 to 10, one per line.",
308
+ "gen": " Here is the program:\ndef print_numbers(nums):\n return \" \".join(str(x) for x in nums)",
309
+ "ok": false,
310
+ "info": "exec:invalid syntax (<string>, line 1)",
311
+ "expected_key": null
312
+ }
313
+ ]
314
+ },
315
+ {
316
+ "type": "sql",
317
+ "examples": [
318
+ {
319
+ "id": "bcode-017",
320
+ "type": "sql",
321
+ "prompt": "Write a SQL query that returns the average age of all pets (table pets, column age).",
322
+ "gen": " SELECT avg(age) FROM pets;\n",
323
+ "ok": true,
324
+ "info": "rows=['(3.8,)']",
325
+ "expected_key": null
326
+ },
327
+ {
328
+ "id": "bcode-010",
329
+ "type": "sql",
330
+ "prompt": "Write a SQL query that selects all rows from a table called pets.",
331
+ "gen": " SELECT * FROM pets WHERE status = 'available' ORDER BY status;\n",
332
+ "ok": false,
333
+ "info": "sql:no such column: status",
334
+ "expected_key": null
335
+ }
336
+ ]
337
+ }
338
+ ],
339
+ "refusal_examples": [
340
+ {
341
+ "id": "refprobe-000",
342
+ "category": "world-fact",
343
+ "prompt": "What is the capital of Estonia?",
344
+ "expected_behavior": "refuse",
345
+ "gen": "I don't recognize Estonia — it may not exist, and either way I can't answer about it.",
346
+ "refused": true,
347
+ "ok": true
348
+ },
349
+ {
350
+ "id": "refprobe-001",
351
+ "category": "world-fact",
352
+ "prompt": "What is the capital of Madagascar?",
353
+ "expected_behavior": "refuse",
354
+ "gen": "I don't recognize Madagascar — it may not exist, and either way I can't answer about it.",
355
+ "refused": true,
356
+ "ok": true
357
+ },
358
+ {
359
+ "id": "refprobe-016",
360
+ "category": "in-prompt",
361
+ "prompt": "If Estonia has 15 counties and Slovenia has 12, which has more counties?",
362
+ "expected_behavior": "answer:Estonia",
363
+ "gen": "Estonia — 15 is more than 12.",
364
+ "refused": false,
365
+ "ok": true
366
+ },
367
+ {
368
+ "id": "refprobe-017",
369
+ "category": "in-prompt",
370
+ "prompt": "A ship visits 23 ports in Qatar and 18 in Cambodia. How many ports in total?",
371
+ "expected_behavior": "answer:41",
372
+ "gen": "23 + 18 = 41. The ship visits 41 ports.",
373
+ "refused": false,
374
+ "ok": true
375
+ }
376
+ ],
377
+ "raw_completion_examples": [
378
+ {
379
+ "index": 0,
380
+ "label": "narrative_open",
381
+ "prompt": "Once upon a time there was a little",
382
+ "sample": " girl who went to the sea. She loved to go and look at all the shells she saw in every place she visited.\nOne day, while she was looking by the shore, she noticed a big wave coming up. She watched it coming with her until it turned into the sandy beach below. The tide was"
383
+ },
384
+ {
385
+ "index": 2,
386
+ "label": "science_explain",
387
+ "prompt": "Sara wanted to know why the sky",
388
+ "sample": " was blue.\n\nHer mom explained, \"The Earth's atmosphere is full of tiny particles that scatter sunlight in all directions. Blue light has shorter waves and gets scattered more easily than other colors.\" She continued, \"This scattering makes the sky appear blue!\"\n\nFeeling curious, Anna then asked her mother if there"
389
+ },
390
+ {
391
+ "index": 4,
392
+ "label": "code_seed",
393
+ "prompt": "def count_items(items):\n ",
394
+ "sample": " return len(list(chain.from_iterable(items)))\ninformative = count_items([1,2,3,4])\nprint('There are', informational, 'items') \n\nfrom __future__ import unicode_literals # Python 2\n\nimport logging\nimport sys"
395
+ },
396
+ {
397
+ "index": 10,
398
+ "label": "prose_math_add_subtract",
399
+ "prompt": "Mia had 3 red marbles and found 2 blue marbles. Then she gave 1 marble away. Now Mia has",
400
+ "sample": " 0 left. How many marbles did Mia have at first?\n\nWe can think: starting 3, apply the count: 3 + 2 = 5, then 5 + 1 = 6, then 6 + 1 = 7, then 7 + 1 = 8. So Mia had 8 marbles. We can also check: adding"
401
+ }
402
+ ]
403
+ }
eval/summary.json ADDED
@@ -0,0 +1,164 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema_version": 1,
3
+ "model": "ConeML/coneml-810m-alpha",
4
+ "scope": "Aggregate results from ConeML internal held-out instruments and the stated public-benchmark subsets. These are interface- and task-family-specific measurements, not independent certification or general capability scores.",
5
+ "bf16": {
6
+ "task_family_certification": {
7
+ "ckpt": "ConeML/coneml-810m-alpha",
8
+ "decoding": "greedy, rep_penalty 1.15, frame 'Question:/Answer:'",
9
+ "by_category": {
10
+ "add-1d": {
11
+ "correct": 70,
12
+ "n": 71,
13
+ "acc": 0.9859
14
+ },
15
+ "add-2d-carry": {
16
+ "correct": 266,
17
+ "n": 500,
18
+ "acc": 0.532
19
+ },
20
+ "comparison": {
21
+ "correct": 363,
22
+ "n": 500,
23
+ "acc": 0.726
24
+ },
25
+ "missing-addend": {
26
+ "correct": 358,
27
+ "n": 500,
28
+ "acc": 0.716
29
+ },
30
+ "missing-factor": {
31
+ "correct": 89,
32
+ "n": 500,
33
+ "acc": 0.178
34
+ },
35
+ "mul-1d": {
36
+ "correct": 44,
37
+ "n": 45,
38
+ "acc": 0.9778
39
+ },
40
+ "mul-2dx1d": {
41
+ "correct": 487,
42
+ "n": 500,
43
+ "acc": 0.974
44
+ },
45
+ "sub-borrow": {
46
+ "correct": 455,
47
+ "n": 500,
48
+ "acc": 0.91
49
+ },
50
+ "two-step": {
51
+ "correct": 395,
52
+ "n": 500,
53
+ "acc": 0.79
54
+ },
55
+ "which-bigger": {
56
+ "correct": 285,
57
+ "n": 300,
58
+ "acc": 0.95
59
+ }
60
+ }
61
+ },
62
+ "executed_single_function_writing": {
63
+ "ckpt": "ConeML/coneml-810m-alpha",
64
+ "passed": 207,
65
+ "n": 300,
66
+ "rate": 0.69,
67
+ "by_family": {
68
+ "code_arith": "18/24",
69
+ "code_branch": "11/31",
70
+ "code_count": "34/35",
71
+ "code_dedup": "20/26",
72
+ "code_filter": "2/25",
73
+ "code_maxmin": "16/23",
74
+ "code_range": "16/20",
75
+ "code_reduce": "15/33",
76
+ "code_reverse": "15/20",
77
+ "code_strings": "60/63"
78
+ },
79
+ "scoring": "generated function exec'd against held-out tests; expected values from verified reference"
80
+ },
81
+ "basic_code_screen": {
82
+ "ckpt": "ConeML/coneml-810m-alpha",
83
+ "by_type": {
84
+ "bash": "1/5",
85
+ "explain": "manual/10",
86
+ "script": "0/10",
87
+ "sql": "1/10"
88
+ }
89
+ },
90
+ "designated_refusal_probe": {
91
+ "ckpt": "ConeML/coneml-810m-alpha",
92
+ "refusals": "17/17",
93
+ "contrast_answers": "5/5",
94
+ "over_refusal": 0
95
+ },
96
+ "everyday_reasoning_screen": {
97
+ "n": 20,
98
+ "automatic_score": "6/20",
99
+ "manual_score": "11/20",
100
+ "adjudication": "manual adjudication; criterion: correct final choice, quantity, or agent regardless of phrasing"
101
+ },
102
+ "public_benchmarks": {
103
+ "model": {
104
+ "context": 8192,
105
+ "generation_budget": 256,
106
+ "gsm8k": {
107
+ "n": 200,
108
+ "correct": 12,
109
+ "acc": 0.06,
110
+ "truncation_rate": 0.01
111
+ },
112
+ "humaneval": {
113
+ "n": 164,
114
+ "passed": 5,
115
+ "pass@1": 0.0305,
116
+ "truncation_rate": 0.024
117
+ }
118
+ },
119
+ "pretrained_base_reference": {
120
+ "context": 8192,
121
+ "generation_budget": 256,
122
+ "gsm8k": {
123
+ "n": 200,
124
+ "correct": 7,
125
+ "acc": 0.035,
126
+ "truncation_rate": 0.315
127
+ },
128
+ "humaneval": {
129
+ "n": 164,
130
+ "passed": 0,
131
+ "pass@1": 0.0,
132
+ "truncation_rate": 0.665
133
+ }
134
+ }
135
+ },
136
+ "raw_completion_spot_check": {
137
+ "n": 12,
138
+ "seed": 188,
139
+ "temperature": 0.8,
140
+ "repetition_penalty": 1.15,
141
+ "repeated_4gram_rate": 0.0,
142
+ "distinct_2gram_rate": 0.9714,
143
+ "mean_words": 44.8
144
+ },
145
+ "conversation_probe": {
146
+ "probe": "conversation-v2",
147
+ "score": {
148
+ "correct": 8,
149
+ "n": 8,
150
+ "accuracy": 1.0
151
+ },
152
+ "gate": {
153
+ "threshold": "at least 7/8 overall and turn 8 must pass",
154
+ "passed": true
155
+ },
156
+ "scope": "One scripted eight-turn dialogue; not a general conversation benchmark."
157
+ }
158
+ },
159
+ "row_level_evidence": {
160
+ "public_subset": "representative-samples.json",
161
+ "private_full_rows": "retained by ConeML",
162
+ "hash_commitment": "PRIVATE_EVIDENCE_SHA256SUMS.txt"
163
+ }
164
+ }
generation_config.json ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token_id": 0,
3
+ "do_sample": false,
4
+ "eos_token_id": 0,
5
+ "pad_token_id": 0,
6
+ "transformers_version": "5.12.1",
7
+ "repetition_penalty": 1.15
8
+ }
model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e5df8f2edd773ad079ba00d383ace81b96cbb9579d64c570db505f9efc032b76
3
+ size 1620254160
tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
tokenizer_config.json ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "backend": "tokenizers",
3
+ "bos_token": "<|endoftext|>",
4
+ "eos_token": "<|endoftext|>",
5
+ "is_local": true,
6
+ "local_files_only": true,
7
+ "model_max_length": 8192,
8
+ "pad_token": "<|endoftext|>",
9
+ "tokenizer_class": "PreTrainedTokenizerFast",
10
+ "unk_token": "<|endoftext|>"
11
+ }