zakkeown commited on
Commit
102d60f
·
verified ·
1 Parent(s): 76b0bd7

Publish qualified GPT-2 macOS Core AI bundle for Aether v0.0.6

Browse files
.gitattributes CHANGED
@@ -33,3 +33,4 @@ 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
+ mac/model.aimodel/main.mlirb filter=lfs diff=lfs merge=lfs -text
LICENSE ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Modified MIT License
2
+
3
+ Software Copyright (c) 2019 OpenAI
4
+
5
+ We don’t claim ownership of the content you create with GPT-2, so it is yours to do with as you please.
6
+ We only ask that you use GPT-2 responsibly and clearly indicate your content was created using GPT-2.
7
+
8
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
9
+ associated documentation files (the "Software"), to deal in the Software without restriction,
10
+ including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
11
+ and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
12
+ subject to the following conditions:
13
+
14
+ The above copyright notice and this permission notice shall be included
15
+ in all copies or substantial portions of the Software.
16
+ The above copyright notice and this permission notice need not be included
17
+ with content created by the Software.
18
+
19
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
20
+ INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
22
+ BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
23
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
24
+ OR OTHER DEALINGS IN THE SOFTWARE.
NOTICE ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ GPT-2 124M Core AI conversion for Aether Kit
2
+
3
+ Upstream checkpoint: openai-community/gpt2
4
+ Revision: 607a30d783dfa663caf39e06633721c8d4cfcd7e
5
+ Original model/software: Copyright (c) 2019 OpenAI; Modified MIT License (LICENSE).
6
+
7
+ Conversion tooling: Aether Kit, Apache-2.0
8
+ https://github.com/bubstackdev/aether-kit
9
+ Source commit: 20bbc96
10
+ Architecture reference: Hugging Face Transformers 4.57.3 GPT-2 implementation, Apache-2.0.
11
+ No instruction tuning or further model training was performed for this conversion.
README.md ADDED
@@ -0,0 +1,85 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ language:
3
+ - en
4
+ license: mit
5
+ library_name: aether-kit
6
+ pipeline_tag: text-generation
7
+ base_model: openai-community/gpt2
8
+ tags:
9
+ - aether-kit
10
+ - core-ai
11
+ - gpt2
12
+ - text-generation
13
+ - experimental
14
+ ---
15
+
16
+ # GPT-2 124M for Aether Kit
17
+
18
+ A macOS Core AI conversion of [openai-community/gpt2](https://huggingface.co/openai-community/gpt2),
19
+ using upstream revision `607a30d783dfa663caf39e06633721c8d4cfcd7e`.
20
+ Built with the GPT-2 port spike for Aether Kit v0.0.6, source commit
21
+ [`20bbc96`](https://github.com/bubstackdev/aether-kit/commit/20bbc96).
22
+
23
+ ## Bundle
24
+
25
+ `mac/` is an Aether language bundle: `language-model.json`, `model.aimodel/`,
26
+ `tokenizer/`, and `export-report.json`. It requires Apple silicon and macOS 27
27
+ with Core AI. There is no qualified iOS bundle in this repository.
28
+
29
+ The model uses fp16 weights and KV caches, float32 scaled dot-product attention,
30
+ and the bucketed cache contract. The maximum context is **1,024 tokens**, including
31
+ prompt and generated tokens; the exported prefill bound is 64 tokens.
32
+
33
+ GPT-2 is a base completion model without a chat template. Use plain text/token
34
+ prompts with `AetherLanguageCoreAI.LanguageGenerationSession`; the chat facade
35
+ reports `unsupportedTemplate`. This conversion adds no instruction tuning.
36
+
37
+ ```swift
38
+ import AetherLanguageCoreAI
39
+ import AetherLanguageTokenizers
40
+
41
+ let tokenizer = try await LanguageTokenizer.open(bundle: bundle)
42
+ let session = try await LanguageGenerationSession.open(bundle: bundle, platform: .macos)
43
+ let result = try await session.generate(
44
+ prompt: tokenizer.encode("The future of artificial intelligence is"),
45
+ maximumTokens: 64)
46
+ print(tokenizer.decode(result.tokens))
47
+ await session.unload()
48
+ ```
49
+
50
+ Download `mac/` at an immutable Hub commit and pass that local directory as
51
+ `bundle`. A pinned Aether catalog entry is maintained in
52
+ [`Spikes/gpt2/catalog-macos.json`](https://github.com/bubstackdev/aether-kit/blob/main/Spikes/gpt2/catalog-macos.json).
53
+ The bundle's model SHA-256 is
54
+ `f04fefaa3a7e69f3e4da783ce1ac5aef7f80e0bc70e441db452ec691e7429316`.
55
+
56
+ ## Qualification and limits
57
+
58
+ Evidence is included under `verification/`; commands and architecture notes are in
59
+ [`Spikes/gpt2`](https://github.com/bubstackdev/aether-kit/tree/main/Spikes/gpt2).
60
+ The converter used Torch 2.11.0, Transformers 4.57.3 and coreai-torch 0.4.2.
61
+ Tests ran on macOS build 26B123, Core AI device architecture `h17c`.
62
+
63
+ - The float32 eager port matches all 64 reference argmax rows on both a six-token
64
+ prompt and a 600-token prompt, under both running and bucketed cache contracts.
65
+ - The full converted checkpoint passes its Core AI CPU logits/cache self-check.
66
+ - Both registered-bundle native GPU cases pass Aether's fp16 numerical policy:
67
+ per-row cosine >= 0.995; differing choices require a reference probability margin
68
+ below 0.1 and a native choice within the reference top five. Prefill widths 7 and
69
+ 16 produce identical native continuations.
70
+ - The 600-token prompt matches the full 64-token upstream greedy continuation.
71
+ The short prompt has one near-tie among 64 teacher-forced rows and first diverges
72
+ in free generation at token index 40: native rank 2, reference probability margin
73
+ approximately 0.00139. This conversion does not promise bit-exact float32 output.
74
+
75
+ This is an experimental v0.0.6 spike asset. Qualification covers these synthetic
76
+ prompts on one Mac, not general task quality, every Apple device, or iOS.
77
+ GPT-2 retains the capabilities and limitations described in its
78
+ [upstream model card](https://huggingface.co/openai-community/gpt2).
79
+
80
+ ## License and provenance
81
+
82
+ The original GPT-2 assets retain the Modified MIT terms in `LICENSE`,
83
+ Copyright (c) 2019 OpenAI. `NOTICE` identifies conversion and architecture sources.
84
+ The Aether Kit conversion tooling is Apache-2.0. This repository distributes a
85
+ Core AI conversion and tokenizer assets; it is not an OpenAI-hosted model service.
mac/export-report.json ADDED
@@ -0,0 +1,173 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema": 1,
3
+ "recipe": "gpt2-bucketed-v2",
4
+ "contract": "bucketed",
5
+ "exportedAt": "2026-11-02T17:57:52Z",
6
+ "hostOS": "26B123",
7
+ "versions": {
8
+ "torch": "2.11.0",
9
+ "coreai-torch": "0.4.2",
10
+ "coreai-core": "1.0.0b2"
11
+ },
12
+ "scriptSHA256": {
13
+ "dense_decode.py": "1d8156015a4d8d4f57db114d67f3cd447b9b08a95d01986eeb8dacd599375e17",
14
+ "dense_families.py": "0412802eb1291352f2883bd9977adf2c616da108faf85c847ecea02a747e46fd",
15
+ "export_dense.py": "dc6f22fef2248791fc19431e135b68043b7c90dd8128dbed35a93780b644407b",
16
+ "export_gpt2.py": "cca87df8eb4050ecf8777ea2dc21a4e9441c0186663122677c5e293a0c924b49",
17
+ "export_granite_hybrid.py": "40e62b7f3f49ceaadfd6e0f0a59dfe0f437a5a016d02050c67eaefedb934fd04",
18
+ "export_olmo2.py": "6a85fc26702429c4d1cd1ac914e0ec847727984d4b9a1f800cb1fdbc3021c408",
19
+ "export_qwen3.py": "a314c09e89e6756dce1771693d47f2113911c6f2423cb5b76d566e8fb6446826",
20
+ "export_qwen3_vl_text.py": "6d06a39b2ed0b5eae5e24eb89db1d3ca28960da52805af76b7cf27d3dd2ebbf7",
21
+ "export_qwen3_vl_vision.py": "60149b5dfa0d2a971e0af834fc13a15957c957c72e95eaf172c6f31218e5828e",
22
+ "gpt2_decode.py": "360dade178dfac5bdef03efbdc800cfc9fc7fab1e249684cb5c8fffb1cb77f34",
23
+ "granite_hybrid.py": "afb235e8926d04e410f746ef7bd4ee0a97d5c135e5f472abf342912ded9c7330",
24
+ "olmo2_decode.py": "4f3ad03d399f8c095f7570a3b3c54f78d5f701fb9faa5200cadca5083ef752a1",
25
+ "probe_function_weights.py": "f06ec7b4ffd753d43c0111f6eeb91a0074de621632de00eac8683aae5beefc91",
26
+ "qwen3_decode.py": "43aee7983389fad450f6541e1c5ad9a37a086c4cab4015ef0888da36c07be527",
27
+ "qwen3_vl_divergence_margin.py": "4831dcab1b83c454efb730c2cb070ae8bcbcac8d3578a1995550b38b49b93da8",
28
+ "qwen3_vl_text.py": "69179d9e4397f81e81358c453a2e7d036ba1873f7b4042cf8d484909d9399986",
29
+ "qwen3_vl_vision.py": "dc5c594ff913009990a1dc014ae90f5bdb736c87176275c8eb6b524150908079",
30
+ "record_evidence.py": "bb1b30030da2ea0e1e4c8115c9b3edf96c9dadc4d74e6941227a2bd7d230299b",
31
+ "record_vision_evidence.py": "5b18c6c34a6e3de4834aed45a1d46a97f4d92695b28116e909e2b1f8f0ce3aa2",
32
+ "record_vl_evidence.py": "bc82ba4f5be871ba217d449a4e441368214c3b3250be295f7b910ccab2f5e34e",
33
+ "reference_chat_tokens.py": "c9d4f556d2c8afa887b88a147650e717d192edb3eca5046ea181020bdb49c394",
34
+ "reference_dense.py": "778aab3f04fe0c02babf738f44c609f0c2964ba6408eaf64caf4f585af77921b",
35
+ "reference_gpt2.py": "80e85fcf20bedd31945ce234884587f3dd90ca9c1320d83f8390885e3ca5c36e",
36
+ "reference_granite_hybrid.py": "7771ba220d0db36251012cdadefbe71f1841f93a19eb17ec620863c4f2244561",
37
+ "reference_olmo2.py": "cf105c1be1ccda1f715af9fe774be9b199f6ffdfe99f4e8ad2aba1e8990bee0b",
38
+ "reference_olmo2_tokens.py": "3e9a5b4b8ebeefec822defc2f45c1c93e886b3a6d8e0c9b97df666066ee994ef",
39
+ "reference_qwen3.py": "b7cee7de6ec99139bc036b1bf5e1739624c49c10777ac98a95a3d6a59091cf06",
40
+ "reference_qwen3_vl.py": "ce4c219d071e5c9b12c7c3b54fe9936cdab0835358669854a01569b0c81c39d3",
41
+ "reference_qwen3_vl_text.py": "cb3a68b1143d7c383cf6e5da4ef563e7063af8f8908aa323e5d27e0288e766e9",
42
+ "reference_qwen3_vl_vision.py": "ee4d08ea94a6da2f96970a3b18a2cb3635bceb68af05e99d56449147c2783f98",
43
+ "reference_sampling.py": "af349bcb14a275536920e158f9ee5d0d946b8e2d6d167e1f57028bb71e25d751",
44
+ "register_dense_bundle.py": "5a5ae88499d67b37ff60577c1a00752545df2896341b0521f3191142e4f9e4ec",
45
+ "register_qwen3_bundle.py": "adc9096b79adbcde3a539471587e000f87c86148e3ad82e2ec8605933f4242f3",
46
+ "register_qwen3_vl_bundle.py": "f6a3f21dd1ccaf37b0b7247a3cf048eda24fab40c791da3eed4e240d4d492c95",
47
+ "stage_device_assets.py": "eee5b22bb1199f94a276ae257cdb14543f737fcd591cde327b99ed23c8210c46",
48
+ "test_dense_decode.py": "ffa39f194d87c30aee88c1c36ba5911382cc0a7cd85f1f0c2bb6159878c3dc9b",
49
+ "test_dense_export.py": "575325a9278fe67a5a218e20d60742156cd0ce3849e66eb4e07fc6b7d9975ff7",
50
+ "test_gpt2_decode.py": "b7e4b7e2130784e113f6b118ed4454390403e97e1fd8ccad332ab0a8f3df578e",
51
+ "write_alpha_fixtures.py": "353df55bc464bda4cdd5e01f6af28b1ae7507380d0bf986a98c4e27c28f41f23"
52
+ },
53
+ "dtype": "float16",
54
+ "attentionPrecision": "float32",
55
+ "exportBounds": {
56
+ "maximumPrefillChunk": 64,
57
+ "maximumCacheCapacity": 1024
58
+ },
59
+ "droppedIdentityCopies": 0,
60
+ "config": {
61
+ "activation_function": "gelu_new",
62
+ "architectures": [
63
+ "GPT2LMHeadModel"
64
+ ],
65
+ "attn_pdrop": 0.1,
66
+ "bos_token_id": 50256,
67
+ "embd_pdrop": 0.1,
68
+ "eos_token_id": 50256,
69
+ "initializer_range": 0.02,
70
+ "layer_norm_epsilon": 1e-05,
71
+ "model_type": "gpt2",
72
+ "n_ctx": 1024,
73
+ "n_embd": 768,
74
+ "n_head": 12,
75
+ "n_layer": 12,
76
+ "n_positions": 1024,
77
+ "resid_pdrop": 0.1,
78
+ "summary_activation": null,
79
+ "summary_first_dropout": 0.1,
80
+ "summary_proj_to_labels": true,
81
+ "summary_type": "cls_index",
82
+ "summary_use_proj": true,
83
+ "task_specific_params": {
84
+ "text-generation": {
85
+ "do_sample": true,
86
+ "max_length": 50
87
+ }
88
+ },
89
+ "vocab_size": 50257
90
+ },
91
+ "source": {
92
+ "repository": "openai-community/gpt2",
93
+ "revision": "607a30d783dfa663caf39e06633721c8d4cfcd7e",
94
+ "checkpoint": ".local/checkpoint"
95
+ },
96
+ "selfCheck": {
97
+ "passed": true,
98
+ "promptTokens": 19,
99
+ "chunks": [
100
+ 8,
101
+ 4,
102
+ 1,
103
+ 2
104
+ ],
105
+ "capacity": 64,
106
+ "decodeSteps": 4,
107
+ "steps": [
108
+ {
109
+ "step": 0,
110
+ "cosine": 1.0,
111
+ "maxAbs": 0.3125,
112
+ "argmaxEqual": true,
113
+ "referenceArgmax": 321,
114
+ "nativeArgmax": 321,
115
+ "lostCacheRows": 0,
116
+ "cacheMaxAbs": 0.20312
117
+ },
118
+ {
119
+ "step": 1,
120
+ "cosine": 1.0,
121
+ "maxAbs": 0.4375,
122
+ "argmaxEqual": true,
123
+ "referenceArgmax": 2098,
124
+ "nativeArgmax": 2098,
125
+ "lostCacheRows": 0,
126
+ "cacheMaxAbs": 0.23438
127
+ },
128
+ {
129
+ "step": 2,
130
+ "cosine": 1.0,
131
+ "maxAbs": 0.3125,
132
+ "argmaxEqual": true,
133
+ "referenceArgmax": 2195,
134
+ "nativeArgmax": 2195,
135
+ "lostCacheRows": 0,
136
+ "cacheMaxAbs": 0.23438
137
+ },
138
+ {
139
+ "step": 3,
140
+ "cosine": 1.0,
141
+ "maxAbs": 0.3125,
142
+ "argmaxEqual": true,
143
+ "referenceArgmax": 2292,
144
+ "nativeArgmax": 2292,
145
+ "lostCacheRows": 0,
146
+ "cacheMaxAbs": 0.23438
147
+ },
148
+ {
149
+ "step": 4,
150
+ "cosine": 0.999999,
151
+ "maxAbs": 0.34375,
152
+ "argmaxEqual": true,
153
+ "referenceArgmax": 2389,
154
+ "nativeArgmax": 2389,
155
+ "lostCacheRows": 0,
156
+ "cacheMaxAbs": 0.23438
157
+ }
158
+ ]
159
+ },
160
+ "tokenizerFiles": {
161
+ "config.json": "0daed7749b4f02b8f76240d5444551d7b08712dab4d0adb8239c56ba823bb7b4",
162
+ "generation_config.json": "ed0b32ac72c0f5f44a719abb2d7786ea5146c871f83717b7f2018065954de02b",
163
+ "merges.txt": "1ce1664773c50f3e0cc8842619a93edc4624525b728b188a9e0be33b7726adc5",
164
+ "tokenizer.json": "8414cab924d8b9b33013f0d221c5862f365ee9be39c5c2bfae8a5a9e970478a6",
165
+ "tokenizer_config.json": "5e04eb606e3a1583530a42e36c2a6b6615c86f34fe77e44d9ddeb43ff940931f",
166
+ "vocab.json": "196139668be63f3b5d6574427317ae82f612a97c5d1cdaf36ed2256dbf636783"
167
+ },
168
+ "modelFiles": {
169
+ "main.hash": "6edab09b42478045121a3abf8a13cff090fa28997fbe5f5f897f49595cc0f240",
170
+ "main.mlirb": "f04fefaa3a7e69f3e4da783ce1ac5aef7f80e0bc70e441db452ec691e7429316",
171
+ "metadata.json": "a1e268eb9bf6c3541f776ba24b530e16133c6fdb4bef1d08b5a3e93a56fe0c22"
172
+ }
173
+ }
mac/language-model.json ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schemaVersion": 1,
3
+ "modelDirectory": "model.aimodel",
4
+ "tokenizerDirectory": "tokenizer",
5
+ "sourceRepository": "openai-community/gpt2",
6
+ "sourceRevision": "607a30d783dfa663caf39e06633721c8d4cfcd7e",
7
+ "modelSHA256": "f04fefaa3a7e69f3e4da783ce1ac5aef7f80e0bc70e441db452ec691e7429316",
8
+ "tokenizerSHA256": "8414cab924d8b9b33013f0d221c5862f365ee9be39c5c2bfae8a5a9e970478a6",
9
+ "maximumContextLength": 1024,
10
+ "stopTokenIDs": [
11
+ 50256
12
+ ],
13
+ "platform": "macos",
14
+ "quantization": "fp16",
15
+ "exportBounds": {
16
+ "maximumPrefillChunk": 64,
17
+ "maximumCacheCapacity": 1024
18
+ },
19
+ "tokenizerFiles": {
20
+ "config.json": "0daed7749b4f02b8f76240d5444551d7b08712dab4d0adb8239c56ba823bb7b4",
21
+ "generation_config.json": "ed0b32ac72c0f5f44a719abb2d7786ea5146c871f83717b7f2018065954de02b",
22
+ "merges.txt": "1ce1664773c50f3e0cc8842619a93edc4624525b728b188a9e0be33b7726adc5",
23
+ "tokenizer.json": "8414cab924d8b9b33013f0d221c5862f365ee9be39c5c2bfae8a5a9e970478a6",
24
+ "tokenizer_config.json": "5e04eb606e3a1583530a42e36c2a6b6615c86f34fe77e44d9ddeb43ff940931f",
25
+ "vocab.json": "196139668be63f3b5d6574427317ae82f612a97c5d1cdaf36ed2256dbf636783"
26
+ },
27
+ "supportsReasoning": false
28
+ }
mac/model.aimodel/main.hash ADDED
@@ -0,0 +1 @@
 
 
1
+ �O�:~i���x<�Z���p�A�E.Ƒ�B�
mac/model.aimodel/main.mlirb ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f04fefaa3a7e69f3e4da783ce1ac5aef7f80e0bc70e441db452ec691e7429316
3
+ size 248944119
mac/model.aimodel/metadata.json ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ {
2
+ "assetVersion" : "2.0",
3
+ "producer" : "coreai-core 1.0.0b2",
4
+ "creationDate" : "20261102T175752Z"
5
+ }
mac/tokenizer/config.json ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "activation_function": "gelu_new",
3
+ "architectures": [
4
+ "GPT2LMHeadModel"
5
+ ],
6
+ "attn_pdrop": 0.1,
7
+ "bos_token_id": 50256,
8
+ "embd_pdrop": 0.1,
9
+ "eos_token_id": 50256,
10
+ "initializer_range": 0.02,
11
+ "layer_norm_epsilon": 1e-05,
12
+ "model_type": "gpt2",
13
+ "n_ctx": 1024,
14
+ "n_embd": 768,
15
+ "n_head": 12,
16
+ "n_layer": 12,
17
+ "n_positions": 1024,
18
+ "resid_pdrop": 0.1,
19
+ "summary_activation": null,
20
+ "summary_first_dropout": 0.1,
21
+ "summary_proj_to_labels": true,
22
+ "summary_type": "cls_index",
23
+ "summary_use_proj": true,
24
+ "task_specific_params": {
25
+ "text-generation": {
26
+ "do_sample": true,
27
+ "max_length": 50
28
+ }
29
+ },
30
+ "vocab_size": 50257
31
+ }
mac/tokenizer/generation_config.json ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token_id": 50256,
3
+ "eos_token_id": 50256,
4
+ "transformers_version": "4.26.0.dev0",
5
+ "_from_model_config": true
6
+ }
mac/tokenizer/merges.txt ADDED
The diff for this file is too large to render. See raw diff
 
mac/tokenizer/tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
mac/tokenizer/tokenizer_config.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"model_max_length": 1024}
mac/tokenizer/vocab.json ADDED
The diff for this file is too large to render. See raw diff
 
verification/export-report.json ADDED
@@ -0,0 +1,173 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema": 1,
3
+ "recipe": "gpt2-bucketed-v2",
4
+ "contract": "bucketed",
5
+ "exportedAt": "2026-11-02T17:57:52Z",
6
+ "hostOS": "26B123",
7
+ "versions": {
8
+ "torch": "2.11.0",
9
+ "coreai-torch": "0.4.2",
10
+ "coreai-core": "1.0.0b2"
11
+ },
12
+ "scriptSHA256": {
13
+ "dense_decode.py": "1d8156015a4d8d4f57db114d67f3cd447b9b08a95d01986eeb8dacd599375e17",
14
+ "dense_families.py": "0412802eb1291352f2883bd9977adf2c616da108faf85c847ecea02a747e46fd",
15
+ "export_dense.py": "dc6f22fef2248791fc19431e135b68043b7c90dd8128dbed35a93780b644407b",
16
+ "export_gpt2.py": "cca87df8eb4050ecf8777ea2dc21a4e9441c0186663122677c5e293a0c924b49",
17
+ "export_granite_hybrid.py": "40e62b7f3f49ceaadfd6e0f0a59dfe0f437a5a016d02050c67eaefedb934fd04",
18
+ "export_olmo2.py": "6a85fc26702429c4d1cd1ac914e0ec847727984d4b9a1f800cb1fdbc3021c408",
19
+ "export_qwen3.py": "a314c09e89e6756dce1771693d47f2113911c6f2423cb5b76d566e8fb6446826",
20
+ "export_qwen3_vl_text.py": "6d06a39b2ed0b5eae5e24eb89db1d3ca28960da52805af76b7cf27d3dd2ebbf7",
21
+ "export_qwen3_vl_vision.py": "60149b5dfa0d2a971e0af834fc13a15957c957c72e95eaf172c6f31218e5828e",
22
+ "gpt2_decode.py": "360dade178dfac5bdef03efbdc800cfc9fc7fab1e249684cb5c8fffb1cb77f34",
23
+ "granite_hybrid.py": "afb235e8926d04e410f746ef7bd4ee0a97d5c135e5f472abf342912ded9c7330",
24
+ "olmo2_decode.py": "4f3ad03d399f8c095f7570a3b3c54f78d5f701fb9faa5200cadca5083ef752a1",
25
+ "probe_function_weights.py": "f06ec7b4ffd753d43c0111f6eeb91a0074de621632de00eac8683aae5beefc91",
26
+ "qwen3_decode.py": "43aee7983389fad450f6541e1c5ad9a37a086c4cab4015ef0888da36c07be527",
27
+ "qwen3_vl_divergence_margin.py": "4831dcab1b83c454efb730c2cb070ae8bcbcac8d3578a1995550b38b49b93da8",
28
+ "qwen3_vl_text.py": "69179d9e4397f81e81358c453a2e7d036ba1873f7b4042cf8d484909d9399986",
29
+ "qwen3_vl_vision.py": "dc5c594ff913009990a1dc014ae90f5bdb736c87176275c8eb6b524150908079",
30
+ "record_evidence.py": "bb1b30030da2ea0e1e4c8115c9b3edf96c9dadc4d74e6941227a2bd7d230299b",
31
+ "record_vision_evidence.py": "5b18c6c34a6e3de4834aed45a1d46a97f4d92695b28116e909e2b1f8f0ce3aa2",
32
+ "record_vl_evidence.py": "bc82ba4f5be871ba217d449a4e441368214c3b3250be295f7b910ccab2f5e34e",
33
+ "reference_chat_tokens.py": "c9d4f556d2c8afa887b88a147650e717d192edb3eca5046ea181020bdb49c394",
34
+ "reference_dense.py": "778aab3f04fe0c02babf738f44c609f0c2964ba6408eaf64caf4f585af77921b",
35
+ "reference_gpt2.py": "80e85fcf20bedd31945ce234884587f3dd90ca9c1320d83f8390885e3ca5c36e",
36
+ "reference_granite_hybrid.py": "7771ba220d0db36251012cdadefbe71f1841f93a19eb17ec620863c4f2244561",
37
+ "reference_olmo2.py": "cf105c1be1ccda1f715af9fe774be9b199f6ffdfe99f4e8ad2aba1e8990bee0b",
38
+ "reference_olmo2_tokens.py": "3e9a5b4b8ebeefec822defc2f45c1c93e886b3a6d8e0c9b97df666066ee994ef",
39
+ "reference_qwen3.py": "b7cee7de6ec99139bc036b1bf5e1739624c49c10777ac98a95a3d6a59091cf06",
40
+ "reference_qwen3_vl.py": "ce4c219d071e5c9b12c7c3b54fe9936cdab0835358669854a01569b0c81c39d3",
41
+ "reference_qwen3_vl_text.py": "cb3a68b1143d7c383cf6e5da4ef563e7063af8f8908aa323e5d27e0288e766e9",
42
+ "reference_qwen3_vl_vision.py": "ee4d08ea94a6da2f96970a3b18a2cb3635bceb68af05e99d56449147c2783f98",
43
+ "reference_sampling.py": "af349bcb14a275536920e158f9ee5d0d946b8e2d6d167e1f57028bb71e25d751",
44
+ "register_dense_bundle.py": "5a5ae88499d67b37ff60577c1a00752545df2896341b0521f3191142e4f9e4ec",
45
+ "register_qwen3_bundle.py": "adc9096b79adbcde3a539471587e000f87c86148e3ad82e2ec8605933f4242f3",
46
+ "register_qwen3_vl_bundle.py": "f6a3f21dd1ccaf37b0b7247a3cf048eda24fab40c791da3eed4e240d4d492c95",
47
+ "stage_device_assets.py": "eee5b22bb1199f94a276ae257cdb14543f737fcd591cde327b99ed23c8210c46",
48
+ "test_dense_decode.py": "ffa39f194d87c30aee88c1c36ba5911382cc0a7cd85f1f0c2bb6159878c3dc9b",
49
+ "test_dense_export.py": "575325a9278fe67a5a218e20d60742156cd0ce3849e66eb4e07fc6b7d9975ff7",
50
+ "test_gpt2_decode.py": "b7e4b7e2130784e113f6b118ed4454390403e97e1fd8ccad332ab0a8f3df578e",
51
+ "write_alpha_fixtures.py": "353df55bc464bda4cdd5e01f6af28b1ae7507380d0bf986a98c4e27c28f41f23"
52
+ },
53
+ "dtype": "float16",
54
+ "attentionPrecision": "float32",
55
+ "exportBounds": {
56
+ "maximumPrefillChunk": 64,
57
+ "maximumCacheCapacity": 1024
58
+ },
59
+ "droppedIdentityCopies": 0,
60
+ "config": {
61
+ "activation_function": "gelu_new",
62
+ "architectures": [
63
+ "GPT2LMHeadModel"
64
+ ],
65
+ "attn_pdrop": 0.1,
66
+ "bos_token_id": 50256,
67
+ "embd_pdrop": 0.1,
68
+ "eos_token_id": 50256,
69
+ "initializer_range": 0.02,
70
+ "layer_norm_epsilon": 1e-05,
71
+ "model_type": "gpt2",
72
+ "n_ctx": 1024,
73
+ "n_embd": 768,
74
+ "n_head": 12,
75
+ "n_layer": 12,
76
+ "n_positions": 1024,
77
+ "resid_pdrop": 0.1,
78
+ "summary_activation": null,
79
+ "summary_first_dropout": 0.1,
80
+ "summary_proj_to_labels": true,
81
+ "summary_type": "cls_index",
82
+ "summary_use_proj": true,
83
+ "task_specific_params": {
84
+ "text-generation": {
85
+ "do_sample": true,
86
+ "max_length": 50
87
+ }
88
+ },
89
+ "vocab_size": 50257
90
+ },
91
+ "source": {
92
+ "repository": "openai-community/gpt2",
93
+ "revision": "607a30d783dfa663caf39e06633721c8d4cfcd7e",
94
+ "checkpoint": ".local/checkpoint"
95
+ },
96
+ "selfCheck": {
97
+ "passed": true,
98
+ "promptTokens": 19,
99
+ "chunks": [
100
+ 8,
101
+ 4,
102
+ 1,
103
+ 2
104
+ ],
105
+ "capacity": 64,
106
+ "decodeSteps": 4,
107
+ "steps": [
108
+ {
109
+ "step": 0,
110
+ "cosine": 1.0,
111
+ "maxAbs": 0.3125,
112
+ "argmaxEqual": true,
113
+ "referenceArgmax": 321,
114
+ "nativeArgmax": 321,
115
+ "lostCacheRows": 0,
116
+ "cacheMaxAbs": 0.20312
117
+ },
118
+ {
119
+ "step": 1,
120
+ "cosine": 1.0,
121
+ "maxAbs": 0.4375,
122
+ "argmaxEqual": true,
123
+ "referenceArgmax": 2098,
124
+ "nativeArgmax": 2098,
125
+ "lostCacheRows": 0,
126
+ "cacheMaxAbs": 0.23438
127
+ },
128
+ {
129
+ "step": 2,
130
+ "cosine": 1.0,
131
+ "maxAbs": 0.3125,
132
+ "argmaxEqual": true,
133
+ "referenceArgmax": 2195,
134
+ "nativeArgmax": 2195,
135
+ "lostCacheRows": 0,
136
+ "cacheMaxAbs": 0.23438
137
+ },
138
+ {
139
+ "step": 3,
140
+ "cosine": 1.0,
141
+ "maxAbs": 0.3125,
142
+ "argmaxEqual": true,
143
+ "referenceArgmax": 2292,
144
+ "nativeArgmax": 2292,
145
+ "lostCacheRows": 0,
146
+ "cacheMaxAbs": 0.23438
147
+ },
148
+ {
149
+ "step": 4,
150
+ "cosine": 0.999999,
151
+ "maxAbs": 0.34375,
152
+ "argmaxEqual": true,
153
+ "referenceArgmax": 2389,
154
+ "nativeArgmax": 2389,
155
+ "lostCacheRows": 0,
156
+ "cacheMaxAbs": 0.23438
157
+ }
158
+ ]
159
+ },
160
+ "tokenizerFiles": {
161
+ "config.json": "0daed7749b4f02b8f76240d5444551d7b08712dab4d0adb8239c56ba823bb7b4",
162
+ "generation_config.json": "ed0b32ac72c0f5f44a719abb2d7786ea5146c871f83717b7f2018065954de02b",
163
+ "merges.txt": "1ce1664773c50f3e0cc8842619a93edc4624525b728b188a9e0be33b7726adc5",
164
+ "tokenizer.json": "8414cab924d8b9b33013f0d221c5862f365ee9be39c5c2bfae8a5a9e970478a6",
165
+ "tokenizer_config.json": "5e04eb606e3a1583530a42e36c2a6b6615c86f34fe77e44d9ddeb43ff940931f",
166
+ "vocab.json": "196139668be63f3b5d6574427317ae82f612a97c5d1cdaf36ed2256dbf636783"
167
+ },
168
+ "modelFiles": {
169
+ "main.hash": "6edab09b42478045121a3abf8a13cff090fa28997fbe5f5f897f49595cc0f240",
170
+ "main.mlirb": "f04fefaa3a7e69f3e4da783ce1ac5aef7f80e0bc70e441db452ec691e7429316",
171
+ "metadata.json": "a1e268eb9bf6c3541f776ba24b530e16133c6fdb4bef1d08b5a3e93a56fe0c22"
172
+ }
173
+ }
verification/long-native.json ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "acceptedNearTies" : 0,
3
+ "allocatedCapacity" : 768,
4
+ "argmaxMismatches" : 0,
5
+ "device" : "h17c",
6
+ "forcedRows" : 64,
7
+ "greedyDivergenceAccepted" : true,
8
+ "greedyIdentical" : true,
9
+ "greedyTokens" : [
10
+ 464,
11
+ 2003,
12
+ 286,
13
+ 11666,
14
+ 4430,
15
+ 318,
16
+ 464,
17
+ 2003,
18
+ 286,
19
+ 11666,
20
+ 4430,
21
+ 318,
22
+ 464,
23
+ 2003,
24
+ 286,
25
+ 11666,
26
+ 4430,
27
+ 318,
28
+ 464,
29
+ 2003,
30
+ 286,
31
+ 11666,
32
+ 4430,
33
+ 318,
34
+ 464,
35
+ 2003,
36
+ 286,
37
+ 11666,
38
+ 4430,
39
+ 318,
40
+ 464,
41
+ 2003,
42
+ 286,
43
+ 11666,
44
+ 4430,
45
+ 318,
46
+ 464,
47
+ 2003,
48
+ 286,
49
+ 11666,
50
+ 4430,
51
+ 318,
52
+ 464,
53
+ 2003,
54
+ 286,
55
+ 11666,
56
+ 4430,
57
+ 318,
58
+ 464,
59
+ 2003,
60
+ 286,
61
+ 11666,
62
+ 4430,
63
+ 318,
64
+ 464,
65
+ 2003,
66
+ 286,
67
+ 11666,
68
+ 4430,
69
+ 318,
70
+ 464,
71
+ 2003,
72
+ 286,
73
+ 11666
74
+ ],
75
+ "maximumAbs" : 0.235992431640625,
76
+ "minimumCosine" : 0.9999999617363302,
77
+ "modelReloads" : 0,
78
+ "modelSHA256" : "f04fefaa3a7e69f3e4da783ce1ac5aef7f80e0bc70e441db452ec691e7429316",
79
+ "passed" : true,
80
+ "sourceRepository" : "openai-community/gpt2",
81
+ "sourceRevision" : "607a30d783dfa663caf39e06633721c8d4cfcd7e",
82
+ "text" : "The future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial"
83
+ }
verification/long-reference.json ADDED
@@ -0,0 +1,825 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema": 1,
3
+ "kind": "gpt2-cpu-reference",
4
+ "oracle": "transformers AutoModelForCausalLM, float32, CPU",
5
+ "source": {
6
+ "repository": "openai-community/gpt2",
7
+ "revision": "607a30d783dfa663caf39e06633721c8d4cfcd7e",
8
+ "license": "mit"
9
+ },
10
+ "versions": {
11
+ "torch": "2.11.0",
12
+ "transformers": "4.57.3"
13
+ },
14
+ "scriptSHA256": {
15
+ "dense_decode.py": "1d8156015a4d8d4f57db114d67f3cd447b9b08a95d01986eeb8dacd599375e17",
16
+ "dense_families.py": "0412802eb1291352f2883bd9977adf2c616da108faf85c847ecea02a747e46fd",
17
+ "export_dense.py": "dc6f22fef2248791fc19431e135b68043b7c90dd8128dbed35a93780b644407b",
18
+ "export_gpt2.py": "cca87df8eb4050ecf8777ea2dc21a4e9441c0186663122677c5e293a0c924b49",
19
+ "export_granite_hybrid.py": "40e62b7f3f49ceaadfd6e0f0a59dfe0f437a5a016d02050c67eaefedb934fd04",
20
+ "export_olmo2.py": "6a85fc26702429c4d1cd1ac914e0ec847727984d4b9a1f800cb1fdbc3021c408",
21
+ "export_qwen3.py": "a314c09e89e6756dce1771693d47f2113911c6f2423cb5b76d566e8fb6446826",
22
+ "export_qwen3_vl_text.py": "6d06a39b2ed0b5eae5e24eb89db1d3ca28960da52805af76b7cf27d3dd2ebbf7",
23
+ "export_qwen3_vl_vision.py": "60149b5dfa0d2a971e0af834fc13a15957c957c72e95eaf172c6f31218e5828e",
24
+ "gpt2_decode.py": "360dade178dfac5bdef03efbdc800cfc9fc7fab1e249684cb5c8fffb1cb77f34",
25
+ "granite_hybrid.py": "afb235e8926d04e410f746ef7bd4ee0a97d5c135e5f472abf342912ded9c7330",
26
+ "olmo2_decode.py": "4f3ad03d399f8c095f7570a3b3c54f78d5f701fb9faa5200cadca5083ef752a1",
27
+ "probe_function_weights.py": "f06ec7b4ffd753d43c0111f6eeb91a0074de621632de00eac8683aae5beefc91",
28
+ "qwen3_decode.py": "43aee7983389fad450f6541e1c5ad9a37a086c4cab4015ef0888da36c07be527",
29
+ "qwen3_vl_divergence_margin.py": "4831dcab1b83c454efb730c2cb070ae8bcbcac8d3578a1995550b38b49b93da8",
30
+ "qwen3_vl_text.py": "69179d9e4397f81e81358c453a2e7d036ba1873f7b4042cf8d484909d9399986",
31
+ "qwen3_vl_vision.py": "dc5c594ff913009990a1dc014ae90f5bdb736c87176275c8eb6b524150908079",
32
+ "record_evidence.py": "bb1b30030da2ea0e1e4c8115c9b3edf96c9dadc4d74e6941227a2bd7d230299b",
33
+ "record_vision_evidence.py": "5b18c6c34a6e3de4834aed45a1d46a97f4d92695b28116e909e2b1f8f0ce3aa2",
34
+ "record_vl_evidence.py": "bc82ba4f5be871ba217d449a4e441368214c3b3250be295f7b910ccab2f5e34e",
35
+ "reference_chat_tokens.py": "c9d4f556d2c8afa887b88a147650e717d192edb3eca5046ea181020bdb49c394",
36
+ "reference_dense.py": "778aab3f04fe0c02babf738f44c609f0c2964ba6408eaf64caf4f585af77921b",
37
+ "reference_gpt2.py": "80e85fcf20bedd31945ce234884587f3dd90ca9c1320d83f8390885e3ca5c36e",
38
+ "reference_granite_hybrid.py": "7771ba220d0db36251012cdadefbe71f1841f93a19eb17ec620863c4f2244561",
39
+ "reference_olmo2.py": "cf105c1be1ccda1f715af9fe774be9b199f6ffdfe99f4e8ad2aba1e8990bee0b",
40
+ "reference_olmo2_tokens.py": "3e9a5b4b8ebeefec822defc2f45c1c93e886b3a6d8e0c9b97df666066ee994ef",
41
+ "reference_qwen3.py": "b7cee7de6ec99139bc036b1bf5e1739624c49c10777ac98a95a3d6a59091cf06",
42
+ "reference_qwen3_vl.py": "ce4c219d071e5c9b12c7c3b54fe9936cdab0835358669854a01569b0c81c39d3",
43
+ "reference_qwen3_vl_text.py": "cb3a68b1143d7c383cf6e5da4ef563e7063af8f8908aa323e5d27e0288e766e9",
44
+ "reference_qwen3_vl_vision.py": "ee4d08ea94a6da2f96970a3b18a2cb3635bceb68af05e99d56449147c2783f98",
45
+ "reference_sampling.py": "af349bcb14a275536920e158f9ee5d0d946b8e2d6d167e1f57028bb71e25d751",
46
+ "register_dense_bundle.py": "5a5ae88499d67b37ff60577c1a00752545df2896341b0521f3191142e4f9e4ec",
47
+ "register_qwen3_bundle.py": "adc9096b79adbcde3a539471587e000f87c86148e3ad82e2ec8605933f4242f3",
48
+ "register_qwen3_vl_bundle.py": "f6a3f21dd1ccaf37b0b7247a3cf048eda24fab40c791da3eed4e240d4d492c95",
49
+ "stage_device_assets.py": "eee5b22bb1199f94a276ae257cdb14543f737fcd591cde327b99ed23c8210c46",
50
+ "test_dense_decode.py": "ffa39f194d87c30aee88c1c36ba5911382cc0a7cd85f1f0c2bb6159878c3dc9b",
51
+ "test_dense_export.py": "575325a9278fe67a5a218e20d60742156cd0ce3849e66eb4e07fc6b7d9975ff7",
52
+ "test_gpt2_decode.py": "333f6b9fcef19a9047037e50099e6657447308888da22471846144963c8fd583",
53
+ "write_alpha_fixtures.py": "353df55bc464bda4cdd5e01f6af28b1ae7507380d0bf986a98c4e27c28f41f23"
54
+ },
55
+ "checkpointSHA256": {
56
+ "model.safetensors": "248dfc3911869ec493c76e65bf2fcf7f615828b0254c12b473182f0f81d3a707"
57
+ },
58
+ "prompt": "The future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence is",
59
+ "promptStyle": "completion",
60
+ "promptTokens": [
61
+ 464,
62
+ 2003,
63
+ 286,
64
+ 11666,
65
+ 4430,
66
+ 318,
67
+ 464,
68
+ 2003,
69
+ 286,
70
+ 11666,
71
+ 4430,
72
+ 318,
73
+ 464,
74
+ 2003,
75
+ 286,
76
+ 11666,
77
+ 4430,
78
+ 318,
79
+ 464,
80
+ 2003,
81
+ 286,
82
+ 11666,
83
+ 4430,
84
+ 318,
85
+ 464,
86
+ 2003,
87
+ 286,
88
+ 11666,
89
+ 4430,
90
+ 318,
91
+ 464,
92
+ 2003,
93
+ 286,
94
+ 11666,
95
+ 4430,
96
+ 318,
97
+ 464,
98
+ 2003,
99
+ 286,
100
+ 11666,
101
+ 4430,
102
+ 318,
103
+ 464,
104
+ 2003,
105
+ 286,
106
+ 11666,
107
+ 4430,
108
+ 318,
109
+ 464,
110
+ 2003,
111
+ 286,
112
+ 11666,
113
+ 4430,
114
+ 318,
115
+ 464,
116
+ 2003,
117
+ 286,
118
+ 11666,
119
+ 4430,
120
+ 318,
121
+ 464,
122
+ 2003,
123
+ 286,
124
+ 11666,
125
+ 4430,
126
+ 318,
127
+ 464,
128
+ 2003,
129
+ 286,
130
+ 11666,
131
+ 4430,
132
+ 318,
133
+ 464,
134
+ 2003,
135
+ 286,
136
+ 11666,
137
+ 4430,
138
+ 318,
139
+ 464,
140
+ 2003,
141
+ 286,
142
+ 11666,
143
+ 4430,
144
+ 318,
145
+ 464,
146
+ 2003,
147
+ 286,
148
+ 11666,
149
+ 4430,
150
+ 318,
151
+ 464,
152
+ 2003,
153
+ 286,
154
+ 11666,
155
+ 4430,
156
+ 318,
157
+ 464,
158
+ 2003,
159
+ 286,
160
+ 11666,
161
+ 4430,
162
+ 318,
163
+ 464,
164
+ 2003,
165
+ 286,
166
+ 11666,
167
+ 4430,
168
+ 318,
169
+ 464,
170
+ 2003,
171
+ 286,
172
+ 11666,
173
+ 4430,
174
+ 318,
175
+ 464,
176
+ 2003,
177
+ 286,
178
+ 11666,
179
+ 4430,
180
+ 318,
181
+ 464,
182
+ 2003,
183
+ 286,
184
+ 11666,
185
+ 4430,
186
+ 318,
187
+ 464,
188
+ 2003,
189
+ 286,
190
+ 11666,
191
+ 4430,
192
+ 318,
193
+ 464,
194
+ 2003,
195
+ 286,
196
+ 11666,
197
+ 4430,
198
+ 318,
199
+ 464,
200
+ 2003,
201
+ 286,
202
+ 11666,
203
+ 4430,
204
+ 318,
205
+ 464,
206
+ 2003,
207
+ 286,
208
+ 11666,
209
+ 4430,
210
+ 318,
211
+ 464,
212
+ 2003,
213
+ 286,
214
+ 11666,
215
+ 4430,
216
+ 318,
217
+ 464,
218
+ 2003,
219
+ 286,
220
+ 11666,
221
+ 4430,
222
+ 318,
223
+ 464,
224
+ 2003,
225
+ 286,
226
+ 11666,
227
+ 4430,
228
+ 318,
229
+ 464,
230
+ 2003,
231
+ 286,
232
+ 11666,
233
+ 4430,
234
+ 318,
235
+ 464,
236
+ 2003,
237
+ 286,
238
+ 11666,
239
+ 4430,
240
+ 318,
241
+ 464,
242
+ 2003,
243
+ 286,
244
+ 11666,
245
+ 4430,
246
+ 318,
247
+ 464,
248
+ 2003,
249
+ 286,
250
+ 11666,
251
+ 4430,
252
+ 318,
253
+ 464,
254
+ 2003,
255
+ 286,
256
+ 11666,
257
+ 4430,
258
+ 318,
259
+ 464,
260
+ 2003,
261
+ 286,
262
+ 11666,
263
+ 4430,
264
+ 318,
265
+ 464,
266
+ 2003,
267
+ 286,
268
+ 11666,
269
+ 4430,
270
+ 318,
271
+ 464,
272
+ 2003,
273
+ 286,
274
+ 11666,
275
+ 4430,
276
+ 318,
277
+ 464,
278
+ 2003,
279
+ 286,
280
+ 11666,
281
+ 4430,
282
+ 318,
283
+ 464,
284
+ 2003,
285
+ 286,
286
+ 11666,
287
+ 4430,
288
+ 318,
289
+ 464,
290
+ 2003,
291
+ 286,
292
+ 11666,
293
+ 4430,
294
+ 318,
295
+ 464,
296
+ 2003,
297
+ 286,
298
+ 11666,
299
+ 4430,
300
+ 318,
301
+ 464,
302
+ 2003,
303
+ 286,
304
+ 11666,
305
+ 4430,
306
+ 318,
307
+ 464,
308
+ 2003,
309
+ 286,
310
+ 11666,
311
+ 4430,
312
+ 318,
313
+ 464,
314
+ 2003,
315
+ 286,
316
+ 11666,
317
+ 4430,
318
+ 318,
319
+ 464,
320
+ 2003,
321
+ 286,
322
+ 11666,
323
+ 4430,
324
+ 318,
325
+ 464,
326
+ 2003,
327
+ 286,
328
+ 11666,
329
+ 4430,
330
+ 318,
331
+ 464,
332
+ 2003,
333
+ 286,
334
+ 11666,
335
+ 4430,
336
+ 318,
337
+ 464,
338
+ 2003,
339
+ 286,
340
+ 11666,
341
+ 4430,
342
+ 318,
343
+ 464,
344
+ 2003,
345
+ 286,
346
+ 11666,
347
+ 4430,
348
+ 318,
349
+ 464,
350
+ 2003,
351
+ 286,
352
+ 11666,
353
+ 4430,
354
+ 318,
355
+ 464,
356
+ 2003,
357
+ 286,
358
+ 11666,
359
+ 4430,
360
+ 318,
361
+ 464,
362
+ 2003,
363
+ 286,
364
+ 11666,
365
+ 4430,
366
+ 318,
367
+ 464,
368
+ 2003,
369
+ 286,
370
+ 11666,
371
+ 4430,
372
+ 318,
373
+ 464,
374
+ 2003,
375
+ 286,
376
+ 11666,
377
+ 4430,
378
+ 318,
379
+ 464,
380
+ 2003,
381
+ 286,
382
+ 11666,
383
+ 4430,
384
+ 318,
385
+ 464,
386
+ 2003,
387
+ 286,
388
+ 11666,
389
+ 4430,
390
+ 318,
391
+ 464,
392
+ 2003,
393
+ 286,
394
+ 11666,
395
+ 4430,
396
+ 318,
397
+ 464,
398
+ 2003,
399
+ 286,
400
+ 11666,
401
+ 4430,
402
+ 318,
403
+ 464,
404
+ 2003,
405
+ 286,
406
+ 11666,
407
+ 4430,
408
+ 318,
409
+ 464,
410
+ 2003,
411
+ 286,
412
+ 11666,
413
+ 4430,
414
+ 318,
415
+ 464,
416
+ 2003,
417
+ 286,
418
+ 11666,
419
+ 4430,
420
+ 318,
421
+ 464,
422
+ 2003,
423
+ 286,
424
+ 11666,
425
+ 4430,
426
+ 318,
427
+ 464,
428
+ 2003,
429
+ 286,
430
+ 11666,
431
+ 4430,
432
+ 318,
433
+ 464,
434
+ 2003,
435
+ 286,
436
+ 11666,
437
+ 4430,
438
+ 318,
439
+ 464,
440
+ 2003,
441
+ 286,
442
+ 11666,
443
+ 4430,
444
+ 318,
445
+ 464,
446
+ 2003,
447
+ 286,
448
+ 11666,
449
+ 4430,
450
+ 318,
451
+ 464,
452
+ 2003,
453
+ 286,
454
+ 11666,
455
+ 4430,
456
+ 318,
457
+ 464,
458
+ 2003,
459
+ 286,
460
+ 11666,
461
+ 4430,
462
+ 318,
463
+ 464,
464
+ 2003,
465
+ 286,
466
+ 11666,
467
+ 4430,
468
+ 318,
469
+ 464,
470
+ 2003,
471
+ 286,
472
+ 11666,
473
+ 4430,
474
+ 318,
475
+ 464,
476
+ 2003,
477
+ 286,
478
+ 11666,
479
+ 4430,
480
+ 318,
481
+ 464,
482
+ 2003,
483
+ 286,
484
+ 11666,
485
+ 4430,
486
+ 318,
487
+ 464,
488
+ 2003,
489
+ 286,
490
+ 11666,
491
+ 4430,
492
+ 318,
493
+ 464,
494
+ 2003,
495
+ 286,
496
+ 11666,
497
+ 4430,
498
+ 318,
499
+ 464,
500
+ 2003,
501
+ 286,
502
+ 11666,
503
+ 4430,
504
+ 318,
505
+ 464,
506
+ 2003,
507
+ 286,
508
+ 11666,
509
+ 4430,
510
+ 318,
511
+ 464,
512
+ 2003,
513
+ 286,
514
+ 11666,
515
+ 4430,
516
+ 318,
517
+ 464,
518
+ 2003,
519
+ 286,
520
+ 11666,
521
+ 4430,
522
+ 318,
523
+ 464,
524
+ 2003,
525
+ 286,
526
+ 11666,
527
+ 4430,
528
+ 318,
529
+ 464,
530
+ 2003,
531
+ 286,
532
+ 11666,
533
+ 4430,
534
+ 318,
535
+ 464,
536
+ 2003,
537
+ 286,
538
+ 11666,
539
+ 4430,
540
+ 318,
541
+ 464,
542
+ 2003,
543
+ 286,
544
+ 11666,
545
+ 4430,
546
+ 318,
547
+ 464,
548
+ 2003,
549
+ 286,
550
+ 11666,
551
+ 4430,
552
+ 318,
553
+ 464,
554
+ 2003,
555
+ 286,
556
+ 11666,
557
+ 4430,
558
+ 318,
559
+ 464,
560
+ 2003,
561
+ 286,
562
+ 11666,
563
+ 4430,
564
+ 318,
565
+ 464,
566
+ 2003,
567
+ 286,
568
+ 11666,
569
+ 4430,
570
+ 318,
571
+ 464,
572
+ 2003,
573
+ 286,
574
+ 11666,
575
+ 4430,
576
+ 318,
577
+ 464,
578
+ 2003,
579
+ 286,
580
+ 11666,
581
+ 4430,
582
+ 318,
583
+ 464,
584
+ 2003,
585
+ 286,
586
+ 11666,
587
+ 4430,
588
+ 318,
589
+ 464,
590
+ 2003,
591
+ 286,
592
+ 11666,
593
+ 4430,
594
+ 318,
595
+ 464,
596
+ 2003,
597
+ 286,
598
+ 11666,
599
+ 4430,
600
+ 318,
601
+ 464,
602
+ 2003,
603
+ 286,
604
+ 11666,
605
+ 4430,
606
+ 318,
607
+ 464,
608
+ 2003,
609
+ 286,
610
+ 11666,
611
+ 4430,
612
+ 318,
613
+ 464,
614
+ 2003,
615
+ 286,
616
+ 11666,
617
+ 4430,
618
+ 318,
619
+ 464,
620
+ 2003,
621
+ 286,
622
+ 11666,
623
+ 4430,
624
+ 318,
625
+ 464,
626
+ 2003,
627
+ 286,
628
+ 11666,
629
+ 4430,
630
+ 318,
631
+ 464,
632
+ 2003,
633
+ 286,
634
+ 11666,
635
+ 4430,
636
+ 318,
637
+ 464,
638
+ 2003,
639
+ 286,
640
+ 11666,
641
+ 4430,
642
+ 318,
643
+ 464,
644
+ 2003,
645
+ 286,
646
+ 11666,
647
+ 4430,
648
+ 318,
649
+ 464,
650
+ 2003,
651
+ 286,
652
+ 11666,
653
+ 4430,
654
+ 318,
655
+ 464,
656
+ 2003,
657
+ 286,
658
+ 11666,
659
+ 4430,
660
+ 318
661
+ ],
662
+ "greedyTokens": [
663
+ 464,
664
+ 2003,
665
+ 286,
666
+ 11666,
667
+ 4430,
668
+ 318,
669
+ 464,
670
+ 2003,
671
+ 286,
672
+ 11666,
673
+ 4430,
674
+ 318,
675
+ 464,
676
+ 2003,
677
+ 286,
678
+ 11666,
679
+ 4430,
680
+ 318,
681
+ 464,
682
+ 2003,
683
+ 286,
684
+ 11666,
685
+ 4430,
686
+ 318,
687
+ 464,
688
+ 2003,
689
+ 286,
690
+ 11666,
691
+ 4430,
692
+ 318,
693
+ 464,
694
+ 2003,
695
+ 286,
696
+ 11666,
697
+ 4430,
698
+ 318,
699
+ 464,
700
+ 2003,
701
+ 286,
702
+ 11666,
703
+ 4430,
704
+ 318,
705
+ 464,
706
+ 2003,
707
+ 286,
708
+ 11666,
709
+ 4430,
710
+ 318,
711
+ 464,
712
+ 2003,
713
+ 286,
714
+ 11666,
715
+ 4430,
716
+ 318,
717
+ 464,
718
+ 2003,
719
+ 286,
720
+ 11666,
721
+ 4430,
722
+ 318,
723
+ 464,
724
+ 2003,
725
+ 286,
726
+ 11666
727
+ ],
728
+ "greedyText": "The future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial intelligence isThe future of artificial",
729
+ "forcedTokens": [
730
+ 464,
731
+ 2003,
732
+ 286,
733
+ 11666,
734
+ 4430,
735
+ 318,
736
+ 464,
737
+ 2003,
738
+ 286,
739
+ 11666,
740
+ 4430,
741
+ 318,
742
+ 464,
743
+ 2003,
744
+ 286,
745
+ 11666,
746
+ 4430,
747
+ 318,
748
+ 464,
749
+ 2003,
750
+ 286,
751
+ 11666,
752
+ 4430,
753
+ 318,
754
+ 464,
755
+ 2003,
756
+ 286,
757
+ 11666,
758
+ 4430,
759
+ 318,
760
+ 464,
761
+ 2003,
762
+ 286,
763
+ 11666,
764
+ 4430,
765
+ 318,
766
+ 464,
767
+ 2003,
768
+ 286,
769
+ 11666,
770
+ 4430,
771
+ 318,
772
+ 464,
773
+ 2003,
774
+ 286,
775
+ 11666,
776
+ 4430,
777
+ 318,
778
+ 464,
779
+ 2003,
780
+ 286,
781
+ 11666,
782
+ 4430,
783
+ 318,
784
+ 464,
785
+ 2003,
786
+ 286,
787
+ 11666,
788
+ 4430,
789
+ 318,
790
+ 464,
791
+ 2003,
792
+ 286,
793
+ 11666
794
+ ],
795
+ "forcedLogits": {
796
+ "file": "forced-logits.f32",
797
+ "dtype": "float32-le",
798
+ "rows": 64,
799
+ "vocab": 50257,
800
+ "sha256": "d9a94d85c13236c1174235c7ddec59b5bdc423cf143a98eee217e9241618c718",
801
+ "rowMeaning": "row r = logits after prompt + forcedTokens[:r]"
802
+ },
803
+ "eagerPortVsReference": {
804
+ "running": {
805
+ "minCosine": 1.0,
806
+ "maxAbs": 0.000702,
807
+ "argmaxEqualRows": 64,
808
+ "rows": 64,
809
+ "withinFloat32Tolerance": true
810
+ },
811
+ "bucketed": {
812
+ "minCosine": 1.0,
813
+ "maxAbs": 0.000702,
814
+ "argmaxEqualRows": 64,
815
+ "rows": 64,
816
+ "withinFloat32Tolerance": true
817
+ }
818
+ },
819
+ "eagerTolerance": {
820
+ "atol": 0.0005,
821
+ "rtol": 1e-05,
822
+ "argmax": "all rows equal"
823
+ },
824
+ "passed": true
825
+ }
verification/qualification.json ADDED
@@ -0,0 +1,172 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema": 1,
3
+ "kind": "v0.0.6-gpt2-port-spike",
4
+ "recordedAt": "2026-11-02T18:03:10.143189+00:00",
5
+ "source": {
6
+ "repository": "openai-community/gpt2",
7
+ "revision": "607a30d783dfa663caf39e06633721c8d4cfcd7e",
8
+ "license": "mit"
9
+ },
10
+ "host": "26B123",
11
+ "scope": "macOS Core AI GPU, bucketed fp16 checkpoint; no iOS qualification or chat template",
12
+ "tests": {
13
+ "weightFreeDecoderMethods": 5,
14
+ "denseExportRegressionMethods": 1,
15
+ "families": [
16
+ "qwen3",
17
+ "olmo2",
18
+ "gpt2"
19
+ ],
20
+ "gpt2TinyCoreAIContracts": [
21
+ "running",
22
+ "bucketed"
23
+ ],
24
+ "swiftReleaseBuild": true
25
+ },
26
+ "numericalPolicy": {
27
+ "eagerFloat32": {
28
+ "atol": 0.0005,
29
+ "rtol": 1e-05,
30
+ "cosineMinimum": 0.999999,
31
+ "exactArgmax": true
32
+ },
33
+ "nativeFP16": {
34
+ "cosineMinimum": 0.995,
35
+ "nearTieMaximumProbabilityMargin": 0.1,
36
+ "nearTieMaximumRank": 5,
37
+ "greedy": "exact, or first divergence is an accepted reference near-tie"
38
+ }
39
+ },
40
+ "modelSHA256": "f04fefaa3a7e69f3e4da783ce1ac5aef7f80e0bc70e441db452ec691e7429316",
41
+ "bundleManifestSHA256": "8a18de4250b763ce1c73a3f7507a1492d8cb4e80ec474fc2d28e71dd7b26f63a",
42
+ "cases": {
43
+ "short": {
44
+ "promptTokens": 6,
45
+ "referenceSHA256": "312416b991eb5594a908ba70a5d728ccdf9049ca2e59a74272f37954dda5a4e6",
46
+ "nativeSHA256": "72144ef967712b3f56173cf0cddb87282a80f19a56e9acd25b87da927cc7a97f",
47
+ "forcedLogitsSHA256": "6c8bd0baa4956eddcc32071e9444fadcf9ab0eaaa9c7573c71feca70279f6d6e",
48
+ "eagerPortVsReference": {
49
+ "running": {
50
+ "minCosine": 1.0,
51
+ "maxAbs": 0.000702,
52
+ "argmaxEqualRows": 64,
53
+ "rows": 64,
54
+ "withinFloat32Tolerance": true
55
+ },
56
+ "bucketed": {
57
+ "minCosine": 1.0,
58
+ "maxAbs": 0.000702,
59
+ "argmaxEqualRows": 64,
60
+ "rows": 64,
61
+ "withinFloat32Tolerance": true
62
+ }
63
+ },
64
+ "native": {
65
+ "acceptedNearTies": 1,
66
+ "allocatedCapacity": 256,
67
+ "argmaxMismatches": 1,
68
+ "device": "h17c",
69
+ "forcedRows": 64,
70
+ "greedyDivergenceAccepted": true,
71
+ "greedyFirstDivergence": 40,
72
+ "greedyIdentical": false,
73
+ "maximumAbs": 0.7048187255859375,
74
+ "minimumCosine": 0.9998206464140388,
75
+ "modelReloads": 0,
76
+ "modelSHA256": "f04fefaa3a7e69f3e4da783ce1ac5aef7f80e0bc70e441db452ec691e7429316",
77
+ "passed": true,
78
+ "sourceRepository": "openai-community/gpt2",
79
+ "sourceRevision": "607a30d783dfa663caf39e06633721c8d4cfcd7e"
80
+ },
81
+ "referencePassed": true,
82
+ "greedyDivergence": {
83
+ "index": 40,
84
+ "referenceToken": 1537,
85
+ "nativeToken": 1135,
86
+ "nativeRank": 2,
87
+ "referenceProbabilityMargin": 0.0013895525247938454
88
+ }
89
+ },
90
+ "long": {
91
+ "promptTokens": 600,
92
+ "referenceSHA256": "575b99e708fc533032e28017d4cf32243b287c81e31fde771a1a7eab002017d7",
93
+ "nativeSHA256": "1f65094b84f602a7ff777f9969a4b96a614cce5cf5fb4fabaf4fca99fa67fcdd",
94
+ "forcedLogitsSHA256": "d9a94d85c13236c1174235c7ddec59b5bdc423cf143a98eee217e9241618c718",
95
+ "eagerPortVsReference": {
96
+ "running": {
97
+ "minCosine": 1.0,
98
+ "maxAbs": 0.000702,
99
+ "argmaxEqualRows": 64,
100
+ "rows": 64,
101
+ "withinFloat32Tolerance": true
102
+ },
103
+ "bucketed": {
104
+ "minCosine": 1.0,
105
+ "maxAbs": 0.000702,
106
+ "argmaxEqualRows": 64,
107
+ "rows": 64,
108
+ "withinFloat32Tolerance": true
109
+ }
110
+ },
111
+ "native": {
112
+ "acceptedNearTies": 0,
113
+ "allocatedCapacity": 768,
114
+ "argmaxMismatches": 0,
115
+ "device": "h17c",
116
+ "forcedRows": 64,
117
+ "greedyDivergenceAccepted": true,
118
+ "greedyIdentical": true,
119
+ "maximumAbs": 0.235992431640625,
120
+ "minimumCosine": 0.9999999617363302,
121
+ "modelReloads": 0,
122
+ "modelSHA256": "f04fefaa3a7e69f3e4da783ce1ac5aef7f80e0bc70e441db452ec691e7429316",
123
+ "passed": true,
124
+ "sourceRepository": "openai-community/gpt2",
125
+ "sourceRevision": "607a30d783dfa663caf39e06633721c8d4cfcd7e"
126
+ },
127
+ "referencePassed": true
128
+ }
129
+ },
130
+ "sourceFilesSHA256": {
131
+ "Forge/language/dense_decode.py": "1d8156015a4d8d4f57db114d67f3cd447b9b08a95d01986eeb8dacd599375e17",
132
+ "Forge/language/dense_families.py": "0412802eb1291352f2883bd9977adf2c616da108faf85c847ecea02a747e46fd",
133
+ "Forge/language/export_dense.py": "dc6f22fef2248791fc19431e135b68043b7c90dd8128dbed35a93780b644407b",
134
+ "Forge/language/export_gpt2.py": "cca87df8eb4050ecf8777ea2dc21a4e9441c0186663122677c5e293a0c924b49",
135
+ "Forge/language/export_granite_hybrid.py": "40e62b7f3f49ceaadfd6e0f0a59dfe0f437a5a016d02050c67eaefedb934fd04",
136
+ "Forge/language/export_olmo2.py": "6a85fc26702429c4d1cd1ac914e0ec847727984d4b9a1f800cb1fdbc3021c408",
137
+ "Forge/language/export_qwen3.py": "a314c09e89e6756dce1771693d47f2113911c6f2423cb5b76d566e8fb6446826",
138
+ "Forge/language/export_qwen3_vl_text.py": "6d06a39b2ed0b5eae5e24eb89db1d3ca28960da52805af76b7cf27d3dd2ebbf7",
139
+ "Forge/language/export_qwen3_vl_vision.py": "60149b5dfa0d2a971e0af834fc13a15957c957c72e95eaf172c6f31218e5828e",
140
+ "Forge/language/gpt2_decode.py": "360dade178dfac5bdef03efbdc800cfc9fc7fab1e249684cb5c8fffb1cb77f34",
141
+ "Forge/language/granite_hybrid.py": "afb235e8926d04e410f746ef7bd4ee0a97d5c135e5f472abf342912ded9c7330",
142
+ "Forge/language/olmo2_decode.py": "4f3ad03d399f8c095f7570a3b3c54f78d5f701fb9faa5200cadca5083ef752a1",
143
+ "Forge/language/probe_function_weights.py": "f06ec7b4ffd753d43c0111f6eeb91a0074de621632de00eac8683aae5beefc91",
144
+ "Forge/language/qwen3_decode.py": "43aee7983389fad450f6541e1c5ad9a37a086c4cab4015ef0888da36c07be527",
145
+ "Forge/language/qwen3_vl_divergence_margin.py": "4831dcab1b83c454efb730c2cb070ae8bcbcac8d3578a1995550b38b49b93da8",
146
+ "Forge/language/qwen3_vl_text.py": "69179d9e4397f81e81358c453a2e7d036ba1873f7b4042cf8d484909d9399986",
147
+ "Forge/language/qwen3_vl_vision.py": "dc5c594ff913009990a1dc014ae90f5bdb736c87176275c8eb6b524150908079",
148
+ "Forge/language/record_evidence.py": "bb1b30030da2ea0e1e4c8115c9b3edf96c9dadc4d74e6941227a2bd7d230299b",
149
+ "Forge/language/record_vision_evidence.py": "5b18c6c34a6e3de4834aed45a1d46a97f4d92695b28116e909e2b1f8f0ce3aa2",
150
+ "Forge/language/record_vl_evidence.py": "bc82ba4f5be871ba217d449a4e441368214c3b3250be295f7b910ccab2f5e34e",
151
+ "Forge/language/reference_chat_tokens.py": "c9d4f556d2c8afa887b88a147650e717d192edb3eca5046ea181020bdb49c394",
152
+ "Forge/language/reference_dense.py": "778aab3f04fe0c02babf738f44c609f0c2964ba6408eaf64caf4f585af77921b",
153
+ "Forge/language/reference_gpt2.py": "80e85fcf20bedd31945ce234884587f3dd90ca9c1320d83f8390885e3ca5c36e",
154
+ "Forge/language/reference_granite_hybrid.py": "7771ba220d0db36251012cdadefbe71f1841f93a19eb17ec620863c4f2244561",
155
+ "Forge/language/reference_olmo2.py": "cf105c1be1ccda1f715af9fe774be9b199f6ffdfe99f4e8ad2aba1e8990bee0b",
156
+ "Forge/language/reference_olmo2_tokens.py": "3e9a5b4b8ebeefec822defc2f45c1c93e886b3a6d8e0c9b97df666066ee994ef",
157
+ "Forge/language/reference_qwen3.py": "b7cee7de6ec99139bc036b1bf5e1739624c49c10777ac98a95a3d6a59091cf06",
158
+ "Forge/language/reference_qwen3_vl.py": "ce4c219d071e5c9b12c7c3b54fe9936cdab0835358669854a01569b0c81c39d3",
159
+ "Forge/language/reference_qwen3_vl_text.py": "cb3a68b1143d7c383cf6e5da4ef563e7063af8f8908aa323e5d27e0288e766e9",
160
+ "Forge/language/reference_qwen3_vl_vision.py": "ee4d08ea94a6da2f96970a3b18a2cb3635bceb68af05e99d56449147c2783f98",
161
+ "Forge/language/reference_sampling.py": "af349bcb14a275536920e158f9ee5d0d946b8e2d6d167e1f57028bb71e25d751",
162
+ "Forge/language/register_dense_bundle.py": "5a5ae88499d67b37ff60577c1a00752545df2896341b0521f3191142e4f9e4ec",
163
+ "Forge/language/register_qwen3_bundle.py": "adc9096b79adbcde3a539471587e000f87c86148e3ad82e2ec8605933f4242f3",
164
+ "Forge/language/register_qwen3_vl_bundle.py": "f6a3f21dd1ccaf37b0b7247a3cf048eda24fab40c791da3eed4e240d4d492c95",
165
+ "Forge/language/stage_device_assets.py": "eee5b22bb1199f94a276ae257cdb14543f737fcd591cde327b99ed23c8210c46",
166
+ "Forge/language/test_dense_decode.py": "ffa39f194d87c30aee88c1c36ba5911382cc0a7cd85f1f0c2bb6159878c3dc9b",
167
+ "Forge/language/test_dense_export.py": "575325a9278fe67a5a218e20d60742156cd0ce3849e66eb4e07fc6b7d9975ff7",
168
+ "Forge/language/test_gpt2_decode.py": "333f6b9fcef19a9047037e50099e6657447308888da22471846144963c8fd583",
169
+ "Forge/language/write_alpha_fixtures.py": "353df55bc464bda4cdd5e01f6af28b1ae7507380d0bf986a98c4e27c28f41f23"
170
+ },
171
+ "passed": true
172
+ }
verification/short-native.json ADDED
@@ -0,0 +1,84 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "acceptedNearTies" : 1,
3
+ "allocatedCapacity" : 256,
4
+ "argmaxMismatches" : 1,
5
+ "device" : "h17c",
6
+ "forcedRows" : 64,
7
+ "greedyDivergenceAccepted" : true,
8
+ "greedyFirstDivergence" : 40,
9
+ "greedyIdentical" : false,
10
+ "greedyTokens" : [
11
+ 8627,
12
+ 13,
13
+ 198,
14
+ 198,
15
+ 1,
16
+ 1135,
17
+ 821,
18
+ 407,
19
+ 1654,
20
+ 644,
21
+ 262,
22
+ 2003,
23
+ 481,
24
+ 804,
25
+ 588,
26
+ 553,
27
+ 531,
28
+ 1583,
29
+ 13,
30
+ 3899,
31
+ 311,
32
+ 13,
33
+ 3059,
34
+ 6571,
35
+ 16265,
36
+ 11,
37
+ 257,
38
+ 6240,
39
+ 286,
40
+ 3644,
41
+ 3783,
42
+ 379,
43
+ 262,
44
+ 2059,
45
+ 286,
46
+ 3442,
47
+ 11,
48
+ 14727,
49
+ 13,
50
+ 366,
51
+ 1135,
52
+ 821,
53
+ 407,
54
+ 1654,
55
+ 644,
56
+ 262,
57
+ 2003,
58
+ 481,
59
+ 804,
60
+ 588,
61
+ 329,
62
+ 262,
63
+ 1306,
64
+ 838,
65
+ 812,
66
+ 526,
67
+ 198,
68
+ 198,
69
+ 464,
70
+ 2003,
71
+ 286,
72
+ 11666,
73
+ 4430,
74
+ 318
75
+ ],
76
+ "maximumAbs" : 0.7048187255859375,
77
+ "minimumCosine" : 0.9998206464140388,
78
+ "modelReloads" : 0,
79
+ "modelSHA256" : "f04fefaa3a7e69f3e4da783ce1ac5aef7f80e0bc70e441db452ec691e7429316",
80
+ "passed" : true,
81
+ "sourceRepository" : "openai-community/gpt2",
82
+ "sourceRevision" : "607a30d783dfa663caf39e06633721c8d4cfcd7e",
83
+ "text" : " uncertain.\n\n\"We're not sure what the future will look like,\" said Dr. Michael S. Schoenfeld, a professor of computer science at the University of California, Berkeley. \"We're not sure what the future will look like for the next 10 years.\"\n\nThe future of artificial intelligence is"
84
+ }
verification/short-reference.json ADDED
@@ -0,0 +1,231 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema": 1,
3
+ "kind": "gpt2-cpu-reference",
4
+ "oracle": "transformers AutoModelForCausalLM, float32, CPU",
5
+ "source": {
6
+ "repository": "openai-community/gpt2",
7
+ "revision": "607a30d783dfa663caf39e06633721c8d4cfcd7e",
8
+ "license": "mit"
9
+ },
10
+ "versions": {
11
+ "torch": "2.11.0",
12
+ "transformers": "4.57.3"
13
+ },
14
+ "scriptSHA256": {
15
+ "dense_decode.py": "1d8156015a4d8d4f57db114d67f3cd447b9b08a95d01986eeb8dacd599375e17",
16
+ "dense_families.py": "0412802eb1291352f2883bd9977adf2c616da108faf85c847ecea02a747e46fd",
17
+ "export_dense.py": "dc6f22fef2248791fc19431e135b68043b7c90dd8128dbed35a93780b644407b",
18
+ "export_gpt2.py": "cca87df8eb4050ecf8777ea2dc21a4e9441c0186663122677c5e293a0c924b49",
19
+ "export_granite_hybrid.py": "40e62b7f3f49ceaadfd6e0f0a59dfe0f437a5a016d02050c67eaefedb934fd04",
20
+ "export_olmo2.py": "6a85fc26702429c4d1cd1ac914e0ec847727984d4b9a1f800cb1fdbc3021c408",
21
+ "export_qwen3.py": "a314c09e89e6756dce1771693d47f2113911c6f2423cb5b76d566e8fb6446826",
22
+ "export_qwen3_vl_text.py": "6d06a39b2ed0b5eae5e24eb89db1d3ca28960da52805af76b7cf27d3dd2ebbf7",
23
+ "export_qwen3_vl_vision.py": "60149b5dfa0d2a971e0af834fc13a15957c957c72e95eaf172c6f31218e5828e",
24
+ "gpt2_decode.py": "360dade178dfac5bdef03efbdc800cfc9fc7fab1e249684cb5c8fffb1cb77f34",
25
+ "granite_hybrid.py": "afb235e8926d04e410f746ef7bd4ee0a97d5c135e5f472abf342912ded9c7330",
26
+ "olmo2_decode.py": "4f3ad03d399f8c095f7570a3b3c54f78d5f701fb9faa5200cadca5083ef752a1",
27
+ "probe_function_weights.py": "f06ec7b4ffd753d43c0111f6eeb91a0074de621632de00eac8683aae5beefc91",
28
+ "qwen3_decode.py": "43aee7983389fad450f6541e1c5ad9a37a086c4cab4015ef0888da36c07be527",
29
+ "qwen3_vl_divergence_margin.py": "4831dcab1b83c454efb730c2cb070ae8bcbcac8d3578a1995550b38b49b93da8",
30
+ "qwen3_vl_text.py": "69179d9e4397f81e81358c453a2e7d036ba1873f7b4042cf8d484909d9399986",
31
+ "qwen3_vl_vision.py": "dc5c594ff913009990a1dc014ae90f5bdb736c87176275c8eb6b524150908079",
32
+ "record_evidence.py": "bb1b30030da2ea0e1e4c8115c9b3edf96c9dadc4d74e6941227a2bd7d230299b",
33
+ "record_vision_evidence.py": "5b18c6c34a6e3de4834aed45a1d46a97f4d92695b28116e909e2b1f8f0ce3aa2",
34
+ "record_vl_evidence.py": "bc82ba4f5be871ba217d449a4e441368214c3b3250be295f7b910ccab2f5e34e",
35
+ "reference_chat_tokens.py": "c9d4f556d2c8afa887b88a147650e717d192edb3eca5046ea181020bdb49c394",
36
+ "reference_dense.py": "778aab3f04fe0c02babf738f44c609f0c2964ba6408eaf64caf4f585af77921b",
37
+ "reference_gpt2.py": "80e85fcf20bedd31945ce234884587f3dd90ca9c1320d83f8390885e3ca5c36e",
38
+ "reference_granite_hybrid.py": "7771ba220d0db36251012cdadefbe71f1841f93a19eb17ec620863c4f2244561",
39
+ "reference_olmo2.py": "cf105c1be1ccda1f715af9fe774be9b199f6ffdfe99f4e8ad2aba1e8990bee0b",
40
+ "reference_olmo2_tokens.py": "3e9a5b4b8ebeefec822defc2f45c1c93e886b3a6d8e0c9b97df666066ee994ef",
41
+ "reference_qwen3.py": "b7cee7de6ec99139bc036b1bf5e1739624c49c10777ac98a95a3d6a59091cf06",
42
+ "reference_qwen3_vl.py": "ce4c219d071e5c9b12c7c3b54fe9936cdab0835358669854a01569b0c81c39d3",
43
+ "reference_qwen3_vl_text.py": "cb3a68b1143d7c383cf6e5da4ef563e7063af8f8908aa323e5d27e0288e766e9",
44
+ "reference_qwen3_vl_vision.py": "ee4d08ea94a6da2f96970a3b18a2cb3635bceb68af05e99d56449147c2783f98",
45
+ "reference_sampling.py": "af349bcb14a275536920e158f9ee5d0d946b8e2d6d167e1f57028bb71e25d751",
46
+ "register_dense_bundle.py": "5a5ae88499d67b37ff60577c1a00752545df2896341b0521f3191142e4f9e4ec",
47
+ "register_qwen3_bundle.py": "adc9096b79adbcde3a539471587e000f87c86148e3ad82e2ec8605933f4242f3",
48
+ "register_qwen3_vl_bundle.py": "f6a3f21dd1ccaf37b0b7247a3cf048eda24fab40c791da3eed4e240d4d492c95",
49
+ "stage_device_assets.py": "eee5b22bb1199f94a276ae257cdb14543f737fcd591cde327b99ed23c8210c46",
50
+ "test_dense_decode.py": "ffa39f194d87c30aee88c1c36ba5911382cc0a7cd85f1f0c2bb6159878c3dc9b",
51
+ "test_dense_export.py": "575325a9278fe67a5a218e20d60742156cd0ce3849e66eb4e07fc6b7d9975ff7",
52
+ "test_gpt2_decode.py": "333f6b9fcef19a9047037e50099e6657447308888da22471846144963c8fd583",
53
+ "write_alpha_fixtures.py": "353df55bc464bda4cdd5e01f6af28b1ae7507380d0bf986a98c4e27c28f41f23"
54
+ },
55
+ "checkpointSHA256": {
56
+ "model.safetensors": "248dfc3911869ec493c76e65bf2fcf7f615828b0254c12b473182f0f81d3a707"
57
+ },
58
+ "prompt": "The future of artificial intelligence is",
59
+ "promptStyle": "completion",
60
+ "promptTokens": [
61
+ 464,
62
+ 2003,
63
+ 286,
64
+ 11666,
65
+ 4430,
66
+ 318
67
+ ],
68
+ "greedyTokens": [
69
+ 8627,
70
+ 13,
71
+ 198,
72
+ 198,
73
+ 1,
74
+ 1135,
75
+ 821,
76
+ 407,
77
+ 1654,
78
+ 644,
79
+ 262,
80
+ 2003,
81
+ 481,
82
+ 804,
83
+ 588,
84
+ 553,
85
+ 531,
86
+ 1583,
87
+ 13,
88
+ 3899,
89
+ 311,
90
+ 13,
91
+ 3059,
92
+ 6571,
93
+ 16265,
94
+ 11,
95
+ 257,
96
+ 6240,
97
+ 286,
98
+ 3644,
99
+ 3783,
100
+ 379,
101
+ 262,
102
+ 2059,
103
+ 286,
104
+ 3442,
105
+ 11,
106
+ 14727,
107
+ 13,
108
+ 366,
109
+ 1537,
110
+ 356,
111
+ 821,
112
+ 407,
113
+ 1654,
114
+ 644,
115
+ 262,
116
+ 2003,
117
+ 481,
118
+ 804,
119
+ 588,
120
+ 329,
121
+ 11666,
122
+ 4430,
123
+ 526,
124
+ 198,
125
+ 198,
126
+ 464,
127
+ 2003,
128
+ 286,
129
+ 11666,
130
+ 4430,
131
+ 318,
132
+ 8627
133
+ ],
134
+ "greedyText": " uncertain.\n\n\"We're not sure what the future will look like,\" said Dr. Michael S. Schoenfeld, a professor of computer science at the University of California, Berkeley. \"But we're not sure what the future will look like for artificial intelligence.\"\n\nThe future of artificial intelligence is uncertain",
135
+ "forcedTokens": [
136
+ 8627,
137
+ 13,
138
+ 198,
139
+ 198,
140
+ 1,
141
+ 1135,
142
+ 821,
143
+ 407,
144
+ 1654,
145
+ 644,
146
+ 262,
147
+ 2003,
148
+ 481,
149
+ 804,
150
+ 588,
151
+ 553,
152
+ 531,
153
+ 1583,
154
+ 13,
155
+ 3899,
156
+ 311,
157
+ 13,
158
+ 3059,
159
+ 6571,
160
+ 16265,
161
+ 11,
162
+ 257,
163
+ 6240,
164
+ 286,
165
+ 3644,
166
+ 3783,
167
+ 379,
168
+ 262,
169
+ 2059,
170
+ 286,
171
+ 3442,
172
+ 11,
173
+ 14727,
174
+ 13,
175
+ 366,
176
+ 1537,
177
+ 356,
178
+ 821,
179
+ 407,
180
+ 1654,
181
+ 644,
182
+ 262,
183
+ 2003,
184
+ 481,
185
+ 804,
186
+ 588,
187
+ 329,
188
+ 11666,
189
+ 4430,
190
+ 526,
191
+ 198,
192
+ 198,
193
+ 464,
194
+ 2003,
195
+ 286,
196
+ 11666,
197
+ 4430,
198
+ 318,
199
+ 8627
200
+ ],
201
+ "forcedLogits": {
202
+ "file": "forced-logits.f32",
203
+ "dtype": "float32-le",
204
+ "rows": 64,
205
+ "vocab": 50257,
206
+ "sha256": "6c8bd0baa4956eddcc32071e9444fadcf9ab0eaaa9c7573c71feca70279f6d6e",
207
+ "rowMeaning": "row r = logits after prompt + forcedTokens[:r]"
208
+ },
209
+ "eagerPortVsReference": {
210
+ "running": {
211
+ "minCosine": 1.0,
212
+ "maxAbs": 0.000702,
213
+ "argmaxEqualRows": 64,
214
+ "rows": 64,
215
+ "withinFloat32Tolerance": true
216
+ },
217
+ "bucketed": {
218
+ "minCosine": 1.0,
219
+ "maxAbs": 0.000702,
220
+ "argmaxEqualRows": 64,
221
+ "rows": 64,
222
+ "withinFloat32Tolerance": true
223
+ }
224
+ },
225
+ "eagerTolerance": {
226
+ "atol": 0.0005,
227
+ "rtol": 1e-05,
228
+ "argmax": "all rows equal"
229
+ },
230
+ "passed": true
231
+ }