Equimo 2.8.0__tar.gz → 2.8.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (215) hide show
  1. {equimo-2.8.0 → equimo-2.8.1}/CHANGELOG.md +7 -0
  2. {equimo-2.8.0 → equimo-2.8.1}/PKG-INFO +2 -2
  3. equimo-2.8.0/pyproject.toml.orig → equimo-2.8.1/pyproject.toml +3 -3
  4. equimo-2.8.1/src/equimo/__init__.py +1 -0
  5. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/implicit/EGM.md +5 -2
  6. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/layers/EGM.md +2 -2
  7. equimo-2.8.0/pyproject.toml +0 -136
  8. equimo-2.8.0/src/equimo/__init__.py +0 -1
  9. {equimo-2.8.0 → equimo-2.8.1}/LICENSE.md +0 -0
  10. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/Apache-2.0.txt +0 -0
  11. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/pretrained/README.md +0 -0
  12. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/pretrained/ast-BSD-3-Clause.txt +0 -0
  13. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/pretrained/convnext-Apache-2.0.txt +0 -0
  14. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/pretrained/convnextv2-CC-BY-NC-4.0.txt +0 -0
  15. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/pretrained/dinov2-Apache-2.0.txt +0 -0
  16. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/pretrained/dinov3-License.md +0 -0
  17. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/pretrained/eupe-FAIR-Noncommercial-Research-License.md +0 -0
  18. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/pretrained/lingbot-vision-Apache-2.0.txt +0 -0
  19. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/pretrained/sam-License.md +0 -0
  20. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/pretrained/siglip2-Apache-2.0.txt +0 -0
  21. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/pretrained/t0-alpha-Apache-2.0.txt +0 -0
  22. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/pretrained/tabpfn-3-License-v1.0.txt +0 -0
  23. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/pretrained/tips-CC-BY-4.0.txt +0 -0
  24. {equimo-2.8.0 → equimo-2.8.1}/LICENSES/tfc-t0-APACHE-2.0.txt +0 -0
  25. {equimo-2.8.0 → equimo-2.8.1}/NOTICE +0 -0
  26. {equimo-2.8.0 → equimo-2.8.1}/README.md +0 -0
  27. {equimo-2.8.0 → equimo-2.8.1}/docs/licensing/sam3-provenance.md +0 -0
  28. {equimo-2.8.0 → equimo-2.8.1}/docs/licensing/t0-source-provenance.md +0 -0
  29. {equimo-2.8.0 → equimo-2.8.1}/docs/migration-v2.md +0 -0
  30. {equimo-2.8.0 → equimo-2.8.1}/docs/stability.md +0 -0
  31. {equimo-2.8.0 → equimo-2.8.1}/docs/timeseries.md +0 -0
  32. {equimo-2.8.0 → equimo-2.8.1}/models/huggingface/NOTICE +0 -0
  33. {equimo-2.8.0 → equimo-2.8.1}/models/huggingface/README.md +0 -0
  34. {equimo-2.8.0 → equimo-2.8.1}/models/huggingface/convnext-conversion.json +0 -0
  35. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/EGM.md +0 -0
  36. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/_checkpoint_limits.py +0 -0
  37. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/_io.py +0 -0
  38. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/_legacy_layouts.py +0 -0
  39. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/_pretrained.py +0 -0
  40. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/audio/EGM.md +0 -0
  41. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/audio/__init__.py +0 -0
  42. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/audio/io.py +0 -0
  43. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/audio/layers/EGM.md +0 -0
  44. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/audio/layers/__init__.py +0 -0
  45. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/audio/layers/patch.py +0 -0
  46. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/audio/models/EGM.md +0 -0
  47. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/audio/models/__init__.py +0 -0
  48. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/audio/models/ast.py +0 -0
  49. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/catalog.py +0 -0
  50. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/conversion/EGM.md +0 -0
  51. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/conversion/__init__.py +0 -0
  52. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/conversion/utils.py +0 -0
  53. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/EGM.md +0 -0
  54. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/__init__.py +0 -0
  55. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/_prng.py +0 -0
  56. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/emamodel.py +0 -0
  57. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/factory.py +0 -0
  58. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/implicit/__init__.py +0 -0
  59. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/implicit/_base.py +0 -0
  60. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/implicit/deq.py +0 -0
  61. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/implicit/injectors.py +0 -0
  62. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/implicit/stabilizers.py +0 -0
  63. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/implicit/strategies.py +0 -0
  64. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/intermediates.py +0 -0
  65. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/layers/EGM.md +0 -0
  66. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/layers/__init__.py +0 -0
  67. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/layers/_apply.py +0 -0
  68. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/layers/_registry.py +0 -0
  69. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/layers/activation.py +0 -0
  70. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/layers/attention.py +0 -0
  71. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/layers/dropout.py +0 -0
  72. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/layers/ffn.py +0 -0
  73. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/layers/generic.py +0 -0
  74. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/layers/mamba.py +0 -0
  75. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/layers/norm.py +0 -0
  76. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/layers/rotary.py +0 -0
  77. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/ops/EGM.md +0 -0
  78. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/ops/__init__.py +0 -0
  79. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/ops/probability.py +0 -0
  80. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/ops/scan.py +0 -0
  81. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/parameters.py +0 -0
  82. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/core/tags.py +0 -0
  83. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/EGM.md +0 -0
  84. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/__init__.py +0 -0
  85. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/_blocks.py +0 -0
  86. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/_serialization_codecs.py +0 -0
  87. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/_typing.py +0 -0
  88. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/audio/EGM.md +0 -0
  89. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/audio/__init__.py +0 -0
  90. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/audio/recipes.py +0 -0
  91. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/audio/selectors.py +0 -0
  92. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/calibration.py +0 -0
  93. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/config.py +0 -0
  94. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/continued_ssl.py +0 -0
  95. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/feature_extraction.py +0 -0
  96. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/heads.py +0 -0
  97. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/inspection.py +0 -0
  98. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/labels.py +0 -0
  99. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/language/EGM.md +0 -0
  100. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/language/__init__.py +0 -0
  101. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/language/recipes.py +0 -0
  102. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/language/selectors.py +0 -0
  103. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/masks.py +0 -0
  104. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/merging.py +0 -0
  105. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/paths.py +0 -0
  106. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/peft/EGM.md +0 -0
  107. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/peft/__init__.py +0 -0
  108. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/peft/_common.py +0 -0
  109. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/peft/_compat.py +0 -0
  110. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/peft/adapters.py +0 -0
  111. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/peft/base.py +0 -0
  112. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/peft/bitfit.py +0 -0
  113. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/peft/dora.py +0 -0
  114. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/peft/ia3.py +0 -0
  115. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/peft/lora.py +0 -0
  116. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/peft/prefix.py +0 -0
  117. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/peft/prompts.py +0 -0
  118. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/peft/scale_shift.py +0 -0
  119. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/peft/vera.py +0 -0
  120. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/pooling.py +0 -0
  121. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/recipes.py +0 -0
  122. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/regularization.py +0 -0
  123. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/selectors.py +0 -0
  124. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/serialization.py +0 -0
  125. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/surgery.py +0 -0
  126. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/tags.py +0 -0
  127. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/vision/EGM.md +0 -0
  128. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/vision/__init__.py +0 -0
  129. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/vision/dense.py +0 -0
  130. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/vision/eomt.py +0 -0
  131. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/finetune/vision/pmt.py +0 -0
  132. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/language/EGM.md +0 -0
  133. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/language/__init__.py +0 -0
  134. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/language/data/bpe_simple_vocab_16e6.txt.gz +0 -0
  135. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/language/models.py +0 -0
  136. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/language/tokenizers.py +0 -0
  137. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/registry.py +0 -0
  138. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/serialization.py +0 -0
  139. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/tabular/EGM.md +0 -0
  140. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/tabular/__init__.py +0 -0
  141. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/tabular/layers/EGM.md +0 -0
  142. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/tabular/layers/__init__.py +0 -0
  143. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/tabular/layers/attention.py +0 -0
  144. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/tabular/layers/blocks.py +0 -0
  145. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/tabular/layers/decoder.py +0 -0
  146. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/tabular/layers/mlp.py +0 -0
  147. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/tabular/layers/preprocessing.py +0 -0
  148. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/tabular/layers/registry.py +0 -0
  149. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/tabular/models/EGM.md +0 -0
  150. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/tabular/models/__init__.py +0 -0
  151. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/tabular/models/tabpfn.py +0 -0
  152. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/timeseries/EGM.md +0 -0
  153. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/timeseries/__init__.py +0 -0
  154. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/timeseries/layers/EGM.md +0 -0
  155. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/timeseries/layers/__init__.py +0 -0
  156. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/timeseries/layers/axis_attn.py +0 -0
  157. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/timeseries/layers/blocks.py +0 -0
  158. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/timeseries/layers/patch_encoder.py +0 -0
  159. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/timeseries/layers/registry.py +0 -0
  160. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/timeseries/layers/residual_mlp.py +0 -0
  161. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/timeseries/models/EGM.md +0 -0
  162. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/timeseries/models/__init__.py +0 -0
  163. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/timeseries/models/t0.py +0 -0
  164. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/utils.py +0 -0
  165. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/EGM.md +0 -0
  166. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/__init__.py +0 -0
  167. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/_encoder_identity.py +0 -0
  168. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/io.py +0 -0
  169. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/layers/__init__.py +0 -0
  170. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/layers/attention.py +0 -0
  171. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/layers/convolution.py +0 -0
  172. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/layers/downsample.py +0 -0
  173. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/layers/patch.py +0 -0
  174. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/layers/posemb.py +0 -0
  175. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/layers/registry.py +0 -0
  176. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/layers/squeeze_excite.py +0 -0
  177. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/layers/wavelet.py +0 -0
  178. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/EGM.md +0 -0
  179. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/__init__.py +0 -0
  180. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/_embedding.py +0 -0
  181. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/_features.py +0 -0
  182. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/attnet.py +0 -0
  183. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/convnext.py +0 -0
  184. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/deq.py +0 -0
  185. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/eomt.py +0 -0
  186. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/fastervit.py +0 -0
  187. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/iformer.py +0 -0
  188. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/lowformer.py +0 -0
  189. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/mlla.py +0 -0
  190. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/mobilenet.py +0 -0
  191. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/parcae.py +0 -0
  192. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/partialformer.py +0 -0
  193. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/pmd.py +0 -0
  194. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/pmt.py +0 -0
  195. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/reduceformer.py +0 -0
  196. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/sam3/EGM.md +0 -0
  197. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/sam3/__init__.py +0 -0
  198. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/sam3/decoding.py +0 -0
  199. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/sam3/detector.py +0 -0
  200. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/sam3/encoder.py +0 -0
  201. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/sam3/interactive.py +0 -0
  202. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/sam3/model.py +0 -0
  203. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/sam3/tracker.py +0 -0
  204. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/sam3/video.py +0 -0
  205. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/shvit.py +0 -0
  206. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/vit.py +0 -0
  207. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/models/vssd.py +0 -0
  208. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/ops.py +0 -0
  209. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/pmt_checkpoint.py +0 -0
  210. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/query_training/EGM.md +0 -0
  211. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/query_training/__init__.py +0 -0
  212. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/query_training/_assignment.py +0 -0
  213. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/query_training/_loss.py +0 -0
  214. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/query_training/_sampling.py +0 -0
  215. {equimo-2.8.0 → equimo-2.8.1}/src/equimo/vision/segmentation.py +0 -0
@@ -2,6 +2,13 @@
2
2
 
3
3
  All notable changes to Equimo are documented here. Equimo follows Semantic Versioning from version 2.0.0 onward.
4
4
 
5
+ ## [2.8.1] - 2026-11-11
6
+
7
+ ### Fixed
8
+
9
+ - DEQ models run in bfloat16. Equimo now requires banax 0.1.5, whose fixed-point solvers keep their convergence errors
10
+ in float32 instead of failing on a dtype change inside the solver loop.
11
+
5
12
  ## [2.8.0] - 2026-11-10
6
13
 
7
14
  ### Added
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: Equimo
3
- Version: 2.8.0
3
+ Version: 2.8.1
4
4
  Summary: Implementation of modern multimodal models in JAX/Equinox
5
5
  License-Expression: MIT AND Apache-2.0
6
6
  License-File: LICENSE.md
@@ -27,7 +27,7 @@ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
27
27
  Classifier: Programming Language :: Python :: 3.12
28
28
  Classifier: Programming Language :: Python :: 3.13
29
29
  Classifier: Programming Language :: Python :: 3.14
30
- Requires-Dist: banax>=0.1.2
30
+ Requires-Dist: banax>=0.1.5
31
31
  Requires-Dist: einops>=0.8.0
32
32
  Requires-Dist: equinox>=0.13.3
33
33
  Requires-Dist: jax>=0.11.1
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "Equimo"
3
- version = "2.8.0"
3
+ version = "2.8.1"
4
4
  description = "Implementation of modern multimodal models in JAX/Equinox"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.12,<3.15"
@@ -25,7 +25,7 @@ license-files = [
25
25
  "LICENSES/tfc-t0-APACHE-2.0.txt",
26
26
  ]
27
27
  dependencies = [
28
- "banax>=0.1.2",
28
+ "banax>=0.1.5",
29
29
  "einops>=0.8.0",
30
30
  "equinox>=0.13.3",
31
31
  "jax>=0.11.1",
@@ -96,7 +96,7 @@ wheel-exclude = ["EGM.md"]
96
96
 
97
97
  [dependency-groups]
98
98
  dev = [
99
- "jax2onnx>=0.17.0",
99
+ "jax2onnx>=0.19.0",
100
100
  "mdformat==1.0.0",
101
101
  "mdformat-footnote==0.1.3",
102
102
  "mdformat-gfm==1.0.0",
@@ -0,0 +1 @@
1
+ __version__ = "2.8.1"
@@ -116,9 +116,12 @@ Re-exported by `equimo.core.implicit` ([`__init__.py`](./__init__.py)): `DEQBloc
116
116
  `key=jr.PRNGKey(42)` is created once, at import time.
117
117
  - `[deq.py:DEQCell.__init__]`: the default `strategy=EntryInjection()` is a single instance created at import and shared
118
118
  by every caller that uses the default.
119
- - `[deq.py:DEQBlock]`: depends on the external `banax` package. There is no I/O, printing or host callback.
119
+ - `[deq.py:DEQBlock]`: depends on the external `banax` package, at least 0.1.5, whose solvers keep their convergence
120
+ errors in float32, so a bfloat16 `DEQBlock` solves and compares `tol` in float32. There is no I/O, printing or host
121
+ callback.
120
122
 
121
123
  ## Verification
122
124
 
123
125
  - Run: `devenv shell -- uv run pytest tests/test_implicit.py -q`
124
- - `tests/test_implicit.py` has no low-precision case.
126
+ - `tests/test_implicit.py` has no low-precision case. The `deq` model case runs `DEQ` in bfloat16 against float32:
127
+ `devenv shell -- uv run pytest tests/finetune/test_feature_spec_model_coverage.py -k deq -q`.
@@ -201,7 +201,7 @@ shared core layers (activation, dropout, FFN, generic, Mamba mixer, norm) so mod
201
201
  `[posemb.py:VisionRoPE]`, `[posemb.py:PosEmbMLPSwinv2D]`
202
202
  - `[posemb.py:_static_table]` evaluates those tables even while tracing, so `jax.jit` programs and ONNX exports hold
203
203
  them as constants; `tests/test_onnx_export.py::test_posemb_tables_export_as_constants` checks that each table exports
204
- as a constant. Exporting `RoPE` and the Swin tables needs a jax2onnx release that includes enpasos/jax2onnx#291.
204
+ as a constant. Exporting `RoPE` and the Swin tables needs jax2onnx 0.19.0 or newer (enpasos/jax2onnx#291).
205
205
  `LinearAttention` applies its `RoPE` to queries and keys in one call, so programs hold one table per block.
206
206
  `[attention.py:LinearAttention]`
207
207
  - `LearnedPosEmbed` validates `cls_token` and `reg_tokens` shapes and resamples the grid part only, leaving prefix rows
@@ -226,4 +226,4 @@ shared core layers (activation, dropout, FFN, generic, Mamba mixer, norm) so mod
226
226
  `devenv shell -- uv run pytest tests/test_attention.py tests/test_convolution.py tests/test_downsample.py tests/test_patch.py tests/test_posemb.py tests/test_squeeze_excite.py tests/test_wavelet.py tests/test_layer_registry_coverage.py tests/test_generic.py -q`
227
227
  - The computed position-embedding tables are also covered by
228
228
  `devenv shell -- uv run pytest tests/test_onnx_export.py::test_posemb_tables_export_as_constants tests/test_io.py tests/test_checkpoint_signature_stability.py -q`
229
- (constant export, which needs jax2onnx with enpasos/jax2onnx#291, and loading pre-2.8 checkpoints).
229
+ (constant export, which needs jax2onnx 0.19.0 or newer, and loading pre-2.8 checkpoints).
@@ -1,136 +0,0 @@
1
- [project]
2
- name = "Equimo"
3
- version = "2.8.0"
4
- description = "Implementation of modern multimodal models in JAX/Equinox"
5
- readme = "README.md"
6
- requires-python = ">=3.12,<3.15"
7
- license = "MIT AND Apache-2.0"
8
- license-files = [
9
- "LICENSE.md",
10
- "NOTICE",
11
- "LICENSES/Apache-2.0.txt",
12
- "LICENSES/pretrained/README.md",
13
- "LICENSES/pretrained/ast-BSD-3-Clause.txt",
14
- "LICENSES/pretrained/convnext-Apache-2.0.txt",
15
- "LICENSES/pretrained/convnextv2-CC-BY-NC-4.0.txt",
16
- "LICENSES/pretrained/dinov2-Apache-2.0.txt",
17
- "LICENSES/pretrained/dinov3-License.md",
18
- "LICENSES/pretrained/eupe-FAIR-Noncommercial-Research-License.md",
19
- "LICENSES/pretrained/lingbot-vision-Apache-2.0.txt",
20
- "LICENSES/pretrained/sam-License.md",
21
- "LICENSES/pretrained/siglip2-Apache-2.0.txt",
22
- "LICENSES/pretrained/t0-alpha-Apache-2.0.txt",
23
- "LICENSES/pretrained/tabpfn-3-License-v1.0.txt",
24
- "LICENSES/pretrained/tips-CC-BY-4.0.txt",
25
- "LICENSES/tfc-t0-APACHE-2.0.txt",
26
- ]
27
- dependencies = [
28
- "banax>=0.1.2",
29
- "einops>=0.8.0",
30
- "equinox>=0.13.3",
31
- "jax>=0.11.1",
32
- "jaxlib>=0.11.1",
33
- "loguru>=0.7.3",
34
- "lz4>=4.4.3",
35
- "requests>=2.32.3",
36
- ]
37
- classifiers = [
38
- "Development Status :: 5 - Production/Stable",
39
- "Intended Audience :: Developers",
40
- "Intended Audience :: Science/Research",
41
- "Topic :: Scientific/Engineering :: Artificial Intelligence",
42
- "Programming Language :: Python :: 3.12",
43
- "Programming Language :: Python :: 3.13",
44
- "Programming Language :: Python :: 3.14",
45
- ]
46
-
47
- [project.optional-dependencies]
48
- audio = [
49
- "torch>=2.11,<2.12",
50
- "torchaudio>=2.11,<2.12",
51
- ]
52
- torch = [
53
- "torch>=2.6.0",
54
- "timm>=1.0.15",
55
- ]
56
- language = [
57
- "tensorflow>=2.18.1",
58
- "tensorflow-text>=2.18.1",
59
- ]
60
- clip = [
61
- "ftfy>=6.1,<7",
62
- "regex>=2024.11.6",
63
- ]
64
- extras = [
65
- "matplotlib>=3.10.1",
66
- "pillow>=11.1.0",
67
- "scikit-learn>=1.6.1",
68
- ]
69
-
70
- [build-system]
71
- requires = ["uv_build>=0.10.12,<0.12.0"]
72
- build-backend = "uv_build"
73
-
74
- [tool.uv.build-backend]
75
- source-include = [
76
- "CHANGELOG.md",
77
- "docs/licensing/sam3-provenance.md",
78
- "docs/licensing/t0-source-provenance.md",
79
- "docs/migration-v2.md",
80
- "docs/stability.md",
81
- "docs/timeseries.md",
82
- "models/huggingface/NOTICE",
83
- "models/huggingface/README.md",
84
- "models/huggingface/convnext-conversion.json",
85
- ]
86
- wheel-exclude = ["EGM.md"]
87
-
88
- [tool.ruff.lint]
89
- ignore = [
90
- "E731",
91
- "E741",
92
- "F722",
93
- ]
94
-
95
- [tool.ty.analysis]
96
- replace-imports-with-any = ["equinox._module._module"]
97
- allowed-unresolved-imports = [
98
- "ftfy.**",
99
- "matplotlib.**",
100
- "PIL.**",
101
- "regex.**",
102
- "sklearn.**",
103
- "tensorflow.**",
104
- "tensorflow_text.**",
105
- "timm.**",
106
- "torch.**",
107
- "torchaudio.**",
108
- ]
109
-
110
- [tool.pytest.ini_options]
111
- addopts = "-m 'not reference_parity and not live_reference_parity'"
112
- markers = [
113
- "reference_parity: parity against checked-in outputs from pinned upstream implementations",
114
- "live_reference_parity: parity requiring a separately supplied upstream checkpoint",
115
- ]
116
-
117
- [dependency-groups]
118
- dev = [
119
- "jax2onnx>=0.17.0",
120
- "mdformat==1.0.0",
121
- "mdformat-footnote==0.1.3",
122
- "mdformat-gfm==1.0.0",
123
- "mdformat-myst==0.3.0",
124
- "onnxruntime>=1.28.0",
125
- "pre-commit>=4.5.1",
126
- "pytest>=9.0.2",
127
- "ruff>=0.15.7",
128
- "ty>=0.0.24",
129
- ]
130
- reference = [
131
- "tabpfn>=8.1.0",
132
- "tfc-t0==0.2.1",
133
- "timm>=1.0.15",
134
- "torch>=2.6.0",
135
- "transformers>=5.13.1",
136
- ]
@@ -1 +0,0 @@
1
- __version__ = "2.8.0"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes