Text-to-Image
MLX
MiniMax H3
Safetensors
English
apple-silicon
macos
image-to-image
image-editing
image-generation
Instructions to use devin-lai/MiniMax-H3-Image-mlx with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use devin-lai/MiniMax-H3-Image-mlx with MLX:
# Download the model from the Hub pip install huggingface_hub[hf_xet] hf download devin-lai/MiniMax-H3-Image-mlx --local-dir MiniMax-H3-Image-mlx
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Atomic Chat
Release v0.4.0: selective MLX model downloads
Browse filesThis view is limited to 50 files because it contains too many changes. See raw diff
- .gitignore +14 -0
- BENCHMARKS.md +47 -0
- LICENSE +201 -0
- LICENSE-model +84 -0
- LICENSE-text-encoder +84 -0
- MODEL_INDEX.md +51 -0
- NOTICE +15 -0
- README.md +156 -0
- README.zh-CN.md +38 -0
- RELEASE.md +47 -0
- USAGE.md +102 -0
- comparisons/README.md +32 -0
- comparisons/cuda-reference/native-4k.json +63 -0
- comparisons/cuda-reference/portrait.json +63 -0
- comparisons/cuda-reference/product.json +63 -0
- comparisons/edit-example/record.json +120 -0
- comparisons/native-4k-cuda/metrics.json +75 -0
- comparisons/optimization-r3-compact/edit/qk-fc2-native-norm/metrics.json +85 -0
- comparisons/optimization-r3-compact/holdout-detail/qk-fc2-native-norm/metrics.json +85 -0
- comparisons/optimization-r3-compact/portrait/qk-fc2-native-norm/metrics.json +85 -0
- comparisons/optimization-r3-compact/product/qk-fc2-native-norm/metrics.json +85 -0
- comparisons/optimization-r3-deployment/edit/qk-fc2/metrics.json +85 -0
- comparisons/optimization-r3-deployment/holdout-detail/qk-fc2/metrics.json +85 -0
- comparisons/optimization-r3-deployment/portrait/qk-fc2/metrics.json +85 -0
- comparisons/optimization-r3-deployment/product/qk-fc2/metrics.json +85 -0
- comparisons/optimization-r3-qk/edit/qk-fc2-native-norm/metrics.json +85 -0
- comparisons/optimization-r3-qk/holdout-detail/qk-fc2-native-norm/metrics.json +85 -0
- comparisons/optimization-r3-qk/portrait/qk-fc2-native-norm/metrics.json +85 -0
- comparisons/optimization-r3-qk/product/qk-fc2-native-norm/metrics.json +85 -0
- comparisons/optimization-r3/edit/qk-fc2/metrics.json +85 -0
- comparisons/optimization-r3/gallery.json +98 -0
- comparisons/optimization-r3/holdout-detail/qk-fc2/metrics.json +85 -0
- comparisons/optimization-r3/portrait/qk-fc2/metrics.json +85 -0
- comparisons/optimization-r3/product/qk-fc2/metrics.json +85 -0
- comparisons/optimization-v2/contiguous-b1-CPU_AND_NE/comparison/metrics.json +76 -0
- comparisons/optimization-v2/contiguous-b1-CPU_AND_NE/image.json +68 -0
- comparisons/optimization-v2/contiguous-b8-CPU_AND_GPU/comparison/metrics.json +76 -0
- comparisons/optimization-v2/contiguous-b8-CPU_AND_GPU/image.json +68 -0
- comparisons/optimization-v2/decoder-all-product/comparison/metrics.json +221 -0
- comparisons/optimization-v2/decoder-all-product/compiled-b4.json +72 -0
- comparisons/optimization-v2/decoder-all-product/compiled-b8.json +72 -0
- comparisons/optimization-v2/decoder-all-product/coreml-ALL.json +73 -0
- comparisons/optimization-v2/decoder-all-product/coreml-CPU_AND_GPU.json +73 -0
- comparisons/optimization-v2/decoder-all-product/coreml-CPU_AND_NE.json +73 -0
- comparisons/optimization-v2/decoder-all-product/coreml-CPU_ONLY.json +73 -0
- comparisons/optimization-v2/decoder-all-product/native-b1.json +71 -0
- comparisons/optimization-v2/decoder-all-product/native-b4.json +71 -0
- comparisons/optimization-v2/decoder-all-product/native-b8.json +71 -0
- comparisons/optimization-v2/decoder-all-product/trials.json +132 -0
- comparisons/optimization-v2/decoder-ane-b1/compiled-b4.json +72 -0
.gitignore
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
.venv/
|
| 2 |
+
.venv-coreml/
|
| 3 |
+
__pycache__/
|
| 4 |
+
.pytest_cache/
|
| 5 |
+
.ruff_cache/
|
| 6 |
+
build/
|
| 7 |
+
dist/
|
| 8 |
+
*.egg-info/
|
| 9 |
+
.DS_Store
|
| 10 |
+
models/
|
| 11 |
+
cache/
|
| 12 |
+
outputs/
|
| 13 |
+
*.metaltrace
|
| 14 |
+
.release/
|
BENCHMARKS.md
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Measurements and their scope
|
| 2 |
+
|
| 3 |
+
These are recorded local measurements, not a comparison with CUDA or a
|
| 4 |
+
promise for another Mac. Test machine: **Apple M5 Pro, 16 GPU cores, 64 GiB,
|
| 5 |
+
macOS 27.0.1, MLX 0.32.4**. The default retains BF16 transformer weights,
|
| 6 |
+
FP32 precision islands, dense attention, all six PDD heads and BF16 VAE
|
| 7 |
+
arithmetic following the inspected source path.
|
| 8 |
+
|
| 9 |
+
| Storage | Paired warm control | Tuned warm latency | Reduction | Maximum sampled parent footprint across four candidate cases |
|
| 10 |
+
|---|---:|---:|---:|---:|
|
| 11 |
+
| Dense BF16 | 65.83 s | 62.49 s | 5.07% | 40.50 GiB |
|
| 12 |
+
| Lossless packed BF16 | 66.42 s | 64.05 s | 3.57% | 32.56 GiB |
|
| 13 |
+
|
| 14 |
+
Latencies are equal-weight geometric means of product and portrait medians,
|
| 15 |
+
three alternating paired repeats per case, 2048 × 2048. Conditioning is cached
|
| 16 |
+
and model weights are resident. Trace and PNG save are included; interpreter
|
| 17 |
+
startup, downloads and external image scoring are excluded. First-load runs
|
| 18 |
+
are retained separately. Each storage mode has its own paired campaign:
|
| 19 |
+
these numbers do not isolate the speed effect of compression.
|
| 20 |
+
|
| 21 |
+
The four quality cases include product, portrait, fine detail and one
|
| 22 |
+
reference-image edit. Within the recorded exact-tuning campaigns, every
|
| 23 |
+
output pixel and saved denoising tensor agrees with its matched control.
|
| 24 |
+
This establishes agreement with the stated MLX reference on these cases,
|
| 25 |
+
not CUDA byte identity, ground-truth image quality or general superiority.
|
| 26 |
+
|
| 27 |
+
Physical footprint is sampled every 100 ms for the parent process and can
|
| 28 |
+
miss short peaks. It includes Metal, excludes compiler XPC services, and is
|
| 29 |
+
different from MLX allocator counters. Do not add overlapping counters. These
|
| 30 |
+
measurements do not establish a minimum supported Mac memory capacity.
|
| 31 |
+
|
| 32 |
+
**Q8/Q4 change images.** Historical trials include lettering and detail drift;
|
| 33 |
+
quantization was sometimes slower at real token counts. No speed claim or
|
| 34 |
+
quality ranking is made for the new downloadable packaging. Fewer-step
|
| 35 |
+
previews and the experimental Core ML/ANE decoder are not model variants in
|
| 36 |
+
this release. ANE decoder artifacts are documented, not promoted as a feature.
|
| 37 |
+
|
| 38 |
+
- [Full exact-tuning report](reports/optimization-r3/RESULTS.md)
|
| 39 |
+
- [Dense receipt and pixel/tensor audit](reports/optimization-r3/qk-deployment/quality-audit.json)
|
| 40 |
+
- [Packed receipt and audit](reports/optimization-r3/compact-deployment/quality-audit.json)
|
| 41 |
+
- [Historical precision and backend comparisons](reports/optimization-v2/RESULTS.md)
|
| 42 |
+
- [Native / Q8 / Q4 image comparison](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/product/stack.png)
|
| 43 |
+
- [Fresh release validation](docs/VALIDATION.md)
|
| 44 |
+
|
| 45 |
+
The provenance files pin upstream sources and record the inspected source
|
| 46 |
+
hashes. Packaging tests and fresh portable-weight inference are reported
|
| 47 |
+
separately from historical performance measurements.
|
LICENSE
ADDED
|
@@ -0,0 +1,201 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
Apache License
|
| 2 |
+
Version 2.0, January 2004
|
| 3 |
+
http://www.apache.org/licenses/
|
| 4 |
+
|
| 5 |
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
| 6 |
+
|
| 7 |
+
1. Definitions.
|
| 8 |
+
|
| 9 |
+
"License" shall mean the terms and conditions for use, reproduction,
|
| 10 |
+
and distribution as defined by Sections 1 through 9 of this document.
|
| 11 |
+
|
| 12 |
+
"Licensor" shall mean the copyright owner or entity authorized by
|
| 13 |
+
the copyright owner that is granting the License.
|
| 14 |
+
|
| 15 |
+
"Legal Entity" shall mean the union of the acting entity and all
|
| 16 |
+
other entities that control, are controlled by, or are under common
|
| 17 |
+
control with that entity. For the purposes of this definition,
|
| 18 |
+
"control" means (i) the power, direct or indirect, to cause the
|
| 19 |
+
direction or management of such entity, whether by contract or
|
| 20 |
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
| 21 |
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
| 22 |
+
|
| 23 |
+
"You" (or "Your") shall mean an individual or Legal Entity
|
| 24 |
+
exercising permissions granted by this License.
|
| 25 |
+
|
| 26 |
+
"Source" form shall mean the preferred form for making modifications,
|
| 27 |
+
including but not limited to software source code, documentation
|
| 28 |
+
source, and configuration files.
|
| 29 |
+
|
| 30 |
+
"Object" form shall mean any form resulting from mechanical
|
| 31 |
+
transformation or translation of a Source form, including but
|
| 32 |
+
not limited to compiled object code, generated documentation,
|
| 33 |
+
and conversions to other media types.
|
| 34 |
+
|
| 35 |
+
"Work" shall mean the work of authorship, whether in Source or
|
| 36 |
+
Object form, made available under the License, as indicated by a
|
| 37 |
+
copyright notice that is included in or attached to the work
|
| 38 |
+
(an example is provided in the Appendix below).
|
| 39 |
+
|
| 40 |
+
"Derivative Works" shall mean any work, whether in Source or Object
|
| 41 |
+
form, that is based on (or derived from) the Work and for which the
|
| 42 |
+
editorial revisions, annotations, elaborations, or other modifications
|
| 43 |
+
represent, as a whole, an original work of authorship. For the purposes
|
| 44 |
+
of this License, Derivative Works shall not include works that remain
|
| 45 |
+
separable from, or merely link (or bind by name) to the interfaces of,
|
| 46 |
+
the Work and Derivative Works thereof.
|
| 47 |
+
|
| 48 |
+
"Contribution" shall mean any work of authorship, including
|
| 49 |
+
the original version of the Work and any modifications or additions
|
| 50 |
+
to that Work or Derivative Works thereof, that is intentionally
|
| 51 |
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
| 52 |
+
or by an individual or Legal Entity authorized to submit on behalf of
|
| 53 |
+
the copyright owner. For the purposes of this definition, "submitted"
|
| 54 |
+
means any form of electronic, verbal, or written communication sent
|
| 55 |
+
to the Licensor or its representatives, including but not limited to
|
| 56 |
+
communication on electronic mailing lists, source code control systems,
|
| 57 |
+
and issue tracking systems that are managed by, or on behalf of, the
|
| 58 |
+
Licensor for the purpose of discussing and improving the Work, but
|
| 59 |
+
excluding communication that is conspicuously marked or otherwise
|
| 60 |
+
designated in writing by the copyright owner as "Not a Contribution."
|
| 61 |
+
|
| 62 |
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
| 63 |
+
on behalf of whom a Contribution has been received by Licensor and
|
| 64 |
+
subsequently incorporated within the Work.
|
| 65 |
+
|
| 66 |
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
| 67 |
+
this License, each Contributor hereby grants to You a perpetual,
|
| 68 |
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
| 69 |
+
copyright license to reproduce, prepare Derivative Works of,
|
| 70 |
+
publicly display, publicly perform, sublicense, and distribute the
|
| 71 |
+
Work and such Derivative Works in Source or Object form.
|
| 72 |
+
|
| 73 |
+
3. Grant of Patent License. Subject to the terms and conditions of
|
| 74 |
+
this License, each Contributor hereby grants to You a perpetual,
|
| 75 |
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
| 76 |
+
(except as stated in this section) patent license to make, have made,
|
| 77 |
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
| 78 |
+
where such license applies only to those patent claims licensable
|
| 79 |
+
by such Contributor that are necessarily infringed by their
|
| 80 |
+
Contribution(s) alone or by combination of their Contribution(s)
|
| 81 |
+
with the Work to which such Contribution(s) was submitted. If You
|
| 82 |
+
institute patent litigation against any entity (including a
|
| 83 |
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
| 84 |
+
or a Contribution incorporated within the Work constitutes direct
|
| 85 |
+
or contributory patent infringement, then any patent licenses
|
| 86 |
+
granted to You under this License for that Work shall terminate
|
| 87 |
+
as of the date such litigation is filed.
|
| 88 |
+
|
| 89 |
+
4. Redistribution. You may reproduce and distribute copies of the
|
| 90 |
+
Work or Derivative Works thereof in any medium, with or without
|
| 91 |
+
modifications, and in Source or Object form, provided that You
|
| 92 |
+
meet the following conditions:
|
| 93 |
+
|
| 94 |
+
(a) You must give any other recipients of the Work or
|
| 95 |
+
Derivative Works a copy of this License; and
|
| 96 |
+
|
| 97 |
+
(b) You must cause any modified files to carry prominent notices
|
| 98 |
+
stating that You changed the files; and
|
| 99 |
+
|
| 100 |
+
(c) You must retain, in the Source form of any Derivative Works
|
| 101 |
+
that You distribute, all copyright, patent, trademark, and
|
| 102 |
+
attribution notices from the Source form of the Work,
|
| 103 |
+
excluding those notices that do not pertain to any part of
|
| 104 |
+
the Derivative Works; and
|
| 105 |
+
|
| 106 |
+
(d) If the Work includes a "NOTICE" text file as part of its
|
| 107 |
+
distribution, then any Derivative Works that You distribute must
|
| 108 |
+
include a readable copy of the attribution notices contained
|
| 109 |
+
within such NOTICE file, excluding those notices that do not
|
| 110 |
+
pertain to any part of the Derivative Works, in at least one
|
| 111 |
+
of the following places: within a NOTICE text file distributed
|
| 112 |
+
as part of the Derivative Works; within the Source form or
|
| 113 |
+
documentation, if provided along with the Derivative Works; or,
|
| 114 |
+
within a display generated by the Derivative Works, if and
|
| 115 |
+
wherever such third-party notices normally appear. The contents
|
| 116 |
+
of the NOTICE file are for informational purposes only and
|
| 117 |
+
do not modify the License. You may add Your own attribution
|
| 118 |
+
notices within Derivative Works that You distribute, alongside
|
| 119 |
+
or as an addendum to the NOTICE text from the Work, provided
|
| 120 |
+
that such additional attribution notices cannot be construed
|
| 121 |
+
as modifying the License.
|
| 122 |
+
|
| 123 |
+
You may add Your own copyright statement to Your modifications and
|
| 124 |
+
may provide additional or different license terms and conditions
|
| 125 |
+
for use, reproduction, or distribution of Your modifications, or
|
| 126 |
+
for any such Derivative Works as a whole, provided Your use,
|
| 127 |
+
reproduction, and distribution of the Work otherwise complies with
|
| 128 |
+
the conditions stated in this License.
|
| 129 |
+
|
| 130 |
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
| 131 |
+
any Contribution intentionally submitted for inclusion in the Work
|
| 132 |
+
by You to the Licensor shall be under the terms and conditions of
|
| 133 |
+
this License, without any additional terms or conditions.
|
| 134 |
+
Notwithstanding the above, nothing herein shall supersede or modify
|
| 135 |
+
the terms of any separate license agreement you may have executed
|
| 136 |
+
with Licensor regarding such Contributions.
|
| 137 |
+
|
| 138 |
+
6. Trademarks. This License does not grant permission to use the trade
|
| 139 |
+
names, trademarks, service marks, or product names of the Licensor,
|
| 140 |
+
except as required for reasonable and customary use in describing the
|
| 141 |
+
origin of the Work and reproducing the content of the NOTICE file.
|
| 142 |
+
|
| 143 |
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
| 144 |
+
agreed to in writing, Licensor provides the Work (and each
|
| 145 |
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
| 146 |
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
| 147 |
+
implied, including, without limitation, any warranties or conditions
|
| 148 |
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
| 149 |
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
| 150 |
+
appropriateness of using or redistributing the Work and assume any
|
| 151 |
+
risks associated with Your exercise of permissions under this License.
|
| 152 |
+
|
| 153 |
+
8. Limitation of Liability. In no event and under no legal theory,
|
| 154 |
+
whether in tort (including negligence), contract, or otherwise,
|
| 155 |
+
unless required by applicable law (such as deliberate and grossly
|
| 156 |
+
negligent acts) or agreed to in writing, shall any Contributor be
|
| 157 |
+
liable to You for damages, including any direct, indirect, special,
|
| 158 |
+
incidental, or consequential damages of any character arising as a
|
| 159 |
+
result of this License or out of the use or inability to use the
|
| 160 |
+
Work (including but not limited to damages for loss of goodwill,
|
| 161 |
+
work stoppage, computer failure or malfunction, or any and all
|
| 162 |
+
other commercial damages or losses), even if such Contributor
|
| 163 |
+
has been advised of the possibility of such damages.
|
| 164 |
+
|
| 165 |
+
9. Accepting Warranty or Additional Liability. While redistributing
|
| 166 |
+
the Work or Derivative Works thereof, You may choose to offer,
|
| 167 |
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
| 168 |
+
or other liability obligations and/or rights consistent with this
|
| 169 |
+
License. However, in accepting such obligations, You may act only
|
| 170 |
+
on Your own behalf and on Your sole responsibility, not on behalf
|
| 171 |
+
of any other Contributor, and only if You agree to indemnify,
|
| 172 |
+
defend, and hold each Contributor harmless for any liability
|
| 173 |
+
incurred by, or claims asserted against, such Contributor by reason
|
| 174 |
+
of your accepting any such warranty or additional liability.
|
| 175 |
+
|
| 176 |
+
END OF TERMS AND CONDITIONS
|
| 177 |
+
|
| 178 |
+
APPENDIX: How to apply the Apache License to your work.
|
| 179 |
+
|
| 180 |
+
To apply the Apache License to your work, attach the following
|
| 181 |
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
| 182 |
+
replaced with your own identifying information. (Don't include
|
| 183 |
+
the brackets!) The text should be enclosed in the appropriate
|
| 184 |
+
comment syntax for the file format. We also recommend that a
|
| 185 |
+
file or class name and description of purpose be included on the
|
| 186 |
+
same "printed page" as the copyright notice for easier
|
| 187 |
+
identification within third-party archives.
|
| 188 |
+
|
| 189 |
+
Copyright 2023-2024 SGLang Team
|
| 190 |
+
|
| 191 |
+
Licensed under the Apache License, Version 2.0 (the "License");
|
| 192 |
+
you may not use this file except in compliance with the License.
|
| 193 |
+
You may obtain a copy of the License at
|
| 194 |
+
|
| 195 |
+
http://www.apache.org/licenses/LICENSE-2.0
|
| 196 |
+
|
| 197 |
+
Unless required by applicable law or agreed to in writing, software
|
| 198 |
+
distributed under the License is distributed on an "AS IS" BASIS,
|
| 199 |
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
| 200 |
+
See the License for the specific language governing permissions and
|
| 201 |
+
limitations under the License.
|
LICENSE-model
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
MiniMax-H3-Image COMMUNITY LICENSE AGREEMENT
|
| 2 |
+
MiniMax-H3-Image release date/License date: November 10, 2026.
|
| 3 |
+
The scope of this License Agreement (this “Agreement”) is expressly limited to the “Applicable Territory” as defined below.
|
| 4 |
+
By clicking to accept, or by using, reproducing, modifying, distributing, running, or displaying any portion or element of the MiniMax-H3-Image Works (including through any Hosted Service) in any manner, you acknowledge and accept the terms of this Agreement, and this Agreement shall take immediate effect upon the occurrence of such act.
|
| 5 |
+
I. Definitions
|
| 6 |
+
1. “Acceptable Use Policy” means the policy published by MiniMax in Exhibit A.
|
| 7 |
+
2. “Agreement” means the terms and conditions set forth herein that govern the use, reproduction, distribution, modification, running, and display of the MiniMax-H3-Image Works or any portion or element thereof.
|
| 8 |
+
3. “Applicable Territory” means worldwide, excluding the Excluded Territories.
|
| 9 |
+
4. “Documentation” means the specifications, manuals, and documentation concerning MiniMax-H3-Image that are publicly released by MiniMax.
|
| 10 |
+
5. “Excluded Territories” means the European Union, the United Kingdom, the Republic of Korea and the United States of America.
|
| 11 |
+
6. “MiniMax-H3-Image” means the image generation model, together with its software and algorithms, including trained model weights, parameters (including optimizer states), prompt-enhancement models, inference-supporting code, and other elements thereof made publicly available by Us, as released at https://huggingface.co/MiniMaxAI/MiniMax-H3-Image.
|
| 12 |
+
7. “MiniMax-H3-Image Works” means (i) the Materials, (ii) the Model Derivatives, and (iii) all derivatives thereof.
|
| 13 |
+
8. “Hosted Service” means a service through which MiniMax-H3-Image or its Model Derivatives is hosted or operated and its functionality is made available to Third Parties, including via application programming interfaces (APIs), web access, or any other electronic or remote means.
|
| 14 |
+
9. “Licensee,” “you,” or “your” means the natural or legal person exercising rights and/or using the MiniMax-H3-Image Works for any purpose in any field of use under this Agreement.
|
| 15 |
+
10. “Materials” means, collectively, MiniMax-H3-Image and the Documentation (and any portion thereof), in each case as made available by MiniMax under this Agreement and proprietary to MiniMax.
|
| 16 |
+
11. “Model Derivatives” means all of the following: (i) any modification of MiniMax-H3-Image or any Model Derivative thereof; (ii) any work based on MiniMax-H3-Image or any Model Derivative thereof; or (iii) any other machine learning model created by transferring the patterns of the weights, parameters, operational patterns, or Outputs of MiniMax-H3-Image or any Model Derivative thereof to another model, such that the latter model exhibits behavior similar to MiniMax-H3-Image or its Model Derivatives, including by distillation methods, methods using intermediate data representations, or methods based on training using synthetic-data Outputs generated by MiniMax-H3-Image or its Model Derivatives. For the avoidance of doubt, Outputs are not deemed Model Derivatives.
|
| 17 |
+
12. “Output” means any result of operating or otherwise using MiniMax-H3-Image or any Model Derivatives (including through Hosted Service).
|
| 18 |
+
13. “Third Party” means any natural or legal person that is not under common control with us or with you.
|
| 19 |
+
14. “Including” means “including but not limited to.”
|
| 20 |
+
15. “We,” “Us” or “MiniMax” means Nanonoble Pte. Ltd..
|
| 21 |
+
II. Grant of Rights
|
| 22 |
+
Solely within the Applicable Territory, we grant you a non-exclusive, non-transferable, royalty-free, limited license to use, reproduce, distribute, create derivative works (including Model Derivatives), and modify the Materials in accordance with the terms of this Agreement and the Acceptable Use Policy, based on the intellectual property and other rights owned by MiniMax that are embodied in or used by the Materials. You shall not violate (or encourage or permit any person to violate) any term of this Agreement or the Acceptable Use Policy.
|
| 23 |
+
We will continuously evaluate the applicable laws, regulations and compliance requirements for the Excluded Territories. In the meantime, should any person in such Excluded Territories be interested in deploying our models, you are welcome to contact us about obtaining a license, which will be granted based on robust controls and guardrails for purposes of complying with the laws, regulations and compliance requirements of the Excluded Territories.
|
| 24 |
+
III. Distribution and Redistribution
|
| 25 |
+
Subject to and conditioned on your continuing compliance with this Agreement, including its territorial restrictions and the Acceptable Use Policy, and solely within the Applicable Territory, you may distribute or make available the MiniMax-H3-Image Works to Third Parties within the Applicable Territory; provided, that all of the following conditions are met:
|
| 26 |
+
1. You must provide a copy of this Agreement to all such Third Parties who receive the MiniMax-H3-Image Works or use your products or services related thereto;
|
| 27 |
+
2. You must cause any modified files to carry prominent notices stating that you have modified such files;
|
| 28 |
+
3. You are encouraged to:
|
| 29 |
+
a. display a notice on any product or service developed using MiniMax-H3-Image indicating that the product or service is “Powered by MiniMax-H3-Image”;
|
| 30 |
+
b. add an AI-generation identifier to files produced using generative AI models including MiniMax-H3-Image; and
|
| 31 |
+
c. publish at least one technical blog post or a public statement describing your experience using MiniMax-H3-Image Works;
|
| 32 |
+
4. All distributions to Third Parties (other than through Hosted Service) must be accompanied by a “NOTICE” text file containing the following notice:
|
| 33 |
+
“MiniMax-H3-Image is licensed under the MiniMax-H3-Image Community License Agreement, Copyright © 2026 MiniMax. All Rights Reserved.”
|
| 34 |
+
You may add your own copyright notices on your modifications; except as provided in this Section and in Section V, however, you may not impose additional or different terms and conditions on the use, reproduction, or distribution of your modifications or of any aggregate Model Derivatives, and your use, reproduction, modification, distribution, running, and display of the work must otherwise comply with the terms and conditions of this Agreement (including the provisions concerning the Applicable Territory). If you receive the MiniMax-H3-Image Works from a Licensee as part of an integrated end-user product, the provisions of Section III of this Agreement do not apply to you, but Section V and Exhibit A remain applicable.
|
| 35 |
+
IV. Additional Commercial Terms
|
| 36 |
+
1. You shall obtain a separate, prior written authorization from MiniMax by sending a request through https://platform.minimax.io/license, if the Annualized Revenue of you and/or your affiliates exceeds 1 Million USD, or, you provide Hosted Service(s) to any Third Parties.
|
| 37 |
+
2. You shall prominently display “MiniMax-H3-Image”on the user interface of commercial product or service that uses MiniMax-H3-Image or MiniMax-H3-Image Works.
|
| 38 |
+
V. Use Restrictions
|
| 39 |
+
1. Your use of the MiniMax-H3-Image Works must comply with applicable laws and regulations (including trade-compliance laws and regulations) and must comply with the Acceptable Use Policy for the MiniMax-H3-Image Works, which is incorporated into this Agreement by reference.
|
| 40 |
+
2. Before providing access to the MiniMax-H3-Image Works or any product, service, or Hosted Service incorporating them, you must bind each recipient or user to enforceable terms at least as protective as the use restrictions in this Section V and Exhibit A, and you must notify each recipient or user that those restrictions apply.
|
| 41 |
+
3. You may not use the MiniMax-H3-Image Works or any of their Outputs or results to improve any other artificial intelligence model (other than MiniMax-H3-Image or its Model Derivatives).
|
| 42 |
+
4. You may not use, reproduce, modify, distribute, or display the MiniMax-H3-Image Works or any of their Outputs or results outside the Applicable Territory. Any such use outside the Applicable Territory is not authorized by this Agreement.
|
| 43 |
+
5. If you provide or make available to any Third Party a product, service, or Hosted Service that permits the generation of Outputs using MiniMax-H3-Image or any Model Derivative, you must, before making that product or service available and throughout its operation, implement, maintain, test, and periodically review reasonable and proportionate technical and organizational safeguards designed to prevent and mitigate access, uses, and Outputs that violate this Section V or Exhibit A, including uses or Outputs that infringe, misappropriate, or otherwise violate any Third Party’s intellectual-property or other rights. You must not knowingly disable, materially weaken, or permit the circumvention of those safeguards. You must maintain a reasonably accessible mechanism for reporting suspected violations. Upon receiving a good-faith report or otherwise obtaining actual knowledge of a violation, you must promptly investigate and take reasonable steps within your control to stop or mitigate the violation, including removing or disabling access to offending content or services and suspending or terminating repeat violators where appropriate. You are responsible for implementing and enforcing these requirements with respect to your products, services, systems, users, and downstream recipients.
|
| 44 |
+
VI. Intellectual Property
|
| 45 |
+
1. Subject to MiniMax’s rights in the MiniMax-H3-Image Works (and the intellectual property therein), and to your compliance with the terms and conditions of this Agreement, as between you and MiniMax, you will own the derivative works and modifications of the Materials that you have created or had created, as well as any Model Derivatives.
|
| 46 |
+
2. Except for the limited license expressly granted in this paragraph, no trademark license is granted under this Agreement; with respect to MiniMax-H3-Image Works, the Licensee may not use any name or mark owned by or associated with MiniMax or any of its affiliates, except as reasonably and customarily necessary to describe and distribute the MiniMax-H3-Image Works. MiniMax hereby grants you a license to use the “MiniMax-H3-Image” mark (the “Mark”) within the Applicable Territory solely for the purpose of complying with Section III.3; provided, that you comply with all applicable trademark-protection laws. All goodwill arising from your use of the Mark shall inure to the benefit of MiniMax.
|
| 47 |
+
3. If you bring or assert any suit or other legal proceeding (including a cross-claim or counterclaim in any action) against us or any other natural or legal person alleging that the Materials, any Output, or any portion of the foregoing infringes any intellectual property right or other right owned by you or for which you can obtain a license, all licenses granted to you under this Agreement will terminate as of the date such suit or proceeding is filed. You shall defend, indemnify, and hold us harmless against any Third-Party claim arising out of or related to the use or distribution of the MiniMax-H3-Image Works by you or by any Third Party.
|
| 48 |
+
4. MiniMax claims no rights over the Outputs you generate. You and your users are entirely responsible for the Outputs and any subsequent use thereof.
|
| 49 |
+
VII. Disclaimers and Limitations of Liability
|
| 50 |
+
1. We have no obligation to support, update, provide training for, or develop any further version of the MiniMax-H3-Image Works, or to grant any license with respect thereto.
|
| 51 |
+
2. UNLESS AND ONLY TO THE EXTENT REQUIRED BY APPLICABLE LAW, THE MiniMax-H3-Image WORKS AND ANY OUTPUT AND RESULTS THEREFROM ARE PROVIDED “AS IS” WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES OF ANY KIND INCLUDING ANY WARRANTIES OF TITLE, MERCHANTABILITY, NONINFRINGEMENT, COURSE OF DEALING, USAGE OF TRADE, OR FITNESS FOR A PARTICULAR PURPOSE. YOU ARE SOLELY RESPONSIBLE FOR DETERMINING THE APPROPRIATENESS OF USING, REPRODUCING, MODIFYING, PERFORMING, DISPLAYING OR DISTRIBUTING ANY OF THE MiniMax-H3-Image WORKS OR OUTPUTS AND ASSUME ANY AND ALL RISKS ASSOCIATED WITH YOUR OR A THIRD PARTY’S USE OR DISTRIBUTION OF ANY OF THE MiniMax-H3-Image WORKS OR OUTPUTS AND YOUR EXERCISE OF RIGHTS AND PERMISSIONS UNDER THIS AGREEMENT.
|
| 52 |
+
3. TO THE FULLEST EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL MINIMAX OR ITS AFFILIATES BE LIABLE UNDER ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, TORT, NEGLIGENCE, PRODUCTS LIABILITY, OR OTHERWISE, FOR ANY DAMAGES, INCLUDING ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, EXEMPLARY, CONSEQUENTIAL OR PUNITIVE DAMAGES, OR LOST PROFITS OF ANY KIND ARISING FROM THIS AGREEMENT OR RELATED TO ANY OF THE MiniMax-H3-Image WORKS OR OUTPUTS, EVEN IF MINIMAX OR ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF ANY OF THE FOREGOING.
|
| 53 |
+
VIII. Term and Termination
|
| 54 |
+
1. This Agreement is effective from the moment you accept this Agreement or begin accessing the Materials, and, subject to your compliance with its terms and conditions, will remain in effect until terminated as provided herein.
|
| 55 |
+
2. If you breach any term or condition of this Agreement, we have the right to terminate this Agreement. Upon termination, you must immediately cease accessing, using, and distributing the MiniMax-H3-Image Works; delete or destroy all copies within your possession or control; and notify each downstream recipient that your authorization has ended. The obligations in the preceding sentence and Sections VI.1, VI.3, VII, and IX survive termination.
|
| 56 |
+
IX. Governing Law and Jurisdiction
|
| 57 |
+
1. This Agreement, and any dispute arising out of or related to this Agreement, shall be governed by the laws of the Hong Kong Special Administrative Region of the People’s Republic of China, without regard to its conflict-of-laws rules. The United Nations Convention on Contracts for the International Sale of Goods does not apply to this Agreement.
|
| 58 |
+
2. Any dispute arising out of or related to this Agreement shall be subject to the exclusive jurisdiction of the courts of the Hong Kong Special Administrative Region of the People’s Republic of China with competent jurisdiction. Both MiniMax and the Licensee hereby consent to the exclusive jurisdiction of such courts for any such dispute.
|
| 59 |
+
Additional Note: Please note that the text-to-image prompt enhancer model (https://huggingface.co/MiniMaxAI/MiniMax-H3-Image-PE, "T2I PE Model") of MiniMax-H3-Image is derived from Qwen3.8-27B licensed under Apache 2.0 License: https://huggingface.co/Qwen/Qwen3.8-27B. The T2I PE Model is part of MiniMax-H3-Image and is accordingly subject to this Agreement for the avoidance of doubt.
|
| 60 |
+
|
| 61 |
+
Exhibit A — Acceptable Use Policy
|
| 62 |
+
MiniMax reserves the right to update this Acceptable Use Policy from time to time.
|
| 63 |
+
Last revised: November 10, 2026.
|
| 64 |
+
MiniMax is committed to promoting the safe and fair use of its tools and features, including MiniMax-H3-Image. You agree not to use MiniMax-H3-Image, any Model Derivatives, or any Output in any of the following ways:
|
| 65 |
+
1. Use outside the Applicable Territory;
|
| 66 |
+
2. Use in any manner that violates any applicable national, federal, state, local, or international law, regulation, or other legal requirement, or that infringes, misappropriates, or otherwise violates any Third Party’s intellectual-property or other proprietary rights, including through unauthorized reproduction, distribution, public display, public performance, or creation of derivative works;
|
| 67 |
+
3. Use in any manner that may harm yourself or others;
|
| 68 |
+
4. Use to repurpose or distribute the Outputs of MiniMax-H3-Image or any Model Derivatives in order to harm yourself or others;
|
| 69 |
+
5. Use to circumvent or bypass any safety guardrails or safeguards we have implemented;
|
| 70 |
+
6. Use in any manner that exploits or harms, or intends to exploit or harm, minors;
|
| 71 |
+
7. Use to generate or disseminate verifiably false information and/or content for the purpose of harming others or influencing elections;
|
| 72 |
+
8. Use to manufacture or facilitate false online engagement, including fake reviews and other means of false online engagement;
|
| 73 |
+
9. Use to intentionally defame, disparage, or otherwise harass others;
|
| 74 |
+
10. Use to generate and/or disseminate malware (including ransomware) or any other content intended to damage electronic systems;
|
| 75 |
+
11. Use to generate or disseminate personally identifiable information for the purpose of harming others;
|
| 76 |
+
12. Use to generate or disseminate information (including images, code, posts, or articles) in or to any public environment (including via bot tweets or similar means) without clearly and prominently disclosing that such information and/or content is machine-generated;
|
| 77 |
+
13. Use to impersonate another person without that person’s consent, authorization, or lawful right to do so;
|
| 78 |
+
14. Use to make high-risk automated decisions in critical domains that affect individual safety, rights, or well-being (such as law enforcement, immigration, healthcare or medical services, critical-infrastructure management, product-safety components, essential services, credit, employment, housing, education, social scoring, or insurance);
|
| 79 |
+
15. Use in any manner that violates or disregards the social, ethical, or moral standards of other countries or regions;
|
| 80 |
+
16. Use to carry out, assist, threaten, incite, plan, advocate for, or encourage violent extremism or terrorism;
|
| 81 |
+
17. Use for any purpose intended to discriminate against, or harm, individuals or groups based on protected characteristics or categories, online or offline social behavior, or known or predicted personality traits;
|
| 82 |
+
18. Use to intentionally exploit the vulnerabilities of specific populations based on age, social, physical, or psychological characteristics, so as to materially distort the behavior of a member of that group in a manner that causes, or is likely to cause, physical or psychological harm to that person or to others;
|
| 83 |
+
19. Use for military purposes;
|
| 84 |
+
20. Use to engage in any unauthorized or unlicensed professional activity, including but not limited to financial, legal, medical or healthcare, or other professional practice.
|
LICENSE-text-encoder
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
MiniMax H3 COMMUNITY LICENSE AGREEMENT
|
| 2 |
+
MiniMax H3 release date/License date: August 2, 2026.
|
| 3 |
+
The scope of this License Agreement (this “Agreement”) is expressly limited to the “Applicable Territory” as defined below.
|
| 4 |
+
By clicking to accept, or by using, reproducing, modifying, distributing, running, or displaying any portion or element of the MiniMax H3 Works (including through any Hosted Services) in any manner, you acknowledge and accept the terms of this Agreement, and this Agreement shall take immediate effect upon the occurrence of such act.
|
| 5 |
+
I. Definitions
|
| 6 |
+
1. “Acceptable Use Policy” means the policy published by MiniMax in Exhibit A.
|
| 7 |
+
2. “Agreement” means the terms and conditions set forth herein that govern the use, reproduction, distribution, modification, running, and display of the MiniMax H3 Works or any portion or element thereof.
|
| 8 |
+
3. “Applicable Territory” means worldwide, excluding the Excluded Territories.
|
| 9 |
+
4. “Documentation” means the specifications, manuals, and documentation concerning MiniMax H3 that are publicly released by MiniMax.
|
| 10 |
+
5. “Excluded Territories” means the European Union, the United Kingdom, the Republic of Korea and the United States of America.
|
| 11 |
+
6. “MiniMax H3” means the video generation model, together with its software and algorithms, including trained model weights, parameters (including optimizer states), machine-learning model code, inference-supporting code, and other elements thereof made publicly available by Us, as released at https://huggingface.co/MiniMaxAI/MiniMax-H3.
|
| 12 |
+
7. “MiniMax H3 Works” means (i) the Materials, (ii) the Model Derivatives, and (iii) all derivatives thereof.
|
| 13 |
+
8. “Hosted Services” means hosted services provided via application programming interfaces (APIs), web access, or any other electronic or remote means.
|
| 14 |
+
9. “Licensee,” “you,” or “your” means the natural or legal person exercising rights and/or using the MiniMax H3 Works for any purpose in any field of use under this Agreement.
|
| 15 |
+
10. “Materials” means, collectively, MiniMax H3 and the Documentation (and any portion thereof), in each case as made available by MiniMax under this Agreement and proprietary to MiniMax.
|
| 16 |
+
11. “Model Derivatives” means all of the following: (i) any modification of MiniMax H3 or any Model Derivative thereof; (ii) any work based on MiniMax H3 or any Model Derivative thereof; or (iii) any other machine learning model created by transferring the patterns of the weights, parameters, operational patterns, or Outputs of MiniMax H3 or any Model Derivative thereof to another model, such that the latter model exhibits behavior similar to MiniMax H3 or its Model Derivatives, including by distillation methods, methods using intermediate data representations, or methods based on training using synthetic-data Outputs generated by MiniMax H3 or its Model Derivatives. For the avoidance of doubt, Outputs are not deemed Model Derivatives.
|
| 17 |
+
12. “Output” means any result of operating or otherwise using MiniMax H3 or any Model Derivatives (including through Hosted Services).
|
| 18 |
+
13. “Third Party” means any natural or legal person that is not under common control with us or with you.
|
| 19 |
+
14. “Including” means “including but not limited to.”
|
| 20 |
+
15. “We,” “Us” or “MiniMax” means Nanonoble Pte. Ltd..
|
| 21 |
+
II. Grant of Rights
|
| 22 |
+
Solely within the Applicable Territory, we grant you a non-exclusive, non-transferable, royalty-free, limited license to use, reproduce, distribute, create derivative works (including Model Derivatives), and modify the Materials in accordance with the terms of this Agreement and the Acceptable Use Policy, based on the intellectual property and other rights owned by MiniMax that are embodied in or used by the Materials. You shall not violate (or encourage or permit any person to violate) any term of this Agreement or the Acceptable Use Policy.
|
| 23 |
+
We will continuously evaluate the applicable laws, regulations and compliance requirements for the Excluded Territories. In the meantime, should any person in such Excluded Territories be interested in deploying our models, you are welcome to contact us about obtaining a license, which will be granted based on robust controls and guardrails for purposes of complying with the laws, regulations and compliance requirements of the Excluded Territories.
|
| 24 |
+
III. Distribution and Redistribution
|
| 25 |
+
Subject to and conditioned on your continuing compliance with this Agreement, including its territorial restrictions and the Acceptable Use Policy, and solely within the Applicable Territory, you may distribute or make available the MiniMax H3 Works to Third Parties within the Applicable Territory; provided, that all of the following conditions are met:
|
| 26 |
+
1. You must provide a copy of this Agreement to all such Third Parties who receive the MiniMax H3 Works or use your products or services related thereto;
|
| 27 |
+
2. You must cause any modified files to carry prominent notices stating that you have modified such files;
|
| 28 |
+
3. You are encouraged to:
|
| 29 |
+
a. display a notice on any product or service developed using MiniMax H3 indicating that the product or service is “Powered by MiniMax H3”;
|
| 30 |
+
b. add an AI-generation identifier to files produced using generative AI models including MiniMax H3; and
|
| 31 |
+
c. publish at least one technical blog post or a public statement describing your experience using MiniMax H3 Works;
|
| 32 |
+
4. All distributions to Third Parties (other than through Hosted Services) must be accompanied by a “NOTICE” text file containing the following notice:
|
| 33 |
+
“MiniMax H3 is licensed under the MiniMax H3 Community License Agreement, Copyright © 2026 MiniMax. All Rights Reserved.”
|
| 34 |
+
You may add your own copyright notices on your modifications; except as provided in this Section and in Section V, however, you may not impose additional or different terms and conditions on the use, reproduction, or distribution of your modifications or of any aggregate Model Derivatives, and your use, reproduction, modification, distribution, running, and display of the work must otherwise comply with the terms and conditions of this Agreement (including the provisions concerning the Applicable Territory). If you receive the MiniMax H3 Works from a Licensee as part of an integrated end-user product, the provisions of Section III of this Agreement do not apply to you, but Section V and Exhibit A remain applicable.
|
| 35 |
+
IV. Additional Commercial Terms
|
| 36 |
+
1. You shall obtain a separate, prior written authorization from MiniMax by contacting api@minimax.io with the subject line “MiniMax H3 licensing - authorization request”, if your commercial products and services generate more than 20 million US dollars (or equivalent in other currencies) in yearly revenue.
|
| 37 |
+
2. You shall prominently display “MiniMax H3”on the user interface of commercial product or service that uses MiniMax H3 or MiniMax H3 Works.
|
| 38 |
+
V. Use Restrictions
|
| 39 |
+
1. Your use of the MiniMax H3 Works must comply with applicable laws and regulations (including trade-compliance laws and regulations) and must comply with the Acceptable Use Policy for the MiniMax H3 Works, which is incorporated into this Agreement by reference.
|
| 40 |
+
2. Before providing access to the MiniMax H3 Works or any product, service, or Hosted Service incorporating them, you must bind each recipient or user to enforceable terms at least as protective as the use restrictions in this Section V and Exhibit A, and you must notify each recipient or user that those restrictions apply.
|
| 41 |
+
3. You may not use the MiniMax H3 Works or any of their Outputs or results to improve any other artificial intelligence model (other than MiniMax H3 or its Model Derivatives).
|
| 42 |
+
4. You may not use, reproduce, modify, distribute, or display the MiniMax H3 Works or any of their Outputs or results outside the Applicable Territory. Any such use outside the Applicable Territory is not authorized by this Agreement.
|
| 43 |
+
5. If you provide or make available to any Third Party a product, service, or Hosted Service that permits the generation of Outputs using MiniMax H3 or any Model Derivative, you must, before making that product or service available and throughout its operation, implement, maintain, test, and periodically review reasonable and proportionate technical and organizational safeguards designed to prevent and mitigate access, uses, and Outputs that violate this Section V or Exhibit A, including uses or Outputs that infringe, misappropriate, or otherwise violate any Third Party’s intellectual-property or other rights. You must not knowingly disable, materially weaken, or permit the circumvention of those safeguards. You must maintain a reasonably accessible mechanism for reporting suspected violations. Upon receiving a good-faith report or otherwise obtaining actual knowledge of a violation, you must promptly investigate and take reasonable steps within your control to stop or mitigate the violation, including removing or disabling access to offending content or services and suspending or terminating repeat violators where appropriate. You are responsible for implementing and enforcing these requirements with respect to your products, services, systems, users, and downstream recipients.
|
| 44 |
+
VI. Intellectual Property
|
| 45 |
+
1. Subject to MiniMax’s rights in the MiniMax H3 Works (and the intellectual property therein), and to your compliance with the terms and conditions of this Agreement, as between you and MiniMax, you will own the derivative works and modifications of the Materials that you have created or had created, as well as any Model Derivatives.
|
| 46 |
+
2. Except for the limited license expressly granted in this paragraph, no trademark license is granted under this Agreement; with respect to MiniMax H3 Works, the Licensee may not use any name or mark owned by or associated with MiniMax or any of its affiliates, except as reasonably and customarily necessary to describe and distribute the MiniMax H3 Works. MiniMax hereby grants you a license to use the “MiniMax H3” mark (the “Mark”) within the Applicable Territory solely for the purpose of complying with Section III.3; provided, that you comply with all applicable trademark-protection laws. All goodwill arising from your use of the Mark shall inure to the benefit of MiniMax.
|
| 47 |
+
3. If you bring or assert any suit or other legal proceeding (including a cross-claim or counterclaim in any action) against us or any other natural or legal person alleging that the Materials, any Output, or any portion of the foregoing infringes any intellectual property right or other right owned by you or for which you can obtain a license, all licenses granted to you under this Agreement will terminate as of the date such suit or proceeding is filed. You shall defend, indemnify, and hold us harmless against any Third-Party claim arising out of or related to the use or distribution of the MiniMax H3 Works by you or by any Third Party.
|
| 48 |
+
4. MiniMax claims no rights over the Outputs you generate. You and your users are entirely responsible for the Outputs and any subsequent use thereof.
|
| 49 |
+
VII. Disclaimers and Limitations of Liability
|
| 50 |
+
1. We have no obligation to support, update, provide training for, or develop any further version of the MiniMax H3 Works, or to grant any license with respect thereto.
|
| 51 |
+
2. UNLESS AND ONLY TO THE EXTENT REQUIRED BY APPLICABLE LAW, THE MINIMAX H3 WORKS AND ANY OUTPUT AND RESULTS THEREFROM ARE PROVIDED “AS IS” WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES OF ANY KIND INCLUDING ANY WARRANTIES OF TITLE, MERCHANTABILITY, NONINFRINGEMENT, COURSE OF DEALING, USAGE OF TRADE, OR FITNESS FOR A PARTICULAR PURPOSE. YOU ARE SOLELY RESPONSIBLE FOR DETERMINING THE APPROPRIATENESS OF USING, REPRODUCING, MODIFYING, PERFORMING, DISPLAYING OR DISTRIBUTING ANY OF THE MINIMAX H3 WORKS OR OUTPUTS AND ASSUME ANY AND ALL RISKS ASSOCIATED WITH YOUR OR A THIRD PARTY’S USE OR DISTRIBUTION OF ANY OF THE MINIMAX H3 WORKS OR OUTPUTS AND YOUR EXERCISE OF RIGHTS AND PERMISSIONS UNDER THIS AGREEMENT.
|
| 52 |
+
3. TO THE FULLEST EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL MINIMAX OR ITS AFFILIATES BE LIABLE UNDER ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, TORT, NEGLIGENCE, PRODUCTS LIABILITY, OR OTHERWISE, FOR ANY DAMAGES, INCLUDING ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, EXEMPLARY, CONSEQUENTIAL OR PUNITIVE DAMAGES, OR LOST PROFITS OF ANY KIND ARISING FROM THIS AGREEMENT OR RELATED TO ANY OF THE MINIMAX H3 WORKS OR OUTPUTS, EVEN IF MINIMAX OR ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF ANY OF THE FOREGOING.
|
| 53 |
+
VIII. Term and Termination
|
| 54 |
+
1. This Agreement is effective from the moment you accept this Agreement or begin accessing the Materials, and, subject to your compliance with its terms and conditions, will remain in effect until terminated as provided herein.
|
| 55 |
+
2. If you breach any term or condition of this Agreement, we have the right to terminate this Agreement. Upon termination, you must immediately cease accessing, using, and distributing the MiniMax H3 Works; delete or destroy all copies within your possession or control; and notify each downstream recipient that your authorization has ended. The obligations in the preceding sentence and Sections VI.1, VI.3, VII, and IX survive termination.
|
| 56 |
+
IX. Governing Law and Jurisdiction
|
| 57 |
+
1. This Agreement, and any dispute arising out of or related to this Agreement, shall be governed by the laws of the Hong Kong Special Administrative Region of the People’s Republic of China, without regard to its conflict-of-laws rules. The United Nations Convention on Contracts for the International Sale of Goods does not apply to this Agreement.
|
| 58 |
+
2. Any dispute arising out of or related to this Agreement shall be subject to the exclusive jurisdiction of the courts of the Hong Kong Special Administrative Region of the People’s Republic of China with competent jurisdiction. Both MiniMax and the Licensee hereby consent to the exclusive jurisdiction of such courts for any such dispute.
|
| 59 |
+
Additional Note: Please note that the encoder of MiniMax H3 uses Qwen3-VL-32B, which is licensed under Apache 2.0 License: https://github.com/QwenLM/Qwen3-VL/blob/main/LICENSE.
|
| 60 |
+
|
| 61 |
+
Exhibit A — Acceptable Use Policy
|
| 62 |
+
MiniMax reserves the right to update this Acceptable Use Policy from time to time.
|
| 63 |
+
Last revised: August 2, 2026.
|
| 64 |
+
MiniMax is committed to promoting the safe and fair use of its tools and features, including MiniMax H3. You agree not to use MiniMax H3, any Model Derivatives, or any Output in any of the following ways:
|
| 65 |
+
1. Use outside the Applicable Territory;
|
| 66 |
+
2. Use in any manner that violates any applicable national, federal, state, local, or international law, regulation, or other legal requirement, or that infringes, misappropriates, or otherwise violates any Third Party’s intellectual-property or other proprietary rights, including through unauthorized reproduction, distribution, public display, public performance, or creation of derivative works;
|
| 67 |
+
3. Use in any manner that may harm yourself or others;
|
| 68 |
+
4. Use to repurpose or distribute the Outputs of MiniMax H3 or any Model Derivatives in order to harm yourself or others;
|
| 69 |
+
5. Use to circumvent or bypass any safety guardrails or safeguards we have implemented;
|
| 70 |
+
6. Use in any manner that exploits or harms, or intends to exploit or harm, minors;
|
| 71 |
+
7. Use to generate or disseminate verifiably false information and/or content for the purpose of harming others or influencing elections;
|
| 72 |
+
8. Use to manufacture or facilitate false online engagement, including fake reviews and other means of false online engagement;
|
| 73 |
+
9. Use to intentionally defame, disparage, or otherwise harass others;
|
| 74 |
+
10. Use to generate and/or disseminate malware (including ransomware) or any other content intended to damage electronic systems;
|
| 75 |
+
11. Use to generate or disseminate personally identifiable information for the purpose of harming others;
|
| 76 |
+
12. Use to generate or disseminate information (including images, code, posts, or articles) in or to any public environment (including via bot tweets or similar means) without clearly and prominently disclosing that such information and/or content is machine-generated;
|
| 77 |
+
13. Use to impersonate another person without that person’s consent, authorization, or lawful right to do so;
|
| 78 |
+
14. Use to make high-risk automated decisions in critical domains that affect individual safety, rights, or well-being (such as law enforcement, immigration, healthcare or medical services, critical-infrastructure management, product-safety components, essential services, credit, employment, housing, education, social scoring, or insurance);
|
| 79 |
+
15. Use in any manner that violates or disregards the social, ethical, or moral standards of other countries or regions;
|
| 80 |
+
16. Use to carry out, assist, threaten, incite, plan, advocate for, or encourage violent extremism or terrorism;
|
| 81 |
+
17. Use for any purpose intended to discriminate against, or harm, individuals or groups based on protected characteristics or categories, online or offline social behavior, or known or predicted personality traits;
|
| 82 |
+
18. Use to intentionally exploit the vulnerabilities of specific populations based on age, social, physical, or psychological characteristics, so as to materially distort the behavior of a member of that group in a manner that causes, or is likely to cause, physical or psychological harm to that person or to others;
|
| 83 |
+
19. Use for military purposes;
|
| 84 |
+
20. Use to engage in any unauthorized or unlicensed professional activity, including but not limited to financial, legal, medical or healthcare, or other professional practice.
|
MODEL_INDEX.md
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Model and repository index
|
| 2 |
+
|
| 3 |
+
The Hugging Face Hub uses sibling repositories grouped by a collection.
|
| 4 |
+
The main repository links them; it does not contain nested Git repositories
|
| 5 |
+
or any model weights. Each download selects one variant and shared components.
|
| 6 |
+
|
| 7 |
+
| Repository under `devin-lai/` | Contents | Selection |
|
| 8 |
+
|---|---|---|
|
| 9 |
+
| `MiniMax-H3-Image-mlx` | Inference source, documentation, tests and comparison records | Install once |
|
| 10 |
+
| `MiniMax-H3-Image-mlx-packed12` | Fifty losslessly packed main DiT blocks | Recommended exact storage choice |
|
| 11 |
+
| `MiniMax-H3-Image-mlx-bf16` | Original complete BF16/FP32 transformer | Unmodified storage control |
|
| 12 |
+
| `MiniMax-H3-Image-mlx-q8` | Q8 main blocks and token refiners, group 64 | Smaller weights, image changes |
|
| 13 |
+
| `MiniMax-H3-Image-mlx-q4` | Q4 main blocks and token refiners, group 64 | Smallest core, larger image changes |
|
| 14 |
+
| `MiniMax-H3-Image-mlx-shared` | VAE, PDD heads, native support, configs and modulation tables | Fetched as needed, reused across variants |
|
| 15 |
+
| `MiniMax-H3-Image-mlx-examples` | Generated images and visual comparisons | Optional gallery, with manual access review |
|
| 16 |
+
|
| 17 |
+
The unchanged encoder is fetched from
|
| 18 |
+
[`MiniMaxAI/MiniMax-H3`](https://huggingface.co/MiniMaxAI/MiniMax-H3/tree/0919fb684102ef115126612f3fbb84d1027e7317/text_encoder)
|
| 19 |
+
at revision `0919fb684102ef115126612f3fbb84d1027e7317`. Only its `text_encoder/`
|
| 20 |
+
directory and license are selected. This is about **62.14 GiB** of weights and
|
| 21 |
+
tokenizer files; it is a substantial first download. An existing copy can be
|
| 22 |
+
reused with `--text-encoder-path`.
|
| 23 |
+
|
| 24 |
+
The image source is `MiniMaxAI/MiniMax-H3-Image` at revision
|
| 25 |
+
`6534ea1c979a5f8cb00c2bd1025d5ca4ee8d8901`. All uploaded model files receive
|
| 26 |
+
SHA-256 manifests; the runtime catalog pins each component repository to a
|
| 27 |
+
full commit ID. A `v0.4.0` tag provides a human-readable
|
| 28 |
+
release name. Runtime options such as compiled execution, VAE tile batches
|
| 29 |
+
and reduced steps do not create additional model repositories.
|
| 30 |
+
|
| 31 |
+
## Layout after downloading
|
| 32 |
+
|
| 33 |
+
```text
|
| 34 |
+
models/packed12/
|
| 35 |
+
release.json
|
| 36 |
+
transformer/ # Native constants, norms, refiners and config
|
| 37 |
+
core/ # Only the chosen variant
|
| 38 |
+
modulation/ # Six-step generation and editing tables
|
| 39 |
+
vae/
|
| 40 |
+
pdd_config.json
|
| 41 |
+
pdd_fused_heads.safetensors
|
| 42 |
+
text_encoder/ # Link to the one shared upstream cache
|
| 43 |
+
licenses/
|
| 44 |
+
```
|
| 45 |
+
|
| 46 |
+
Files are linked to Hugging Face's cache rather than copied. Keep that cache
|
| 47 |
+
while using the assembled directory. `--local-files-only` supports cached,
|
| 48 |
+
offline assembly. `--verify` rehashes all selected image-model files; the
|
| 49 |
+
encoder download uses the Hub's pinned, content-addressed download mechanism.
|
| 50 |
+
Download size is different from runtime memory. The prepared release's exact
|
| 51 |
+
file sizes are recorded in each repository's `files.json` manifest.
|
NOTICE
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
MiniMax-H3-Image-mlx
|
| 2 |
+
Copyright 2026 MiniMax-H3-Image-mlx contributors
|
| 3 |
+
|
| 4 |
+
MiniMax-H3-Image is licensed under the MiniMax-H3-Image Community License
|
| 5 |
+
Agreement, Copyright © 2026 MiniMax. All Rights Reserved.
|
| 6 |
+
|
| 7 |
+
The model architecture and inference contracts were ported from SGLang's
|
| 8 |
+
Apache-2.0 MiniMax H3 implementation and Hugging Face Transformers' Apache-2.0
|
| 9 |
+
Qwen3-VL implementation. Source identities and file digests are recorded in
|
| 10 |
+
provenance/sources.json. See LICENSE for the code license.
|
| 11 |
+
|
| 12 |
+
Model weights are NOT covered by this repository's Apache-2.0 code license.
|
| 13 |
+
MiniMax-H3-Image weights remain subject to the MiniMax-H3-Image Community
|
| 14 |
+
License Agreement; the separate MiniMax-H3 text encoder retains its own terms.
|
| 15 |
+
No model weights are included in this repository.
|
README.md
ADDED
|
@@ -0,0 +1,156 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
library_name: mlx
|
| 3 |
+
pipeline_tag: text-to-image
|
| 4 |
+
license: other
|
| 5 |
+
license_name: minimax-h3-image-community-license-agreement
|
| 6 |
+
license_link: https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx/blob/v0.4.0/LICENSE-model
|
| 7 |
+
base_model: MiniMaxAI/MiniMax-H3-Image
|
| 8 |
+
language:
|
| 9 |
+
- en
|
| 10 |
+
tags:
|
| 11 |
+
- mlx
|
| 12 |
+
- apple-silicon
|
| 13 |
+
- macos
|
| 14 |
+
- minimax-h3
|
| 15 |
+
- text-to-image
|
| 16 |
+
- image-to-image
|
| 17 |
+
- image-editing
|
| 18 |
+
- image-generation
|
| 19 |
+
- safetensors
|
| 20 |
+
inference: false
|
| 21 |
+
---
|
| 22 |
+
|
| 23 |
+
# MiniMax H3 Image on Apple silicon
|
| 24 |
+
|
| 25 |
+
**Generate and edit images locally with MLX. Choose one weight variant; reuse the shared components.**
|
| 26 |
+
|
| 27 |
+
[View the generated showcase and comparisons](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples)
|
| 28 |
+
|
| 29 |
+
*The gallery contains AI-generated images from recorded local runs. It uses
|
| 30 |
+
manual access review under the model license. [Prompts, seeds and precision
|
| 31 |
+
settings](examples/README.md) are also documented here.*
|
| 32 |
+
|
| 33 |
+
A community port of [MiniMax-H3-Image](https://huggingface.co/MiniMaxAI/MiniMax-H3-Image)
|
| 34 |
+
by [Devin Lai](https://huggingface.co/devin-lai). Native MLX/Metal inference,
|
| 35 |
+
all six distilled PDD steps, reference-image editing, lossless BF16 packing
|
| 36 |
+
and optional Q8/Q4 weights. Model operators run locally on your Mac.
|
| 37 |
+
|
| 38 |
+
[Quick start](#quick-start) · [Choose weights](#choose-your-download) ·
|
| 39 |
+
[Usage](USAGE.md) · [Benchmarks](BENCHMARKS.md) ·
|
| 40 |
+
[Collection](https://huggingface.co/collections/devin-lai/minimax-h3-image-apple-silicon-mlx-6af64fcd11d7d7a3b17e11d8) · [Repository map](MODEL_INDEX.md) · [简体中文](README.zh-CN.md)
|
| 41 |
+
|
| 42 |
+
**Start with packed12 on a sufficiently large Mac.** It reconstructs the
|
| 43 |
+
original BF16 weight bits before computation. It is storage compression,
|
| 44 |
+
not quantization. The tested machine is an **M5 Pro with 64 GiB**;
|
| 45 |
+
smaller-memory Macs have not been qualified.
|
| 46 |
+
|
| 47 |
+
## Choose your download
|
| 48 |
+
|
| 49 |
+
The main repository contains inference code, documentation and comparison
|
| 50 |
+
records. Generated images are in the separately gated example gallery. Each
|
| 51 |
+
linked model repository contains one weight choice.
|
| 52 |
+
The downloader fetches that choice and its required shared files, then reuses
|
| 53 |
+
the same pinned upstream text encoder across variants.
|
| 54 |
+
|
| 55 |
+
| Variant | Variant weights¹ | Choose it for |
|
| 56 |
+
|---|---:|---|
|
| 57 |
+
| **[Lossless packed BF16](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-packed12)** | **27.23 GiB** | Recommended exact storage choice; original BF16 payloads |
|
| 58 |
+
| [Original BF16](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-bf16) | 61.73 GiB | Unmodified complete transformer storage |
|
| 59 |
+
| [Q8](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-q8) | 19.83 GiB | Smaller core; image and detail changes |
|
| 60 |
+
| [Q4](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-q4) | 10.50 GiB | Smallest core; stronger fidelity tradeoffs |
|
| 61 |
+
|
| 62 |
+
¹ Excludes [shared VAE, support tensors, heads and tables](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-shared),
|
| 63 |
+
the separate **roughly 62 GiB text encoder**, Python dependencies and runtime
|
| 64 |
+
memory. BF16 already includes native support; the downloader omits its redundant
|
| 65 |
+
shared copy.
|
| 66 |
+
Download sizes are not RAM requirements. Q8/Q4 quantize main and refiner
|
| 67 |
+
attention/MLP weights with MLX affine groups of 64; FP32 precision islands stay
|
| 68 |
+
native. Quantization has not established a generation-speed advantage here.
|
| 69 |
+
|
| 70 |
+
**License and access:** model weights retain MiniMax's community agreements,
|
| 71 |
+
including territory and commercial restrictions; they are not unrestricted
|
| 72 |
+
open-source weights. Model components use manual access review.
|
| 73 |
+
[Status and license details](RELEASE.md).
|
| 74 |
+
|
| 75 |
+
## Quick start
|
| 76 |
+
|
| 77 |
+
Use an Apple silicon Mac, native arm64 Python 3.12 and
|
| 78 |
+
[uv](https://docs.astral.sh/uv/getting-started/installation/). Request access
|
| 79 |
+
on the selected model and shared-component pages before downloading weights:
|
| 80 |
+
|
| 81 |
+
```bash
|
| 82 |
+
uv venv --python 3.12 .venv
|
| 83 |
+
source .venv/bin/activate
|
| 84 |
+
uv pip install huggingface-hub==0.36.2
|
| 85 |
+
hf auth login
|
| 86 |
+
|
| 87 |
+
hf download devin-lai/MiniMax-H3-Image-mlx --revision v0.4.0 \
|
| 88 |
+
--include 'h3_mlx/*' pyproject.toml LICENSE NOTICE \
|
| 89 |
+
--local-dir h3-runtime
|
| 90 |
+
uv pip install './h3-runtime[native]'
|
| 91 |
+
h3-mlx doctor
|
| 92 |
+
|
| 93 |
+
h3-mlx download --variant packed12 --model-dir models/packed12
|
| 94 |
+
h3-mlx generate --model models/packed12 \
|
| 95 |
+
--text-encoder models/packed12/text_encoder \
|
| 96 |
+
'An editorial photograph of a cobalt perfume bottle on pale stone' \
|
| 97 |
+
--width 2048 --height 2048 --seed 731 --output outputs/bottle.png
|
| 98 |
+
```
|
| 99 |
+
|
| 100 |
+
The first download is large because the native text encoder is separate.
|
| 101 |
+
Reuse an existing encoder with `--text-encoder-path /path/to/text_encoder`.
|
| 102 |
+
Use `--variant q8`, `q4` or `bf16` to select another weight repository.
|
| 103 |
+
Each output includes a JSON record with the prompt, seed, schedule, hardware,
|
| 104 |
+
precision, timings and memory. [Offline use, tuning and Python API](USAGE.md).
|
| 105 |
+
|
| 106 |
+
For reference-image editing, add `--image bottle.png` and describe the edit
|
| 107 |
+
using `<Picture 1>`. The implementation accepts up to sixteen ordered inputs;
|
| 108 |
+
the recorded edit cohort validates one reference. Detailed English prompts are
|
| 109 |
+
recommended; the runtime does not silently expand them.
|
| 110 |
+
|
| 111 |
+
## Measured on M5 Pro / 64 GiB
|
| 112 |
+
|
| 113 |
+
The selected exact tuning measured **62.49 s dense / 64.05 s packed** for warm
|
| 114 |
+
2048-square generation, with maximum sampled parent footprints of **40.50 /
|
| 115 |
+
32.56 GiB** across four candidate cases. Each mode improved against its own
|
| 116 |
+
paired MLX control: **5.07% / 3.57%**. Every pixel and saved denoising tensor
|
| 117 |
+
matched the corresponding control in the recorded four-case suites.
|
| 118 |
+
|
| 119 |
+
These are historical local campaigns with cached conditioning and resident
|
| 120 |
+
weights, three alternating repeats per timing case. They exclude startup and
|
| 121 |
+
downloads. They do not establish CUDA pixel identity, a minimum RAM capacity,
|
| 122 |
+
new packaging performance or a universal speed guarantee.
|
| 123 |
+
[Method, ranges, raw receipts and limitations](BENCHMARKS.md).
|
| 124 |
+
|
| 125 |
+
## Inspect, reproduce, contribute
|
| 126 |
+
|
| 127 |
+
- [Original examples and provenance](examples/README.md): authentic outputs,
|
| 128 |
+
prompts, seeds and reference images, clearly identified as AI-generated.
|
| 129 |
+
- [Native / Q8 / Q4 comparisons](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/product/stack.png): inspect the
|
| 130 |
+
lettering and detail changes before choosing compact weights.
|
| 131 |
+
- [Technical guide](docs/TECHNICAL.md): precision rules, resident Python
|
| 132 |
+
pipelines, reference-image processing and experiment reproduction.
|
| 133 |
+
- [Validation](docs/VALIDATION.md): release software checks and fresh inference.
|
| 134 |
+
- [Community discussions](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx/discussions):
|
| 135 |
+
share a reproducible issue or result with your variant, prompt, seed, canvas,
|
| 136 |
+
Mac configuration and generated JSON record.
|
| 137 |
+
|
| 138 |
+
If the project helps you, like the variant you use and
|
| 139 |
+
[follow devin-lai](https://huggingface.co/devin-lai) for future Mac releases.
|
| 140 |
+
Measured contributions and examples from more Apple silicon configurations
|
| 141 |
+
are welcome. No hosted inference service is bundled.
|
| 142 |
+
|
| 143 |
+
## Attribution and terms
|
| 144 |
+
|
| 145 |
+
Independent community MLX adaptation by Devin Lai, based on MiniMax's released
|
| 146 |
+
weights and the inspected SGLang/Transformers inference contracts. This is not
|
| 147 |
+
an official MiniMax release or endorsement. Powered by MiniMax-H3-Image.
|
| 148 |
+
|
| 149 |
+
**Runtime code:** [Apache-2.0](LICENSE).
|
| 150 |
+
**Image weights and derivatives:** [MiniMax-H3-Image Community License Agreement](LICENSE-model).
|
| 151 |
+
**Separate text encoder:** [MiniMax H3 Community License Agreement](LICENSE-text-encoder).
|
| 152 |
+
The published agreements exclude the EU, UK, Republic of Korea and US absent
|
| 153 |
+
separate permission and include commercial, redistribution and acceptable-use
|
| 154 |
+
conditions. Access review does not grant additional rights.
|
| 155 |
+
[Modifications](docs/MODIFICATIONS.md) · [NOTICE](NOTICE) ·
|
| 156 |
+
[Pinned source provenance](provenance/sources.json).
|
README.zh-CN.md
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# MiniMax H3 Image · Apple 芯片 / MLX
|
| 2 |
+
|
| 3 |
+
在 Mac 上通过 MLX/Metal 本地生成和编辑图像。由 Devin Lai 维护的社区移植,
|
| 4 |
+
保留原始六步 PDD 调度、BF16 权重与 FP32 精度敏感层,提供无损 packed12、
|
| 5 |
+
原始 BF16,以及有损 Q8/Q4 选项。
|
| 6 |
+
|
| 7 |
+
[查看 AI 生成的示例与对比图(需申请访问)](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples)
|
| 8 |
+
|
| 9 |
+
主仓库存放运行代码、文档和可选的对比证据。模型权重按变体放在独立仓库;
|
| 10 |
+
只下载所选变体,复用 VAE 等公共组件和固定版本的官方文本编码器。
|
| 11 |
+
文本编码器约 62 GiB,首次下载量较大,也可以复用已有文件。
|
| 12 |
+
|
| 13 |
+
建议首先选择 **packed12**:这是 BF16 位级无损存储压缩,不是 12 位量化。
|
| 14 |
+
Q8/Q4 会改变生成结果,并不保证速度更快。测试设备是 **M5 Pro / 64 GiB**;
|
| 15 |
+
尚未确认更小内存设备的最低配置。历史 2048×2048 热运行实测约 62–64 秒,
|
| 16 |
+
不含下载和进程启动,详情见[基准说明](BENCHMARKS.md)。
|
| 17 |
+
|
| 18 |
+
安装运行环境并获得所需访问权限后可使用:
|
| 19 |
+
|
| 20 |
+
```bash
|
| 21 |
+
h3-mlx download --variant packed12 --model-dir models/packed12
|
| 22 |
+
h3-mlx generate --model models/packed12 \
|
| 23 |
+
--text-encoder models/packed12/text_encoder \
|
| 24 |
+
'An editorial photograph of a cobalt perfume bottle on pale stone' \
|
| 25 |
+
--seed 731 --output outputs/bottle.png
|
| 26 |
+
```
|
| 27 |
+
|
| 28 |
+
[安装与使用](USAGE.md) · [模型选择](MODEL_INDEX.md) ·
|
| 29 |
+
[原始输出与提示词](examples/README.md) · [English](README.md)
|
| 30 |
+
|
| 31 |
+
**发布版本:v0.4.0,模型组件采用人工审核访问。** 模型并非无限制开源许可。
|
| 32 |
+
图像权重及其衍生物保留 MiniMax-H3-Image 社区许可;文本编码器保留其独立许可。
|
| 33 |
+
现行协议对欧盟、英国、韩国和美国有地域限制,并包含商业使用、再分发和可接受使用条件。
|
| 34 |
+
使用前请确认具备所需权限。[发布与许可说明](RELEASE.md)。
|
| 35 |
+
|
| 36 |
+
如项目有帮助,欢迎在 Hugging Face 点赞所用模型、关注
|
| 37 |
+
[devin-lai](https://huggingface.co/devin-lai),并分享附有设备、变体、提示词、
|
| 38 |
+
seed 和生成 JSON 记录的可复现结果。
|
RELEASE.md
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Release v0.4.0
|
| 2 |
+
|
| 3 |
+
The main repository contains the MLX runtime, documentation, tests and
|
| 4 |
+
comparison records. Model files are split across four variant repositories and
|
| 5 |
+
a shared-components repository. Choose one variant; the downloader reuses the
|
| 6 |
+
shared components and the separately pinned upstream text encoder. Generated
|
| 7 |
+
images and visual comparisons are in a separate, manually gated example gallery.
|
| 8 |
+
|
| 9 |
+
[Browse the collection](https://huggingface.co/collections/devin-lai/minimax-h3-image-apple-silicon-mlx-6af64fcd11d7d7a3b17e11d8).
|
| 10 |
+
|
| 11 |
+
The component repositories use manual access review. Request access to your
|
| 12 |
+
chosen variant and the shared repository, read the applicable licenses and
|
| 13 |
+
sign in with `hf auth login`. Repository access does not itself grant rights
|
| 14 |
+
outside the upstream licenses. The agreements include territorial, commercial,
|
| 15 |
+
redistribution and acceptable-use conditions; their standard grant excludes the
|
| 16 |
+
EU, UK, Republic of Korea and US. The code is Apache-2.0; model weights retain
|
| 17 |
+
their respective MiniMax community licenses. No hosted inference service is
|
| 18 |
+
included.
|
| 19 |
+
|
| 20 |
+
[Quick start](README.md#quick-start) · [Model index](MODEL_INDEX.md) ·
|
| 21 |
+
[Usage](USAGE.md) · [Validation](docs/VALIDATION.md)
|
| 22 |
+
|
| 23 |
+
## Revisions and validation
|
| 24 |
+
|
| 25 |
+
`h3_mlx/model_index.json` pins the shared and variant repositories to immutable
|
| 26 |
+
commits. Each model repository also has a `v0.4.0` tag and a `files.json`
|
| 27 |
+
manifest with byte sizes and SHA-256 hashes. The uploaded component files were
|
| 28 |
+
checked against those manifests. The release validation records 53 local tests
|
| 29 |
+
and full-image packaging reproductions for packed12 and Q4; it does not claim
|
| 30 |
+
a fresh full-image Q8 reproduction or validation on another machine.
|
| 31 |
+
|
| 32 |
+
## Preparing artifacts
|
| 33 |
+
|
| 34 |
+
For maintainers with the original model and the validated packed cache:
|
| 35 |
+
|
| 36 |
+
```bash
|
| 37 |
+
python scripts/prepare_hf_release.py \
|
| 38 |
+
--model /path/to/MiniMax-H3-Image \
|
| 39 |
+
--packed-cache /path/to/validated/packed12-cache --quantize q4
|
| 40 |
+
```
|
| 41 |
+
|
| 42 |
+
Staging is written under `.release/huggingface/`. Existing model and packed
|
| 43 |
+
files are linked rather than copied; optional quantized variants require
|
| 44 |
+
additional scratch space. Preserve original checkpoints and caches. The
|
| 45 |
+
publisher script uploads and verifies individual components before finalizing
|
| 46 |
+
the pinned catalog. It does not automatically approve access requests or post
|
| 47 |
+
announcements.
|
USAGE.md
ADDED
|
@@ -0,0 +1,102 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Install and use
|
| 2 |
+
|
| 3 |
+
Use Apple silicon, native arm64 Python 3.12, and a compatible macOS Metal
|
| 4 |
+
installation. The measured environment is M5 Pro / 64 GiB, macOS 27.0.1,
|
| 5 |
+
MLX 0.32.4 and Transformers 4.57.6. Smaller Macs have not been qualified.
|
| 6 |
+
|
| 7 |
+
## Release installation
|
| 8 |
+
|
| 9 |
+
Request access on the selected variant and shared model pages and read their
|
| 10 |
+
licenses. Install [uv](https://docs.astral.sh/uv/getting-started/installation/)
|
| 11 |
+
and authenticate with Hugging Face as shown below.
|
| 12 |
+
|
| 13 |
+
```bash
|
| 14 |
+
uv venv --python 3.12 .venv
|
| 15 |
+
source .venv/bin/activate
|
| 16 |
+
uv pip install huggingface-hub==0.36.2
|
| 17 |
+
hf auth login
|
| 18 |
+
hf download devin-lai/MiniMax-H3-Image-mlx --revision v0.4.0 \
|
| 19 |
+
--include 'h3_mlx/*' pyproject.toml LICENSE NOTICE \
|
| 20 |
+
--local-dir h3-runtime
|
| 21 |
+
uv pip install './h3-runtime[native]'
|
| 22 |
+
h3-mlx doctor
|
| 23 |
+
|
| 24 |
+
h3-mlx download --variant packed12 --model-dir models/packed12
|
| 25 |
+
h3-mlx generate --model models/packed12 \
|
| 26 |
+
--text-encoder models/packed12/text_encoder \
|
| 27 |
+
'An editorial photograph of a cobalt perfume bottle on pale stone' \
|
| 28 |
+
--width 2048 --height 2048 --seed 731 --output outputs/bottle.png
|
| 29 |
+
```
|
| 30 |
+
|
| 31 |
+
The release catalog records immutable component revisions. It rejects
|
| 32 |
+
unpublished or unpinned weights. For local development use `uv pip install
|
| 33 |
+
-e '.[native]'` and the original checkpoint paths, as in
|
| 34 |
+
[the technical guide](docs/TECHNICAL.md).
|
| 35 |
+
|
| 36 |
+
The `native` extra supplies PyTorch for the original CPU noise stream. Model
|
| 37 |
+
operators still run in MLX on Metal. Without that extra, `--rng mlx` uses a
|
| 38 |
+
different random stream and does not reproduce the same seeded images.
|
| 39 |
+
|
| 40 |
+
## Select another variant or reuse existing weights
|
| 41 |
+
|
| 42 |
+
```bash
|
| 43 |
+
h3-mlx download --variant q8 --model-dir models/q8 \
|
| 44 |
+
--text-encoder-path /path/to/MiniMax-H3/text_encoder
|
| 45 |
+
h3-mlx generate --model models/q8 --text-encoder models/q8/text_encoder \
|
| 46 |
+
'A detailed scene description' --output outputs/q8.png
|
| 47 |
+
```
|
| 48 |
+
|
| 49 |
+
Use `q4`, `bf16` or `packed12` in the same way. Use a separate assembly
|
| 50 |
+
directory for each variant. Shared files and the encoder are cached once;
|
| 51 |
+
no other variant is fetched. The release selects quantization automatically,
|
| 52 |
+
so do not add `--quantize` or `--quantized-core` to published variants.
|
| 53 |
+
|
| 54 |
+
To fetch the image model without the encoder, use `--skip-text-encoder` and
|
| 55 |
+
pass your encoder path directly to generation. `--local-files-only` avoids
|
| 56 |
+
network access when all required files already exist in the Hub cache.
|
| 57 |
+
|
| 58 |
+
## Measured exact tuning
|
| 59 |
+
|
| 60 |
+
On the tested M5 Pro / 64 GiB, add:
|
| 61 |
+
|
| 62 |
+
```bash
|
| 63 |
+
--compile-blocks --eval-every 0 --prefetch-blocks 4 \
|
| 64 |
+
--compile-vae --vae-batch 4 --kernel metal-qk-exact --tune-matmul
|
| 65 |
+
```
|
| 66 |
+
|
| 67 |
+
Optional `--wired-gb 32` (packed12) or `--wired-gb 42` (BF16) were tested on
|
| 68 |
+
this 64 GiB Mac. The runtime checks Metal's limit. They are not universal
|
| 69 |
+
settings for other machines. Q8/Q4 are storage and memory tradeoffs and have
|
| 70 |
+
not established a generation-speed advantage. Frozen modulation tables
|
| 71 |
+
require MLX 0.32.4 and `MLX_ENABLE_TF32=0`; original checkpoints remain an
|
| 72 |
+
alternative when regenerating tables in another supported environment.
|
| 73 |
+
|
| 74 |
+
## Reference-image editing
|
| 75 |
+
|
| 76 |
+
```bash
|
| 77 |
+
h3-mlx generate --model models/packed12 \
|
| 78 |
+
--text-encoder models/packed12/text_encoder \
|
| 79 |
+
'Change the bottle in <Picture 1> to emerald glass while preserving its label' \
|
| 80 |
+
--image bottle.png --seed 42 --output outputs/edit.png
|
| 81 |
+
```
|
| 82 |
+
|
| 83 |
+
The implementation accepts up to sixteen ordered references. The recorded
|
| 84 |
+
image-edit cohort covers one reference. This does not establish quality for
|
| 85 |
+
every multi-image composition. Use detailed English prompts. Prompt expansion
|
| 86 |
+
is not automatic. The default 2048-square canvas is within the model's usual
|
| 87 |
+
4–20 MP working range. Smaller requested images are generated on an enlarged
|
| 88 |
+
canvas and resized; development overrides are documented in the technical guide.
|
| 89 |
+
|
| 90 |
+
Each output has a JSON record with precision, seeds, schedule, timings,
|
| 91 |
+
memory and environment. Add `--save-trace` for numerical audits. Report issues
|
| 92 |
+
with that record, your command, chip, memory, macOS and package versions.
|
| 93 |
+
|
| 94 |
+
## Licenses and access
|
| 95 |
+
|
| 96 |
+
The image weights and derivatives retain the MiniMax-H3-Image Community
|
| 97 |
+
License Agreement, including its territory, commercial, redistribution and
|
| 98 |
+
acceptable-use conditions. The text encoder has its own MiniMax H3 agreement.
|
| 99 |
+
The published agreements exclude the EU, UK, Republic of Korea and US absent
|
| 100 |
+
separate permission. A manual Hub gate supports access review; it does not
|
| 101 |
+
grant rights outside those agreements. See `LICENSE-model`,
|
| 102 |
+
`LICENSE-text-encoder`, `NOTICE` and [release status](RELEASE.md).
|
comparisons/README.md
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Image comparison gallery
|
| 2 |
+
|
| 3 |
+
All comparison pictures are actual recorded inference outputs. Each stack
|
| 4 |
+
contains labeled full frames, identical 1:1 crops and absolute RGB differences
|
| 5 |
+
amplified eight times. Metrics apply to full-resolution images, not previews.
|
| 6 |
+
|
| 7 |
+
| Comparison | Viewer | Image stack | Native detail crops |
|
| 8 |
+
|---|---|---|---|
|
| 9 |
+
| 2K product: BF16 tuning, Q8, Q4, three-pass preview | [Open](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/product/index.html) | [Frames](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/product/stack.png) | [Details](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/product/details.png) |
|
| 10 |
+
| 2K portrait: native BF16 vs Q8 | [Open](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/portrait/index.html) | [Frames](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/portrait/stack.png) | [Details](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/portrait/details.png) |
|
| 11 |
+
| Same final latent: VAE batches 1, 4, 8, 16 | [Open](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/vae/index.html) | [Frames](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/vae/stack.png) | [Details](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/vae/details.png) |
|
| 12 |
+
| Saved CUDA BF16 vs MLX, product | [Open](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/product-cuda/index.html) | [Frames](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/product-cuda/stack.png) | [Details](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/product-cuda/details.png) |
|
| 13 |
+
| Saved CUDA BF16 vs MLX, portrait | [Open](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/portrait-cuda/index.html) | [Frames](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/portrait-cuda/stack.png) | [Details](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/portrait-cuda/details.png) |
|
| 14 |
+
| Saved CUDA BF16 vs MLX, native 4K | [Open](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/native-4k-cuda/index.html) | [Frames](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/native-4k-cuda/stack.png) | [Details](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/native-4k-cuda/details.png) |
|
| 15 |
+
|
| 16 |
+
[The editing demonstration](https://huggingface.co/devin-lai/MiniMax-H3-Image-mlx-examples/blob/v0.4.0/comparisons/edit-example/before-after.png) places the input
|
| 17 |
+
reference beside the native MLX emerald-glass edit. It is a functional example,
|
| 18 |
+
not a pixel-similarity comparison.
|
| 19 |
+
|
| 20 |
+
The CUDA comparison uses the original saved RTX 5090 BF16 run with upstream
|
| 21 |
+
`quality=lossless`. Its hardware and decoder quality setting differ from the
|
| 22 |
+
MLX native tile recipe. It provides visual context; it does not isolate port
|
| 23 |
+
error or establish a same-hardware speedup.
|
| 24 |
+
|
| 25 |
+
The default MLX BF16 output is the reference for the quantization/tuning
|
| 26 |
+
comparisons. Q8, Q4, fused kernels and fewer steps change its pixels. Read the
|
| 27 |
+
[experiment report](../reports/RESULTS.md) before selecting a profile.
|
| 28 |
+
|
| 29 |
+
Full-resolution Mac outputs and trace tensors are retained locally under
|
| 30 |
+
`outputs/suite/` (ignored by Git). Source hashes, configuration, memory and
|
| 31 |
+
timing records are exported under `reports/inference/` and each gallery's
|
| 32 |
+
`metrics.json`. Original model weights are not included.
|
comparisons/cuda-reference/native-4k.json
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "An overhead editorial photograph of an oceanographer's desk: a coiled orange rope, silver calipers, a pale-blue sea chart with fine contour lines, a black-and-white photograph of a lighthouse, a few tiny shells and a weathered brass compass. On a pale notecard write 'NORTH STAR' in neat bold navy capitals. One shaft of late afternoon sunlight, precise paper fibers and metal scratches, realistic soft shadows, a carefully balanced square composition.",
|
| 3 |
+
"seed": 802,
|
| 4 |
+
"size": [
|
| 5 |
+
4096,
|
| 6 |
+
4096
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
4096,
|
| 10 |
+
4096
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"sigmas": [
|
| 14 |
+
1.0,
|
| 15 |
+
0.9675236940383911,
|
| 16 |
+
0.8875485062599182,
|
| 17 |
+
0.75,
|
| 18 |
+
0.5327739119529724,
|
| 19 |
+
0.23200887441635132,
|
| 20 |
+
0.0
|
| 21 |
+
],
|
| 22 |
+
"steps": [
|
| 23 |
+
0,
|
| 24 |
+
1,
|
| 25 |
+
2,
|
| 26 |
+
3,
|
| 27 |
+
4,
|
| 28 |
+
5
|
| 29 |
+
],
|
| 30 |
+
"output": "comparisons/cuda-reference/native-4k.png",
|
| 31 |
+
"timings": {
|
| 32 |
+
"total_s": 32.5837
|
| 33 |
+
},
|
| 34 |
+
"environment": {
|
| 35 |
+
"device": "RTX 5090",
|
| 36 |
+
"backend": "SGLang CUDA",
|
| 37 |
+
"quality": "lossless"
|
| 38 |
+
},
|
| 39 |
+
"source_record": {
|
| 40 |
+
"label": "single-bf16-stream",
|
| 41 |
+
"case": "native-4k",
|
| 42 |
+
"trial": 1,
|
| 43 |
+
"wall_seconds": 32.5837,
|
| 44 |
+
"image_bytes": 50339652,
|
| 45 |
+
"sha256": "7fd381c76d07a3f5a5e3f1982d454d31c56101f9af22c70900aab983e8465bee",
|
| 46 |
+
"size": "4096x4096",
|
| 47 |
+
"seed": 802,
|
| 48 |
+
"task": "text-to-image",
|
| 49 |
+
"quality": "lossless",
|
| 50 |
+
"output_compression": 1,
|
| 51 |
+
"attention_override": null,
|
| 52 |
+
"h3_opt": null,
|
| 53 |
+
"prompt": "An overhead editorial photograph of an oceanographer's desk: a coiled orange rope, silver calipers, a pale-blue sea chart with fine contour lines, a black-and-white photograph of a lighthouse, a few tiny shells and a weathered brass compass. On a pale notecard write 'NORTH STAR' in neat bold navy capitals. One shaft of late afternoon sunlight, precise paper fibers and metal scratches, realistic soft shadows, a carefully balanced square composition."
|
| 54 |
+
},
|
| 55 |
+
"reference_images": [],
|
| 56 |
+
"reference_sha256": [],
|
| 57 |
+
"dit": {
|
| 58 |
+
"precision": "BF16"
|
| 59 |
+
},
|
| 60 |
+
"vae": {
|
| 61 |
+
"quality": "lossless"
|
| 62 |
+
}
|
| 63 |
+
}
|
comparisons/cuda-reference/portrait.json
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "An intimate natural-light portrait of an elderly woman in a botanical conservatory, reading a small red clothbound book. Warm brown skin with visible freckles and fine wrinkles, silver curls lit from behind, intricate indigo knit cardigan. Soft fern fronds out of focus in the foreground; detailed hands and realistic skin texture. A candid 85mm color photograph with gentle shadows and no lettering.",
|
| 3 |
+
"seed": 1234,
|
| 4 |
+
"size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"sigmas": [
|
| 14 |
+
1.0,
|
| 15 |
+
0.9675236940383911,
|
| 16 |
+
0.8875485062599182,
|
| 17 |
+
0.75,
|
| 18 |
+
0.5327739119529724,
|
| 19 |
+
0.23200887441635132,
|
| 20 |
+
0.0
|
| 21 |
+
],
|
| 22 |
+
"steps": [
|
| 23 |
+
0,
|
| 24 |
+
1,
|
| 25 |
+
2,
|
| 26 |
+
3,
|
| 27 |
+
4,
|
| 28 |
+
5
|
| 29 |
+
],
|
| 30 |
+
"output": "comparisons/cuda-reference/portrait.png",
|
| 31 |
+
"timings": {
|
| 32 |
+
"total_s": 6.7668
|
| 33 |
+
},
|
| 34 |
+
"environment": {
|
| 35 |
+
"device": "RTX 5090",
|
| 36 |
+
"backend": "SGLang CUDA",
|
| 37 |
+
"quality": "lossless"
|
| 38 |
+
},
|
| 39 |
+
"source_record": {
|
| 40 |
+
"label": "single-bf16-stream",
|
| 41 |
+
"case": "portrait",
|
| 42 |
+
"trial": 1,
|
| 43 |
+
"wall_seconds": 6.7668,
|
| 44 |
+
"image_bytes": 12585988,
|
| 45 |
+
"sha256": "a8e360798a511a2b74f7ee8679699d253282afcf01423f6496f504a2f11c7aad",
|
| 46 |
+
"size": "2048x2048",
|
| 47 |
+
"seed": 1234,
|
| 48 |
+
"task": "text-to-image",
|
| 49 |
+
"quality": "lossless",
|
| 50 |
+
"output_compression": 1,
|
| 51 |
+
"attention_override": null,
|
| 52 |
+
"h3_opt": null,
|
| 53 |
+
"prompt": "An intimate natural-light portrait of an elderly woman in a botanical conservatory, reading a small red clothbound book. Warm brown skin with visible freckles and fine wrinkles, silver curls lit from behind, intricate indigo knit cardigan. Soft fern fronds out of focus in the foreground; detailed hands and realistic skin texture. A candid 85mm color photograph with gentle shadows and no lettering."
|
| 54 |
+
},
|
| 55 |
+
"reference_images": [],
|
| 56 |
+
"reference_sha256": [],
|
| 57 |
+
"dit": {
|
| 58 |
+
"precision": "BF16"
|
| 59 |
+
},
|
| 60 |
+
"vae": {
|
| 61 |
+
"quality": "lossless"
|
| 62 |
+
}
|
| 63 |
+
}
|
comparisons/cuda-reference/product.json
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "Square editorial studio photograph of a dark cobalt glass perfume bottle on pale travertine. The centered cream label reads exactly 'NIGHT TIDE' in large engraved serif letters and 'EAU DE PARFUM' in small capitals beneath. Dappled blue caustics, crisp glass edges, fine pores in the stone, dark reflections through the translucent bottle, restrained palette and generous negative space. No other text.",
|
| 3 |
+
"seed": 731,
|
| 4 |
+
"size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"sigmas": [
|
| 14 |
+
1.0,
|
| 15 |
+
0.9675236940383911,
|
| 16 |
+
0.8875485062599182,
|
| 17 |
+
0.75,
|
| 18 |
+
0.5327739119529724,
|
| 19 |
+
0.23200887441635132,
|
| 20 |
+
0.0
|
| 21 |
+
],
|
| 22 |
+
"steps": [
|
| 23 |
+
0,
|
| 24 |
+
1,
|
| 25 |
+
2,
|
| 26 |
+
3,
|
| 27 |
+
4,
|
| 28 |
+
5
|
| 29 |
+
],
|
| 30 |
+
"output": "comparisons/cuda-reference/product.png",
|
| 31 |
+
"timings": {
|
| 32 |
+
"total_s": 6.7003
|
| 33 |
+
},
|
| 34 |
+
"environment": {
|
| 35 |
+
"device": "RTX 5090",
|
| 36 |
+
"backend": "SGLang CUDA",
|
| 37 |
+
"quality": "lossless"
|
| 38 |
+
},
|
| 39 |
+
"source_record": {
|
| 40 |
+
"label": "single-bf16-stream",
|
| 41 |
+
"case": "product",
|
| 42 |
+
"trial": 1,
|
| 43 |
+
"wall_seconds": 6.7003,
|
| 44 |
+
"image_bytes": 12585988,
|
| 45 |
+
"sha256": "66a49c7b9d281bf7a4b22356b625bdbee8e92e02b8d8d2031cc24f73601ad531",
|
| 46 |
+
"size": "2048x2048",
|
| 47 |
+
"seed": 731,
|
| 48 |
+
"task": "text-to-image",
|
| 49 |
+
"quality": "lossless",
|
| 50 |
+
"output_compression": 1,
|
| 51 |
+
"attention_override": null,
|
| 52 |
+
"h3_opt": null,
|
| 53 |
+
"prompt": "Square editorial studio photograph of a dark cobalt glass perfume bottle on pale travertine. The centered cream label reads exactly 'NIGHT TIDE' in large engraved serif letters and 'EAU DE PARFUM' in small capitals beneath. Dappled blue caustics, crisp glass edges, fine pores in the stone, dark reflections through the translucent bottle, restrained palette and generous negative space. No other text."
|
| 54 |
+
},
|
| 55 |
+
"reference_images": [],
|
| 56 |
+
"reference_sha256": [],
|
| 57 |
+
"dit": {
|
| 58 |
+
"precision": "BF16"
|
| 59 |
+
},
|
| 60 |
+
"vae": {
|
| 61 |
+
"quality": "lossless"
|
| 62 |
+
}
|
| 63 |
+
}
|
comparisons/edit-example/record.json
ADDED
|
@@ -0,0 +1,120 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "Change the cobalt blue glass perfume bottle in <Picture 1> to deep emerald green glass. Preserve the pale engraved NIGHT TIDE label, exact lettering, bottle shape, cap, stone backdrop, composition, lighting and shadows. The glass should be visibly green with realistic emerald highlights and reflections.",
|
| 3 |
+
"seed": 42,
|
| 4 |
+
"size": [
|
| 5 |
+
1024,
|
| 6 |
+
1024
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"sigmas": [
|
| 14 |
+
1.0,
|
| 15 |
+
0.9675236940383911,
|
| 16 |
+
0.8875485062599182,
|
| 17 |
+
0.75,
|
| 18 |
+
0.5327739119529724,
|
| 19 |
+
0.23200887441635132,
|
| 20 |
+
0.0
|
| 21 |
+
],
|
| 22 |
+
"steps": [
|
| 23 |
+
0,
|
| 24 |
+
1,
|
| 25 |
+
2,
|
| 26 |
+
3,
|
| 27 |
+
4,
|
| 28 |
+
5
|
| 29 |
+
],
|
| 30 |
+
"dit": {
|
| 31 |
+
"cache_dir": "cache",
|
| 32 |
+
"cache_gb": 38,
|
| 33 |
+
"bits": null,
|
| 34 |
+
"group_size": 64,
|
| 35 |
+
"mlp_chunk": 0,
|
| 36 |
+
"query_chunk": 0,
|
| 37 |
+
"kernel": "native",
|
| 38 |
+
"threads": 256,
|
| 39 |
+
"quantized_path": null
|
| 40 |
+
},
|
| 41 |
+
"encoder": {
|
| 42 |
+
"cache_dir": "cache",
|
| 43 |
+
"bits": null,
|
| 44 |
+
"group_size": 64,
|
| 45 |
+
"query_chunk": 0
|
| 46 |
+
},
|
| 47 |
+
"vae": {
|
| 48 |
+
"tile_batch": 1,
|
| 49 |
+
"dtype": "bfloat16"
|
| 50 |
+
},
|
| 51 |
+
"environment": {
|
| 52 |
+
"platform": "macOS-27.0.1-arm64-arm-64bit",
|
| 53 |
+
"machine": "arm64",
|
| 54 |
+
"metal": {
|
| 55 |
+
"device_name": "Apple M5 Pro",
|
| 56 |
+
"max_recommended_working_set_size": 55662788608,
|
| 57 |
+
"memory_size": 68719476736,
|
| 58 |
+
"architecture": "applegpu_g17s",
|
| 59 |
+
"max_buffer_length": 41747087360,
|
| 60 |
+
"resource_limit": 499000
|
| 61 |
+
},
|
| 62 |
+
"versions": {
|
| 63 |
+
"mlx": "0.32.4",
|
| 64 |
+
"mlx-metal": "0.32.4",
|
| 65 |
+
"numpy": "2.5.4",
|
| 66 |
+
"safetensors": "0.8.0",
|
| 67 |
+
"transformers": "4.57.6",
|
| 68 |
+
"torch": "2.15.0",
|
| 69 |
+
"Pillow": "13.0.0",
|
| 70 |
+
"scikit-image": "0.26.0"
|
| 71 |
+
},
|
| 72 |
+
"precision_environment": {
|
| 73 |
+
"MLX_ENABLE_TF32": "0",
|
| 74 |
+
"MLX_CONV_WINOGRAD": "0"
|
| 75 |
+
}
|
| 76 |
+
},
|
| 77 |
+
"timings": {
|
| 78 |
+
"encode_s": 28.711510707857087,
|
| 79 |
+
"dit_setup_s": 0.3510471251793206,
|
| 80 |
+
"step_0_s": 32.27381366607733,
|
| 81 |
+
"step_1_s": 18.178750790888444,
|
| 82 |
+
"step_2_s": 17.952110541053116,
|
| 83 |
+
"step_3_s": 17.822316124802455,
|
| 84 |
+
"step_4_s": 17.744772125035524,
|
| 85 |
+
"step_5_s": 17.770629958016798,
|
| 86 |
+
"decode_s": 4.267031416995451,
|
| 87 |
+
"total_s": 157.7393269999884
|
| 88 |
+
},
|
| 89 |
+
"reference_images": [
|
| 90 |
+
"experiments/reference-bottle.png"
|
| 91 |
+
],
|
| 92 |
+
"reference_sha256": [
|
| 93 |
+
"96d23a5fb97d8dbff46990ec6c13a8caf8573f2b4d41820c9cae0efc3d0b872c"
|
| 94 |
+
],
|
| 95 |
+
"conditioning_cache_hit": false,
|
| 96 |
+
"dit_effective": {
|
| 97 |
+
"bits": null,
|
| 98 |
+
"group_size": 64,
|
| 99 |
+
"cache_limit_gb": 38.0,
|
| 100 |
+
"checkpoint_fingerprint": "d92ff1655d366a65a0964dc770fb50a3db623de2f490371e82776a10e2d5d900"
|
| 101 |
+
},
|
| 102 |
+
"dit_was_resident": false,
|
| 103 |
+
"dit_metrics": {
|
| 104 |
+
"block_load_s": 16.658172828843817,
|
| 105 |
+
"block_compute_s": 105.10201758518815,
|
| 106 |
+
"block_loads": 52
|
| 107 |
+
},
|
| 108 |
+
"memory_before_decode": {
|
| 109 |
+
"active_gb": 36.05878337472677,
|
| 110 |
+
"peak_gb": 37.71541484631598,
|
| 111 |
+
"cache_gb": 0.9982056273147464
|
| 112 |
+
},
|
| 113 |
+
"memory": {
|
| 114 |
+
"active_gb": 36.81037116795778,
|
| 115 |
+
"peak_gb": 37.71541484631598,
|
| 116 |
+
"cache_gb": 0.31941457837820053
|
| 117 |
+
},
|
| 118 |
+
"output": "outputs/suite/edit/native-0.png",
|
| 119 |
+
"png_sha256": "9df3f80efa5ef9f078c9acda81febdbc2d5d706f3c85c574fdfd9fd274b71304"
|
| 120 |
+
}
|
comparisons/native-4k-cuda/metrics.json
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Cross-backend comparison: hardware and VAE quality settings differ. Timings do not isolate a port speedup.",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/comparisons/cuda-reference/native-4k.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
4096,
|
| 6 |
+
4096
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
1792,
|
| 10 |
+
1792,
|
| 11 |
+
2304,
|
| 12 |
+
2304
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "CUDA BF16 / upstream lossless quality",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/comparisons/cuda-reference/native-4k.png",
|
| 24 |
+
"png_sha256": "7fd381c76d07a3f5a5e3f1982d454d31c56101f9af22c70900aab983e8465bee",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"total_s": 32.5837
|
| 32 |
+
},
|
| 33 |
+
"steps": [
|
| 34 |
+
0,
|
| 35 |
+
1,
|
| 36 |
+
2,
|
| 37 |
+
3,
|
| 38 |
+
4,
|
| 39 |
+
5
|
| 40 |
+
],
|
| 41 |
+
"timing_scope": "Fresh end-to-end request"
|
| 42 |
+
},
|
| 43 |
+
{
|
| 44 |
+
"label": "MLX BF16 / native tile recipe",
|
| 45 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/suite/native-4k/native-0.png",
|
| 46 |
+
"png_sha256": "9f5b1f2a4d1ef45900e8afd7bf132e43f437c0ded73a79aa6992fe0a968de3c6",
|
| 47 |
+
"pixel_identical": false,
|
| 48 |
+
"mae_8bit": 10.43891042470932,
|
| 49 |
+
"max_error_8bit": 255,
|
| 50 |
+
"psnr_db": 21.472787391510856,
|
| 51 |
+
"ssim_rgb": 0.8437432938484267,
|
| 52 |
+
"timings": {
|
| 53 |
+
"encode_s": 39.3051441248972,
|
| 54 |
+
"dit_setup_s": 1.2301222910173237,
|
| 55 |
+
"step_0_s": 71.125005583046,
|
| 56 |
+
"step_1_s": 65.16590758296661,
|
| 57 |
+
"step_2_s": 65.27136183297262,
|
| 58 |
+
"step_3_s": 65.02919550007209,
|
| 59 |
+
"step_4_s": 65.43438254203647,
|
| 60 |
+
"step_5_s": 65.73626679205336,
|
| 61 |
+
"decode_s": 12.110308207804337
|
| 62 |
+
},
|
| 63 |
+
"steps": [
|
| 64 |
+
0,
|
| 65 |
+
1,
|
| 66 |
+
2,
|
| 67 |
+
3,
|
| 68 |
+
4,
|
| 69 |
+
5
|
| 70 |
+
],
|
| 71 |
+
"timing_scope": "Saved DiT stages plus separately timed corrected decoder; no fresh end-to-end total"
|
| 72 |
+
}
|
| 73 |
+
],
|
| 74 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 75 |
+
}
|
comparisons/optimization-r3-compact/edit/qk-fc2-native-norm/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-compact/edit/control-validation-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
1024,
|
| 6 |
+
1024
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
256,
|
| 10 |
+
256,
|
| 11 |
+
768,
|
| 12 |
+
768
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-compact/edit/control-validation-0.png",
|
| 24 |
+
"png_sha256": "9df3f80efa5ef9f078c9acda81febdbc2d5d706f3c85c574fdfd9fd274b71304",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.0944433338008821,
|
| 32 |
+
"dit_setup_s": 0.018301625037565827,
|
| 33 |
+
"step_0_s": 16.044049208052456,
|
| 34 |
+
"step_1_s": 16.64705704106018,
|
| 35 |
+
"step_2_s": 16.798973750090227,
|
| 36 |
+
"step_3_s": 16.80766825005412,
|
| 37 |
+
"step_4_s": 16.82632016693242,
|
| 38 |
+
"step_5_s": 16.788526582997292,
|
| 39 |
+
"decode_s": 1.7753529578913003,
|
| 40 |
+
"total_s": 104.33122787508182
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2-native-norm",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-compact/edit/qk-fc2-native-norm-validation-0.png",
|
| 55 |
+
"png_sha256": "9df3f80efa5ef9f078c9acda81febdbc2d5d706f3c85c574fdfd9fd274b71304",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.09382429183460772,
|
| 63 |
+
"dit_setup_s": 0.005678124958649278,
|
| 64 |
+
"step_0_s": 15.517480874899775,
|
| 65 |
+
"step_1_s": 15.885630707954988,
|
| 66 |
+
"step_2_s": 16.043985707918182,
|
| 67 |
+
"step_3_s": 16.065357791027054,
|
| 68 |
+
"step_4_s": 16.00308766681701,
|
| 69 |
+
"step_5_s": 16.0314345411025,
|
| 70 |
+
"decode_s": 1.806969250086695,
|
| 71 |
+
"total_s": 99.78968337504193
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3-compact/holdout-detail/qk-fc2-native-norm/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-compact/holdout-detail/control-validation-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-compact/holdout-detail/control-validation-0.png",
|
| 24 |
+
"png_sha256": "ddbfc06c4556c08669d35a4618d380a99998e39a0226e7688d149993ab183038",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.08503512479364872,
|
| 32 |
+
"dit_setup_s": 0.0054474580101668835,
|
| 33 |
+
"step_0_s": 10.586685917107388,
|
| 34 |
+
"step_1_s": 10.475943374913186,
|
| 35 |
+
"step_2_s": 10.536071791080758,
|
| 36 |
+
"step_3_s": 10.609299124917015,
|
| 37 |
+
"step_4_s": 10.648755833040923,
|
| 38 |
+
"step_5_s": 10.659710499923676,
|
| 39 |
+
"decode_s": 1.892699166899547,
|
| 40 |
+
"total_s": 65.62054104101844
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2-native-norm",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-compact/holdout-detail/qk-fc2-native-norm-validation-0.png",
|
| 55 |
+
"png_sha256": "ddbfc06c4556c08669d35a4618d380a99998e39a0226e7688d149993ab183038",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.08309245808050036,
|
| 63 |
+
"dit_setup_s": 0.0016110001597553492,
|
| 64 |
+
"step_0_s": 10.02036679093726,
|
| 65 |
+
"step_1_s": 10.222182292025536,
|
| 66 |
+
"step_2_s": 10.317761083133519,
|
| 67 |
+
"step_3_s": 10.258633374935016,
|
| 68 |
+
"step_4_s": 10.214116165880114,
|
| 69 |
+
"step_5_s": 10.211255375063047,
|
| 70 |
+
"decode_s": 1.9069041248876601,
|
| 71 |
+
"total_s": 63.36157112498768
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3-compact/portrait/qk-fc2-native-norm/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-compact/portrait/control-timed-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-compact/portrait/control-timed-0.png",
|
| 24 |
+
"png_sha256": "32af5e3b95919e79e0019058ec396824c5861f9a43a4fa50c7b20348e8d81933",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.08196645905263722,
|
| 32 |
+
"dit_setup_s": 0.0020813329610973597,
|
| 33 |
+
"step_0_s": 10.599762792000547,
|
| 34 |
+
"step_1_s": 10.859696834115312,
|
| 35 |
+
"step_2_s": 10.841980583034456,
|
| 36 |
+
"step_3_s": 10.818649291992188,
|
| 37 |
+
"step_4_s": 10.812689499929547,
|
| 38 |
+
"step_5_s": 10.815967541886494,
|
| 39 |
+
"decode_s": 1.8206247920170426,
|
| 40 |
+
"total_s": 66.77446975000203
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2-native-norm",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-compact/portrait/qk-fc2-native-norm-timed-0.png",
|
| 55 |
+
"png_sha256": "32af5e3b95919e79e0019058ec396824c5861f9a43a4fa50c7b20348e8d81933",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.08218058408237994,
|
| 63 |
+
"dit_setup_s": 0.0021450419444590807,
|
| 64 |
+
"step_0_s": 10.038613541051745,
|
| 65 |
+
"step_1_s": 10.278275415999815,
|
| 66 |
+
"step_2_s": 10.234170750016347,
|
| 67 |
+
"step_3_s": 10.295444874791428,
|
| 68 |
+
"step_4_s": 10.20847308402881,
|
| 69 |
+
"step_5_s": 10.264521708944812,
|
| 70 |
+
"decode_s": 1.9153460001107305,
|
| 71 |
+
"total_s": 63.443048041081056
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3-compact/product/qk-fc2-native-norm/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-compact/product/control-timed-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-compact/product/control-timed-0.png",
|
| 24 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.08302924991585314,
|
| 32 |
+
"dit_setup_s": 0.0021304169204086065,
|
| 33 |
+
"step_0_s": 10.524454500060529,
|
| 34 |
+
"step_1_s": 10.518413708079606,
|
| 35 |
+
"step_2_s": 10.792438166914508,
|
| 36 |
+
"step_3_s": 10.938075749902055,
|
| 37 |
+
"step_4_s": 10.803379165939987,
|
| 38 |
+
"step_5_s": 10.852768250042573,
|
| 39 |
+
"decode_s": 1.939876874908805,
|
| 40 |
+
"total_s": 66.73659237497486
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2-native-norm",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-compact/product/qk-fc2-native-norm-timed-0.png",
|
| 55 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.08724224986508489,
|
| 63 |
+
"dit_setup_s": 0.0015401248820126057,
|
| 64 |
+
"step_0_s": 10.171907834010199,
|
| 65 |
+
"step_1_s": 10.420595958130434,
|
| 66 |
+
"step_2_s": 10.435337207978591,
|
| 67 |
+
"step_3_s": 10.569814499933273,
|
| 68 |
+
"step_4_s": 10.503622999880463,
|
| 69 |
+
"step_5_s": 10.588133125100285,
|
| 70 |
+
"decode_s": 1.9536084169521928,
|
| 71 |
+
"total_s": 64.8621540828608
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3-deployment/edit/qk-fc2/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-deployment/edit/control-validation-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
1024,
|
| 6 |
+
1024
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
256,
|
| 10 |
+
256,
|
| 11 |
+
768,
|
| 12 |
+
768
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-deployment/edit/control-validation-0.png",
|
| 24 |
+
"png_sha256": "9df3f80efa5ef9f078c9acda81febdbc2d5d706f3c85c574fdfd9fd274b71304",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.09496295801363885,
|
| 32 |
+
"dit_setup_s": 0.018790250178426504,
|
| 33 |
+
"step_0_s": 16.496046874905005,
|
| 34 |
+
"step_1_s": 17.588394791819155,
|
| 35 |
+
"step_2_s": 17.459331332938746,
|
| 36 |
+
"step_3_s": 17.59560624998994,
|
| 37 |
+
"step_4_s": 17.775859917048365,
|
| 38 |
+
"step_5_s": 17.98469966603443,
|
| 39 |
+
"decode_s": 1.7778672080021352,
|
| 40 |
+
"total_s": 109.37410999997519
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-deployment/edit/qk-fc2-validation-0.png",
|
| 55 |
+
"png_sha256": "9df3f80efa5ef9f078c9acda81febdbc2d5d706f3c85c574fdfd9fd274b71304",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.0946252909488976,
|
| 63 |
+
"dit_setup_s": 0.005771707976236939,
|
| 64 |
+
"step_0_s": 15.780252208001912,
|
| 65 |
+
"step_1_s": 16.24150708410889,
|
| 66 |
+
"step_2_s": 16.135149333858863,
|
| 67 |
+
"step_3_s": 16.180468250066042,
|
| 68 |
+
"step_4_s": 16.37875320808962,
|
| 69 |
+
"step_5_s": 16.147045334102586,
|
| 70 |
+
"decode_s": 1.7784138328861445,
|
| 71 |
+
"total_s": 100.89215162489563
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3-deployment/holdout-detail/qk-fc2/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-deployment/holdout-detail/control-validation-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-deployment/holdout-detail/control-validation-0.png",
|
| 24 |
+
"png_sha256": "ddbfc06c4556c08669d35a4618d380a99998e39a0226e7688d149993ab183038",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.08760958397760987,
|
| 32 |
+
"dit_setup_s": 0.005459541920572519,
|
| 33 |
+
"step_0_s": 10.42564162495546,
|
| 34 |
+
"step_1_s": 10.77243841602467,
|
| 35 |
+
"step_2_s": 10.619838000042364,
|
| 36 |
+
"step_3_s": 10.630091832950711,
|
| 37 |
+
"step_4_s": 10.930967458989471,
|
| 38 |
+
"step_5_s": 10.638426082907245,
|
| 39 |
+
"decode_s": 1.9144813329912722,
|
| 40 |
+
"total_s": 66.1562814170029
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-deployment/holdout-detail/qk-fc2-validation-0.png",
|
| 55 |
+
"png_sha256": "ddbfc06c4556c08669d35a4618d380a99998e39a0226e7688d149993ab183038",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.08267062506638467,
|
| 63 |
+
"dit_setup_s": 0.002635624958202243,
|
| 64 |
+
"step_0_s": 9.876321790972725,
|
| 65 |
+
"step_1_s": 9.873472125036642,
|
| 66 |
+
"step_2_s": 9.758229917148128,
|
| 67 |
+
"step_3_s": 9.659938625060022,
|
| 68 |
+
"step_4_s": 9.70524508296512,
|
| 69 |
+
"step_5_s": 9.690499417018145,
|
| 70 |
+
"decode_s": 1.8380374158732593,
|
| 71 |
+
"total_s": 60.60736404103227
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3-deployment/portrait/qk-fc2/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-deployment/portrait/control-timed-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-deployment/portrait/control-timed-0.png",
|
| 24 |
+
"png_sha256": "32af5e3b95919e79e0019058ec396824c5861f9a43a4fa50c7b20348e8d81933",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.08375041605904698,
|
| 32 |
+
"dit_setup_s": 0.0014606250915676355,
|
| 33 |
+
"step_0_s": 10.343989124987274,
|
| 34 |
+
"step_1_s": 10.484140957938507,
|
| 35 |
+
"step_2_s": 10.492746208095923,
|
| 36 |
+
"step_3_s": 10.494633583119139,
|
| 37 |
+
"step_4_s": 10.36117170797661,
|
| 38 |
+
"step_5_s": 10.398765416117385,
|
| 39 |
+
"decode_s": 1.8557565829250962,
|
| 40 |
+
"total_s": 64.64417616720311
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-deployment/portrait/qk-fc2-timed-0.png",
|
| 55 |
+
"png_sha256": "32af5e3b95919e79e0019058ec396824c5861f9a43a4fa50c7b20348e8d81933",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.08595199999399483,
|
| 63 |
+
"dit_setup_s": 0.0023597090039402246,
|
| 64 |
+
"step_0_s": 9.701315457932651,
|
| 65 |
+
"step_1_s": 9.964592250064015,
|
| 66 |
+
"step_2_s": 9.679471249924973,
|
| 67 |
+
"step_3_s": 9.77542870794423,
|
| 68 |
+
"step_4_s": 9.722767374943942,
|
| 69 |
+
"step_5_s": 9.726279291789979,
|
| 70 |
+
"decode_s": 1.84116454096511,
|
| 71 |
+
"total_s": 60.62431841692887
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3-deployment/product/qk-fc2/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-deployment/product/control-timed-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-deployment/product/control-timed-0.png",
|
| 24 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.08194691711105406,
|
| 32 |
+
"dit_setup_s": 0.001686332980170846,
|
| 33 |
+
"step_0_s": 10.51596958306618,
|
| 34 |
+
"step_1_s": 11.313274249900132,
|
| 35 |
+
"step_2_s": 11.170203125104308,
|
| 36 |
+
"step_3_s": 11.17257241695188,
|
| 37 |
+
"step_4_s": 11.15542795881629,
|
| 38 |
+
"step_5_s": 11.049065208993852,
|
| 39 |
+
"decode_s": 1.9435918340459466,
|
| 40 |
+
"total_s": 68.77809108304791
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-deployment/product/qk-fc2-timed-0.png",
|
| 55 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.09126312495209277,
|
| 63 |
+
"dit_setup_s": 0.0016431249678134918,
|
| 64 |
+
"step_0_s": 10.12600183300674,
|
| 65 |
+
"step_1_s": 10.25785204092972,
|
| 66 |
+
"step_2_s": 10.31819008407183,
|
| 67 |
+
"step_3_s": 10.244670124957338,
|
| 68 |
+
"step_4_s": 10.107232958078384,
|
| 69 |
+
"step_5_s": 10.029554083012044,
|
| 70 |
+
"decode_s": 1.9170843749307096,
|
| 71 |
+
"total_s": 63.23245245893486
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3-qk/edit/qk-fc2-native-norm/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-qk/edit/control-validation-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
1024,
|
| 6 |
+
1024
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
256,
|
| 10 |
+
256,
|
| 11 |
+
768,
|
| 12 |
+
768
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-qk/edit/control-validation-0.png",
|
| 24 |
+
"png_sha256": "9df3f80efa5ef9f078c9acda81febdbc2d5d706f3c85c574fdfd9fd274b71304",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.09503345820121467,
|
| 32 |
+
"dit_setup_s": 0.018574999878183007,
|
| 33 |
+
"step_0_s": 16.138278875034302,
|
| 34 |
+
"step_1_s": 17.324966541025788,
|
| 35 |
+
"step_2_s": 17.10170820890926,
|
| 36 |
+
"step_3_s": 17.527415458112955,
|
| 37 |
+
"step_4_s": 17.178513792110607,
|
| 38 |
+
"step_5_s": 17.10299470787868,
|
| 39 |
+
"decode_s": 1.7370757500175387,
|
| 40 |
+
"total_s": 107.01361245894805
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2-native-norm",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-qk/edit/qk-fc2-native-norm-validation-0.png",
|
| 55 |
+
"png_sha256": "9df3f80efa5ef9f078c9acda81febdbc2d5d706f3c85c574fdfd9fd274b71304",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.09180762502364814,
|
| 63 |
+
"dit_setup_s": 0.00593545800074935,
|
| 64 |
+
"step_0_s": 15.591749583836645,
|
| 65 |
+
"step_1_s": 16.14866058388725,
|
| 66 |
+
"step_2_s": 16.148559999885038,
|
| 67 |
+
"step_3_s": 16.13089166698046,
|
| 68 |
+
"step_4_s": 16.0815456667915,
|
| 69 |
+
"step_5_s": 16.000552749959752,
|
| 70 |
+
"decode_s": 1.7590807920787483,
|
| 71 |
+
"total_s": 100.12193545908667
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3-qk/holdout-detail/qk-fc2-native-norm/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-qk/holdout-detail/control-validation-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-qk/holdout-detail/control-validation-0.png",
|
| 24 |
+
"png_sha256": "ddbfc06c4556c08669d35a4618d380a99998e39a0226e7688d149993ab183038",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.08907995908521116,
|
| 32 |
+
"dit_setup_s": 0.005445417016744614,
|
| 33 |
+
"step_0_s": 10.186366624897346,
|
| 34 |
+
"step_1_s": 10.398944000015035,
|
| 35 |
+
"step_2_s": 10.388187959091738,
|
| 36 |
+
"step_3_s": 10.393390582874417,
|
| 37 |
+
"step_4_s": 10.412437124876305,
|
| 38 |
+
"step_5_s": 10.425708208000287,
|
| 39 |
+
"decode_s": 1.8648124169558287,
|
| 40 |
+
"total_s": 64.29311916604638
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2-native-norm",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-qk/holdout-detail/qk-fc2-native-norm-validation-0.png",
|
| 55 |
+
"png_sha256": "ddbfc06c4556c08669d35a4618d380a99998e39a0226e7688d149993ab183038",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.08324970793910325,
|
| 63 |
+
"dit_setup_s": 0.002322999993339181,
|
| 64 |
+
"step_0_s": 9.82555766706355,
|
| 65 |
+
"step_1_s": 10.011389791965485,
|
| 66 |
+
"step_2_s": 10.023319042054936,
|
| 67 |
+
"step_3_s": 9.948340374976397,
|
| 68 |
+
"step_4_s": 9.975905125029385,
|
| 69 |
+
"step_5_s": 10.093045125016943,
|
| 70 |
+
"decode_s": 1.8749908339232206,
|
| 71 |
+
"total_s": 61.96455545909703
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3-qk/portrait/qk-fc2-native-norm/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-qk/portrait/control-timed-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-qk/portrait/control-timed-0.png",
|
| 24 |
+
"png_sha256": "32af5e3b95919e79e0019058ec396824c5861f9a43a4fa50c7b20348e8d81933",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.08343583298847079,
|
| 32 |
+
"dit_setup_s": 0.001739458180963993,
|
| 33 |
+
"step_0_s": 10.410045666852966,
|
| 34 |
+
"step_1_s": 10.420791167067364,
|
| 35 |
+
"step_2_s": 10.387041166890413,
|
| 36 |
+
"step_3_s": 10.363457958912477,
|
| 37 |
+
"step_4_s": 10.30392266716808,
|
| 38 |
+
"step_5_s": 10.31452420912683,
|
| 39 |
+
"decode_s": 1.8196195410564542,
|
| 40 |
+
"total_s": 64.2339057920035
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2-native-norm",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-qk/portrait/qk-fc2-native-norm-timed-0.png",
|
| 55 |
+
"png_sha256": "32af5e3b95919e79e0019058ec396824c5861f9a43a4fa50c7b20348e8d81933",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.08363316603936255,
|
| 63 |
+
"dit_setup_s": 0.0014190839137881994,
|
| 64 |
+
"step_0_s": 9.715915624983609,
|
| 65 |
+
"step_1_s": 9.817784250015393,
|
| 66 |
+
"step_2_s": 9.768883208977059,
|
| 67 |
+
"step_3_s": 9.779015209060162,
|
| 68 |
+
"step_4_s": 9.768648916855454,
|
| 69 |
+
"step_5_s": 9.780800291104242,
|
| 70 |
+
"decode_s": 1.8109615000430495,
|
| 71 |
+
"total_s": 60.65490966709331
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3-qk/product/qk-fc2-native-norm/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-qk/product/control-timed-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-qk/product/control-timed-0.png",
|
| 24 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.08855687500908971,
|
| 32 |
+
"dit_setup_s": 0.0017782910726964474,
|
| 33 |
+
"step_0_s": 9.8694685830269,
|
| 34 |
+
"step_1_s": 11.024087708909065,
|
| 35 |
+
"step_2_s": 10.974625166971236,
|
| 36 |
+
"step_3_s": 10.970295834122226,
|
| 37 |
+
"step_4_s": 10.889125291956589,
|
| 38 |
+
"step_5_s": 10.934292541118339,
|
| 39 |
+
"decode_s": 1.9161692501511425,
|
| 40 |
+
"total_s": 67.02427170914598
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2-native-norm",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3-qk/product/qk-fc2-native-norm-timed-0.png",
|
| 55 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.08656845916993916,
|
| 63 |
+
"dit_setup_s": 0.0020523329731076956,
|
| 64 |
+
"step_0_s": 10.22877712501213,
|
| 65 |
+
"step_1_s": 10.409983040997759,
|
| 66 |
+
"step_2_s": 10.289188583847135,
|
| 67 |
+
"step_3_s": 10.299693416105583,
|
| 68 |
+
"step_4_s": 10.278323167003691,
|
| 69 |
+
"step_5_s": 10.27706433297135,
|
| 70 |
+
"decode_s": 1.8995202500373125,
|
| 71 |
+
"total_s": 63.90098704188131
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3/edit/qk-fc2/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3/edit/control-validation-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
1024,
|
| 6 |
+
1024
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
256,
|
| 10 |
+
256,
|
| 11 |
+
768,
|
| 12 |
+
768
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3/edit/control-validation-0.png",
|
| 24 |
+
"png_sha256": "9df3f80efa5ef9f078c9acda81febdbc2d5d706f3c85c574fdfd9fd274b71304",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.09193570795468986,
|
| 32 |
+
"dit_setup_s": 0.00586116686463356,
|
| 33 |
+
"step_0_s": 17.43612916697748,
|
| 34 |
+
"step_1_s": 17.915810333099216,
|
| 35 |
+
"step_2_s": 17.71518375002779,
|
| 36 |
+
"step_3_s": 17.54526187502779,
|
| 37 |
+
"step_4_s": 17.438321667024866,
|
| 38 |
+
"step_5_s": 17.364450709195808,
|
| 39 |
+
"decode_s": 1.7734632920473814,
|
| 40 |
+
"total_s": 109.67779112490825
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3/edit/qk-fc2-validation-0.png",
|
| 55 |
+
"png_sha256": "9df3f80efa5ef9f078c9acda81febdbc2d5d706f3c85c574fdfd9fd274b71304",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.09640745911747217,
|
| 63 |
+
"dit_setup_s": 0.006049292162060738,
|
| 64 |
+
"step_0_s": 15.941608458058909,
|
| 65 |
+
"step_1_s": 16.155159290879965,
|
| 66 |
+
"step_2_s": 16.165109500056133,
|
| 67 |
+
"step_3_s": 16.26405395916663,
|
| 68 |
+
"step_4_s": 16.198108582990244,
|
| 69 |
+
"step_5_s": 16.064961167052388,
|
| 70 |
+
"decode_s": 1.7583504170179367,
|
| 71 |
+
"total_s": 100.86470816703513
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3/gallery.json
ADDED
|
@@ -0,0 +1,98 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
[
|
| 2 |
+
{
|
| 3 |
+
"group": "Exact Q/K fusion + FC2 tuning",
|
| 4 |
+
"case": "product",
|
| 5 |
+
"gallery": "comparisons/optimization-r3-qk/product/qk-fc2-native-norm/index.html",
|
| 6 |
+
"metrics_sha256": "49cb9beabd26f0fd062720ff5778e706fe60e06d31cfb88e3d2ece05c502f893",
|
| 7 |
+
"grid_sha256": "be898f85d2c0bcd0a90d9a4800cf80e7d3beae1c3df656280fb28b92cb015ac7",
|
| 8 |
+
"pixel_identical": true
|
| 9 |
+
},
|
| 10 |
+
{
|
| 11 |
+
"group": "Exact Q/K fusion + FC2 tuning",
|
| 12 |
+
"case": "portrait",
|
| 13 |
+
"gallery": "comparisons/optimization-r3-qk/portrait/qk-fc2-native-norm/index.html",
|
| 14 |
+
"metrics_sha256": "9ea037662ba4f0e1edf08d83c6fab2e9929626831cc32a4a61ed540e531e8807",
|
| 15 |
+
"grid_sha256": "700c4593945ef70374cf8ca8d78e516d2acc04b122906538b2976b0d659a59de",
|
| 16 |
+
"pixel_identical": true
|
| 17 |
+
},
|
| 18 |
+
{
|
| 19 |
+
"group": "Exact Q/K fusion + FC2 tuning",
|
| 20 |
+
"case": "holdout-detail",
|
| 21 |
+
"gallery": "comparisons/optimization-r3-qk/holdout-detail/qk-fc2-native-norm/index.html",
|
| 22 |
+
"metrics_sha256": "4775d06f38348f216efb8b5ba42ada72077ef087d65b83f8e3accdfa1af87df9",
|
| 23 |
+
"grid_sha256": "31f84926000a62f32f753bd338c9b36f17188cd35acd1a63cf3d70eaaf33f73d",
|
| 24 |
+
"pixel_identical": true
|
| 25 |
+
},
|
| 26 |
+
{
|
| 27 |
+
"group": "Exact Q/K fusion + FC2 tuning",
|
| 28 |
+
"case": "edit",
|
| 29 |
+
"gallery": "comparisons/optimization-r3-qk/edit/qk-fc2-native-norm/index.html",
|
| 30 |
+
"metrics_sha256": "d1969a84e778912065751bba2037db6c13a74aa32c0f442ecc61c5b82eee8da9",
|
| 31 |
+
"grid_sha256": "5da61cb450c4b90fad6f42178b6a22367db5a54c02aaf7b47b215a8bd196047c",
|
| 32 |
+
"pixel_identical": true
|
| 33 |
+
},
|
| 34 |
+
{
|
| 35 |
+
"group": "Lossless packed weights + exact tuning",
|
| 36 |
+
"case": "product",
|
| 37 |
+
"gallery": "comparisons/optimization-r3-compact/product/qk-fc2-native-norm/index.html",
|
| 38 |
+
"metrics_sha256": "b463bc389757d18fb52f502a1e6f3a564c975f6beb13ca2321c39a57cf86e1b7",
|
| 39 |
+
"grid_sha256": "be898f85d2c0bcd0a90d9a4800cf80e7d3beae1c3df656280fb28b92cb015ac7",
|
| 40 |
+
"pixel_identical": true
|
| 41 |
+
},
|
| 42 |
+
{
|
| 43 |
+
"group": "Lossless packed weights + exact tuning",
|
| 44 |
+
"case": "portrait",
|
| 45 |
+
"gallery": "comparisons/optimization-r3-compact/portrait/qk-fc2-native-norm/index.html",
|
| 46 |
+
"metrics_sha256": "45f490f5a6ec12f32db054f4aedee0b7dbe302592018b24116be3e06702cadb4",
|
| 47 |
+
"grid_sha256": "700c4593945ef70374cf8ca8d78e516d2acc04b122906538b2976b0d659a59de",
|
| 48 |
+
"pixel_identical": true
|
| 49 |
+
},
|
| 50 |
+
{
|
| 51 |
+
"group": "Lossless packed weights + exact tuning",
|
| 52 |
+
"case": "holdout-detail",
|
| 53 |
+
"gallery": "comparisons/optimization-r3-compact/holdout-detail/qk-fc2-native-norm/index.html",
|
| 54 |
+
"metrics_sha256": "575108c69e22d78093498f7db49bfd8cd96ef4886c1c0049852746c5de874d56",
|
| 55 |
+
"grid_sha256": "31f84926000a62f32f753bd338c9b36f17188cd35acd1a63cf3d70eaaf33f73d",
|
| 56 |
+
"pixel_identical": true
|
| 57 |
+
},
|
| 58 |
+
{
|
| 59 |
+
"group": "Lossless packed weights + exact tuning",
|
| 60 |
+
"case": "edit",
|
| 61 |
+
"gallery": "comparisons/optimization-r3-compact/edit/qk-fc2-native-norm/index.html",
|
| 62 |
+
"metrics_sha256": "1b521c42efdca3075605036fc51bc86e27c3cd9fb8c3aded100085a30422c427",
|
| 63 |
+
"grid_sha256": "5da61cb450c4b90fad6f42178b6a22367db5a54c02aaf7b47b215a8bd196047c",
|
| 64 |
+
"pixel_identical": true
|
| 65 |
+
},
|
| 66 |
+
{
|
| 67 |
+
"group": "Full-width fusion: exact pixels, memory tradeoff",
|
| 68 |
+
"case": "product",
|
| 69 |
+
"gallery": "comparisons/optimization-r3-deployment/product/qk-fc2/index.html",
|
| 70 |
+
"metrics_sha256": "5a3bc54f6b0916d83a1bf70d7af55989a234011fdcd2409fc74955a289783b03",
|
| 71 |
+
"grid_sha256": "b7d9451370370d8428aad4847d86ac3982ceec1c5b4af0b90c5bb43d77e9a21f",
|
| 72 |
+
"pixel_identical": true
|
| 73 |
+
},
|
| 74 |
+
{
|
| 75 |
+
"group": "Full-width fusion: exact pixels, memory tradeoff",
|
| 76 |
+
"case": "portrait",
|
| 77 |
+
"gallery": "comparisons/optimization-r3-deployment/portrait/qk-fc2/index.html",
|
| 78 |
+
"metrics_sha256": "859bd41ce5bd6c6611dfc3716cfdb4e698869477856c8c55e0cccc5314c8b4cd",
|
| 79 |
+
"grid_sha256": "517416f9020f0be9692914e18ba0bd8c5e11df84bc4bf1e1afc732f06b2606a2",
|
| 80 |
+
"pixel_identical": true
|
| 81 |
+
},
|
| 82 |
+
{
|
| 83 |
+
"group": "Full-width fusion: exact pixels, memory tradeoff",
|
| 84 |
+
"case": "holdout-detail",
|
| 85 |
+
"gallery": "comparisons/optimization-r3-deployment/holdout-detail/qk-fc2/index.html",
|
| 86 |
+
"metrics_sha256": "7ff107dd7a594c524c3096601ce938c2485b97d2dce22a6250506d37ac86ea52",
|
| 87 |
+
"grid_sha256": "47bac50ff41f08d8ae4e45fd7e269340aadca8e7fdec4fb0c889ab6bd8db1e88",
|
| 88 |
+
"pixel_identical": true
|
| 89 |
+
},
|
| 90 |
+
{
|
| 91 |
+
"group": "Full-width fusion: exact pixels, memory tradeoff",
|
| 92 |
+
"case": "edit",
|
| 93 |
+
"gallery": "comparisons/optimization-r3-deployment/edit/qk-fc2/index.html",
|
| 94 |
+
"metrics_sha256": "a9881cfa4f375b17fc9872cdd162bf864313b8c7b17bf5797a619f998f063f92",
|
| 95 |
+
"grid_sha256": "52d3a40d35505c1c893c2e1917d7367b9aa3faf815b341f6740b5eccbea3280b",
|
| 96 |
+
"pixel_identical": true
|
| 97 |
+
}
|
| 98 |
+
]
|
comparisons/optimization-r3/holdout-detail/qk-fc2/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3/holdout-detail/control-validation-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3/holdout-detail/control-validation-0.png",
|
| 24 |
+
"png_sha256": "ddbfc06c4556c08669d35a4618d380a99998e39a0226e7688d149993ab183038",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.08546350011602044,
|
| 32 |
+
"dit_setup_s": 0.0028562501538544893,
|
| 33 |
+
"step_0_s": 10.619318875018507,
|
| 34 |
+
"step_1_s": 10.635955666890368,
|
| 35 |
+
"step_2_s": 10.632296457886696,
|
| 36 |
+
"step_3_s": 10.644406750099733,
|
| 37 |
+
"step_4_s": 10.566011917078868,
|
| 38 |
+
"step_5_s": 10.629142459016293,
|
| 39 |
+
"decode_s": 1.9020051669795066,
|
| 40 |
+
"total_s": 65.84704962512478
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3/holdout-detail/qk-fc2-validation-0.png",
|
| 55 |
+
"png_sha256": "ddbfc06c4556c08669d35a4618d380a99998e39a0226e7688d149993ab183038",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.08358391700312495,
|
| 63 |
+
"dit_setup_s": 0.0018770832102745771,
|
| 64 |
+
"step_0_s": 9.848138374974951,
|
| 65 |
+
"step_1_s": 9.98282212507911,
|
| 66 |
+
"step_2_s": 10.09999533300288,
|
| 67 |
+
"step_3_s": 10.163251249818131,
|
| 68 |
+
"step_4_s": 10.270917958114296,
|
| 69 |
+
"step_5_s": 10.198511166963726,
|
| 70 |
+
"decode_s": 1.904920166125521,
|
| 71 |
+
"total_s": 62.68734062509611
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3/portrait/qk-fc2/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3/portrait/control-timed-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3/portrait/control-timed-0.png",
|
| 24 |
+
"png_sha256": "32af5e3b95919e79e0019058ec396824c5861f9a43a4fa50c7b20348e8d81933",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.08550125011242926,
|
| 32 |
+
"dit_setup_s": 0.0015632910653948784,
|
| 33 |
+
"step_0_s": 10.885879541980103,
|
| 34 |
+
"step_1_s": 11.088049875106663,
|
| 35 |
+
"step_2_s": 11.107039166148752,
|
| 36 |
+
"step_3_s": 11.065090750111267,
|
| 37 |
+
"step_4_s": 10.819651541067287,
|
| 38 |
+
"step_5_s": 10.922892624977976,
|
| 39 |
+
"decode_s": 1.9121064159553498,
|
| 40 |
+
"total_s": 68.0219049169682
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3/portrait/qk-fc2-timed-0.png",
|
| 55 |
+
"png_sha256": "32af5e3b95919e79e0019058ec396824c5861f9a43a4fa50c7b20348e8d81933",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.08716454193927348,
|
| 63 |
+
"dit_setup_s": 0.0025339999701827765,
|
| 64 |
+
"step_0_s": 10.343852832913399,
|
| 65 |
+
"step_1_s": 10.311937124934047,
|
| 66 |
+
"step_2_s": 10.07040312513709,
|
| 67 |
+
"step_3_s": 10.080784375080839,
|
| 68 |
+
"step_4_s": 10.095044541871175,
|
| 69 |
+
"step_5_s": 10.125651291804388,
|
| 70 |
+
"decode_s": 1.8876813750248402,
|
| 71 |
+
"total_s": 63.14736045780592
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-r3/product/qk-fc2/metrics.json
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Complete image inference",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3/product/control-timed-0.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Current BF16 control",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3/product/control-timed-0.png",
|
| 24 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.0853560408577323,
|
| 32 |
+
"dit_setup_s": 0.0015609171241521835,
|
| 33 |
+
"step_0_s": 10.232307167025283,
|
| 34 |
+
"step_1_s": 11.155369125073776,
|
| 35 |
+
"step_2_s": 11.181794625008479,
|
| 36 |
+
"step_3_s": 11.19105491694063,
|
| 37 |
+
"step_4_s": 11.266168375033885,
|
| 38 |
+
"step_5_s": 11.14753987500444,
|
| 39 |
+
"decode_s": 1.9626916251145303,
|
| 40 |
+
"total_s": 68.59933650004677
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "qk-fc2",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/optimization-r3/product/qk-fc2-timed-0.png",
|
| 55 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293",
|
| 56 |
+
"pixel_identical": true,
|
| 57 |
+
"mae_8bit": 0.0,
|
| 58 |
+
"max_error_8bit": 0,
|
| 59 |
+
"psnr_db": null,
|
| 60 |
+
"ssim_rgb": 1.0,
|
| 61 |
+
"timings": {
|
| 62 |
+
"encode_s": 0.0866880000103265,
|
| 63 |
+
"dit_setup_s": 0.0022984161041677,
|
| 64 |
+
"step_0_s": 10.573326792102307,
|
| 65 |
+
"step_1_s": 10.764806583058089,
|
| 66 |
+
"step_2_s": 10.743913582991809,
|
| 67 |
+
"step_3_s": 10.55372745799832,
|
| 68 |
+
"step_4_s": 10.52767491596751,
|
| 69 |
+
"step_5_s": 10.614938125014305,
|
| 70 |
+
"decode_s": 1.9278774580452591,
|
| 71 |
+
"total_s": 65.93319679214619
|
| 72 |
+
},
|
| 73 |
+
"steps": [
|
| 74 |
+
0,
|
| 75 |
+
1,
|
| 76 |
+
2,
|
| 77 |
+
3,
|
| 78 |
+
4,
|
| 79 |
+
5
|
| 80 |
+
],
|
| 81 |
+
"timing_scope": "Fresh end-to-end request"
|
| 82 |
+
}
|
| 83 |
+
],
|
| 84 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 85 |
+
}
|
comparisons/optimization-v2/contiguous-b1-CPU_AND_NE/comparison/metrics.json
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Same final latent; decoder-only comparison. Source-generation and decoder-only timings have different scopes.",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/suite/product/native-3.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Native BF16 decoder",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/suite/product/native-3.png",
|
| 24 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.09756437502801418,
|
| 32 |
+
"dit_setup_s": 1.1571008330211043,
|
| 33 |
+
"step_0_s": 10.822453290922567,
|
| 34 |
+
"step_1_s": 11.303021250059828,
|
| 35 |
+
"step_2_s": 11.45283200009726,
|
| 36 |
+
"step_3_s": 11.480994417099282,
|
| 37 |
+
"step_4_s": 11.41636574990116,
|
| 38 |
+
"step_5_s": 11.394194666063413,
|
| 39 |
+
"decode_s": 3.528030874906108,
|
| 40 |
+
"total_s": 72.77735170791857
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "Core ML CPU_AND_NE, batch 1, contiguous bridge",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/comparisons/optimization-v2/contiguous-b1-CPU_AND_NE/image.png",
|
| 55 |
+
"png_sha256": "a72edf0d9bd4148b6c1d22821102bd096229911889e1d5d95350bddc545a34ac",
|
| 56 |
+
"pixel_identical": false,
|
| 57 |
+
"mae_8bit": 1.1787954171498616,
|
| 58 |
+
"max_error_8bit": 43,
|
| 59 |
+
"psnr_db": 42.42709412463761,
|
| 60 |
+
"ssim_rgb": 0.9889744364650547,
|
| 61 |
+
"timings": {
|
| 62 |
+
"decode_s": 30.625669125001878
|
| 63 |
+
},
|
| 64 |
+
"steps": [
|
| 65 |
+
0,
|
| 66 |
+
1,
|
| 67 |
+
2,
|
| 68 |
+
3,
|
| 69 |
+
4,
|
| 70 |
+
5
|
| 71 |
+
],
|
| 72 |
+
"timing_scope": "One complete decoder pass; model loading excluded"
|
| 73 |
+
}
|
| 74 |
+
],
|
| 75 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 76 |
+
}
|
comparisons/optimization-v2/contiguous-b1-CPU_AND_NE/image.json
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "Square editorial studio photograph of a dark cobalt glass perfume bottle on pale travertine. The centered cream label reads exactly 'NIGHT TIDE' in large engraved serif letters and 'EAU DE PARFUM' in small capitals beneath. Dappled blue caustics, crisp glass edges, fine pores in the stone, dark reflections through the translucent bottle, restrained palette and generous negative space. No other text.",
|
| 3 |
+
"seed": 731,
|
| 4 |
+
"size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"reference_images": [],
|
| 14 |
+
"reference_sha256": [],
|
| 15 |
+
"sigmas": [
|
| 16 |
+
1.0,
|
| 17 |
+
0.9675236940383911,
|
| 18 |
+
0.8875485062599182,
|
| 19 |
+
0.75,
|
| 20 |
+
0.5327739119529724,
|
| 21 |
+
0.23200887441635132,
|
| 22 |
+
0.0
|
| 23 |
+
],
|
| 24 |
+
"steps": [
|
| 25 |
+
0,
|
| 26 |
+
1,
|
| 27 |
+
2,
|
| 28 |
+
3,
|
| 29 |
+
4,
|
| 30 |
+
5
|
| 31 |
+
],
|
| 32 |
+
"validation_scope": "Same final latent; decoder only",
|
| 33 |
+
"timing_scope": "One complete decoder pass; model loading excluded",
|
| 34 |
+
"timings": {
|
| 35 |
+
"decode_s": 30.625669125001878
|
| 36 |
+
},
|
| 37 |
+
"load_s": 47.709695749916136,
|
| 38 |
+
"vae_backend": "coreml",
|
| 39 |
+
"vae": {
|
| 40 |
+
"batch": 1,
|
| 41 |
+
"compute_units": "CPU_AND_NE"
|
| 42 |
+
},
|
| 43 |
+
"source_trace": "outputs/suite/product/native-3.trace.safetensors",
|
| 44 |
+
"source_trace_sha256": "40440f8bf2c8f2ab3cbb454ccc9416062b9d69718aa6a0ef9baf1268037b9a29",
|
| 45 |
+
"output": "comparisons/optimization-v2/contiguous-b1-CPU_AND_NE/image.png",
|
| 46 |
+
"png_sha256": "a72edf0d9bd4148b6c1d22821102bd096229911889e1d5d95350bddc545a34ac",
|
| 47 |
+
"numpy_bridge": {
|
| 48 |
+
"output_shape": [
|
| 49 |
+
1,
|
| 50 |
+
3,
|
| 51 |
+
256,
|
| 52 |
+
256
|
| 53 |
+
],
|
| 54 |
+
"output_strides": [
|
| 55 |
+
786432,
|
| 56 |
+
262144,
|
| 57 |
+
1024,
|
| 58 |
+
4
|
| 59 |
+
],
|
| 60 |
+
"output_c_contiguous": true,
|
| 61 |
+
"original_mlx_numpy_import_exact": true
|
| 62 |
+
},
|
| 63 |
+
"pixel_identical": false,
|
| 64 |
+
"mae_8bit": 1.1787954171498616,
|
| 65 |
+
"max_error_8bit": 43,
|
| 66 |
+
"psnr_db": 42.42709412463761,
|
| 67 |
+
"ssim_rgb": 0.9889744364650547
|
| 68 |
+
}
|
comparisons/optimization-v2/contiguous-b8-CPU_AND_GPU/comparison/metrics.json
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Same final latent; decoder-only comparison. Source-generation and decoder-only timings have different scopes.",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/suite/product/native-3.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "Native BF16 decoder",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/outputs/suite/product/native-3.png",
|
| 24 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"encode_s": 0.09756437502801418,
|
| 32 |
+
"dit_setup_s": 1.1571008330211043,
|
| 33 |
+
"step_0_s": 10.822453290922567,
|
| 34 |
+
"step_1_s": 11.303021250059828,
|
| 35 |
+
"step_2_s": 11.45283200009726,
|
| 36 |
+
"step_3_s": 11.480994417099282,
|
| 37 |
+
"step_4_s": 11.41636574990116,
|
| 38 |
+
"step_5_s": 11.394194666063413,
|
| 39 |
+
"decode_s": 3.528030874906108,
|
| 40 |
+
"total_s": 72.77735170791857
|
| 41 |
+
},
|
| 42 |
+
"steps": [
|
| 43 |
+
0,
|
| 44 |
+
1,
|
| 45 |
+
2,
|
| 46 |
+
3,
|
| 47 |
+
4,
|
| 48 |
+
5
|
| 49 |
+
],
|
| 50 |
+
"timing_scope": "Fresh end-to-end request"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"label": "Core ML CPU_AND_GPU, batch 8, contiguous bridge",
|
| 54 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/comparisons/optimization-v2/contiguous-b8-CPU_AND_GPU/image.png",
|
| 55 |
+
"png_sha256": "36a7cdad88b12839d1e4cd30384ee60fafffaac52d2ba05e3be409a33a40a50a",
|
| 56 |
+
"pixel_identical": false,
|
| 57 |
+
"mae_8bit": 0.2054581642150879,
|
| 58 |
+
"max_error_8bit": 7,
|
| 59 |
+
"psnr_db": 54.674052201530415,
|
| 60 |
+
"ssim_rgb": 0.9983190643001968,
|
| 61 |
+
"timings": {
|
| 62 |
+
"decode_s": 1.8162069998215884
|
| 63 |
+
},
|
| 64 |
+
"steps": [
|
| 65 |
+
0,
|
| 66 |
+
1,
|
| 67 |
+
2,
|
| 68 |
+
3,
|
| 69 |
+
4,
|
| 70 |
+
5
|
| 71 |
+
],
|
| 72 |
+
"timing_scope": "One complete decoder pass; model loading excluded"
|
| 73 |
+
}
|
| 74 |
+
],
|
| 75 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 76 |
+
}
|
comparisons/optimization-v2/contiguous-b8-CPU_AND_GPU/image.json
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "Square editorial studio photograph of a dark cobalt glass perfume bottle on pale travertine. The centered cream label reads exactly 'NIGHT TIDE' in large engraved serif letters and 'EAU DE PARFUM' in small capitals beneath. Dappled blue caustics, crisp glass edges, fine pores in the stone, dark reflections through the translucent bottle, restrained palette and generous negative space. No other text.",
|
| 3 |
+
"seed": 731,
|
| 4 |
+
"size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"reference_images": [],
|
| 14 |
+
"reference_sha256": [],
|
| 15 |
+
"sigmas": [
|
| 16 |
+
1.0,
|
| 17 |
+
0.9675236940383911,
|
| 18 |
+
0.8875485062599182,
|
| 19 |
+
0.75,
|
| 20 |
+
0.5327739119529724,
|
| 21 |
+
0.23200887441635132,
|
| 22 |
+
0.0
|
| 23 |
+
],
|
| 24 |
+
"steps": [
|
| 25 |
+
0,
|
| 26 |
+
1,
|
| 27 |
+
2,
|
| 28 |
+
3,
|
| 29 |
+
4,
|
| 30 |
+
5
|
| 31 |
+
],
|
| 32 |
+
"validation_scope": "Same final latent; decoder only",
|
| 33 |
+
"timing_scope": "One complete decoder pass; model loading excluded",
|
| 34 |
+
"timings": {
|
| 35 |
+
"decode_s": 1.8162069998215884
|
| 36 |
+
},
|
| 37 |
+
"load_s": 10.882885874947533,
|
| 38 |
+
"vae_backend": "coreml",
|
| 39 |
+
"vae": {
|
| 40 |
+
"batch": 8,
|
| 41 |
+
"compute_units": "CPU_AND_GPU"
|
| 42 |
+
},
|
| 43 |
+
"source_trace": "outputs/suite/product/native-3.trace.safetensors",
|
| 44 |
+
"source_trace_sha256": "40440f8bf2c8f2ab3cbb454ccc9416062b9d69718aa6a0ef9baf1268037b9a29",
|
| 45 |
+
"output": "comparisons/optimization-v2/contiguous-b8-CPU_AND_GPU/image.png",
|
| 46 |
+
"png_sha256": "36a7cdad88b12839d1e4cd30384ee60fafffaac52d2ba05e3be409a33a40a50a",
|
| 47 |
+
"numpy_bridge": {
|
| 48 |
+
"output_shape": [
|
| 49 |
+
8,
|
| 50 |
+
3,
|
| 51 |
+
256,
|
| 52 |
+
256
|
| 53 |
+
],
|
| 54 |
+
"output_strides": [
|
| 55 |
+
786432,
|
| 56 |
+
262144,
|
| 57 |
+
1024,
|
| 58 |
+
4
|
| 59 |
+
],
|
| 60 |
+
"output_c_contiguous": true,
|
| 61 |
+
"original_mlx_numpy_import_exact": true
|
| 62 |
+
},
|
| 63 |
+
"pixel_identical": false,
|
| 64 |
+
"mae_8bit": 0.2054581642150879,
|
| 65 |
+
"max_error_8bit": 7,
|
| 66 |
+
"psnr_db": 54.674052201530415,
|
| 67 |
+
"ssim_rgb": 0.9983190643001968
|
| 68 |
+
}
|
comparisons/optimization-v2/decoder-all-product/comparison/metrics.json
ADDED
|
@@ -0,0 +1,221 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"validation_scope": "Same final latent; decoder only",
|
| 3 |
+
"reference": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/comparisons/optimization-v2/decoder-all-product/native-b1.png",
|
| 4 |
+
"native_size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"crop_xyxy": [
|
| 9 |
+
768,
|
| 10 |
+
768,
|
| 11 |
+
1280,
|
| 12 |
+
1280
|
| 13 |
+
],
|
| 14 |
+
"heatmap_gain": 8,
|
| 15 |
+
"metric_definition": {
|
| 16 |
+
"psnr": "Full-resolution 8-bit RGB MSE, data range 255; null means infinity",
|
| 17 |
+
"ssim": "scikit-image RGB structural_similarity, channel_axis=-1, data_range=255, default 7x7 window",
|
| 18 |
+
"mae": "Full-resolution mean absolute 8-bit RGB error"
|
| 19 |
+
},
|
| 20 |
+
"rows": [
|
| 21 |
+
{
|
| 22 |
+
"label": "native-b1",
|
| 23 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/comparisons/optimization-v2/decoder-all-product/native-b1.png",
|
| 24 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293",
|
| 25 |
+
"pixel_identical": true,
|
| 26 |
+
"mae_8bit": 0.0,
|
| 27 |
+
"max_error_8bit": 0,
|
| 28 |
+
"psnr_db": null,
|
| 29 |
+
"ssim_rgb": 1.0,
|
| 30 |
+
"timings": {
|
| 31 |
+
"decode_s": 3.125603290973231
|
| 32 |
+
},
|
| 33 |
+
"steps": [
|
| 34 |
+
0,
|
| 35 |
+
1,
|
| 36 |
+
2,
|
| 37 |
+
3,
|
| 38 |
+
4,
|
| 39 |
+
5
|
| 40 |
+
],
|
| 41 |
+
"timing_scope": "Warm decoder only; model loading excluded"
|
| 42 |
+
},
|
| 43 |
+
{
|
| 44 |
+
"label": "native-b4",
|
| 45 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/comparisons/optimization-v2/decoder-all-product/native-b4.png",
|
| 46 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293",
|
| 47 |
+
"pixel_identical": true,
|
| 48 |
+
"mae_8bit": 0.0,
|
| 49 |
+
"max_error_8bit": 0,
|
| 50 |
+
"psnr_db": null,
|
| 51 |
+
"ssim_rgb": 1.0,
|
| 52 |
+
"timings": {
|
| 53 |
+
"decode_s": 2.1325830419082195
|
| 54 |
+
},
|
| 55 |
+
"steps": [
|
| 56 |
+
0,
|
| 57 |
+
1,
|
| 58 |
+
2,
|
| 59 |
+
3,
|
| 60 |
+
4,
|
| 61 |
+
5
|
| 62 |
+
],
|
| 63 |
+
"timing_scope": "Warm decoder only; model loading excluded"
|
| 64 |
+
},
|
| 65 |
+
{
|
| 66 |
+
"label": "compiled-b4",
|
| 67 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/comparisons/optimization-v2/decoder-all-product/compiled-b4.png",
|
| 68 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293",
|
| 69 |
+
"pixel_identical": true,
|
| 70 |
+
"mae_8bit": 0.0,
|
| 71 |
+
"max_error_8bit": 0,
|
| 72 |
+
"psnr_db": null,
|
| 73 |
+
"ssim_rgb": 1.0,
|
| 74 |
+
"timings": {
|
| 75 |
+
"decode_s": 1.557951333001256
|
| 76 |
+
},
|
| 77 |
+
"steps": [
|
| 78 |
+
0,
|
| 79 |
+
1,
|
| 80 |
+
2,
|
| 81 |
+
3,
|
| 82 |
+
4,
|
| 83 |
+
5
|
| 84 |
+
],
|
| 85 |
+
"timing_scope": "Warm decoder only; model loading excluded"
|
| 86 |
+
},
|
| 87 |
+
{
|
| 88 |
+
"label": "native-b8",
|
| 89 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/comparisons/optimization-v2/decoder-all-product/native-b8.png",
|
| 90 |
+
"png_sha256": "57a85569ad45d469b191470541e8cfff8d576fed6cc6bb8bd54db16e9bd2d81f",
|
| 91 |
+
"pixel_identical": false,
|
| 92 |
+
"mae_8bit": 0.1251803239186605,
|
| 93 |
+
"max_error_8bit": 4,
|
| 94 |
+
"psnr_db": 56.9881575908215,
|
| 95 |
+
"ssim_rgb": 0.9989046120633382,
|
| 96 |
+
"timings": {
|
| 97 |
+
"decode_s": 2.0152519999537617
|
| 98 |
+
},
|
| 99 |
+
"steps": [
|
| 100 |
+
0,
|
| 101 |
+
1,
|
| 102 |
+
2,
|
| 103 |
+
3,
|
| 104 |
+
4,
|
| 105 |
+
5
|
| 106 |
+
],
|
| 107 |
+
"timing_scope": "Warm decoder only; model loading excluded"
|
| 108 |
+
},
|
| 109 |
+
{
|
| 110 |
+
"label": "compiled-b8",
|
| 111 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/comparisons/optimization-v2/decoder-all-product/compiled-b8.png",
|
| 112 |
+
"png_sha256": "57a85569ad45d469b191470541e8cfff8d576fed6cc6bb8bd54db16e9bd2d81f",
|
| 113 |
+
"pixel_identical": false,
|
| 114 |
+
"mae_8bit": 0.1251803239186605,
|
| 115 |
+
"max_error_8bit": 4,
|
| 116 |
+
"psnr_db": 56.9881575908215,
|
| 117 |
+
"ssim_rgb": 0.9989046120633382,
|
| 118 |
+
"timings": {
|
| 119 |
+
"decode_s": 1.530723667005077
|
| 120 |
+
},
|
| 121 |
+
"steps": [
|
| 122 |
+
0,
|
| 123 |
+
1,
|
| 124 |
+
2,
|
| 125 |
+
3,
|
| 126 |
+
4,
|
| 127 |
+
5
|
| 128 |
+
],
|
| 129 |
+
"timing_scope": "Warm decoder only; model loading excluded"
|
| 130 |
+
},
|
| 131 |
+
{
|
| 132 |
+
"label": "coreml-CPU_ONLY",
|
| 133 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/comparisons/optimization-v2/decoder-all-product/coreml-CPU_ONLY.png",
|
| 134 |
+
"png_sha256": "c5809bfbd3200cf980bc95960e34a52de821e9fcf529cfcddfa208c5b47dc628",
|
| 135 |
+
"pixel_identical": false,
|
| 136 |
+
"mae_8bit": 0.4373479684193929,
|
| 137 |
+
"max_error_8bit": 9,
|
| 138 |
+
"psnr_db": 50.89646445204675,
|
| 139 |
+
"ssim_rgb": 0.9957860092520554,
|
| 140 |
+
"timings": {
|
| 141 |
+
"decode_s": 11.089322166983038
|
| 142 |
+
},
|
| 143 |
+
"steps": [
|
| 144 |
+
0,
|
| 145 |
+
1,
|
| 146 |
+
2,
|
| 147 |
+
3,
|
| 148 |
+
4,
|
| 149 |
+
5
|
| 150 |
+
],
|
| 151 |
+
"timing_scope": "Warm decoder only; model loading excluded"
|
| 152 |
+
},
|
| 153 |
+
{
|
| 154 |
+
"label": "coreml-CPU_AND_GPU",
|
| 155 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/comparisons/optimization-v2/decoder-all-product/coreml-CPU_AND_GPU.png",
|
| 156 |
+
"png_sha256": "36a7cdad88b12839d1e4cd30384ee60fafffaac52d2ba05e3be409a33a40a50a",
|
| 157 |
+
"pixel_identical": false,
|
| 158 |
+
"mae_8bit": 0.2054581642150879,
|
| 159 |
+
"max_error_8bit": 7,
|
| 160 |
+
"psnr_db": 54.674052201530415,
|
| 161 |
+
"ssim_rgb": 0.9983190643001968,
|
| 162 |
+
"timings": {
|
| 163 |
+
"decode_s": 2.221881916979328
|
| 164 |
+
},
|
| 165 |
+
"steps": [
|
| 166 |
+
0,
|
| 167 |
+
1,
|
| 168 |
+
2,
|
| 169 |
+
3,
|
| 170 |
+
4,
|
| 171 |
+
5
|
| 172 |
+
],
|
| 173 |
+
"timing_scope": "Warm decoder only; model loading excluded"
|
| 174 |
+
},
|
| 175 |
+
{
|
| 176 |
+
"label": "coreml-CPU_AND_NE",
|
| 177 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/comparisons/optimization-v2/decoder-all-product/coreml-CPU_AND_NE.png",
|
| 178 |
+
"png_sha256": "20a955de357bba74e2e00fc914a12e9ebea3696326c8bd70245eff45585bd6cc",
|
| 179 |
+
"pixel_identical": false,
|
| 180 |
+
"mae_8bit": 24.426151911417644,
|
| 181 |
+
"max_error_8bit": 255,
|
| 182 |
+
"psnr_db": 14.66893789509745,
|
| 183 |
+
"ssim_rgb": 0.49229784661575254,
|
| 184 |
+
"timings": {
|
| 185 |
+
"decode_s": 7.746493499958888
|
| 186 |
+
},
|
| 187 |
+
"steps": [
|
| 188 |
+
0,
|
| 189 |
+
1,
|
| 190 |
+
2,
|
| 191 |
+
3,
|
| 192 |
+
4,
|
| 193 |
+
5
|
| 194 |
+
],
|
| 195 |
+
"timing_scope": "Warm decoder only; model loading excluded"
|
| 196 |
+
},
|
| 197 |
+
{
|
| 198 |
+
"label": "coreml-ALL",
|
| 199 |
+
"image": "/Users/devin/Desktop/MiniMax-H3-Image-mlx/comparisons/optimization-v2/decoder-all-product/coreml-ALL.png",
|
| 200 |
+
"png_sha256": "36a7cdad88b12839d1e4cd30384ee60fafffaac52d2ba05e3be409a33a40a50a",
|
| 201 |
+
"pixel_identical": false,
|
| 202 |
+
"mae_8bit": 0.2054581642150879,
|
| 203 |
+
"max_error_8bit": 7,
|
| 204 |
+
"psnr_db": 54.674052201530415,
|
| 205 |
+
"ssim_rgb": 0.9983190643001968,
|
| 206 |
+
"timings": {
|
| 207 |
+
"decode_s": 2.028364749858156
|
| 208 |
+
},
|
| 209 |
+
"steps": [
|
| 210 |
+
0,
|
| 211 |
+
1,
|
| 212 |
+
2,
|
| 213 |
+
3,
|
| 214 |
+
4,
|
| 215 |
+
5
|
| 216 |
+
],
|
| 217 |
+
"timing_scope": "Warm decoder only; model loading excluded"
|
| 218 |
+
}
|
| 219 |
+
],
|
| 220 |
+
"interpretation": "Pixel similarity to the same seeded trajectory, not a measure of prompt adherence or perceptual quality."
|
| 221 |
+
}
|
comparisons/optimization-v2/decoder-all-product/compiled-b4.json
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "Square editorial studio photograph of a dark cobalt glass perfume bottle on pale travertine. The centered cream label reads exactly 'NIGHT TIDE' in large engraved serif letters and 'EAU DE PARFUM' in small capitals beneath. Dappled blue caustics, crisp glass edges, fine pores in the stone, dark reflections through the translucent bottle, restrained palette and generous negative space. No other text.",
|
| 3 |
+
"seed": 731,
|
| 4 |
+
"size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"reference_images": [],
|
| 14 |
+
"reference_sha256": [],
|
| 15 |
+
"sigmas": [
|
| 16 |
+
1.0,
|
| 17 |
+
0.9675236940383911,
|
| 18 |
+
0.8875485062599182,
|
| 19 |
+
0.75,
|
| 20 |
+
0.5327739119529724,
|
| 21 |
+
0.23200887441635132,
|
| 22 |
+
0.0
|
| 23 |
+
],
|
| 24 |
+
"steps": [
|
| 25 |
+
0,
|
| 26 |
+
1,
|
| 27 |
+
2,
|
| 28 |
+
3,
|
| 29 |
+
4,
|
| 30 |
+
5
|
| 31 |
+
],
|
| 32 |
+
"vae": {
|
| 33 |
+
"tile_batch": 4,
|
| 34 |
+
"compile_blocks": true
|
| 35 |
+
},
|
| 36 |
+
"vae_backend": "mlx",
|
| 37 |
+
"environment": {
|
| 38 |
+
"platform": "macOS-27.0.1-arm64-arm-64bit",
|
| 39 |
+
"machine": "arm64",
|
| 40 |
+
"metal": {
|
| 41 |
+
"device_name": "Apple M5 Pro",
|
| 42 |
+
"max_recommended_working_set_size": 55662788608,
|
| 43 |
+
"memory_size": 68719476736,
|
| 44 |
+
"architecture": "applegpu_g17s",
|
| 45 |
+
"max_buffer_length": 41747087360,
|
| 46 |
+
"resource_limit": 499000
|
| 47 |
+
},
|
| 48 |
+
"versions": {
|
| 49 |
+
"mlx": "0.32.4",
|
| 50 |
+
"mlx-metal": "0.32.4",
|
| 51 |
+
"numpy": "2.5.4",
|
| 52 |
+
"safetensors": "0.8.0",
|
| 53 |
+
"transformers": "4.57.6",
|
| 54 |
+
"torch": "2.15.0",
|
| 55 |
+
"Pillow": "13.0.0",
|
| 56 |
+
"scikit-image": "0.26.0"
|
| 57 |
+
},
|
| 58 |
+
"precision_environment": {
|
| 59 |
+
"MLX_ENABLE_TF32": "0",
|
| 60 |
+
"MLX_CONV_WINOGRAD": "0"
|
| 61 |
+
}
|
| 62 |
+
},
|
| 63 |
+
"validation_scope": "Same final latent; decoder only",
|
| 64 |
+
"timing_scope": "Warm decoder only; model loading excluded",
|
| 65 |
+
"timings": {
|
| 66 |
+
"decode_s": 1.557951333001256
|
| 67 |
+
},
|
| 68 |
+
"source_trace": "outputs/suite/product/native-3.trace.safetensors",
|
| 69 |
+
"source_trace_sha256": "40440f8bf2c8f2ab3cbb454ccc9416062b9d69718aa6a0ef9baf1268037b9a29",
|
| 70 |
+
"output": "comparisons/optimization-v2/decoder-all-product/compiled-b4.png",
|
| 71 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293"
|
| 72 |
+
}
|
comparisons/optimization-v2/decoder-all-product/compiled-b8.json
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "Square editorial studio photograph of a dark cobalt glass perfume bottle on pale travertine. The centered cream label reads exactly 'NIGHT TIDE' in large engraved serif letters and 'EAU DE PARFUM' in small capitals beneath. Dappled blue caustics, crisp glass edges, fine pores in the stone, dark reflections through the translucent bottle, restrained palette and generous negative space. No other text.",
|
| 3 |
+
"seed": 731,
|
| 4 |
+
"size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"reference_images": [],
|
| 14 |
+
"reference_sha256": [],
|
| 15 |
+
"sigmas": [
|
| 16 |
+
1.0,
|
| 17 |
+
0.9675236940383911,
|
| 18 |
+
0.8875485062599182,
|
| 19 |
+
0.75,
|
| 20 |
+
0.5327739119529724,
|
| 21 |
+
0.23200887441635132,
|
| 22 |
+
0.0
|
| 23 |
+
],
|
| 24 |
+
"steps": [
|
| 25 |
+
0,
|
| 26 |
+
1,
|
| 27 |
+
2,
|
| 28 |
+
3,
|
| 29 |
+
4,
|
| 30 |
+
5
|
| 31 |
+
],
|
| 32 |
+
"vae": {
|
| 33 |
+
"tile_batch": 8,
|
| 34 |
+
"compile_blocks": true
|
| 35 |
+
},
|
| 36 |
+
"vae_backend": "mlx",
|
| 37 |
+
"environment": {
|
| 38 |
+
"platform": "macOS-27.0.1-arm64-arm-64bit",
|
| 39 |
+
"machine": "arm64",
|
| 40 |
+
"metal": {
|
| 41 |
+
"device_name": "Apple M5 Pro",
|
| 42 |
+
"max_recommended_working_set_size": 55662788608,
|
| 43 |
+
"memory_size": 68719476736,
|
| 44 |
+
"architecture": "applegpu_g17s",
|
| 45 |
+
"max_buffer_length": 41747087360,
|
| 46 |
+
"resource_limit": 499000
|
| 47 |
+
},
|
| 48 |
+
"versions": {
|
| 49 |
+
"mlx": "0.32.4",
|
| 50 |
+
"mlx-metal": "0.32.4",
|
| 51 |
+
"numpy": "2.5.4",
|
| 52 |
+
"safetensors": "0.8.0",
|
| 53 |
+
"transformers": "4.57.6",
|
| 54 |
+
"torch": "2.15.0",
|
| 55 |
+
"Pillow": "13.0.0",
|
| 56 |
+
"scikit-image": "0.26.0"
|
| 57 |
+
},
|
| 58 |
+
"precision_environment": {
|
| 59 |
+
"MLX_ENABLE_TF32": "0",
|
| 60 |
+
"MLX_CONV_WINOGRAD": "0"
|
| 61 |
+
}
|
| 62 |
+
},
|
| 63 |
+
"validation_scope": "Same final latent; decoder only",
|
| 64 |
+
"timing_scope": "Warm decoder only; model loading excluded",
|
| 65 |
+
"timings": {
|
| 66 |
+
"decode_s": 1.530723667005077
|
| 67 |
+
},
|
| 68 |
+
"source_trace": "outputs/suite/product/native-3.trace.safetensors",
|
| 69 |
+
"source_trace_sha256": "40440f8bf2c8f2ab3cbb454ccc9416062b9d69718aa6a0ef9baf1268037b9a29",
|
| 70 |
+
"output": "comparisons/optimization-v2/decoder-all-product/compiled-b8.png",
|
| 71 |
+
"png_sha256": "57a85569ad45d469b191470541e8cfff8d576fed6cc6bb8bd54db16e9bd2d81f"
|
| 72 |
+
}
|
comparisons/optimization-v2/decoder-all-product/coreml-ALL.json
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "Square editorial studio photograph of a dark cobalt glass perfume bottle on pale travertine. The centered cream label reads exactly 'NIGHT TIDE' in large engraved serif letters and 'EAU DE PARFUM' in small capitals beneath. Dappled blue caustics, crisp glass edges, fine pores in the stone, dark reflections through the translucent bottle, restrained palette and generous negative space. No other text.",
|
| 3 |
+
"seed": 731,
|
| 4 |
+
"size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"reference_images": [],
|
| 14 |
+
"reference_sha256": [],
|
| 15 |
+
"sigmas": [
|
| 16 |
+
1.0,
|
| 17 |
+
0.9675236940383911,
|
| 18 |
+
0.8875485062599182,
|
| 19 |
+
0.75,
|
| 20 |
+
0.5327739119529724,
|
| 21 |
+
0.23200887441635132,
|
| 22 |
+
0.0
|
| 23 |
+
],
|
| 24 |
+
"steps": [
|
| 25 |
+
0,
|
| 26 |
+
1,
|
| 27 |
+
2,
|
| 28 |
+
3,
|
| 29 |
+
4,
|
| 30 |
+
5
|
| 31 |
+
],
|
| 32 |
+
"vae": {
|
| 33 |
+
"tile_batch": 8,
|
| 34 |
+
"package": "cache/coreml-v2/vae-batch8.mlpackage",
|
| 35 |
+
"compute_units": "ALL"
|
| 36 |
+
},
|
| 37 |
+
"vae_backend": "coreml",
|
| 38 |
+
"environment": {
|
| 39 |
+
"platform": "macOS-27.0.1-arm64-arm-64bit",
|
| 40 |
+
"machine": "arm64",
|
| 41 |
+
"metal": {
|
| 42 |
+
"device_name": "Apple M5 Pro",
|
| 43 |
+
"max_recommended_working_set_size": 55662788608,
|
| 44 |
+
"memory_size": 68719476736,
|
| 45 |
+
"architecture": "applegpu_g17s",
|
| 46 |
+
"max_buffer_length": 41747087360,
|
| 47 |
+
"resource_limit": 499000
|
| 48 |
+
},
|
| 49 |
+
"versions": {
|
| 50 |
+
"mlx": "0.32.4",
|
| 51 |
+
"mlx-metal": "0.32.4",
|
| 52 |
+
"numpy": "2.5.4",
|
| 53 |
+
"safetensors": "0.8.0",
|
| 54 |
+
"transformers": "4.57.6",
|
| 55 |
+
"torch": "2.15.0",
|
| 56 |
+
"Pillow": "13.0.0",
|
| 57 |
+
"scikit-image": "0.26.0"
|
| 58 |
+
},
|
| 59 |
+
"precision_environment": {
|
| 60 |
+
"MLX_ENABLE_TF32": "0",
|
| 61 |
+
"MLX_CONV_WINOGRAD": "0"
|
| 62 |
+
}
|
| 63 |
+
},
|
| 64 |
+
"validation_scope": "Same final latent; decoder only",
|
| 65 |
+
"timing_scope": "Warm decoder only; model loading excluded",
|
| 66 |
+
"timings": {
|
| 67 |
+
"decode_s": 2.028364749858156
|
| 68 |
+
},
|
| 69 |
+
"source_trace": "outputs/suite/product/native-3.trace.safetensors",
|
| 70 |
+
"source_trace_sha256": "40440f8bf2c8f2ab3cbb454ccc9416062b9d69718aa6a0ef9baf1268037b9a29",
|
| 71 |
+
"output": "comparisons/optimization-v2/decoder-all-product/coreml-ALL.png",
|
| 72 |
+
"png_sha256": "36a7cdad88b12839d1e4cd30384ee60fafffaac52d2ba05e3be409a33a40a50a"
|
| 73 |
+
}
|
comparisons/optimization-v2/decoder-all-product/coreml-CPU_AND_GPU.json
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "Square editorial studio photograph of a dark cobalt glass perfume bottle on pale travertine. The centered cream label reads exactly 'NIGHT TIDE' in large engraved serif letters and 'EAU DE PARFUM' in small capitals beneath. Dappled blue caustics, crisp glass edges, fine pores in the stone, dark reflections through the translucent bottle, restrained palette and generous negative space. No other text.",
|
| 3 |
+
"seed": 731,
|
| 4 |
+
"size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"reference_images": [],
|
| 14 |
+
"reference_sha256": [],
|
| 15 |
+
"sigmas": [
|
| 16 |
+
1.0,
|
| 17 |
+
0.9675236940383911,
|
| 18 |
+
0.8875485062599182,
|
| 19 |
+
0.75,
|
| 20 |
+
0.5327739119529724,
|
| 21 |
+
0.23200887441635132,
|
| 22 |
+
0.0
|
| 23 |
+
],
|
| 24 |
+
"steps": [
|
| 25 |
+
0,
|
| 26 |
+
1,
|
| 27 |
+
2,
|
| 28 |
+
3,
|
| 29 |
+
4,
|
| 30 |
+
5
|
| 31 |
+
],
|
| 32 |
+
"vae": {
|
| 33 |
+
"tile_batch": 8,
|
| 34 |
+
"package": "cache/coreml-v2/vae-batch8.mlpackage",
|
| 35 |
+
"compute_units": "CPU_AND_GPU"
|
| 36 |
+
},
|
| 37 |
+
"vae_backend": "coreml",
|
| 38 |
+
"environment": {
|
| 39 |
+
"platform": "macOS-27.0.1-arm64-arm-64bit",
|
| 40 |
+
"machine": "arm64",
|
| 41 |
+
"metal": {
|
| 42 |
+
"device_name": "Apple M5 Pro",
|
| 43 |
+
"max_recommended_working_set_size": 55662788608,
|
| 44 |
+
"memory_size": 68719476736,
|
| 45 |
+
"architecture": "applegpu_g17s",
|
| 46 |
+
"max_buffer_length": 41747087360,
|
| 47 |
+
"resource_limit": 499000
|
| 48 |
+
},
|
| 49 |
+
"versions": {
|
| 50 |
+
"mlx": "0.32.4",
|
| 51 |
+
"mlx-metal": "0.32.4",
|
| 52 |
+
"numpy": "2.5.4",
|
| 53 |
+
"safetensors": "0.8.0",
|
| 54 |
+
"transformers": "4.57.6",
|
| 55 |
+
"torch": "2.15.0",
|
| 56 |
+
"Pillow": "13.0.0",
|
| 57 |
+
"scikit-image": "0.26.0"
|
| 58 |
+
},
|
| 59 |
+
"precision_environment": {
|
| 60 |
+
"MLX_ENABLE_TF32": "0",
|
| 61 |
+
"MLX_CONV_WINOGRAD": "0"
|
| 62 |
+
}
|
| 63 |
+
},
|
| 64 |
+
"validation_scope": "Same final latent; decoder only",
|
| 65 |
+
"timing_scope": "Warm decoder only; model loading excluded",
|
| 66 |
+
"timings": {
|
| 67 |
+
"decode_s": 2.221881916979328
|
| 68 |
+
},
|
| 69 |
+
"source_trace": "outputs/suite/product/native-3.trace.safetensors",
|
| 70 |
+
"source_trace_sha256": "40440f8bf2c8f2ab3cbb454ccc9416062b9d69718aa6a0ef9baf1268037b9a29",
|
| 71 |
+
"output": "comparisons/optimization-v2/decoder-all-product/coreml-CPU_AND_GPU.png",
|
| 72 |
+
"png_sha256": "36a7cdad88b12839d1e4cd30384ee60fafffaac52d2ba05e3be409a33a40a50a"
|
| 73 |
+
}
|
comparisons/optimization-v2/decoder-all-product/coreml-CPU_AND_NE.json
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "Square editorial studio photograph of a dark cobalt glass perfume bottle on pale travertine. The centered cream label reads exactly 'NIGHT TIDE' in large engraved serif letters and 'EAU DE PARFUM' in small capitals beneath. Dappled blue caustics, crisp glass edges, fine pores in the stone, dark reflections through the translucent bottle, restrained palette and generous negative space. No other text.",
|
| 3 |
+
"seed": 731,
|
| 4 |
+
"size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"reference_images": [],
|
| 14 |
+
"reference_sha256": [],
|
| 15 |
+
"sigmas": [
|
| 16 |
+
1.0,
|
| 17 |
+
0.9675236940383911,
|
| 18 |
+
0.8875485062599182,
|
| 19 |
+
0.75,
|
| 20 |
+
0.5327739119529724,
|
| 21 |
+
0.23200887441635132,
|
| 22 |
+
0.0
|
| 23 |
+
],
|
| 24 |
+
"steps": [
|
| 25 |
+
0,
|
| 26 |
+
1,
|
| 27 |
+
2,
|
| 28 |
+
3,
|
| 29 |
+
4,
|
| 30 |
+
5
|
| 31 |
+
],
|
| 32 |
+
"vae": {
|
| 33 |
+
"tile_batch": 8,
|
| 34 |
+
"package": "cache/coreml-v2/vae-batch8.mlpackage",
|
| 35 |
+
"compute_units": "CPU_AND_NE"
|
| 36 |
+
},
|
| 37 |
+
"vae_backend": "coreml",
|
| 38 |
+
"environment": {
|
| 39 |
+
"platform": "macOS-27.0.1-arm64-arm-64bit",
|
| 40 |
+
"machine": "arm64",
|
| 41 |
+
"metal": {
|
| 42 |
+
"device_name": "Apple M5 Pro",
|
| 43 |
+
"max_recommended_working_set_size": 55662788608,
|
| 44 |
+
"memory_size": 68719476736,
|
| 45 |
+
"architecture": "applegpu_g17s",
|
| 46 |
+
"max_buffer_length": 41747087360,
|
| 47 |
+
"resource_limit": 499000
|
| 48 |
+
},
|
| 49 |
+
"versions": {
|
| 50 |
+
"mlx": "0.32.4",
|
| 51 |
+
"mlx-metal": "0.32.4",
|
| 52 |
+
"numpy": "2.5.4",
|
| 53 |
+
"safetensors": "0.8.0",
|
| 54 |
+
"transformers": "4.57.6",
|
| 55 |
+
"torch": "2.15.0",
|
| 56 |
+
"Pillow": "13.0.0",
|
| 57 |
+
"scikit-image": "0.26.0"
|
| 58 |
+
},
|
| 59 |
+
"precision_environment": {
|
| 60 |
+
"MLX_ENABLE_TF32": "0",
|
| 61 |
+
"MLX_CONV_WINOGRAD": "0"
|
| 62 |
+
}
|
| 63 |
+
},
|
| 64 |
+
"validation_scope": "Same final latent; decoder only",
|
| 65 |
+
"timing_scope": "Warm decoder only; model loading excluded",
|
| 66 |
+
"timings": {
|
| 67 |
+
"decode_s": 7.746493499958888
|
| 68 |
+
},
|
| 69 |
+
"source_trace": "outputs/suite/product/native-3.trace.safetensors",
|
| 70 |
+
"source_trace_sha256": "40440f8bf2c8f2ab3cbb454ccc9416062b9d69718aa6a0ef9baf1268037b9a29",
|
| 71 |
+
"output": "comparisons/optimization-v2/decoder-all-product/coreml-CPU_AND_NE.png",
|
| 72 |
+
"png_sha256": "20a955de357bba74e2e00fc914a12e9ebea3696326c8bd70245eff45585bd6cc"
|
| 73 |
+
}
|
comparisons/optimization-v2/decoder-all-product/coreml-CPU_ONLY.json
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "Square editorial studio photograph of a dark cobalt glass perfume bottle on pale travertine. The centered cream label reads exactly 'NIGHT TIDE' in large engraved serif letters and 'EAU DE PARFUM' in small capitals beneath. Dappled blue caustics, crisp glass edges, fine pores in the stone, dark reflections through the translucent bottle, restrained palette and generous negative space. No other text.",
|
| 3 |
+
"seed": 731,
|
| 4 |
+
"size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"reference_images": [],
|
| 14 |
+
"reference_sha256": [],
|
| 15 |
+
"sigmas": [
|
| 16 |
+
1.0,
|
| 17 |
+
0.9675236940383911,
|
| 18 |
+
0.8875485062599182,
|
| 19 |
+
0.75,
|
| 20 |
+
0.5327739119529724,
|
| 21 |
+
0.23200887441635132,
|
| 22 |
+
0.0
|
| 23 |
+
],
|
| 24 |
+
"steps": [
|
| 25 |
+
0,
|
| 26 |
+
1,
|
| 27 |
+
2,
|
| 28 |
+
3,
|
| 29 |
+
4,
|
| 30 |
+
5
|
| 31 |
+
],
|
| 32 |
+
"vae": {
|
| 33 |
+
"tile_batch": 8,
|
| 34 |
+
"package": "cache/coreml-v2/vae-batch8.mlpackage",
|
| 35 |
+
"compute_units": "CPU_ONLY"
|
| 36 |
+
},
|
| 37 |
+
"vae_backend": "coreml",
|
| 38 |
+
"environment": {
|
| 39 |
+
"platform": "macOS-27.0.1-arm64-arm-64bit",
|
| 40 |
+
"machine": "arm64",
|
| 41 |
+
"metal": {
|
| 42 |
+
"device_name": "Apple M5 Pro",
|
| 43 |
+
"max_recommended_working_set_size": 55662788608,
|
| 44 |
+
"memory_size": 68719476736,
|
| 45 |
+
"architecture": "applegpu_g17s",
|
| 46 |
+
"max_buffer_length": 41747087360,
|
| 47 |
+
"resource_limit": 499000
|
| 48 |
+
},
|
| 49 |
+
"versions": {
|
| 50 |
+
"mlx": "0.32.4",
|
| 51 |
+
"mlx-metal": "0.32.4",
|
| 52 |
+
"numpy": "2.5.4",
|
| 53 |
+
"safetensors": "0.8.0",
|
| 54 |
+
"transformers": "4.57.6",
|
| 55 |
+
"torch": "2.15.0",
|
| 56 |
+
"Pillow": "13.0.0",
|
| 57 |
+
"scikit-image": "0.26.0"
|
| 58 |
+
},
|
| 59 |
+
"precision_environment": {
|
| 60 |
+
"MLX_ENABLE_TF32": "0",
|
| 61 |
+
"MLX_CONV_WINOGRAD": "0"
|
| 62 |
+
}
|
| 63 |
+
},
|
| 64 |
+
"validation_scope": "Same final latent; decoder only",
|
| 65 |
+
"timing_scope": "Warm decoder only; model loading excluded",
|
| 66 |
+
"timings": {
|
| 67 |
+
"decode_s": 11.089322166983038
|
| 68 |
+
},
|
| 69 |
+
"source_trace": "outputs/suite/product/native-3.trace.safetensors",
|
| 70 |
+
"source_trace_sha256": "40440f8bf2c8f2ab3cbb454ccc9416062b9d69718aa6a0ef9baf1268037b9a29",
|
| 71 |
+
"output": "comparisons/optimization-v2/decoder-all-product/coreml-CPU_ONLY.png",
|
| 72 |
+
"png_sha256": "c5809bfbd3200cf980bc95960e34a52de821e9fcf529cfcddfa208c5b47dc628"
|
| 73 |
+
}
|
comparisons/optimization-v2/decoder-all-product/native-b1.json
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "Square editorial studio photograph of a dark cobalt glass perfume bottle on pale travertine. The centered cream label reads exactly 'NIGHT TIDE' in large engraved serif letters and 'EAU DE PARFUM' in small capitals beneath. Dappled blue caustics, crisp glass edges, fine pores in the stone, dark reflections through the translucent bottle, restrained palette and generous negative space. No other text.",
|
| 3 |
+
"seed": 731,
|
| 4 |
+
"size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"reference_images": [],
|
| 14 |
+
"reference_sha256": [],
|
| 15 |
+
"sigmas": [
|
| 16 |
+
1.0,
|
| 17 |
+
0.9675236940383911,
|
| 18 |
+
0.8875485062599182,
|
| 19 |
+
0.75,
|
| 20 |
+
0.5327739119529724,
|
| 21 |
+
0.23200887441635132,
|
| 22 |
+
0.0
|
| 23 |
+
],
|
| 24 |
+
"steps": [
|
| 25 |
+
0,
|
| 26 |
+
1,
|
| 27 |
+
2,
|
| 28 |
+
3,
|
| 29 |
+
4,
|
| 30 |
+
5
|
| 31 |
+
],
|
| 32 |
+
"vae": {
|
| 33 |
+
"tile_batch": 1
|
| 34 |
+
},
|
| 35 |
+
"vae_backend": "mlx",
|
| 36 |
+
"environment": {
|
| 37 |
+
"platform": "macOS-27.0.1-arm64-arm-64bit",
|
| 38 |
+
"machine": "arm64",
|
| 39 |
+
"metal": {
|
| 40 |
+
"device_name": "Apple M5 Pro",
|
| 41 |
+
"max_recommended_working_set_size": 55662788608,
|
| 42 |
+
"memory_size": 68719476736,
|
| 43 |
+
"architecture": "applegpu_g17s",
|
| 44 |
+
"max_buffer_length": 41747087360,
|
| 45 |
+
"resource_limit": 499000
|
| 46 |
+
},
|
| 47 |
+
"versions": {
|
| 48 |
+
"mlx": "0.32.4",
|
| 49 |
+
"mlx-metal": "0.32.4",
|
| 50 |
+
"numpy": "2.5.4",
|
| 51 |
+
"safetensors": "0.8.0",
|
| 52 |
+
"transformers": "4.57.6",
|
| 53 |
+
"torch": "2.15.0",
|
| 54 |
+
"Pillow": "13.0.0",
|
| 55 |
+
"scikit-image": "0.26.0"
|
| 56 |
+
},
|
| 57 |
+
"precision_environment": {
|
| 58 |
+
"MLX_ENABLE_TF32": "0",
|
| 59 |
+
"MLX_CONV_WINOGRAD": "0"
|
| 60 |
+
}
|
| 61 |
+
},
|
| 62 |
+
"validation_scope": "Same final latent; decoder only",
|
| 63 |
+
"timing_scope": "Warm decoder only; model loading excluded",
|
| 64 |
+
"timings": {
|
| 65 |
+
"decode_s": 3.125603290973231
|
| 66 |
+
},
|
| 67 |
+
"source_trace": "outputs/suite/product/native-3.trace.safetensors",
|
| 68 |
+
"source_trace_sha256": "40440f8bf2c8f2ab3cbb454ccc9416062b9d69718aa6a0ef9baf1268037b9a29",
|
| 69 |
+
"output": "comparisons/optimization-v2/decoder-all-product/native-b1.png",
|
| 70 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293"
|
| 71 |
+
}
|
comparisons/optimization-v2/decoder-all-product/native-b4.json
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "Square editorial studio photograph of a dark cobalt glass perfume bottle on pale travertine. The centered cream label reads exactly 'NIGHT TIDE' in large engraved serif letters and 'EAU DE PARFUM' in small capitals beneath. Dappled blue caustics, crisp glass edges, fine pores in the stone, dark reflections through the translucent bottle, restrained palette and generous negative space. No other text.",
|
| 3 |
+
"seed": 731,
|
| 4 |
+
"size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"reference_images": [],
|
| 14 |
+
"reference_sha256": [],
|
| 15 |
+
"sigmas": [
|
| 16 |
+
1.0,
|
| 17 |
+
0.9675236940383911,
|
| 18 |
+
0.8875485062599182,
|
| 19 |
+
0.75,
|
| 20 |
+
0.5327739119529724,
|
| 21 |
+
0.23200887441635132,
|
| 22 |
+
0.0
|
| 23 |
+
],
|
| 24 |
+
"steps": [
|
| 25 |
+
0,
|
| 26 |
+
1,
|
| 27 |
+
2,
|
| 28 |
+
3,
|
| 29 |
+
4,
|
| 30 |
+
5
|
| 31 |
+
],
|
| 32 |
+
"vae": {
|
| 33 |
+
"tile_batch": 4
|
| 34 |
+
},
|
| 35 |
+
"vae_backend": "mlx",
|
| 36 |
+
"environment": {
|
| 37 |
+
"platform": "macOS-27.0.1-arm64-arm-64bit",
|
| 38 |
+
"machine": "arm64",
|
| 39 |
+
"metal": {
|
| 40 |
+
"device_name": "Apple M5 Pro",
|
| 41 |
+
"max_recommended_working_set_size": 55662788608,
|
| 42 |
+
"memory_size": 68719476736,
|
| 43 |
+
"architecture": "applegpu_g17s",
|
| 44 |
+
"max_buffer_length": 41747087360,
|
| 45 |
+
"resource_limit": 499000
|
| 46 |
+
},
|
| 47 |
+
"versions": {
|
| 48 |
+
"mlx": "0.32.4",
|
| 49 |
+
"mlx-metal": "0.32.4",
|
| 50 |
+
"numpy": "2.5.4",
|
| 51 |
+
"safetensors": "0.8.0",
|
| 52 |
+
"transformers": "4.57.6",
|
| 53 |
+
"torch": "2.15.0",
|
| 54 |
+
"Pillow": "13.0.0",
|
| 55 |
+
"scikit-image": "0.26.0"
|
| 56 |
+
},
|
| 57 |
+
"precision_environment": {
|
| 58 |
+
"MLX_ENABLE_TF32": "0",
|
| 59 |
+
"MLX_CONV_WINOGRAD": "0"
|
| 60 |
+
}
|
| 61 |
+
},
|
| 62 |
+
"validation_scope": "Same final latent; decoder only",
|
| 63 |
+
"timing_scope": "Warm decoder only; model loading excluded",
|
| 64 |
+
"timings": {
|
| 65 |
+
"decode_s": 2.1325830419082195
|
| 66 |
+
},
|
| 67 |
+
"source_trace": "outputs/suite/product/native-3.trace.safetensors",
|
| 68 |
+
"source_trace_sha256": "40440f8bf2c8f2ab3cbb454ccc9416062b9d69718aa6a0ef9baf1268037b9a29",
|
| 69 |
+
"output": "comparisons/optimization-v2/decoder-all-product/native-b4.png",
|
| 70 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293"
|
| 71 |
+
}
|
comparisons/optimization-v2/decoder-all-product/native-b8.json
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "Square editorial studio photograph of a dark cobalt glass perfume bottle on pale travertine. The centered cream label reads exactly 'NIGHT TIDE' in large engraved serif letters and 'EAU DE PARFUM' in small capitals beneath. Dappled blue caustics, crisp glass edges, fine pores in the stone, dark reflections through the translucent bottle, restrained palette and generous negative space. No other text.",
|
| 3 |
+
"seed": 731,
|
| 4 |
+
"size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"reference_images": [],
|
| 14 |
+
"reference_sha256": [],
|
| 15 |
+
"sigmas": [
|
| 16 |
+
1.0,
|
| 17 |
+
0.9675236940383911,
|
| 18 |
+
0.8875485062599182,
|
| 19 |
+
0.75,
|
| 20 |
+
0.5327739119529724,
|
| 21 |
+
0.23200887441635132,
|
| 22 |
+
0.0
|
| 23 |
+
],
|
| 24 |
+
"steps": [
|
| 25 |
+
0,
|
| 26 |
+
1,
|
| 27 |
+
2,
|
| 28 |
+
3,
|
| 29 |
+
4,
|
| 30 |
+
5
|
| 31 |
+
],
|
| 32 |
+
"vae": {
|
| 33 |
+
"tile_batch": 8
|
| 34 |
+
},
|
| 35 |
+
"vae_backend": "mlx",
|
| 36 |
+
"environment": {
|
| 37 |
+
"platform": "macOS-27.0.1-arm64-arm-64bit",
|
| 38 |
+
"machine": "arm64",
|
| 39 |
+
"metal": {
|
| 40 |
+
"device_name": "Apple M5 Pro",
|
| 41 |
+
"max_recommended_working_set_size": 55662788608,
|
| 42 |
+
"memory_size": 68719476736,
|
| 43 |
+
"architecture": "applegpu_g17s",
|
| 44 |
+
"max_buffer_length": 41747087360,
|
| 45 |
+
"resource_limit": 499000
|
| 46 |
+
},
|
| 47 |
+
"versions": {
|
| 48 |
+
"mlx": "0.32.4",
|
| 49 |
+
"mlx-metal": "0.32.4",
|
| 50 |
+
"numpy": "2.5.4",
|
| 51 |
+
"safetensors": "0.8.0",
|
| 52 |
+
"transformers": "4.57.6",
|
| 53 |
+
"torch": "2.15.0",
|
| 54 |
+
"Pillow": "13.0.0",
|
| 55 |
+
"scikit-image": "0.26.0"
|
| 56 |
+
},
|
| 57 |
+
"precision_environment": {
|
| 58 |
+
"MLX_ENABLE_TF32": "0",
|
| 59 |
+
"MLX_CONV_WINOGRAD": "0"
|
| 60 |
+
}
|
| 61 |
+
},
|
| 62 |
+
"validation_scope": "Same final latent; decoder only",
|
| 63 |
+
"timing_scope": "Warm decoder only; model loading excluded",
|
| 64 |
+
"timings": {
|
| 65 |
+
"decode_s": 2.0152519999537617
|
| 66 |
+
},
|
| 67 |
+
"source_trace": "outputs/suite/product/native-3.trace.safetensors",
|
| 68 |
+
"source_trace_sha256": "40440f8bf2c8f2ab3cbb454ccc9416062b9d69718aa6a0ef9baf1268037b9a29",
|
| 69 |
+
"output": "comparisons/optimization-v2/decoder-all-product/native-b8.png",
|
| 70 |
+
"png_sha256": "57a85569ad45d469b191470541e8cfff8d576fed6cc6bb8bd54db16e9bd2d81f"
|
| 71 |
+
}
|
comparisons/optimization-v2/decoder-all-product/trials.json
ADDED
|
@@ -0,0 +1,132 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"source_trace": "outputs/suite/product/native-3.trace.safetensors",
|
| 3 |
+
"scope": "Same final latent, decoder-only hot latency",
|
| 4 |
+
"trials": [
|
| 5 |
+
{
|
| 6 |
+
"variant": "native-b1",
|
| 7 |
+
"median_ms": 3125.603290973231,
|
| 8 |
+
"min_ms": 3125.603290973231,
|
| 9 |
+
"max_ms": 3125.603290973231,
|
| 10 |
+
"samples_ms": [
|
| 11 |
+
3125.603290973231
|
| 12 |
+
],
|
| 13 |
+
"pixel_identical": true,
|
| 14 |
+
"mae_8bit": 0.0,
|
| 15 |
+
"max_error_8bit": 0,
|
| 16 |
+
"psnr_db": null,
|
| 17 |
+
"ssim_rgb": 1.0
|
| 18 |
+
},
|
| 19 |
+
{
|
| 20 |
+
"variant": "native-b4",
|
| 21 |
+
"median_ms": 2132.5830419082195,
|
| 22 |
+
"min_ms": 2132.5830419082195,
|
| 23 |
+
"max_ms": 2132.5830419082195,
|
| 24 |
+
"samples_ms": [
|
| 25 |
+
2132.5830419082195
|
| 26 |
+
],
|
| 27 |
+
"pixel_identical": true,
|
| 28 |
+
"mae_8bit": 0.0,
|
| 29 |
+
"max_error_8bit": 0,
|
| 30 |
+
"psnr_db": null,
|
| 31 |
+
"ssim_rgb": 1.0
|
| 32 |
+
},
|
| 33 |
+
{
|
| 34 |
+
"variant": "compiled-b4",
|
| 35 |
+
"median_ms": 1557.951333001256,
|
| 36 |
+
"min_ms": 1557.951333001256,
|
| 37 |
+
"max_ms": 1557.951333001256,
|
| 38 |
+
"samples_ms": [
|
| 39 |
+
1557.951333001256
|
| 40 |
+
],
|
| 41 |
+
"pixel_identical": true,
|
| 42 |
+
"mae_8bit": 0.0,
|
| 43 |
+
"max_error_8bit": 0,
|
| 44 |
+
"psnr_db": null,
|
| 45 |
+
"ssim_rgb": 1.0
|
| 46 |
+
},
|
| 47 |
+
{
|
| 48 |
+
"variant": "native-b8",
|
| 49 |
+
"median_ms": 2015.2519999537617,
|
| 50 |
+
"min_ms": 2015.2519999537617,
|
| 51 |
+
"max_ms": 2015.2519999537617,
|
| 52 |
+
"samples_ms": [
|
| 53 |
+
2015.2519999537617
|
| 54 |
+
],
|
| 55 |
+
"pixel_identical": false,
|
| 56 |
+
"mae_8bit": 0.1251803239186605,
|
| 57 |
+
"max_error_8bit": 4,
|
| 58 |
+
"psnr_db": 56.9881575908215,
|
| 59 |
+
"ssim_rgb": 0.9989046120633382
|
| 60 |
+
},
|
| 61 |
+
{
|
| 62 |
+
"variant": "compiled-b8",
|
| 63 |
+
"median_ms": 1530.723667005077,
|
| 64 |
+
"min_ms": 1530.723667005077,
|
| 65 |
+
"max_ms": 1530.723667005077,
|
| 66 |
+
"samples_ms": [
|
| 67 |
+
1530.723667005077
|
| 68 |
+
],
|
| 69 |
+
"pixel_identical": false,
|
| 70 |
+
"mae_8bit": 0.1251803239186605,
|
| 71 |
+
"max_error_8bit": 4,
|
| 72 |
+
"psnr_db": 56.9881575908215,
|
| 73 |
+
"ssim_rgb": 0.9989046120633382
|
| 74 |
+
},
|
| 75 |
+
{
|
| 76 |
+
"variant": "coreml-CPU_ONLY",
|
| 77 |
+
"median_ms": 11089.322166983038,
|
| 78 |
+
"min_ms": 11089.322166983038,
|
| 79 |
+
"max_ms": 11089.322166983038,
|
| 80 |
+
"samples_ms": [
|
| 81 |
+
11089.322166983038
|
| 82 |
+
],
|
| 83 |
+
"pixel_identical": false,
|
| 84 |
+
"mae_8bit": 0.4373479684193929,
|
| 85 |
+
"max_error_8bit": 9,
|
| 86 |
+
"psnr_db": 50.89646445204675,
|
| 87 |
+
"ssim_rgb": 0.9957860092520554
|
| 88 |
+
},
|
| 89 |
+
{
|
| 90 |
+
"variant": "coreml-CPU_AND_GPU",
|
| 91 |
+
"median_ms": 2221.881916979328,
|
| 92 |
+
"min_ms": 2221.881916979328,
|
| 93 |
+
"max_ms": 2221.881916979328,
|
| 94 |
+
"samples_ms": [
|
| 95 |
+
2221.881916979328
|
| 96 |
+
],
|
| 97 |
+
"pixel_identical": false,
|
| 98 |
+
"mae_8bit": 0.2054581642150879,
|
| 99 |
+
"max_error_8bit": 7,
|
| 100 |
+
"psnr_db": 54.674052201530415,
|
| 101 |
+
"ssim_rgb": 0.9983190643001968
|
| 102 |
+
},
|
| 103 |
+
{
|
| 104 |
+
"variant": "coreml-CPU_AND_NE",
|
| 105 |
+
"median_ms": 7746.493499958888,
|
| 106 |
+
"min_ms": 7746.493499958888,
|
| 107 |
+
"max_ms": 7746.493499958888,
|
| 108 |
+
"samples_ms": [
|
| 109 |
+
7746.493499958888
|
| 110 |
+
],
|
| 111 |
+
"pixel_identical": false,
|
| 112 |
+
"mae_8bit": 24.426151911417644,
|
| 113 |
+
"max_error_8bit": 255,
|
| 114 |
+
"psnr_db": 14.66893789509745,
|
| 115 |
+
"ssim_rgb": 0.49229784661575254
|
| 116 |
+
},
|
| 117 |
+
{
|
| 118 |
+
"variant": "coreml-ALL",
|
| 119 |
+
"median_ms": 2028.3647498581558,
|
| 120 |
+
"min_ms": 2028.3647498581558,
|
| 121 |
+
"max_ms": 2028.3647498581558,
|
| 122 |
+
"samples_ms": [
|
| 123 |
+
2028.3647498581558
|
| 124 |
+
],
|
| 125 |
+
"pixel_identical": false,
|
| 126 |
+
"mae_8bit": 0.2054581642150879,
|
| 127 |
+
"max_error_8bit": 7,
|
| 128 |
+
"psnr_db": 54.674052201530415,
|
| 129 |
+
"ssim_rgb": 0.9983190643001968
|
| 130 |
+
}
|
| 131 |
+
]
|
| 132 |
+
}
|
comparisons/optimization-v2/decoder-ane-b1/compiled-b4.json
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"prompt": "Square editorial studio photograph of a dark cobalt glass perfume bottle on pale travertine. The centered cream label reads exactly 'NIGHT TIDE' in large engraved serif letters and 'EAU DE PARFUM' in small capitals beneath. Dappled blue caustics, crisp glass edges, fine pores in the stone, dark reflections through the translucent bottle, restrained palette and generous negative space. No other text.",
|
| 3 |
+
"seed": 731,
|
| 4 |
+
"size": [
|
| 5 |
+
2048,
|
| 6 |
+
2048
|
| 7 |
+
],
|
| 8 |
+
"canvas": [
|
| 9 |
+
2048,
|
| 10 |
+
2048
|
| 11 |
+
],
|
| 12 |
+
"rng": "torch",
|
| 13 |
+
"reference_images": [],
|
| 14 |
+
"reference_sha256": [],
|
| 15 |
+
"sigmas": [
|
| 16 |
+
1.0,
|
| 17 |
+
0.9675236940383911,
|
| 18 |
+
0.8875485062599182,
|
| 19 |
+
0.75,
|
| 20 |
+
0.5327739119529724,
|
| 21 |
+
0.23200887441635132,
|
| 22 |
+
0.0
|
| 23 |
+
],
|
| 24 |
+
"steps": [
|
| 25 |
+
0,
|
| 26 |
+
1,
|
| 27 |
+
2,
|
| 28 |
+
3,
|
| 29 |
+
4,
|
| 30 |
+
5
|
| 31 |
+
],
|
| 32 |
+
"vae": {
|
| 33 |
+
"tile_batch": 4,
|
| 34 |
+
"compile_blocks": true
|
| 35 |
+
},
|
| 36 |
+
"vae_backend": "mlx",
|
| 37 |
+
"environment": {
|
| 38 |
+
"platform": "macOS-27.0.1-arm64-arm-64bit",
|
| 39 |
+
"machine": "arm64",
|
| 40 |
+
"metal": {
|
| 41 |
+
"device_name": "Apple M5 Pro",
|
| 42 |
+
"max_recommended_working_set_size": 55662788608,
|
| 43 |
+
"memory_size": 68719476736,
|
| 44 |
+
"architecture": "applegpu_g17s",
|
| 45 |
+
"max_buffer_length": 41747087360,
|
| 46 |
+
"resource_limit": 499000
|
| 47 |
+
},
|
| 48 |
+
"versions": {
|
| 49 |
+
"mlx": "0.32.4",
|
| 50 |
+
"mlx-metal": "0.32.4",
|
| 51 |
+
"numpy": "2.5.4",
|
| 52 |
+
"safetensors": "0.8.0",
|
| 53 |
+
"transformers": "4.57.6",
|
| 54 |
+
"torch": "2.15.0",
|
| 55 |
+
"Pillow": "13.0.0",
|
| 56 |
+
"scikit-image": "0.26.0"
|
| 57 |
+
},
|
| 58 |
+
"precision_environment": {
|
| 59 |
+
"MLX_ENABLE_TF32": "0",
|
| 60 |
+
"MLX_CONV_WINOGRAD": "0"
|
| 61 |
+
}
|
| 62 |
+
},
|
| 63 |
+
"validation_scope": "Same final latent; decoder only",
|
| 64 |
+
"timing_scope": "Warm decoder only; model loading excluded",
|
| 65 |
+
"timings": {
|
| 66 |
+
"decode_s": 1.5069015838671476
|
| 67 |
+
},
|
| 68 |
+
"source_trace": "outputs/suite/product/native-3.trace.safetensors",
|
| 69 |
+
"source_trace_sha256": "40440f8bf2c8f2ab3cbb454ccc9416062b9d69718aa6a0ef9baf1268037b9a29",
|
| 70 |
+
"output": "comparisons/optimization-v2/decoder-ane-b1/compiled-b4.png",
|
| 71 |
+
"png_sha256": "63684ef8ae148a35ddef02650c6aa30b4843b47c99b06cec2ea3708ef3fc2293"
|
| 72 |
+
}
|