fusion-bench 0.2.20__tar.gz → 0.2.22__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 (1080) hide show
  1. fusion_bench-0.2.22/PKG-INFO +285 -0
  2. fusion_bench-0.2.22/README.md +252 -0
  3. fusion_bench-0.2.22/fusion_bench/__init__.py +46 -0
  4. fusion_bench-0.2.22/fusion_bench/_get_started/__init__.py +3 -0
  5. fusion_bench-0.2.22/fusion_bench/_get_started/greeting_program.py +49 -0
  6. fusion_bench-0.2.22/fusion_bench/compat/method/base_algorithm.py +72 -0
  7. fusion_bench-0.2.22/fusion_bench/constants/__init__.py +8 -0
  8. fusion_bench-0.2.22/fusion_bench/constants/clip_vision.py +46 -0
  9. fusion_bench-0.2.22/fusion_bench/constants/paths.py +22 -0
  10. fusion_bench-0.2.22/fusion_bench/constants/runtime.py +57 -0
  11. fusion_bench-0.2.22/fusion_bench/dataset/clip_dataset.py +80 -0
  12. fusion_bench-0.2.22/fusion_bench/dataset/gpt2_glue.py +300 -0
  13. fusion_bench-0.2.22/fusion_bench/dataset/image_corruption/make_corruption.py +179 -0
  14. fusion_bench-0.2.22/fusion_bench/dataset/image_dataset.py +55 -0
  15. fusion_bench-0.2.22/fusion_bench/dataset/nyuv2.py +119 -0
  16. fusion_bench-0.2.22/fusion_bench/method/__init__.py +245 -0
  17. fusion_bench-0.2.22/fusion_bench/method/adamerging/clip_layer_wise_adamerging.py +46 -0
  18. fusion_bench-0.2.22/fusion_bench/method/adamerging/clip_task_wise_adamerging.py +163 -0
  19. fusion_bench-0.2.22/fusion_bench/method/adamerging/layer_wise_adamerging.py +258 -0
  20. fusion_bench-0.2.22/fusion_bench/method/base_algorithm.py +228 -0
  21. fusion_bench-0.2.22/fusion_bench/method/bitdelta/__init__.py +5 -0
  22. fusion_bench-0.2.22/fusion_bench/method/bitdelta/bitdelta.py +156 -0
  23. fusion_bench-0.2.22/fusion_bench/method/bitdelta/bitdelta_utils/binary_gemm_kernel.py +462 -0
  24. fusion_bench-0.2.22/fusion_bench/method/bitdelta/bitdelta_utils/data.py +35 -0
  25. fusion_bench-0.2.22/fusion_bench/method/bitdelta/bitdelta_utils/diff.py +129 -0
  26. fusion_bench-0.2.22/fusion_bench/method/classification/clip_finetune.py +444 -0
  27. fusion_bench-0.2.22/fusion_bench/method/concrete_subspace/clip_concrete_adamerging.py +594 -0
  28. fusion_bench-0.2.22/fusion_bench/method/depth_upscaling/depth_upscaling.py +84 -0
  29. fusion_bench-0.2.22/fusion_bench/method/doge_ta/clip_layer_wise_adamerging.py +45 -0
  30. fusion_bench-0.2.22/fusion_bench/method/doge_ta/doge_ta.py +364 -0
  31. fusion_bench-0.2.22/fusion_bench/method/ensemble.py +98 -0
  32. fusion_bench-0.2.22/fusion_bench/method/expert_sparsity/utils/calibration_data.py +153 -0
  33. fusion_bench-0.2.22/fusion_bench/method/fisher_merging/clip_fisher_merging.py +187 -0
  34. fusion_bench-0.2.22/fusion_bench/method/fisher_merging/fisher_merging.py +487 -0
  35. fusion_bench-0.2.22/fusion_bench/method/fisher_merging/gpt2_fisher_merging.py +186 -0
  36. fusion_bench-0.2.22/fusion_bench/method/fw_merging/fw_hard.py +448 -0
  37. fusion_bench-0.2.22/fusion_bench/method/fw_merging/fw_soft.py +519 -0
  38. fusion_bench-0.2.22/fusion_bench/method/gossip/clip_layer_wise_gossip.py +42 -0
  39. fusion_bench-0.2.22/fusion_bench/method/linear/expo.py +119 -0
  40. fusion_bench-0.2.22/fusion_bench/method/linear/linear_interpolation.py +62 -0
  41. fusion_bench-0.2.22/fusion_bench/method/linear/simple_average_for_llama.py +83 -0
  42. fusion_bench-0.2.22/fusion_bench/method/lm_finetune/bradley_terry_rm.py +432 -0
  43. fusion_bench-0.2.22/fusion_bench/method/mixture_of_experts/mixtral_upcycling.py +312 -0
  44. fusion_bench-0.2.22/fusion_bench/method/model_recombination.py +118 -0
  45. fusion_bench-0.2.22/fusion_bench/method/moe_pruner/hooks/__init__.py +5 -0
  46. fusion_bench-0.2.22/fusion_bench/method/moe_pruner/utils/data.py +155 -0
  47. fusion_bench-0.2.22/fusion_bench/method/moe_pruner/utils/prune.py +318 -0
  48. fusion_bench-0.2.22/fusion_bench/method/pruning/llama_magnitude_prune.py +202 -0
  49. fusion_bench-0.2.22/fusion_bench/method/pruning/wanda_utils/data.py +153 -0
  50. fusion_bench-0.2.22/fusion_bench/method/pwe_moe/clip_pwe_moe.py +293 -0
  51. fusion_bench-0.2.22/fusion_bench/method/randes/modelsoup.py +124 -0
  52. fusion_bench-0.2.22/fusion_bench/method/regmean/clip_regmean.py +131 -0
  53. fusion_bench-0.2.22/fusion_bench/method/regmean/gpt2_regmean.py +140 -0
  54. fusion_bench-0.2.22/fusion_bench/method/regmean/regmean.py +374 -0
  55. fusion_bench-0.2.22/fusion_bench/method/regmean_plusplus/__init__.py +3 -0
  56. fusion_bench-0.2.22/fusion_bench/method/regmean_plusplus/clip_regmean_plusplus.py +199 -0
  57. fusion_bench-0.2.22/fusion_bench/method/regmean_plusplus/regmean_plusplus.py +383 -0
  58. fusion_bench-0.2.22/fusion_bench/method/simple_average.py +135 -0
  59. fusion_bench-0.2.22/fusion_bench/method/slerp/slerp.py +104 -0
  60. fusion_bench-0.2.22/fusion_bench/method/smile_upscaling/causal_lm_upscaling.py +371 -0
  61. fusion_bench-0.2.22/fusion_bench/method/smile_upscaling/error_accumulation.py +177 -0
  62. fusion_bench-0.2.22/fusion_bench/method/smile_upscaling/projected_energy.py +144 -0
  63. fusion_bench-0.2.22/fusion_bench/method/smile_upscaling/smile_mistral_upscaling.py +236 -0
  64. fusion_bench-0.2.22/fusion_bench/method/smile_upscaling/smile_qwen2_upscaling.py +249 -0
  65. fusion_bench-0.2.22/fusion_bench/method/smile_upscaling/smile_upscaling.py +253 -0
  66. fusion_bench-0.2.22/fusion_bench/method/tall_mask/task_arithmetic.py +125 -0
  67. fusion_bench-0.2.22/fusion_bench/method/task_arithmetic/task_arithmetic.py +149 -0
  68. fusion_bench-0.2.22/fusion_bench/method/ties_merging/ties_merging.py +109 -0
  69. fusion_bench-0.2.22/fusion_bench/method/we_moe/__init__.py +3 -0
  70. fusion_bench-0.2.22/fusion_bench/method/we_moe/clip_we_moe.py +162 -0
  71. fusion_bench-0.2.22/fusion_bench/method/we_moe/entropy_loss.py +25 -0
  72. fusion_bench-0.2.22/fusion_bench/method/we_moe/flan_t5_we_moe.py +331 -0
  73. fusion_bench-0.2.22/fusion_bench/method/we_moe/utils.py +15 -0
  74. fusion_bench-0.2.22/fusion_bench/method/we_moe/we_moe.py +246 -0
  75. fusion_bench-0.2.22/fusion_bench/method/weighted_average/llama.py +101 -0
  76. fusion_bench-0.2.22/fusion_bench/metrics/continual_learning/__init__.py +1 -0
  77. fusion_bench-0.2.22/fusion_bench/metrics/continual_learning/backward_transfer.py +22 -0
  78. fusion_bench-0.2.22/fusion_bench/metrics/nyuv2/__init__.py +11 -0
  79. fusion_bench-0.2.22/fusion_bench/metrics/nyuv2/segmentation.py +43 -0
  80. fusion_bench-0.2.22/fusion_bench/mixins/__init__.py +39 -0
  81. fusion_bench-0.2.22/fusion_bench/mixins/clip_classification.py +222 -0
  82. fusion_bench-0.2.22/fusion_bench/mixins/hydra_config.py +147 -0
  83. fusion_bench-0.2.22/fusion_bench/mixins/lightning_fabric.py +200 -0
  84. fusion_bench-0.2.22/fusion_bench/mixins/serialization.py +375 -0
  85. fusion_bench-0.2.22/fusion_bench/modelpool/__init__.py +44 -0
  86. fusion_bench-0.2.22/fusion_bench/modelpool/base_pool.py +289 -0
  87. fusion_bench-0.2.22/fusion_bench/modelpool/causal_lm/causal_lm.py +244 -0
  88. fusion_bench-0.2.22/fusion_bench/modelpool/clip_vision/modelpool.py +184 -0
  89. fusion_bench-0.2.22/fusion_bench/modelpool/seq_classification_lm/__init__.py +2 -0
  90. fusion_bench-0.2.22/fusion_bench/modelpool/seq_classification_lm/seq_classification_lm.py +98 -0
  91. fusion_bench-0.2.22/fusion_bench/models/__init__.py +10 -0
  92. fusion_bench-0.2.22/fusion_bench/models/expert_sparsity/mixtral/__init__.py +15 -0
  93. fusion_bench-0.2.22/fusion_bench/models/hf_utils.py +160 -0
  94. fusion_bench-0.2.22/fusion_bench/models/linearized/linearized_model_utils.py +91 -0
  95. fusion_bench-0.2.22/fusion_bench/models/linearized/vision_model.py +122 -0
  96. fusion_bench-0.2.22/fusion_bench/models/model_card_templates/default.md +46 -0
  97. fusion_bench-0.2.22/fusion_bench/models/modeling_deepseek_v2/__init__.py +15 -0
  98. fusion_bench-0.2.22/fusion_bench/models/modeling_deepseek_v2/modeling_deepseek.py +1922 -0
  99. fusion_bench-0.2.22/fusion_bench/models/modeling_deepseek_v2/tokenization_deepseek_fast.py +37 -0
  100. fusion_bench-0.2.22/fusion_bench/models/modeling_smile_gemma2/__init__.py +9 -0
  101. fusion_bench-0.2.22/fusion_bench/models/modeling_smile_gemma2/configuration_smile_gemma2.py +20 -0
  102. fusion_bench-0.2.22/fusion_bench/models/modeling_smile_gemma2/modeling_smile_gemma2.py +986 -0
  103. fusion_bench-0.2.22/fusion_bench/models/modeling_smile_gemma2/register.py +26 -0
  104. fusion_bench-0.2.22/fusion_bench/models/modeling_smile_llama/__init__.py +7 -0
  105. fusion_bench-0.2.22/fusion_bench/models/modeling_smile_llama/configuration_smile_llama.py +20 -0
  106. fusion_bench-0.2.22/fusion_bench/models/modeling_smile_llama/modeling_smile_llama.py +698 -0
  107. fusion_bench-0.2.22/fusion_bench/models/modeling_smile_llama/register.py +8 -0
  108. fusion_bench-0.2.22/fusion_bench/models/modeling_smile_mistral/__init__.py +6 -0
  109. fusion_bench-0.2.22/fusion_bench/models/modeling_smile_qwen2/__init__.py +8 -0
  110. fusion_bench-0.2.22/fusion_bench/models/modeling_smile_qwen2/modeling_smile_qwen2.py +917 -0
  111. fusion_bench-0.2.22/fusion_bench/models/modeling_smile_qwen2/register.py +8 -0
  112. fusion_bench-0.2.22/fusion_bench/models/parameter_dict.py +121 -0
  113. fusion_bench-0.2.22/fusion_bench/models/sparse_we_moe.py +407 -0
  114. fusion_bench-0.2.22/fusion_bench/models/utils.py +106 -0
  115. fusion_bench-0.2.22/fusion_bench/models/we_moe.py +195 -0
  116. fusion_bench-0.2.22/fusion_bench/models/wrappers/ensemble.py +185 -0
  117. fusion_bench-0.2.22/fusion_bench/models/wrappers/layer_wise_fusion.py +291 -0
  118. fusion_bench-0.2.22/fusion_bench/models/wrappers/task_wise_fusion.py +427 -0
  119. fusion_bench-0.2.22/fusion_bench/programs/base_program.py +88 -0
  120. fusion_bench-0.2.22/fusion_bench/programs/fabric_fusion_program.py +297 -0
  121. fusion_bench-0.2.22/fusion_bench/scripts/cli.py +76 -0
  122. fusion_bench-0.2.22/fusion_bench/taskpool/base_pool.py +37 -0
  123. fusion_bench-0.2.22/fusion_bench/taskpool/clip_vision/taskpool.py +419 -0
  124. fusion_bench-0.2.22/fusion_bench/taskpool/dummy.py +60 -0
  125. fusion_bench-0.2.22/fusion_bench/taskpool/lm_eval_harness/taskpool.py +86 -0
  126. fusion_bench-0.2.22/fusion_bench/tasks/clip_classification/__init__.py +185 -0
  127. fusion_bench-0.2.22/fusion_bench/tasks/flan_t5_text_generation/__init__.py +0 -0
  128. fusion_bench-0.2.22/fusion_bench/utils/__init__.py +22 -0
  129. fusion_bench-0.2.22/fusion_bench/utils/cache_utils.py +158 -0
  130. fusion_bench-0.2.22/fusion_bench/utils/devices.py +255 -0
  131. fusion_bench-0.2.22/fusion_bench/utils/fabric.py +24 -0
  132. fusion_bench-0.2.22/fusion_bench/utils/instantiate_utils.py +467 -0
  133. fusion_bench-0.2.22/fusion_bench/utils/lazy_imports.py +97 -0
  134. fusion_bench-0.2.22/fusion_bench/utils/lazy_state_dict.py +445 -0
  135. fusion_bench-0.2.22/fusion_bench/utils/modelscope.py +265 -0
  136. fusion_bench-0.2.22/fusion_bench/utils/parameters.py +356 -0
  137. fusion_bench-0.2.22/fusion_bench/utils/path.py +78 -0
  138. fusion_bench-0.2.22/fusion_bench/utils/plot/__init__.py +0 -0
  139. fusion_bench-0.2.22/fusion_bench/utils/pylogger.py +85 -0
  140. fusion_bench-0.2.22/fusion_bench/utils/rich_utils.py +204 -0
  141. fusion_bench-0.2.22/fusion_bench/utils/state_dict_arithmetic.py +376 -0
  142. fusion_bench-0.2.22/fusion_bench.egg-info/PKG-INFO +285 -0
  143. fusion_bench-0.2.22/fusion_bench.egg-info/SOURCES.txt +934 -0
  144. fusion_bench-0.2.22/fusion_bench.egg-info/requires.txt +20 -0
  145. fusion_bench-0.2.22/fusion_bench_config/_get_started/clip_evaluate_single_model.yaml +21 -0
  146. fusion_bench-0.2.22/fusion_bench_config/_get_started/clip_simple_average.yaml +23 -0
  147. fusion_bench-0.2.22/fusion_bench_config/_get_started/clip_task_arithmetic.yaml +24 -0
  148. fusion_bench-0.2.22/fusion_bench_config/_get_started/greeting_program.yaml +4 -0
  149. fusion_bench-0.2.22/fusion_bench_config/fabric/loggers/csv_logger.yaml +11 -0
  150. fusion_bench-0.2.22/fusion_bench_config/fabric/loggers/tensorboard_logger.yaml +11 -0
  151. fusion_bench-0.2.22/fusion_bench_config/fabric_model_fusion.yaml +47 -0
  152. fusion_bench-0.2.22/fusion_bench_config/hydra/default.yaml +12 -0
  153. fusion_bench-0.2.22/fusion_bench_config/llama_full_finetune.yaml +18 -0
  154. fusion_bench-0.2.22/fusion_bench_config/method/adamerging/clip.yaml +23 -0
  155. fusion_bench-0.2.22/fusion_bench_config/method/bitdelta/bitdelta.yaml +12 -0
  156. fusion_bench-0.2.22/fusion_bench_config/method/depth_upscaling.yaml +8 -0
  157. fusion_bench-0.2.22/fusion_bench_config/method/fisher_merging/clip_fisher_merging.yaml +12 -0
  158. fusion_bench-0.2.22/fusion_bench_config/method/linear/simple_average_for_llama.yaml +6 -0
  159. fusion_bench-0.2.22/fusion_bench_config/method/smile_upscaling/causal_lm_upscaling.yaml +21 -0
  160. fusion_bench-0.2.22/fusion_bench_config/method/smile_upscaling/error_accumulation.yaml +5 -0
  161. fusion_bench-0.2.22/fusion_bench_config/method/smile_upscaling/projected_energy.yaml +2 -0
  162. fusion_bench-0.2.22/fusion_bench_config/method/smile_upscaling/smile_qwen2_upscaling.yaml +14 -0
  163. fusion_bench-0.2.22/fusion_bench_config/method/wemoe/flan_t5_weight_ensembling_moe.yaml +20 -0
  164. fusion_bench-0.2.22/fusion_bench_config/modelpool/CLIPVisionModelPool/_template.yaml +9 -0
  165. fusion_bench-0.2.22/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_individual.yaml +5 -0
  166. fusion_bench-0.2.22/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_single_finetuned.yaml +7 -0
  167. fusion_bench-0.2.22/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_svhn_and_mnist.yaml +8 -0
  168. fusion_bench-0.2.22/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_TA8.yaml +33 -0
  169. fusion_bench-0.2.22/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_TA8_model_only.yaml +14 -0
  170. fusion_bench-0.2.22/fusion_bench_config/modelpool/CausalLMPool/Qwen2.5-1.5B_math_and_coder.yaml +11 -0
  171. fusion_bench-0.2.22/fusion_bench_config/modelpool/CausalLMPool/Qwen2.5-7B-math_and_coder.yaml +9 -0
  172. fusion_bench-0.2.22/fusion_bench_config/modelpool/CausalLMPool/mistral-7b.yaml +6 -0
  173. fusion_bench-0.2.22/fusion_bench_config/modelpool/CausalLMPool/mixtral_moe_merging.yaml +10 -0
  174. fusion_bench-0.2.22/fusion_bench_config/modelpool/CausalLMPool/qwen2_math_1.5B_and_R1.yaml +9 -0
  175. fusion_bench-0.2.22/fusion_bench_config/modelpool/CausalLMPool/simle_mixtral_exp_v4.yaml +10 -0
  176. fusion_bench-0.2.22/fusion_bench_config/modelpool/CausalLMPool/vicuna-7b-v1.5.yaml +8 -0
  177. fusion_bench-0.2.22/fusion_bench_config/modelpool/SequenceClassificationModelPool/llama_preference700k.yaml +19 -0
  178. fusion_bench-0.2.22/fusion_bench_config/modelpool/SequenceClassificationModelPool/single_reward_model.yaml +11 -0
  179. fusion_bench-0.2.22/fusion_bench_config/nyuv2_config.yaml +17 -0
  180. fusion_bench-0.2.22/fusion_bench_config/nyuv2_mtl_train.yaml +33 -0
  181. fusion_bench-0.2.22/fusion_bench_config/path/default.yaml +28 -0
  182. fusion_bench-0.2.22/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-base-patch32_svhn_and_mnist.yaml +24 -0
  183. fusion_bench-0.2.22/pyproject.toml +55 -0
  184. fusion_bench-0.2.20/PKG-INFO +0 -308
  185. fusion_bench-0.2.20/README.md +0 -257
  186. fusion_bench-0.2.20/fusion_bench/__init__.py +0 -26
  187. fusion_bench-0.2.20/fusion_bench/compat/method/base_algorithm.py +0 -58
  188. fusion_bench-0.2.20/fusion_bench/constants/__init__.py +0 -2
  189. fusion_bench-0.2.20/fusion_bench/constants/clip_vision.py +0 -22
  190. fusion_bench-0.2.20/fusion_bench/constants/paths.py +0 -18
  191. fusion_bench-0.2.20/fusion_bench/dataset/clip_dataset.py +0 -79
  192. fusion_bench-0.2.20/fusion_bench/dataset/gpt2_glue.py +0 -300
  193. fusion_bench-0.2.20/fusion_bench/dataset/image_dataset.py +0 -55
  194. fusion_bench-0.2.20/fusion_bench/dataset/nyuv2.py +0 -119
  195. fusion_bench-0.2.20/fusion_bench/method/__init__.py +0 -226
  196. fusion_bench-0.2.20/fusion_bench/method/adamerging/clip_layer_wise_adamerging.py +0 -46
  197. fusion_bench-0.2.20/fusion_bench/method/adamerging/clip_task_wise_adamerging.py +0 -159
  198. fusion_bench-0.2.20/fusion_bench/method/adamerging/layer_wise_adamerging.py +0 -252
  199. fusion_bench-0.2.20/fusion_bench/method/base_algorithm.py +0 -45
  200. fusion_bench-0.2.20/fusion_bench/method/classification/clip_finetune.py +0 -444
  201. fusion_bench-0.2.20/fusion_bench/method/concrete_subspace/clip_concrete_adamerging.py +0 -595
  202. fusion_bench-0.2.20/fusion_bench/method/depth_upscaling/depth_upscaling.py +0 -89
  203. fusion_bench-0.2.20/fusion_bench/method/doge_ta/clip_layer_wise_adamerging.py +0 -46
  204. fusion_bench-0.2.20/fusion_bench/method/doge_ta/doge_ta.py +0 -364
  205. fusion_bench-0.2.20/fusion_bench/method/ensemble.py +0 -98
  206. fusion_bench-0.2.20/fusion_bench/method/expert_sparsity/utils/calibration_data.py +0 -153
  207. fusion_bench-0.2.20/fusion_bench/method/fisher_merging/clip_fisher_merging.py +0 -191
  208. fusion_bench-0.2.20/fusion_bench/method/fisher_merging/fisher_merging.py +0 -496
  209. fusion_bench-0.2.20/fusion_bench/method/fisher_merging/gpt2_fisher_merging.py +0 -193
  210. fusion_bench-0.2.20/fusion_bench/method/fw_merging/fw_hard.py +0 -448
  211. fusion_bench-0.2.20/fusion_bench/method/fw_merging/fw_soft.py +0 -519
  212. fusion_bench-0.2.20/fusion_bench/method/gossip/clip_layer_wise_gossip.py +0 -43
  213. fusion_bench-0.2.20/fusion_bench/method/linear/expo.py +0 -118
  214. fusion_bench-0.2.20/fusion_bench/method/linear/linear_interpolation.py +0 -60
  215. fusion_bench-0.2.20/fusion_bench/method/linear/simple_average_for_llama.py +0 -79
  216. fusion_bench-0.2.20/fusion_bench/method/lm_finetune/bradley_terry_rm.py +0 -432
  217. fusion_bench-0.2.20/fusion_bench/method/mixture_of_experts/mixtral_upcycling.py +0 -329
  218. fusion_bench-0.2.20/fusion_bench/method/model_recombination.py +0 -121
  219. fusion_bench-0.2.20/fusion_bench/method/moe_pruner/hooks/__init__.py +0 -6
  220. fusion_bench-0.2.20/fusion_bench/method/moe_pruner/utils/data.py +0 -154
  221. fusion_bench-0.2.20/fusion_bench/method/moe_pruner/utils/prune.py +0 -313
  222. fusion_bench-0.2.20/fusion_bench/method/pruning/llama_magnitude_prune.py +0 -202
  223. fusion_bench-0.2.20/fusion_bench/method/pruning/wanda_utils/data.py +0 -154
  224. fusion_bench-0.2.20/fusion_bench/method/pwe_moe/clip_pwe_moe.py +0 -315
  225. fusion_bench-0.2.20/fusion_bench/method/randes/modelsoup.py +0 -126
  226. fusion_bench-0.2.20/fusion_bench/method/regmean/clip_regmean.py +0 -131
  227. fusion_bench-0.2.20/fusion_bench/method/regmean/gpt2_regmean.py +0 -147
  228. fusion_bench-0.2.20/fusion_bench/method/regmean/regmean.py +0 -383
  229. fusion_bench-0.2.20/fusion_bench/method/regmean_plusplus/__init__.py +0 -3
  230. fusion_bench-0.2.20/fusion_bench/method/regmean_plusplus/clip_regmean_plusplus.py +0 -192
  231. fusion_bench-0.2.20/fusion_bench/method/regmean_plusplus/regmean_plusplus.py +0 -365
  232. fusion_bench-0.2.20/fusion_bench/method/simple_average.py +0 -139
  233. fusion_bench-0.2.20/fusion_bench/method/slerp/slerp.py +0 -101
  234. fusion_bench-0.2.20/fusion_bench/method/smile_upscaling/smile_mistral_upscaling.py +0 -232
  235. fusion_bench-0.2.20/fusion_bench/method/smile_upscaling/smile_qwen2_upscaling.py +0 -229
  236. fusion_bench-0.2.20/fusion_bench/method/smile_upscaling/smile_upscaling.py +0 -246
  237. fusion_bench-0.2.20/fusion_bench/method/tall_mask/task_arithmetic.py +0 -133
  238. fusion_bench-0.2.20/fusion_bench/method/task_arithmetic/task_arithmetic.py +0 -153
  239. fusion_bench-0.2.20/fusion_bench/method/ties_merging/ties_merging.py +0 -122
  240. fusion_bench-0.2.20/fusion_bench/method/we_moe/__init__.py +0 -2
  241. fusion_bench-0.2.20/fusion_bench/method/we_moe/clip_we_moe.py +0 -161
  242. fusion_bench-0.2.20/fusion_bench/method/we_moe/we_moe.py +0 -246
  243. fusion_bench-0.2.20/fusion_bench/method/weighted_average/llama.py +0 -113
  244. fusion_bench-0.2.20/fusion_bench/metrics/continual_learning/backward_transfer.py +0 -22
  245. fusion_bench-0.2.20/fusion_bench/metrics/nyuv2/__init__.py +0 -11
  246. fusion_bench-0.2.20/fusion_bench/metrics/nyuv2/segmentation.py +0 -43
  247. fusion_bench-0.2.20/fusion_bench/mixins/__init__.py +0 -31
  248. fusion_bench-0.2.20/fusion_bench/mixins/clip_classification.py +0 -252
  249. fusion_bench-0.2.20/fusion_bench/mixins/hydra_config.py +0 -49
  250. fusion_bench-0.2.20/fusion_bench/mixins/lightning_fabric.py +0 -198
  251. fusion_bench-0.2.20/fusion_bench/mixins/serialization.py +0 -148
  252. fusion_bench-0.2.20/fusion_bench/modelpool/__init__.py +0 -44
  253. fusion_bench-0.2.20/fusion_bench/modelpool/base_pool.py +0 -269
  254. fusion_bench-0.2.20/fusion_bench/modelpool/causal_lm/causal_lm.py +0 -236
  255. fusion_bench-0.2.20/fusion_bench/modelpool/clip_vision/modelpool.py +0 -186
  256. fusion_bench-0.2.20/fusion_bench/modelpool/seq_classification_lm/__init__.py +0 -2
  257. fusion_bench-0.2.20/fusion_bench/modelpool/seq_classification_lm/seq_classification_lm.py +0 -98
  258. fusion_bench-0.2.20/fusion_bench/models/__init__.py +0 -4
  259. fusion_bench-0.2.20/fusion_bench/models/expert_sparsity/mixtral/__init__.py +0 -15
  260. fusion_bench-0.2.20/fusion_bench/models/linearized/linearized_model_utils.py +0 -91
  261. fusion_bench-0.2.20/fusion_bench/models/linearized/vision_model.py +0 -122
  262. fusion_bench-0.2.20/fusion_bench/models/modeling_deepseek_v2/__init__.py +0 -15
  263. fusion_bench-0.2.20/fusion_bench/models/modeling_deepseek_v2/modeling_deepseek.py +0 -1922
  264. fusion_bench-0.2.20/fusion_bench/models/modeling_deepseek_v2/tokenization_deepseek_fast.py +0 -38
  265. fusion_bench-0.2.20/fusion_bench/models/modeling_smile_mistral/__init__.py +0 -48
  266. fusion_bench-0.2.20/fusion_bench/models/modeling_smile_qwen2/__init__.py +0 -8
  267. fusion_bench-0.2.20/fusion_bench/models/modeling_smile_qwen2/modeling_smile_qwen2.py +0 -922
  268. fusion_bench-0.2.20/fusion_bench/models/modeling_smile_qwen2/register.py +0 -11
  269. fusion_bench-0.2.20/fusion_bench/models/parameter_dict.py +0 -121
  270. fusion_bench-0.2.20/fusion_bench/models/sparse_we_moe.py +0 -459
  271. fusion_bench-0.2.20/fusion_bench/models/utils.py +0 -80
  272. fusion_bench-0.2.20/fusion_bench/models/we_moe.py +0 -247
  273. fusion_bench-0.2.20/fusion_bench/models/wrappers/ensemble.py +0 -183
  274. fusion_bench-0.2.20/fusion_bench/models/wrappers/layer_wise_fusion.py +0 -291
  275. fusion_bench-0.2.20/fusion_bench/models/wrappers/task_wise_fusion.py +0 -249
  276. fusion_bench-0.2.20/fusion_bench/programs/base_program.py +0 -9
  277. fusion_bench-0.2.20/fusion_bench/programs/fabric_fusion_program.py +0 -312
  278. fusion_bench-0.2.20/fusion_bench/scripts/cli.py +0 -43
  279. fusion_bench-0.2.20/fusion_bench/taskpool/base_pool.py +0 -36
  280. fusion_bench-0.2.20/fusion_bench/taskpool/clip_vision/taskpool.py +0 -398
  281. fusion_bench-0.2.20/fusion_bench/taskpool/dummy.py +0 -60
  282. fusion_bench-0.2.20/fusion_bench/taskpool/lm_eval_harness/taskpool.py +0 -87
  283. fusion_bench-0.2.20/fusion_bench/tasks/clip_classification/__init__.py +0 -183
  284. fusion_bench-0.2.20/fusion_bench/utils/__init__.py +0 -16
  285. fusion_bench-0.2.20/fusion_bench/utils/cache_utils.py +0 -58
  286. fusion_bench-0.2.20/fusion_bench/utils/devices.py +0 -245
  287. fusion_bench-0.2.20/fusion_bench/utils/fabric.py +0 -24
  288. fusion_bench-0.2.20/fusion_bench/utils/instantiate_utils.py +0 -465
  289. fusion_bench-0.2.20/fusion_bench/utils/lazy_imports.py +0 -74
  290. fusion_bench-0.2.20/fusion_bench/utils/lazy_state_dict.py +0 -410
  291. fusion_bench-0.2.20/fusion_bench/utils/modelscope.py +0 -146
  292. fusion_bench-0.2.20/fusion_bench/utils/parameters.py +0 -356
  293. fusion_bench-0.2.20/fusion_bench/utils/path.py +0 -22
  294. fusion_bench-0.2.20/fusion_bench/utils/pylogger.py +0 -85
  295. fusion_bench-0.2.20/fusion_bench/utils/rich_utils.py +0 -201
  296. fusion_bench-0.2.20/fusion_bench/utils/state_dict_arithmetic.py +0 -374
  297. fusion_bench-0.2.20/fusion_bench.egg-info/PKG-INFO +0 -308
  298. fusion_bench-0.2.20/fusion_bench.egg-info/SOURCES.txt +0 -895
  299. fusion_bench-0.2.20/fusion_bench.egg-info/requires.txt +0 -16
  300. fusion_bench-0.2.20/fusion_bench_config/fabric/loggers/csv_logger.yaml +0 -11
  301. fusion_bench-0.2.20/fusion_bench_config/fabric/loggers/tensorboard_logger.yaml +0 -11
  302. fusion_bench-0.2.20/fusion_bench_config/fabric_model_fusion.yaml +0 -19
  303. fusion_bench-0.2.20/fusion_bench_config/hydra/default.yaml +0 -8
  304. fusion_bench-0.2.20/fusion_bench_config/llama_full_finetune.yaml +0 -17
  305. fusion_bench-0.2.20/fusion_bench_config/method/adamerging/clip.yaml +0 -23
  306. fusion_bench-0.2.20/fusion_bench_config/method/adamerging.yaml +0 -23
  307. fusion_bench-0.2.20/fusion_bench_config/method/depth_upscaling.yaml +0 -5
  308. fusion_bench-0.2.20/fusion_bench_config/method/fisher_merging/clip_fisher_merging.yaml +0 -13
  309. fusion_bench-0.2.20/fusion_bench_config/method/linear/simple_average_for_llama.yaml +0 -5
  310. fusion_bench-0.2.20/fusion_bench_config/method/smile_upscaling/smile_qwen2_upscaling.yaml +0 -13
  311. fusion_bench-0.2.20/fusion_bench_config/modelpool/CLIPVisionModelPool/_template.yaml +0 -12
  312. fusion_bench-0.2.20/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_individual.yaml +0 -10
  313. fusion_bench-0.2.20/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_single_finetuned.yaml +0 -7
  314. fusion_bench-0.2.20/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_svhn_and_mnist.yaml +0 -14
  315. fusion_bench-0.2.20/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_TA8.yaml +0 -33
  316. fusion_bench-0.2.20/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_TA8_model_only.yaml +0 -14
  317. fusion_bench-0.2.20/fusion_bench_config/modelpool/CausalLMPool/Qwen2.5-1.5B_math_and_coder.yaml +0 -11
  318. fusion_bench-0.2.20/fusion_bench_config/modelpool/CausalLMPool/qwen2_math_1.5B_and_R1.yaml +0 -17
  319. fusion_bench-0.2.20/fusion_bench_config/modelpool/CausalLMPool/simle_mixtral_exp_v4.yaml +0 -20
  320. fusion_bench-0.2.20/fusion_bench_config/modelpool/SeqenceClassificationModelPool/llama_preference700k.yaml +0 -19
  321. fusion_bench-0.2.20/fusion_bench_config/modelpool/SeqenceClassificationModelPool/single_reward_model.yaml +0 -11
  322. fusion_bench-0.2.20/fusion_bench_config/modelpool/mixtral_moe_merging.yaml +0 -14
  323. fusion_bench-0.2.20/fusion_bench_config/modelpool/mixtral_moe_upscaling.yaml +0 -6
  324. fusion_bench-0.2.20/fusion_bench_config/nyuv2_config.yaml +0 -15
  325. fusion_bench-0.2.20/fusion_bench_config/nyuv2_mtl_train.yaml +0 -32
  326. fusion_bench-0.2.20/fusion_bench_config/taskpool/clip-vit-base-patch32_svhn_and_mnist.yaml +0 -22
  327. fusion_bench-0.2.20/pyproject.toml +0 -50
  328. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/LICENSE +0 -0
  329. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/__main__.py +0 -0
  330. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/compat/__init__.py +0 -0
  331. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/compat/method/__init__.py +0 -0
  332. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/compat/modelpool/AutoModelForSeq2SeqLM.py +0 -0
  333. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/compat/modelpool/__init__.py +0 -0
  334. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/compat/modelpool/base_pool.py +0 -0
  335. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/compat/modelpool/huggingface_clip_vision.py +0 -0
  336. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/compat/taskpool/__init__.py +0 -0
  337. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/compat/taskpool/base_pool.py +0 -0
  338. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/compat/taskpool/clip_image_classification.py +0 -0
  339. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/compat/taskpool/flan_t5_glue_text_generation.py +0 -0
  340. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/constants/banner.py +0 -0
  341. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/__init__.py +0 -0
  342. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/arc_agi/__init__.py +0 -0
  343. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/arc_agi/arc.py +0 -0
  344. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/arc_agi/arc_agi.py +0 -0
  345. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/arc_agi/augmenters.py +0 -0
  346. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/arc_agi/messagers.py +0 -0
  347. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/arc_agi/np_cache.py +0 -0
  348. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/arc_agi/preprocess.py +0 -0
  349. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/arc_agi/representers.py +0 -0
  350. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/fer2013.py +0 -0
  351. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/gsm8k.py +0 -0
  352. {fusion_bench-0.2.20/fusion_bench/dataset/llama/utils → fusion_bench-0.2.22/fusion_bench/dataset/image_corruption}/__init__.py +0 -0
  353. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/imdb.py +0 -0
  354. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/llama/__init__.py +0 -0
  355. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/llama/alpaca.py +0 -0
  356. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/llama/collate.py +0 -0
  357. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/llama/metamathqa.py +0 -0
  358. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/llama/openai.py +0 -0
  359. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/llama/preference_700k.py +0 -0
  360. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/llama/sharegpt.py +0 -0
  361. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/llama/squad.py +0 -0
  362. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/llama/stanford_shp.py +0 -0
  363. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/llama/ultrachat.py +0 -0
  364. {fusion_bench-0.2.20/fusion_bench/method/knots → fusion_bench-0.2.22/fusion_bench/dataset/llama/utils}/__init__.py +0 -0
  365. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/dataset/llama/wikitext.py +0 -0
  366. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/ada_svd/__init__.py +0 -0
  367. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/ada_svd/clip_vision.py +0 -0
  368. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/adamerging/__init__.py +0 -0
  369. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/adamerging/entropy_loss.py +0 -0
  370. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/adamerging/flan_t5_layer_wise_adamerging.py +0 -0
  371. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/adamerging/gpt2_layer_wise_adamerging.py +0 -0
  372. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/adamerging/llama_adamerging.py +0 -0
  373. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/adamerging/min_norm_solvers.py +0 -0
  374. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/adamerging/task_wise_adamerging.py +0 -0
  375. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/adamerging/utils.py +0 -0
  376. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/analysis/__init__.py +0 -0
  377. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/analysis/task_vector_cos_similarity.py +0 -0
  378. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/analysis/task_vector_violin_plot.py +0 -0
  379. {fusion_bench-0.2.20/fusion_bench/metrics → fusion_bench-0.2.22/fusion_bench/method/bitdelta/bitdelta_utils}/__init__.py +0 -0
  380. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/classification/__init__.py +0 -0
  381. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/classification/continual_clip_finetune.py +0 -0
  382. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/concrete_subspace/__init__.py +0 -0
  383. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/concrete_subspace/clip_concrete_task_arithmetic.py +0 -0
  384. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/concrete_subspace/clip_post_defense.py +0 -0
  385. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/concrete_subspace/clip_safe_concrete_adamerging.py +0 -0
  386. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/dare/__init__.py +0 -0
  387. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/dare/simple_average.py +0 -0
  388. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/dare/task_arithmetic.py +0 -0
  389. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/dare/ties_merging.py +0 -0
  390. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/dare/utils.py +0 -0
  391. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/dawe/__init__.py +0 -0
  392. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/dawe/dawe_for_clip.py +0 -0
  393. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/dawe/warppers/__init__.py +0 -0
  394. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/dawe/warppers/dawe_model.py +0 -0
  395. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/depth_upscaling/__init__.py +0 -0
  396. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/depth_upscaling/depth_upscaling_for_llama.py +0 -0
  397. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/doge_ta/__init__.py +0 -0
  398. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/doge_ta/layer_wise_adamerging.py +0 -0
  399. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/dummy.py +0 -0
  400. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/expert_sparsity/__init__.py +0 -0
  401. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/expert_sparsity/mixtral/__init__.py +0 -0
  402. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/expert_sparsity/mixtral/dynamic_skipping.py +0 -0
  403. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/expert_sparsity/mixtral/layer_wise_pruning.py +0 -0
  404. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/expert_sparsity/mixtral/progressive_pruning.py +0 -0
  405. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/fisher_merging/__init__.py +0 -0
  406. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/fw_merging/__init__.py +0 -0
  407. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/fw_merging/utils.py +0 -0
  408. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/gossip/__init__.py +0 -0
  409. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/gossip/clip_task_wise_gossip.py +0 -0
  410. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/gossip/entropy_loss.py +0 -0
  411. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/gossip/flan_t5_layer_wise_gossip.py +0 -0
  412. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/gossip/layer_wise_gossip.py +0 -0
  413. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/gossip/min_norm_solvers.py +0 -0
  414. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/gossip/task_wise_gossip.py +0 -0
  415. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/gossip/utils.py +0 -0
  416. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/isotropic_merging/__init__.py +0 -0
  417. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/isotropic_merging/iso.py +0 -0
  418. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/isotropic_merging/iso_utils.py +0 -0
  419. {fusion_bench-0.2.20/fusion_bench/mixins/optim → fusion_bench-0.2.22/fusion_bench/method/knots}/__init__.py +0 -0
  420. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/knots/knots_utils.py +0 -0
  421. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/linear/__init__.py +0 -0
  422. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/linear/llama_expo.py +0 -0
  423. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/linear/task_arithmetic_for_llama.py +0 -0
  424. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/lm_finetune/__init__.py +0 -0
  425. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/lm_finetune/causal_lm_pretrain.py +0 -0
  426. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/lm_finetune/fullfinetune_sft.py +0 -0
  427. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/lm_finetune/peftfinetune_sft.py +0 -0
  428. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/mixture_of_experts/__init__.py +0 -0
  429. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/mixture_of_experts/mixtral_merging.py +0 -0
  430. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/moe_pruner/__init__.py +0 -0
  431. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/moe_pruner/hooks/deepseek_v2.py +0 -0
  432. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/moe_pruner/hooks/hook.py +0 -0
  433. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/moe_pruner/hooks/mixtral.py +0 -0
  434. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/moe_pruner/moe_pruner.py +0 -0
  435. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/moe_pruner/utils/__init__.py +0 -0
  436. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/moe_pruner/utils/layerwrapper.py +0 -0
  437. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/moe_pruner/utils/score.py +0 -0
  438. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/opcm/__init__.py +0 -0
  439. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/opcm/opcm.py +0 -0
  440. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/opcm/task_arithmetic.py +0 -0
  441. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/opcm/ties_merging.py +0 -0
  442. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/opcm/utils.py +0 -0
  443. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/opcm/weight_average.py +0 -0
  444. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/__init__.py +0 -0
  445. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/llama_random_prune.py +0 -0
  446. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/llama_sparsegpt_prune.py +0 -0
  447. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/llama_wanda_prune.py +0 -0
  448. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/magnitude_diff_pruning.py +0 -0
  449. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/prune_utils.py +0 -0
  450. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/sparsegpt_utils/__init__.py +0 -0
  451. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/sparsegpt_utils/sparsegpt.py +0 -0
  452. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/wanda_utils/__init__.py +0 -0
  453. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/wanda_utils/ablate.py +0 -0
  454. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/wanda_utils/eval.py +0 -0
  455. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/wanda_utils/layerwrapper.py +0 -0
  456. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/wanda_utils/prune.py +0 -0
  457. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/wanda_utils/prune_opt.py +0 -0
  458. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pruning/wanda_utils/sparsegpt.py +0 -0
  459. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pwe_moe/__init__.py +0 -0
  460. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pwe_moe/module.py +0 -0
  461. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pwe_moe/openclip_pwe_moe.py +0 -0
  462. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pwe_moe/phn/__init__.py +0 -0
  463. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pwe_moe/phn/solvers.py +0 -0
  464. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/pwe_moe/utils.py +0 -0
  465. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/randes/__init__.py +0 -0
  466. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/randes/base_algorithm.py +0 -0
  467. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/randes/task_arithmetic.py +0 -0
  468. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/rankone_moe/__init__.py +0 -0
  469. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/rankone_moe/clip_rankone_moe.py +0 -0
  470. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/rankone_moe/rankone_moe.py +0 -0
  471. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/regmean/__init__.py +0 -0
  472. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/slerp/__init__.py +0 -0
  473. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/slerp/slerp_utils.py +0 -0
  474. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/smile_upscaling/__init__.py +0 -0
  475. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/smile_upscaling/singular_projection_merging.py +0 -0
  476. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/sparse_we_moe/__init__.py +0 -0
  477. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/sparse_we_moe/sparse_clip_we_moe.py +0 -0
  478. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/sparse_we_moe/sparse_we_moe.py +0 -0
  479. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/sparselo/__init__.py +0 -0
  480. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/sparselo/sparselo.py +0 -0
  481. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/surgery/__init__.py +0 -0
  482. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/surgery/clip_layer_wise_adamerging_surgery.py +0 -0
  483. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/tall_mask/__init__.py +0 -0
  484. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/tall_mask/utils.py +0 -0
  485. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/task_arithmetic/__init__.py +0 -0
  486. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/task_singular_vector/TSVC.py +0 -0
  487. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/task_singular_vector/TSVM.py +0 -0
  488. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/task_singular_vector/__init__.py +0 -0
  489. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/task_singular_vector/utils/TSVC_utils.py +0 -0
  490. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/task_singular_vector/utils/TSVM_utils.py +0 -0
  491. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/task_singular_vector/utils/__init__.py +0 -0
  492. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/task_singular_vector/utils/task_singular_interference.py +0 -0
  493. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/ties_merging/__init__.py +0 -0
  494. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/ties_merging/ties_merging_utils.py +0 -0
  495. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/trust_region/__init__.py +0 -0
  496. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/trust_region/clip_task_arithmetic.py +0 -0
  497. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/trust_region/utils.py +0 -0
  498. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/weighted_average/__init__.py +0 -0
  499. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/method/weighted_average/weighted_average.py +0 -0
  500. {fusion_bench-0.2.20/fusion_bench/models/expert_sparsity → fusion_bench-0.2.22/fusion_bench/metrics}/__init__.py +0 -0
  501. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/metrics/nyuv2/depth.py +0 -0
  502. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/metrics/nyuv2/loss.py +0 -0
  503. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/metrics/nyuv2/noise.py +0 -0
  504. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/metrics/nyuv2/normal.py +0 -0
  505. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/metrics/text_to_image_generation/__init__.py +0 -0
  506. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/metrics/text_to_image_generation/aesthetic_scorer.py +0 -0
  507. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/metrics/text_to_image_generation/compressibility.py +0 -0
  508. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/metrics/text_to_image_generation/pickscore_scorer.py +0 -0
  509. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/mixins/fabric_training.py +0 -0
  510. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/mixins/openclip_classification.py +0 -0
  511. {fusion_bench-0.2.20/fusion_bench/models/linearized → fusion_bench-0.2.22/fusion_bench/mixins/optim}/__init__.py +0 -0
  512. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/mixins/optim/adamw_with_warmup.py +0 -0
  513. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/mixins/rich_live.py +0 -0
  514. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/mixins/simple_profiler.py +0 -0
  515. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/modelpool/PeftModelForSeq2SeqLM.py +0 -0
  516. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/modelpool/causal_lm/__init__.py +0 -0
  517. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/modelpool/clip_vision/__init__.py +0 -0
  518. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/modelpool/huggingface_automodel.py +0 -0
  519. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/modelpool/huggingface_gpt2_classification.py +0 -0
  520. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/modelpool/lazy_state_dict_pool.py +0 -0
  521. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/modelpool/nyuv2_modelpool.py +0 -0
  522. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/modelpool/openclip_vision/__init__.py +0 -0
  523. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/modelpool/openclip_vision/modelpool.py +0 -0
  524. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/modelpool/seq2seq_lm/__init__.py +0 -0
  525. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/modelpool/seq2seq_lm/modelpool.py +0 -0
  526. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/modelpool/seq_classification_lm/reward_model.py +0 -0
  527. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/chat_templates/__init__.py +0 -0
  528. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/chat_templates/llama_3_Instruct.py +0 -0
  529. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/chat_templates/load_tokenizer.py +0 -0
  530. {fusion_bench-0.2.20/fusion_bench/models/llama/model_utils → fusion_bench-0.2.22/fusion_bench/models/expert_sparsity}/__init__.py +0 -0
  531. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/expert_sparsity/mixtral/dataset.py +0 -0
  532. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/expert_sparsity/mixtral/modeling_mixtral.py +0 -0
  533. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/expert_sparsity/mixtral/wrapper.py +0 -0
  534. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/hf_clip.py +0 -0
  535. {fusion_bench-0.2.20/fusion_bench/models/nyuv2 → fusion_bench-0.2.22/fusion_bench/models/linearized}/__init__.py +0 -0
  536. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/llama/__init__.py +0 -0
  537. {fusion_bench-0.2.20/fusion_bench/models/smile_moe → fusion_bench-0.2.22/fusion_bench/models/llama/model_utils}/__init__.py +0 -0
  538. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/llama/model_utils/embedding.py +0 -0
  539. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/llama/model_utils/liger_kernel.py +0 -0
  540. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/llama/model_utils/misc.py +0 -0
  541. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/llama/model_utils/mod.py +0 -0
  542. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/llama/model_utils/visual.py +0 -0
  543. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/llama/patcher.py +0 -0
  544. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/llama/tokenizer_loader.py +0 -0
  545. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/masks/__init__.py +0 -0
  546. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/masks/mask_model.py +0 -0
  547. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/modeling_deepseek_v2/configuration_deepseek.py +0 -0
  548. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/modeling_losparse_llama/__init__.py +0 -0
  549. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/modeling_losparse_llama/configuration_losparse_llama.py +0 -0
  550. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/modeling_losparse_llama/losparse_linear.py +0 -0
  551. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/modeling_losparse_llama/modeling_losparse_llama.py +0 -0
  552. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/modeling_losparse_llama/register.py +0 -0
  553. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/modeling_losparse_llama/utils.py +0 -0
  554. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/modeling_smile_mistral/configuration_smile_mistral.py +0 -0
  555. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/modeling_smile_mistral/modeling_smile_mistral.py +0 -0
  556. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/modeling_smile_mistral/register.py +0 -0
  557. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/modeling_smile_qwen2/configuration_smile_qwen2.py +0 -0
  558. {fusion_bench-0.2.20/fusion_bench/models/wrappers → fusion_bench-0.2.22/fusion_bench/models/nyuv2}/__init__.py +0 -0
  559. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/nyuv2/aspp.py +0 -0
  560. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/nyuv2/lightning_module.py +0 -0
  561. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/nyuv2/resnet.py +0 -0
  562. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/nyuv2/resnet_dilated.py +0 -0
  563. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/open_clip/__init__.py +0 -0
  564. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/open_clip/modeling.py +0 -0
  565. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/open_clip/utils.py +0 -0
  566. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/open_clip/variables_and_paths.py +0 -0
  567. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/rankone_moe.py +0 -0
  568. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/separate_io.py +0 -0
  569. {fusion_bench-0.2.20/fusion_bench/scripts → fusion_bench-0.2.22/fusion_bench/models/smile_moe}/__init__.py +0 -0
  570. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/smile_moe/linear_from_hf_config.py +0 -0
  571. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/smile_moe/linear_from_module.py +0 -0
  572. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/smile_moe/utils/__init__.py +0 -0
  573. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/smile_moe/utils/svd_utils.py +0 -0
  574. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/surgery/__init__.py +0 -0
  575. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/surgery/surgerymodelwrapper.py +0 -0
  576. {fusion_bench-0.2.20/fusion_bench/scripts/clip → fusion_bench-0.2.22/fusion_bench/models/wrappers}/__init__.py +0 -0
  577. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/models/wrappers/layer_wise_fusion_doge_ta.py +0 -0
  578. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/optim/__init__.py +0 -0
  579. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/optim/exception.py +0 -0
  580. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/optim/lr_scheduler/__init__.py +0 -0
  581. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/optim/lr_scheduler/linear_warmup.py +0 -0
  582. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/optim/lr_scheduler/utils/__init__.py +0 -0
  583. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/optim/lr_scheduler/utils/visualization.py +0 -0
  584. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/optim/mezo.py +0 -0
  585. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/programs/__init__.py +0 -0
  586. {fusion_bench-0.2.20/fusion_bench/taskpool/clip_vision/utils → fusion_bench-0.2.22/fusion_bench/scripts}/__init__.py +0 -0
  587. {fusion_bench-0.2.20/fusion_bench/tasks/flan_t5_text_generation → fusion_bench-0.2.22/fusion_bench/scripts/clip}/__init__.py +0 -0
  588. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/scripts/clip/convert_checkpoint.py +0 -0
  589. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/scripts/imgui.py +0 -0
  590. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/scripts/nyuv2_mtl_train.py +0 -0
  591. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/scripts/webui.py +0 -0
  592. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/taskpool/__init__.py +0 -0
  593. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/taskpool/clip_vision/__init__.py +0 -0
  594. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/taskpool/clip_vision/clip_rankone_moe_taskpool.py +0 -0
  595. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/taskpool/clip_vision/clip_smile_taskpool.py +0 -0
  596. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/taskpool/clip_vision/clip_sparse_wemoe_taskpool.py +0 -0
  597. {fusion_bench-0.2.20/fusion_bench/utils/plot → fusion_bench-0.2.22/fusion_bench/taskpool/clip_vision/utils}/__init__.py +0 -0
  598. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/taskpool/clip_vision/utils/routing_analysis_utils.py +0 -0
  599. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/taskpool/gpt2_text_classification.py +0 -0
  600. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/taskpool/llama/__init__.py +0 -0
  601. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/taskpool/llama/reward_model.py +0 -0
  602. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/taskpool/llama/test_generation.py +0 -0
  603. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/taskpool/lm_eval_harness/__init__.py +0 -0
  604. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/taskpool/nyuv2_taskpool.py +0 -0
  605. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/taskpool/openclip_vision/__init__.py +0 -0
  606. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/taskpool/openclip_vision/openclip_taskpool.py +0 -0
  607. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/__init__.py +0 -0
  608. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/base_task.py +0 -0
  609. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/classification.py +0 -0
  610. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/cifar10.py +0 -0
  611. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/cifar100.py +0 -0
  612. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/clip_dataset.py +0 -0
  613. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/cub_200_2011.py +0 -0
  614. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/dtd.py +0 -0
  615. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/emnist_letters.py +0 -0
  616. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/emnist_mnist.py +0 -0
  617. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/eurosat.py +0 -0
  618. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/fashion_mnist.py +0 -0
  619. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/fer2013.py +0 -0
  620. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/flower102.py +0 -0
  621. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/food101.py +0 -0
  622. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/gtsrb.py +0 -0
  623. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/imagenet.py +0 -0
  624. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/kmnist.py +0 -0
  625. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/mnist.py +0 -0
  626. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/mongo_leaf_disease.py +0 -0
  627. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/oxford_iiit_pet.py +0 -0
  628. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/pcam.py +0 -0
  629. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/rendered_sst2.py +0 -0
  630. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/resisc45.py +0 -0
  631. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/stanford_cars.py +0 -0
  632. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/stl10.py +0 -0
  633. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/sun397.py +0 -0
  634. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/svhn.py +0 -0
  635. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/clip_classification/tiny_imagenet.py +0 -0
  636. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/flan_t5_text_generation/datasets_preprocess.py +0 -0
  637. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/flan_t5_text_generation/glue_evaluation.py +0 -0
  638. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/flan_t5_text_generation/glue_load_dataset.py +0 -0
  639. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/flan_t5_text_generation/glue_preprocessors.py +0 -0
  640. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/tasks/flan_t5_text_generation/glue_prompt_templates.py +0 -0
  641. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/auto.py +0 -0
  642. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/data.py +0 -0
  643. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/dict.py +0 -0
  644. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/dtype.py +0 -0
  645. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/expr.py +0 -0
  646. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/functools.py +0 -0
  647. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/hydra_utils.py +0 -0
  648. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/json.py +0 -0
  649. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/misc.py +0 -0
  650. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/packages.py +0 -0
  651. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/plot/color_data.py +0 -0
  652. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/plot/token.py +0 -0
  653. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/plot/token_notebook.py +0 -0
  654. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/set.py +0 -0
  655. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/strenum/__init__.py +0 -0
  656. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/strenum/_name_mangler.py +0 -0
  657. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/strenum/_version.py +0 -0
  658. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/tensorboard.py +0 -0
  659. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/timer.py +0 -0
  660. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench/utils/type.py +0 -0
  661. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench.egg-info/dependency_links.txt +0 -0
  662. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench.egg-info/entry_points.txt +0 -0
  663. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench.egg-info/top_level.txt +0 -0
  664. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/README.md +0 -0
  665. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/clip-vit-base-patch32_robustness_corrupted.yaml +0 -0
  666. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/README.md +0 -0
  667. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/TALL10.yaml +0 -0
  668. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/TALL12.yaml +0 -0
  669. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/TALL14.yaml +0 -0
  670. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/TALL16.yaml +0 -0
  671. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/TALL18.yaml +0 -0
  672. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/TALL20.yaml +0 -0
  673. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/cifar10.yaml +0 -0
  674. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/cifar100.yaml +0 -0
  675. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/cub-200-2011.yaml +0 -0
  676. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/dtd.yaml +0 -0
  677. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/emnist_letters.yaml +0 -0
  678. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/emnist_mnist.yaml +0 -0
  679. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/eurosat.yaml +0 -0
  680. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/fashion_mnist.yaml +0 -0
  681. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/fer2013.yaml +0 -0
  682. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/food101.yaml +0 -0
  683. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/gtsrb.yaml +0 -0
  684. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/kmnist.yaml +0 -0
  685. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/mango-leaf-disease.yaml +0 -0
  686. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/mnist.yaml +0 -0
  687. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/oxford-iiit-pet.yaml +0 -0
  688. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/oxford_flowers102.yaml +0 -0
  689. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/pcam.yaml +0 -0
  690. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/rendered-sst2.yaml +0 -0
  691. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/resisc45.yaml +0 -0
  692. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/stanford-cars.yaml +0 -0
  693. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/stl10.yaml +0 -0
  694. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/sun397.yaml +0 -0
  695. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/svhn.yaml +0 -0
  696. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/the_eight_tasks.yaml +0 -0
  697. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/test/tiny-imagenet.yaml +0 -0
  698. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/TALL10.yaml +0 -0
  699. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/TALL12.yaml +0 -0
  700. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/TALL14.yaml +0 -0
  701. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/TALL16.yaml +0 -0
  702. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/TALL18.yaml +0 -0
  703. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/TALL20.yaml +0 -0
  704. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/cifar10.yaml +0 -0
  705. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/cifar100.yaml +0 -0
  706. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/cub-200-2011.yaml +0 -0
  707. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/dtd.yaml +0 -0
  708. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/emnist_letters.yaml +0 -0
  709. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/emnist_mnist.yaml +0 -0
  710. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/eurosat.yaml +0 -0
  711. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/fashion_mnist.yaml +0 -0
  712. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/fer2013.yaml +0 -0
  713. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/food101.yaml +0 -0
  714. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/gtsrb.yaml +0 -0
  715. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/kmnist.yaml +0 -0
  716. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/mango-leaf-disease.yaml +0 -0
  717. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/mnist.yaml +0 -0
  718. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/oxford-iiit-pet.yaml +0 -0
  719. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/oxford_flowers102.yaml +0 -0
  720. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/pcam.yaml +0 -0
  721. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/rendered-sst2.yaml +0 -0
  722. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/resisc45.yaml +0 -0
  723. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/stanford-cars.yaml +0 -0
  724. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/stl10.yaml +0 -0
  725. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/sun397.yaml +0 -0
  726. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/svhn.yaml +0 -0
  727. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/the_eight_tasks.yaml +0 -0
  728. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/train/tiny-imagenet.yaml +0 -0
  729. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/val/dtd.yaml +0 -0
  730. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/val/eurosat.yaml +0 -0
  731. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/val/gtsrb.yaml +0 -0
  732. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/val/mnist.yaml +0 -0
  733. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/val/resisc45.yaml +0 -0
  734. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/val/stanford-cars.yaml +0 -0
  735. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/val/sun397.yaml +0 -0
  736. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/val/svhn.yaml +0 -0
  737. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/image_classification/val/the_eight_tasks.yaml +0 -0
  738. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/llm_sft/alpaca_cleaned.yaml +0 -0
  739. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/llm_sft/ultrachat_200k.yaml +0 -0
  740. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/question_answering/search_qa.yaml +0 -0
  741. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/question_answering/test/search_qa.yaml +0 -0
  742. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/question_answering/train/MetaMathQA.yaml +0 -0
  743. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/question_answering/train/search_qa.yaml +0 -0
  744. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/question_answering/val/search_qa.yaml +0 -0
  745. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/summarization/test/xsum.yaml +0 -0
  746. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/summarization/train/xsum.yaml +0 -0
  747. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/summarization/val/xsum.yaml +0 -0
  748. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/summarization/xsum.yaml +0 -0
  749. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/text_generation/test/gsm-hard.yaml +0 -0
  750. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/text_generation/test/gsm8k.yaml +0 -0
  751. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/text_generation/test/gsm8k_question_label.yaml +0 -0
  752. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/text_generation/train/CodeAlpaca-20k.yaml +0 -0
  753. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/text_generation/train/gsm8k.yaml +0 -0
  754. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/dataset/text_generation/train/gsm8k_question_label.yaml +0 -0
  755. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/fabric/auto.yaml +0 -0
  756. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/fabric/llama_ddp.yaml +0 -0
  757. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/fabric/llama_fsdp.yaml +0 -0
  758. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/fabric/llama_peft_fsdp.yaml +0 -0
  759. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/fabric/loggers/mlflow_logger.yaml +0 -0
  760. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/fabric/loggers/wandb_logger.yaml +0 -0
  761. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/fabric/strategy/deepspeed.yaml +0 -0
  762. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/fabric/strategy/llama_fsdp.yaml +0 -0
  763. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/fabric/strategy/llama_peft_fsdp.yaml +0 -0
  764. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/hydra/help/fusion_bench_help.yaml +0 -0
  765. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/hydra/job_logging/rich_logging.yaml +0 -0
  766. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/llama_magnitude_pruning.yaml +0 -0
  767. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/llama_model_fusion.yaml +0 -0
  768. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/ada_svd/clip_vision.yaml +0 -0
  769. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/adamerging/layer_wise_flan_t5.yaml +0 -0
  770. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/adamerging/layer_wise_gpt2.yaml +0 -0
  771. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/adamerging/llama_sft.yaml +0 -0
  772. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/analysis/task_vector_cos_similarity.yaml +0 -0
  773. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/analysis/task_vector_violin_plot.yaml +0 -0
  774. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/classification/clip_continual_finetune.yaml +0 -0
  775. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/classification/clip_finetune.yaml +0 -0
  776. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/clip_finetune.yaml +0 -0
  777. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/concrete_subspace/clip_concrete_layer_wise_adamerging.yaml +0 -0
  778. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/concrete_subspace/clip_concrete_task_arithmetic.yaml +0 -0
  779. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/concrete_subspace/clip_concrete_task_wise_adamerging.yaml +0 -0
  780. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/concrete_subspace/clip_post_defense_AWM.yaml +0 -0
  781. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/concrete_subspace/clip_post_defense_SAU.yaml +0 -0
  782. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/concrete_subspace/clip_safe_concrete_layer_wise_adamerging.yaml +0 -0
  783. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/concrete_subspace/clip_safe_concrete_task_arithmetic.yaml +0 -0
  784. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/dare/simple_average.yaml +0 -0
  785. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/dare/task_arithmetic.yaml +0 -0
  786. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/dare/ties_merging.yaml +0 -0
  787. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/dawe/dawe_for_clip.yaml +0 -0
  788. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/doge_ta/doge_ta.yaml +0 -0
  789. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/dummy.yaml +0 -0
  790. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/ensemble/max_model_predictor.yaml +0 -0
  791. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/ensemble/simple_ensemble.yaml +0 -0
  792. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/ensemble/weighted_ensemble.yaml +0 -0
  793. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/expert_sparsity/README.md +0 -0
  794. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/expert_sparsity/mixtral.yaml +0 -0
  795. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/fisher_merging/fisher_merging.yaml +0 -0
  796. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/fisher_merging/gpt2_fisher_merging.yaml +0 -0
  797. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/fw_merging/fw_hard.yaml +0 -0
  798. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/fw_merging/fw_soft.yaml +0 -0
  799. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/gossip/layer_wise_clip.yaml +0 -0
  800. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/gossip/layer_wise_flan_t5.yaml +0 -0
  801. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/isotropic_merging/iso_c.yaml +0 -0
  802. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/isotropic_merging/iso_cts.yaml +0 -0
  803. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/linear/expo.yaml +0 -0
  804. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/linear/linear_interpolation.yaml +0 -0
  805. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/linear/llama_expo.yaml +0 -0
  806. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/linear/llama_expo_with_dare.yaml +0 -0
  807. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/linear/task_arithmetic_for_llama.yaml +0 -0
  808. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/linear/weighted_average.yaml +0 -0
  809. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/linear/weighted_average_for_llama.yaml +0 -0
  810. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/lm_finetune/bradley_terry_rm.yaml +0 -0
  811. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/lm_finetune/fullfinetune_sft.yaml +0 -0
  812. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/lm_finetune/peftfinetune_sft.yaml +0 -0
  813. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/mixtral_moe_merging.yaml +0 -0
  814. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/mixtral_moe_upscaling.yaml +0 -0
  815. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/model_recombination.yaml +0 -0
  816. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/moe_pruner/moe_pruner.yaml +0 -0
  817. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/opcm/opcm.yaml +0 -0
  818. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/opcm/task_arithmetic.yaml +0 -0
  819. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/opcm/ties_merging.yaml +0 -0
  820. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/opcm/weight_average.yaml +0 -0
  821. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/pruning/llama_magnitude_pruning.yaml +0 -0
  822. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/pruning/llama_random_pruning.yaml +0 -0
  823. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/pruning/llama_sparsegpt_pruning.yaml +0 -0
  824. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/pruning/llama_wanda_pruning.yaml +0 -0
  825. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/pruning/magnitude_diff_pruning.yaml +0 -0
  826. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/pwe_moe/epo_for_openclip.yaml +0 -0
  827. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/pwe_moe/ls_for_openclip.yaml +0 -0
  828. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/pwe_moe/pwe_moe_ls_for_clip.yaml +0 -0
  829. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/randes/superposed_model_soup.yaml +0 -0
  830. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/randes/superposed_task_arithmetic.yaml +0 -0
  831. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/randes/superposed_task_arithmetic_lora.yaml +0 -0
  832. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/rankone_moe/rankone_moe.yaml +0 -0
  833. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/regmean/clip_regmean.yaml +0 -0
  834. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/regmean/gpt2_regmean.yaml +0 -0
  835. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/regmean/regmean.yaml +0 -0
  836. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/regmean_plusplus/clip_regmean_plusplus.yaml +0 -0
  837. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/simple_average.yaml +0 -0
  838. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/slerp/slerp.yaml +0 -0
  839. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/smile_upscaling/singular_projection_merging.yaml +0 -0
  840. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/smile_upscaling/smile_mistral_upscaling.yaml +0 -0
  841. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/smile_upscaling/smile_upscaling.yaml +0 -0
  842. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/sparselo_pruning/llama_iterative_sparselo.yaml +0 -0
  843. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/sparselo_pruning/llama_pcp_sparselo.yaml +0 -0
  844. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/sparselo_pruning/llama_sparselo.yaml +0 -0
  845. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/surgery/adamerging_surgery.yaml +0 -0
  846. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/tall_mask/task_arithmetic.yaml +0 -0
  847. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/task_arithmetic.yaml +0 -0
  848. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/task_singular_vector/TaskSingularVectorMerging.yaml +0 -0
  849. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/ties_merging.yaml +0 -0
  850. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/trust_region/clip_task_arithmetic.yaml +0 -0
  851. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/wemoe/sparse_weight_ensembling_moe.yaml +0 -0
  852. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/method/wemoe/weight_ensembling_moe.yaml +0 -0
  853. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/README.md +0 -0
  854. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16.yaml +0 -0
  855. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_TALL14.yaml +0 -0
  856. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_TALL20.yaml +0 -0
  857. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_cifar10.yaml +0 -0
  858. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_cifar100.yaml +0 -0
  859. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_dtd.yaml +0 -0
  860. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_eight_tasks.yaml +0 -0
  861. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_emnist_letters.yaml +0 -0
  862. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_eurosat.yaml +0 -0
  863. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_fashion_mnist.yaml +0 -0
  864. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_fer2013.yaml +0 -0
  865. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_food101.yaml +0 -0
  866. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_gtsrb.yaml +0 -0
  867. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_kmnist.yaml +0 -0
  868. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_mnist.yaml +0 -0
  869. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_oxford-iiit-pet.yaml +0 -0
  870. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_oxford_flowers102.yaml +0 -0
  871. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_pcam.yaml +0 -0
  872. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_rendered-sst2.yaml +0 -0
  873. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_resisc45.yaml +0 -0
  874. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_stanford-cars.yaml +0 -0
  875. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_stl10.yaml +0 -0
  876. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_sun397.yaml +0 -0
  877. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch16_svhn.yaml +0 -0
  878. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32.yaml +0 -0
  879. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_TALL10.yaml +0 -0
  880. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_TALL12.yaml +0 -0
  881. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_TALL14.yaml +0 -0
  882. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_TALL16.yaml +0 -0
  883. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_TALL18.yaml +0 -0
  884. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_TALL20.yaml +0 -0
  885. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_cifar10.yaml +0 -0
  886. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_cifar100.yaml +0 -0
  887. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_dtd.yaml +0 -0
  888. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_eight_tasks.yaml +0 -0
  889. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_emnist_letters.yaml +0 -0
  890. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_eurosat.yaml +0 -0
  891. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_fashion_mnist.yaml +0 -0
  892. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_fer2013.yaml +0 -0
  893. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_food101.yaml +0 -0
  894. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_gtsrb.yaml +0 -0
  895. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_kmnist.yaml +0 -0
  896. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_mnist.yaml +0 -0
  897. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_oxford-iiit-pet.yaml +0 -0
  898. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_oxford_flowers102.yaml +0 -0
  899. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_pcam.yaml +0 -0
  900. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_rendered-sst2.yaml +0 -0
  901. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_resisc45.yaml +0 -0
  902. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_stanford-cars.yaml +0 -0
  903. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_stl10.yaml +0 -0
  904. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_sun397.yaml +0 -0
  905. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-base-patch32_svhn.yaml +0 -0
  906. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14.yaml +0 -0
  907. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_TALL14.yaml +0 -0
  908. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_TALL20.yaml +0 -0
  909. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_cifar10.yaml +0 -0
  910. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_cifar100.yaml +0 -0
  911. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_dtd.yaml +0 -0
  912. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_eight_tasks.yaml +0 -0
  913. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_emnist_letters.yaml +0 -0
  914. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_eurosat.yaml +0 -0
  915. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_fashion_mnist.yaml +0 -0
  916. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_fer2013.yaml +0 -0
  917. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_food101.yaml +0 -0
  918. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_gtsrb.yaml +0 -0
  919. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_kmnist.yaml +0 -0
  920. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_mnist.yaml +0 -0
  921. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_oxford-iiit-pet.yaml +0 -0
  922. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_oxford_flowers102.yaml +0 -0
  923. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_pcam.yaml +0 -0
  924. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_rendered-sst2.yaml +0 -0
  925. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_resisc45.yaml +0 -0
  926. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_stanford-cars.yaml +0 -0
  927. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_stl10.yaml +0 -0
  928. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_sun397.yaml +0 -0
  929. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/clip-vit-large-patch14_svhn.yaml +0 -0
  930. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/download_TALL20_models.sh +0 -0
  931. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/clip-vit/generate_vit_model_config.sh +0 -0
  932. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base.yaml +0 -0
  933. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-cola.yaml +0 -0
  934. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-cola_lora-16.yaml +0 -0
  935. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-mnli.yaml +0 -0
  936. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-mnli_lora-16.yaml +0 -0
  937. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-mrpc.yaml +0 -0
  938. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-mrpc_lora-16.yaml +0 -0
  939. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-qnli.yaml +0 -0
  940. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-qnli_lora-16.yaml +0 -0
  941. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-qqp.yaml +0 -0
  942. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-qqp_lora-16.yaml +0 -0
  943. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-rte.yaml +0 -0
  944. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-rte_lora-16.yaml +0 -0
  945. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-sst2.yaml +0 -0
  946. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-sst2_lora-16.yaml +0 -0
  947. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-stsb.yaml +0 -0
  948. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-base_glue-stsb_lora-16.yaml +0 -0
  949. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-large.yaml +0 -0
  950. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-cola_lora-16.yaml +0 -0
  951. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-mnli_lora-16.yaml +0 -0
  952. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-mrpc_lora-16.yaml +0 -0
  953. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-qnli_lora-16.yaml +0 -0
  954. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-qqp_lora-16.yaml +0 -0
  955. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-rte_lora-16.yaml +0 -0
  956. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-sst2_lora-16.yaml +0 -0
  957. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/flan-t5-large_glue-stsb_lora-16.yaml +0 -0
  958. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/model/flan-t5/generate_flan-t5.sh +0 -0
  959. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_TA8.yaml +0 -0
  960. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_TA8_lora.yaml +0 -0
  961. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_TA8_model_only.yaml +0 -0
  962. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_TALL14.yaml +0 -0
  963. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_TALL14_model_only.yaml +0 -0
  964. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_TALL20.yaml +0 -0
  965. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_TALL20_model_only.yaml +0 -0
  966. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_individual.yaml +0 -0
  967. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch16_individual_lora.yaml +0 -0
  968. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TA8.yaml +0 -0
  969. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TA8_control_task.yaml +0 -0
  970. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TA8_model_only.yaml +0 -0
  971. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TALL10.yaml +0 -0
  972. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TALL12.yaml +0 -0
  973. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TALL14.yaml +0 -0
  974. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TALL14_model_only.yaml +0 -0
  975. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TALL16.yaml +0 -0
  976. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TALL18.yaml +0 -0
  977. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TALL20.yaml +0 -0
  978. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_TALL20_model_only.yaml +0 -0
  979. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_cars_and_dtd.yaml +0 -0
  980. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_generalization_exp1.yaml +0 -0
  981. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_generalization_exp2.yaml +0 -0
  982. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_mtl.yaml +0 -0
  983. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_robustness_clean.yaml +0 -0
  984. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_robustness_corrupted.yaml +0 -0
  985. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_single_task_projection.yaml +0 -0
  986. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_sun397_and_cars.yaml +0 -0
  987. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_sun397_and_dtd.yaml +0 -0
  988. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_sun397_cars_and_dtd.yaml +0 -0
  989. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-base-patch32_two_tasks_control_task.yaml +0 -0
  990. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_TALL14.yaml +0 -0
  991. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_TALL14_model_only.yaml +0 -0
  992. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_TALL20.yaml +0 -0
  993. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_TALL20_model_only.yaml +0 -0
  994. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CLIPVisionModelPool/clip-vit-large-patch14_individual.yaml +0 -0
  995. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/deepseek-v2-lite.yaml +0 -0
  996. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/llama_alpaca_cleaned.yaml +0 -0
  997. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/llama_codealpaca.yaml +0 -0
  998. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/llama_for_causallm.yaml +0 -0
  999. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/llama_metamathqa.yaml +0 -0
  1000. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/llama_ultrachat.yaml +0 -0
  1001. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/mergebench/Llama-3.1-8B-Instruct.yaml +0 -0
  1002. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/mergebench/Llama-3.1-8B.yaml +0 -0
  1003. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/mergebench/Llama-3.2-3B-Instruct.yaml +0 -0
  1004. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/mergebench/Llama-3.2-3B.yaml +0 -0
  1005. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/mergebench/gemma-2-2b-it.yaml +0 -0
  1006. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/mergebench/gemma-2-2b.yaml +0 -0
  1007. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/mergebench/gemma-2-9b-it.yaml +0 -0
  1008. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/mergebench/gemma-2-9b.yaml +0 -0
  1009. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/mixtral-8x7b.yaml +0 -0
  1010. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/CausalLMPool/single_llama_model.yaml +0 -0
  1011. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/README.md +0 -0
  1012. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/ViT-B-16_TA8.yaml +0 -0
  1013. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/ViT-B-32_TA8.yaml +0 -0
  1014. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/ViT-B-32_TA_cars_dtd.yaml +0 -0
  1015. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/ViT-B-32_TA_sun397_cars.yaml +0 -0
  1016. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/ViT-B-32_TA_sun397_dtd.yaml +0 -0
  1017. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/ViT-B-32_individual.yaml +0 -0
  1018. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/OpenCLIPVisionModelPool/ViT-L-14_TA8.yaml +0 -0
  1019. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/Seq2SeqLMPool/_template.yaml +0 -0
  1020. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/Seq2SeqLMPool/flan-t5-base_glue.yaml +0 -0
  1021. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/Seq2SeqLMPool/flan-t5-base_glue_lora16.yaml +0 -0
  1022. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/Seq2SeqLMPool/flan-t5-base_glue_lora16_tta.yaml +0 -0
  1023. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/Seq2SeqLMPool/flan-t5-base_glue_tta.yaml +0 -0
  1024. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/Seq2SeqLMPool/flan-t5-base_individual.yaml +0 -0
  1025. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/Seq2SeqLMPool/flan-t5-large_glue_lora16.yaml +0 -0
  1026. {fusion_bench-0.2.20/fusion_bench_config/modelpool/SeqenceClassificationModelPool → fusion_bench-0.2.22/fusion_bench_config/modelpool/SequenceClassificationModelPool}/roberta-base_glue.yaml +0 -0
  1027. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/automodelpool.yaml +0 -0
  1028. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/gpt-2_glue.yaml +0 -0
  1029. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/nyuv2_modelpool.yaml +0 -0
  1030. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/smile_mistral_exp_v1.yaml +0 -0
  1031. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/smile_mistral_exp_v2.yaml +0 -0
  1032. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/smile_mistral_exp_v3.yaml +0 -0
  1033. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/modelpool/smile_mistral_exp_v4.yaml +0 -0
  1034. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/_template.yaml +0 -0
  1035. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-base-patch32_robustness_corrupted.yaml +0 -0
  1036. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-classification_TA8.yaml +0 -0
  1037. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-classification_TA8_B16.yaml +0 -0
  1038. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-classification_TA8_L14.yaml +0 -0
  1039. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-classification_TA8_val.yaml +0 -0
  1040. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-classification_TA8_with_control_task.yaml +0 -0
  1041. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-classification_TALL14.yaml +0 -0
  1042. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-classification_TALL20.yaml +0 -0
  1043. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_cifar10.yaml +0 -0
  1044. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_cifar100.yaml +0 -0
  1045. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_dtd.yaml +0 -0
  1046. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_emnist_letters.yaml +0 -0
  1047. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_eurosat.yaml +0 -0
  1048. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_fashion_mnist.yaml +0 -0
  1049. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_fer2013.yaml +0 -0
  1050. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_food101.yaml +0 -0
  1051. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_gtsrb.yaml +0 -0
  1052. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_kmnist.yaml +0 -0
  1053. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_mnist.yaml +0 -0
  1054. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_oxford-iiit-pet.yaml +0 -0
  1055. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_oxford_flowers102.yaml +0 -0
  1056. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_oxford_flowers102_val.yaml +0 -0
  1057. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_pcam.yaml +0 -0
  1058. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_rendered-sst2.yaml +0 -0
  1059. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_resisc45.yaml +0 -0
  1060. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_stanford-cars.yaml +0 -0
  1061. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_stl10.yaml +0 -0
  1062. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_sun397.yaml +0 -0
  1063. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip-vit-single-task_svhn.yaml +0 -0
  1064. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip_rankone_wemoe_clip-vit-classification_TA8.yaml +0 -0
  1065. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/CLIPVisionModelTaskPool/clip_sparse_wemoe_clip-vit-classification_TA8.yaml +0 -0
  1066. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/LMEvalHarnessTaskPool/lm_eval.yaml +0 -0
  1067. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/OpenCLIPVisionModelTaskPool/ViT-B-16_TA8.yaml +0 -0
  1068. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/OpenCLIPVisionModelTaskPool/ViT-B-32_TA8.yaml +0 -0
  1069. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/OpenCLIPVisionModelTaskPool/ViT-L-14_TA8.yaml +0 -0
  1070. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/clip-vit-base-patch32_robustness_clean.yaml +0 -0
  1071. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/clip-vit-base-patch32_robustness_corrupted.yaml +0 -0
  1072. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/dummy.yaml +0 -0
  1073. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/flan-t5_glue_text_generation.yaml +0 -0
  1074. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/gpt-2_glue.yaml +0 -0
  1075. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/nyuv2_taskpool.yaml +0 -0
  1076. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/fusion_bench_config/taskpool/reward_model_evaluation.yaml +0 -0
  1077. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/setup.cfg +0 -0
  1078. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/tests/test_depth_upscaling.py +0 -0
  1079. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/tests/test_simple_average.py +0 -0
  1080. {fusion_bench-0.2.20 → fusion_bench-0.2.22}/tests/test_weighed_ensemble.py +0 -0
@@ -0,0 +1,285 @@
1
+ Metadata-Version: 2.4
2
+ Name: fusion_bench
3
+ Version: 0.2.22
4
+ Summary: A Comprehensive Benchmark of Deep Model Fusion
5
+ Author-email: Anke Tang <tang.anke@foxmail.com>
6
+ Project-URL: Repository, https://github.com/tanganke/fusion_bench
7
+ Project-URL: Homepage, https://github.com/tanganke/fusion_bench
8
+ Project-URL: Issues, https://github.com/tanganke/fusion_bench/issues
9
+ Keywords: deep learning,model fusion,benchmark
10
+ Requires-Python: >=3.10
11
+ Description-Content-Type: text/markdown
12
+ License-File: LICENSE
13
+ Requires-Dist: hydra-core
14
+ Requires-Dist: lightning
15
+ Requires-Dist: transformers
16
+ Requires-Dist: datasets
17
+ Requires-Dist: peft
18
+ Requires-Dist: huggingface_hub
19
+ Requires-Dist: matplotlib
20
+ Requires-Dist: tensorboard
21
+ Requires-Dist: tqdm
22
+ Requires-Dist: rich
23
+ Requires-Dist: scipy
24
+ Requires-Dist: h5py
25
+ Requires-Dist: pytest
26
+ Requires-Dist: transformers!=4.49
27
+ Requires-Dist: pillow!=11.2.1
28
+ Provides-Extra: lm-eval-harness
29
+ Requires-Dist: lm-eval; extra == "lm-eval-harness"
30
+ Requires-Dist: immutabledict; extra == "lm-eval-harness"
31
+ Requires-Dist: langdetect; extra == "lm-eval-harness"
32
+ Dynamic: license-file
33
+
34
+ <div align='center'>
35
+
36
+ # FusionBench: A Comprehensive Benchmark/Toolkit of Deep Model Fusion
37
+
38
+ [![arXiv](https://img.shields.io/badge/arXiv-2406.03280-b31b1b.svg)](http://arxiv.org/abs/2406.03280)
39
+ [![GitHub License](https://img.shields.io/github/license/tanganke/fusion_bench)](https://github.com/tanganke/fusion_bench/blob/main/LICENSE)
40
+ [![PyPI - Version](https://img.shields.io/pypi/v/fusion-bench)](https://pypi.org/project/fusion-bench/)
41
+ [![Downloads](https://static.pepy.tech/badge/fusion-bench/month)](https://pepy.tech/project/fusion-bench)
42
+ [![Static Badge](https://img.shields.io/badge/doc-mkdocs-blue)](https://tanganke.github.io/fusion_bench/)
43
+ [![Static Badge](https://img.shields.io/badge/code%20style-black-black)](https://github.com/psf/black)
44
+ [![Static Badge](https://img.shields.io/badge/code%20style-yamlfmt-black)](https://github.com/google/yamlfmt)
45
+
46
+ </div>
47
+
48
+ > [!TIP]
49
+ > Documentation is available at [tanganke.github.io/fusion_bench/](https://tanganke.github.io/fusion_bench/).
50
+
51
+ ## Overview
52
+
53
+ FusionBench is a benchmark suite designed to evaluate the performance of various deep model fusion techniques. It aims to provide a comprehensive comparison of different methods on a variety of datasets and tasks.
54
+
55
+ Projects based on FusionBench and news from the community (descending order of date. If you have any work based on FusionBench, please feel free to let us know, we are willing to add it to the list. :partying_face:):
56
+
57
+ <details>
58
+ <summary>The-Hai Nguyen, Dang Huu-Tien, Takeshi Suzuki, and Le-Minh Nguyen. RegMean++: Enhancing Effectiveness and Generalization of Regression Mean for Model Merging. Aug, 2025. https://www.arxiv.org/abs/2508.03121</summary>
59
+
60
+ Regression Mean (RegMean), an approach that formulates model merging as a linear regression problem, aims to find the optimal weights for each linear layer in the merge model by minimizing the discrepancy in predictions between the merge and candidate models. RegMean provides a precise closed-form solution for the merging problem; therefore, it offers explainability and computational efficiency. However, RegMean merges each linear layer independently, overlooking how the features and information in the earlier layers propagate through the layers and influence the final prediction in the merge model. In this paper, we introduce RegMean++, a simple yet effective alternative to RegMean, that explicitly incorporates both intra- and cross-layer dependencies between merge models' layers into RegMean's objective. By accounting for these dependencies, RegMean++ better captures the behaviors of the merge model. Extensive experiments demonstrate that RegMean++ consistently outperforms RegMean across diverse settings, including in-domain (ID) and out-of-domain (OOD) generalization, sequential merging, large-scale tasks, and robustness under several types of distribution shifts. Furthermore, RegMean++ achieves competitive or state-of-the-art performance compared to various recent advanced model merging methods.
61
+
62
+ <img width="1000" alt="image" src="docs/algorithms/images/regmean_vs_regmean_plusplus.png">
63
+ </details>
64
+
65
+ <details>
66
+ <summary>Hao Mark Chen, et al. FW-Merging: Scaling Model Merging with Frank-Wolfe Optimization. Mar 2025. https://arxiv.org/abs/2503.12649</summary>
67
+
68
+ Model merging has emerged as a promising approach for multi-task learning (MTL), offering a data-efficient alternative to conventional fine-tuning. However, with the rapid development of the open-source AI ecosystem and the increasing availability of fine-tuned foundation models, existing model merging methods face two key limitations: (i) They are primarily designed for in-house fine-tuned models, making them less adaptable to diverse model sources with partially unknown model and task information, (ii) They struggle to scale effectively when merging numerous model checkpoints. To address these challenges, we formulate model merging as a constrained optimization problem and introduce a novel approach: Frank-Wolfe Merging (FW-Merging). Inspired by Frank-Wolfe optimization, our approach iteratively selects the most relevant model in the pool to minimize a linear approximation of the objective function and then executes a local merging similar to the Frank-Wolfe update. The objective function is designed to capture the desired behavior of the target-merged model, while the fine-tuned candidate models define the constraint set. More importantly, FW-Merging serves as an orthogonal technique for existing merging methods, seamlessly integrating with them to further enhance accuracy performance. Our experiments show that FW-Merging scales across diverse model sources, remaining stable with 16 irrelevant models and improving by 15.3% with 16 relevant models on 20 CV tasks, while maintaining constant memory overhead, unlike the linear overhead of data-informed merging methods. Compared with the state-of-the-art approaches, FW-Merging surpasses the data-free merging method by 32.8% and outperforms the data-informed Adamerging by 8.39% when merging 20 ViT models.
69
+ </details>
70
+
71
+ <details>
72
+ <summary>Daniel Marczak, et al. No Task Left Behind: Isotropic Model Merging with Common and Task-Specific Subspaces. Feb 2025. https://arxiv.org/abs/2502.04959</summary>
73
+
74
+ Model merging integrates the weights of multiple task-specific models into a single multi-task model. Despite recent interest in the problem, a significant performance gap between the combined and single-task models remains. In this paper, we investigate the key characteristics of task matrices -- weight update matrices applied to a pre-trained model -- that enable effective merging. We show that alignment between singular components of task-specific and merged matrices strongly correlates with performance improvement over the pre-trained model. Based on this, we propose an isotropic merging framework that flattens the singular value spectrum of task matrices, enhances alignment, and reduces the performance gap. Additionally, we incorporate both common and task-specific subspaces to further improve alignment and performance. Our proposed approach achieves state-of-the-art performance across multiple scenarios, including various sets of tasks and model scales. This work advances the understanding of model merging dynamics, offering an effective methodology to merge models without requiring additional training.
75
+ </details>
76
+
77
+ <details>
78
+ <summary>Anke Tang, et al. Merging Models on the Fly Without Retraining: A Sequential Approach to Scalable Continual Model Merging. Jan 2025. https://arxiv.org/pdf/2501.09522</summary>
79
+
80
+ Deep model merging represents an emerging research direction that combines multiple fine-tuned models to harness their specialized capabilities across different tasks and domains. Current model merging techniques focus on merging all available models simultaneously, with weight interpolation-based methods being the predominant approaches. However, these conventional approaches are not well-suited for scenarios where models become available sequentially, and they often suffer from high memory requirements and potential interference between tasks. In this study, we propose a training-free projection-based continual merging method that processes models sequentially through orthogonal projections of weight matrices and adaptive scaling mechanisms. Our method operates by projecting new parameter updates onto subspaces orthogonal to existing merged parameter updates while using an adaptive scaling mechanism to maintain stable parameter distances, enabling efficient sequential integration of task-specific knowledge. Our approach maintains constant memory complexity to the number of models, minimizes interference between tasks through orthogonal projections, and retains the performance of previously merged models through adaptive task vector scaling. Extensive experiments on CLIP-ViT models demonstrate that our method achieves a 5-8% average accuracy improvement while maintaining robust performance in different task orderings.
81
+ </details>
82
+
83
+ <details>
84
+ <summary>Yongxian Wei, et al. Modeling Multi-Task Model Merging as Adaptive Projective Gradient Descent. Jan 2025. https://arxiv.org/abs/2501.01230</summary>
85
+
86
+ Merging multiple expert models offers a promising approach for performing multi-task learning without accessing their original data. Existing methods attempt to alleviate task conflicts by sparsifying task vectors or promoting orthogonality among them. However, they overlook the fundamental requirement of model merging: ensuring the merged model performs comparably to task-specific models on respective tasks. We find these methods inevitably discard task-specific information that, while causing conflicts, is crucial for performance. Based on our findings, we frame model merging as a constrained optimization problem (i.e., minimizing the gap between the merged model and individual models, subject to the constraint of retaining shared knowledge) and solve it via adaptive projective gradient descent. Specifically, we align the merged model with individual models by decomposing and reconstituting the loss function, alleviating conflicts through data-free optimization of task vectors. To retain shared knowledge, we optimize this objective by projecting gradients within a shared subspace spanning all tasks. Moreover, we view merging coefficients as adaptive learning rates and propose a task-aware, training-free strategy. Experiments show that our plug-andplay approach consistently outperforms previous methods, achieving state-of-the-art results across diverse architectures and tasks in both vision and NLP domains. Our code is available here.
87
+ </details>
88
+
89
+ <details>
90
+ <summary>Hongling Zheng, Li Shen, Anke Tang, Yong Luo et al. Learn From Model Beyond Fine-Tuning: A Survey. Nature Machine Intelligence. Jan, 2025. https://www.nature.com/articles/s42256-024-00961-0</summary>
91
+
92
+ > Foundation models (FM) have demonstrated remarkable performance across a wide range of tasks (especially in the fields of natural language processing and computer vision), primarily attributed to their ability to comprehend instructions and access extensive, high-quality data. This not only showcases their current effectiveness but also sets a promising trajectory towards the development of artificial general intelligence. Unfortunately, due to multiple constraints, the raw data of the model used for large model training are often inaccessible, so the use of end-to-end models for downstream tasks has become a new research trend, which we call Learn From Model (LFM) in this article. LFM focuses on the research, modification, and design of FM based on the model interface, so as to better understand the model structure and weights (in a black box environment), and to generalize the model to downstream tasks. The study of LFM techniques can be broadly categorized into five major areas: model tuning, model distillation, model reuse, meta learning and model editing. Each category encompasses a repertoire of methods and strategies that aim to enhance the capabilities and performance of FM. This paper gives a comprehensive review of the current methods based on FM from the perspective of LFM, in order to help readers better understand the current research status and ideas. To conclude, we summarize the survey by highlighting several critical areas for future exploration and addressing open issues that require further attention from the research community. The relevant papers we investigated in this article can be accessed at <https://github.com/ruthless-man/Awesome-Learn-from-Model>.
93
+ </details>
94
+
95
+ <details>
96
+ <summary>Li Shen, Anke Tang, Enneng Yang et al. Efficient and Effective Weight-Ensembling Mixture of Experts for Multi-Task Model Merging. Oct, 2024. https://github.com/EnnengYang/Efficient-WEMoE</summary>
97
+
98
+ <img width="1018" alt="image" src="https://github.com/user-attachments/assets/b7e1279e-87fc-4016-8867-1bff7700e271">
99
+
100
+ </details>
101
+ <details>
102
+ <summary>Jinluan Yang et al. Mitigating the Backdoor Effect for Multi-Task Model Merging via Safety-Aware Subspace. Oct, 2024. http://arxiv.org/abs/2410.13910</summary>
103
+
104
+ <img width="1018" alt="image" src="https://github.com/user-attachments/assets/679aaa7e-0506-4e09-a12a-345c12cf529f">
105
+
106
+ </details>
107
+ <details>
108
+ <summary>Anke Tang et al. SMILE: Zero-Shot Sparse Mixture of Low-Rank Experts Construction From Pre-Trained Foundation Models. Aug, 2024. http://arxiv.org/abs/2408.10174</summary>
109
+
110
+ Example notebooks can be found at [examples/smile_upscaling](examples/smile_upscaling).
111
+ ![](examples/smile_upscaling/SMILE.png)
112
+
113
+ </details>
114
+
115
+ ## Installation
116
+
117
+ Install from PyPI:
118
+
119
+ ```bash
120
+ pip install fusion-bench
121
+ ```
122
+
123
+ or install the latest version in development from the GitHub repository
124
+
125
+ ```bash
126
+ git clone https://github.com/tanganke/fusion_bench.git
127
+ cd fusion_bench
128
+
129
+ pip install -e . # install the package in editable mode
130
+ ```
131
+
132
+ > [!TIP]
133
+ > FusionBench is highly dependent on the use of [Hydra](https://hydra.cc/) for configuration management and command line argument parsing, and [Lightning Fabric](https://lightning.ai/) for device management.
134
+ > If you are not familiar with these tools, it is strongly recommended to read the [Hydra](https://hydra.cc/docs/intro/) and [Lightning Fabric](https://lightning.ai/docs/fabric/stable/) documentation.
135
+
136
+ ### Install with [Language Model Evaluation Harness](https://github.com/EleutherAI/lm-evaluation-harness)
137
+
138
+ [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.10256836.svg)](https://doi.org/10.5281/zenodo.10256836)
139
+
140
+ ```bash
141
+ pip install "fusion-bench[lm-eval-harness]"
142
+ ```
143
+
144
+ or install from local directory
145
+
146
+ ```bash
147
+ pip install -e ".[lm-eval-harness]"
148
+ ```
149
+
150
+ This will install the latest version of fusion-bench and the dependencies required for LM-Eval Harness.
151
+ Documentation for using LM-Eval Harness within FusionBench framework can be found at [this online documentation](https://tanganke.github.io/fusion_bench/taskpool/lm_eval_harness) or in the [`docs/taskpool/lm_eval_harness.md`](docs/taskpool/lm_eval_harness.md) markdown file.
152
+
153
+ > [!TIP]
154
+ > Documentation for merging large language models using FusionBench can be found at [this online documentation](https://tanganke.github.io/fusion_bench/modelpool/causal_lm) or in the [`docs/modelpool/causal_lm.md`](docs/modelpool/causal_lm.md) markdown file.
155
+
156
+ ## Introduction to Deep Model Fusion
157
+
158
+ Deep model fusion is a technique that merges, ensemble, or fuse multiple deep neural networks to obtain a unified model.
159
+ It can be used to improve the performance and robustness of model or to combine the strengths of different models, such as fuse multiple task-specific models to create a multi-task model.
160
+ For a more detailed introduction to deep model fusion, you can refer to [W. Li, 2023, 'Deep Model Fusion: A Survey'](https://arxiv.org/abs/2309.15698). We also provide a brief overview of deep model fusion in [our documentation](https://tanganke.github.io/fusion_bench/).
161
+ In this benchmark, we evaluate the performance of different fusion methods on a variety of datasets and tasks.
162
+
163
+ A comprehensive list of papers about model merging can be found at [this repository](https://github.com/EnnengYang/Awesome-Model-Merging-Methods-Theories-Applications), and [the arXiv paper](https://arxiv.org/abs/2408.07666) is also available.
164
+
165
+ ## Project Structure
166
+
167
+ The project is structured as follows:
168
+
169
+ - `fusion_bench/`: the main package of the benchmark.
170
+ - `method`: contains the implementation of the fusion methods.
171
+ > **naming convention**: `fusion_bench/method/{method_name}/{variant}.py` contains the implementation of the specific method or its variants.
172
+ For example, `fusion_bench/method/regmean/clip_regmean.py` contains the implementation of the RegMean algorithm for CLIP vision models.
173
+ - `modelpool`: contains the implementation of the model pool, responsible for managing the models and dataset to be loaded.
174
+ - `taskpool`: contains the implementation of the task pool, responsible for evaluating the performance of models returned by the algorithm.
175
+ - `config/`: configuration files for the benchmark. We use [Hydra](https://hydra.cc/) to manage the configurations.
176
+ - `method`: configuration files for the fusion methods.
177
+ > **naming convention**: `config/method/{method_name}/{variant}.yaml` contains the configuration for the specific method or its variants.
178
+ - `modelpool`: configuration files for the model pool.
179
+ - `taskpool`: configuration files for the task pool.
180
+ - `model`: configuration files for the models.
181
+ - `dataset`: configuration files for the datasets.
182
+ - `docs/`: documentation for the benchmark. We use [mkdocs](https://www.mkdocs.org/) to generate the documentation. Start the documentation server locally with `mkdocs serve`. The required packages can be installed with `pip install -r mkdocs-requirements.txt`.
183
+ - `examples/`: example scripts for running some of the experiments.
184
+ > **naming convention**: `examples/{method_name}/` contains the files such as bash scripts and jupyter notebooks for the specific method.
185
+ - `tests/`: unit tests for the benchmark.
186
+
187
+ ## A Unified Command Line Interface
188
+
189
+ The `fusion_bench` command-line interface is a powerful tool for researchers and practitioners in the field of model fusion. It provides a streamlined way to experiment with various fusion algorithms, model combinations, and evaluation tasks.
190
+ By leveraging Hydra's configuration management, fusion_bench offers flexibility in setting up experiments and reproducibility in results.
191
+ The CLI's design allows for easy extension to new fusion methods, model types, and tasks, making it a versatile platform for advancing research in model fusion techniques.
192
+
193
+ Read the [CLI documentation](https://tanganke.github.io/fusion_bench/cli/fusion_bench/) for more information.
194
+
195
+ ## Implement your own model fusion algorithm
196
+
197
+ First, create a new Python file for the algorithm in the `fusion_bench/method` directory.
198
+ Following the naming convention, the file should be named `{method_name_or_class}/{variant}.py`.
199
+
200
+ ```python
201
+ from fusion_bench import BaseModelFusionAlgorithm, BaseModelPool
202
+
203
+ class DerivedModelFusionAlgorithm(BaseModelFusionAlgorithm):
204
+ """
205
+ An example of a derived model fusion algorithm.
206
+ """
207
+
208
+ # _config_mapping maps the attribution to the corresponding key in the configuration file.
209
+ # this is optional and can be used to serialize the object to a configuration file.
210
+ # `self.config.hyperparam_1` will be mapped to the attribute `hyperparam_attr_1`.
211
+ _config_mapping = BaseModelFusionAlgorithm._config_mapping | {
212
+ "hyperparam_attr_1": "hyperparam_1",
213
+ "hyperparam_attr_2": "hyperparam_2",
214
+ }
215
+
216
+ def __init__(self, hyperparam_1, hyperparam_2, **kwargs):
217
+ self.hyperparam_attr_1 = hyperparam_1
218
+ self.hyperparam_attr_2 = hyperparam_2
219
+ super().__init__(**kwargs)
220
+
221
+ def run(self, modelpool: BaseModelPool):
222
+ # modelpool is an object that responsible for managing the models and dataset to be loaded.
223
+ # implement the fusion algorithm here.
224
+ raise NotImplementedError(
225
+ "DerivedModelFusionAlgorithm.run() is not implemented."
226
+ )
227
+ ```
228
+
229
+ A corresponding configuration file should be created to specify the class and hyperparameters of the algorithm.
230
+ Here we assume the configuration file is placed at `config/method/your_algorithm_config.yaml`.
231
+
232
+ > [!NOTE]
233
+ > In fact, you can place your implementation anywhere you like, as long as the `_target_` in the configuration file points to the correct class.
234
+
235
+ ```yaml
236
+ _target_: path_to_the_module.DerivedModelFusionAlgorithm
237
+
238
+ hyperparam_1: some_value
239
+ hyperparam_2: another_value
240
+ ```
241
+
242
+ Use the algorithm in the FusionBench:
243
+
244
+ ```bash
245
+ fusion_bench \
246
+ method=your_algorithm_config \
247
+ method.hyperparam_1=you_can_override_this \
248
+ method.hyperparam_2=and_this \
249
+ ... # other configurations
250
+ ```
251
+
252
+ ### :rocket: Quick Start for Experienced Users
253
+
254
+ We provide a project template for quickly starting a new fusion algorithm implementation here: [FusionBench Project Template](https://github.com/fusion-bench/fusion-bench-project-template).
255
+
256
+ <div align='center'>
257
+
258
+ Click on [<kbd>Use this template</kbd>](https://github.com/fusion-bench/fusion-bench-project-template/generate) to initialize new repository.
259
+
260
+ </div>
261
+
262
+ ### FusionBench Command Generator WebUI (for v0.1.x)
263
+
264
+ FusionBench Command Generator is a user-friendly web interface for generating FusionBench commands based on configuration files.
265
+ It provides an interactive way to select and customize FusionBench configurations, making it easier to run experiments with different settings.
266
+ [Read more here](https://tanganke.github.io/fusion_bench/cli/fusion_bench_webui/).
267
+
268
+ ![FusionBench Command Generator Web Interface](docs/cli/images/fusion_bench_webui.png)
269
+
270
+ ## Citation
271
+
272
+ If you find this benchmark useful, please consider citing our work:
273
+
274
+ ```bibtex
275
+ @article{tang2024fusionbench,
276
+ title={Fusionbench: A comprehensive benchmark of deep model fusion},
277
+ author={Tang, Anke and Shen, Li and Luo, Yong and Hu, Han and Du, Bo and Tao, Dacheng},
278
+ journal={arXiv preprint arXiv:2406.03280},
279
+ year={2024}
280
+ }
281
+ ```
282
+
283
+ ## Star History
284
+
285
+ [![Star History Chart](https://api.star-history.com/svg?repos=tanganke/fusion_bench&type=Date)](https://www.star-history.com/#tanganke/fusion_bench&Date)
@@ -0,0 +1,252 @@
1
+ <div align='center'>
2
+
3
+ # FusionBench: A Comprehensive Benchmark/Toolkit of Deep Model Fusion
4
+
5
+ [![arXiv](https://img.shields.io/badge/arXiv-2406.03280-b31b1b.svg)](http://arxiv.org/abs/2406.03280)
6
+ [![GitHub License](https://img.shields.io/github/license/tanganke/fusion_bench)](https://github.com/tanganke/fusion_bench/blob/main/LICENSE)
7
+ [![PyPI - Version](https://img.shields.io/pypi/v/fusion-bench)](https://pypi.org/project/fusion-bench/)
8
+ [![Downloads](https://static.pepy.tech/badge/fusion-bench/month)](https://pepy.tech/project/fusion-bench)
9
+ [![Static Badge](https://img.shields.io/badge/doc-mkdocs-blue)](https://tanganke.github.io/fusion_bench/)
10
+ [![Static Badge](https://img.shields.io/badge/code%20style-black-black)](https://github.com/psf/black)
11
+ [![Static Badge](https://img.shields.io/badge/code%20style-yamlfmt-black)](https://github.com/google/yamlfmt)
12
+
13
+ </div>
14
+
15
+ > [!TIP]
16
+ > Documentation is available at [tanganke.github.io/fusion_bench/](https://tanganke.github.io/fusion_bench/).
17
+
18
+ ## Overview
19
+
20
+ FusionBench is a benchmark suite designed to evaluate the performance of various deep model fusion techniques. It aims to provide a comprehensive comparison of different methods on a variety of datasets and tasks.
21
+
22
+ Projects based on FusionBench and news from the community (descending order of date. If you have any work based on FusionBench, please feel free to let us know, we are willing to add it to the list. :partying_face:):
23
+
24
+ <details>
25
+ <summary>The-Hai Nguyen, Dang Huu-Tien, Takeshi Suzuki, and Le-Minh Nguyen. RegMean++: Enhancing Effectiveness and Generalization of Regression Mean for Model Merging. Aug, 2025. https://www.arxiv.org/abs/2508.03121</summary>
26
+
27
+ Regression Mean (RegMean), an approach that formulates model merging as a linear regression problem, aims to find the optimal weights for each linear layer in the merge model by minimizing the discrepancy in predictions between the merge and candidate models. RegMean provides a precise closed-form solution for the merging problem; therefore, it offers explainability and computational efficiency. However, RegMean merges each linear layer independently, overlooking how the features and information in the earlier layers propagate through the layers and influence the final prediction in the merge model. In this paper, we introduce RegMean++, a simple yet effective alternative to RegMean, that explicitly incorporates both intra- and cross-layer dependencies between merge models' layers into RegMean's objective. By accounting for these dependencies, RegMean++ better captures the behaviors of the merge model. Extensive experiments demonstrate that RegMean++ consistently outperforms RegMean across diverse settings, including in-domain (ID) and out-of-domain (OOD) generalization, sequential merging, large-scale tasks, and robustness under several types of distribution shifts. Furthermore, RegMean++ achieves competitive or state-of-the-art performance compared to various recent advanced model merging methods.
28
+
29
+ <img width="1000" alt="image" src="docs/algorithms/images/regmean_vs_regmean_plusplus.png">
30
+ </details>
31
+
32
+ <details>
33
+ <summary>Hao Mark Chen, et al. FW-Merging: Scaling Model Merging with Frank-Wolfe Optimization. Mar 2025. https://arxiv.org/abs/2503.12649</summary>
34
+
35
+ Model merging has emerged as a promising approach for multi-task learning (MTL), offering a data-efficient alternative to conventional fine-tuning. However, with the rapid development of the open-source AI ecosystem and the increasing availability of fine-tuned foundation models, existing model merging methods face two key limitations: (i) They are primarily designed for in-house fine-tuned models, making them less adaptable to diverse model sources with partially unknown model and task information, (ii) They struggle to scale effectively when merging numerous model checkpoints. To address these challenges, we formulate model merging as a constrained optimization problem and introduce a novel approach: Frank-Wolfe Merging (FW-Merging). Inspired by Frank-Wolfe optimization, our approach iteratively selects the most relevant model in the pool to minimize a linear approximation of the objective function and then executes a local merging similar to the Frank-Wolfe update. The objective function is designed to capture the desired behavior of the target-merged model, while the fine-tuned candidate models define the constraint set. More importantly, FW-Merging serves as an orthogonal technique for existing merging methods, seamlessly integrating with them to further enhance accuracy performance. Our experiments show that FW-Merging scales across diverse model sources, remaining stable with 16 irrelevant models and improving by 15.3% with 16 relevant models on 20 CV tasks, while maintaining constant memory overhead, unlike the linear overhead of data-informed merging methods. Compared with the state-of-the-art approaches, FW-Merging surpasses the data-free merging method by 32.8% and outperforms the data-informed Adamerging by 8.39% when merging 20 ViT models.
36
+ </details>
37
+
38
+ <details>
39
+ <summary>Daniel Marczak, et al. No Task Left Behind: Isotropic Model Merging with Common and Task-Specific Subspaces. Feb 2025. https://arxiv.org/abs/2502.04959</summary>
40
+
41
+ Model merging integrates the weights of multiple task-specific models into a single multi-task model. Despite recent interest in the problem, a significant performance gap between the combined and single-task models remains. In this paper, we investigate the key characteristics of task matrices -- weight update matrices applied to a pre-trained model -- that enable effective merging. We show that alignment between singular components of task-specific and merged matrices strongly correlates with performance improvement over the pre-trained model. Based on this, we propose an isotropic merging framework that flattens the singular value spectrum of task matrices, enhances alignment, and reduces the performance gap. Additionally, we incorporate both common and task-specific subspaces to further improve alignment and performance. Our proposed approach achieves state-of-the-art performance across multiple scenarios, including various sets of tasks and model scales. This work advances the understanding of model merging dynamics, offering an effective methodology to merge models without requiring additional training.
42
+ </details>
43
+
44
+ <details>
45
+ <summary>Anke Tang, et al. Merging Models on the Fly Without Retraining: A Sequential Approach to Scalable Continual Model Merging. Jan 2025. https://arxiv.org/pdf/2501.09522</summary>
46
+
47
+ Deep model merging represents an emerging research direction that combines multiple fine-tuned models to harness their specialized capabilities across different tasks and domains. Current model merging techniques focus on merging all available models simultaneously, with weight interpolation-based methods being the predominant approaches. However, these conventional approaches are not well-suited for scenarios where models become available sequentially, and they often suffer from high memory requirements and potential interference between tasks. In this study, we propose a training-free projection-based continual merging method that processes models sequentially through orthogonal projections of weight matrices and adaptive scaling mechanisms. Our method operates by projecting new parameter updates onto subspaces orthogonal to existing merged parameter updates while using an adaptive scaling mechanism to maintain stable parameter distances, enabling efficient sequential integration of task-specific knowledge. Our approach maintains constant memory complexity to the number of models, minimizes interference between tasks through orthogonal projections, and retains the performance of previously merged models through adaptive task vector scaling. Extensive experiments on CLIP-ViT models demonstrate that our method achieves a 5-8% average accuracy improvement while maintaining robust performance in different task orderings.
48
+ </details>
49
+
50
+ <details>
51
+ <summary>Yongxian Wei, et al. Modeling Multi-Task Model Merging as Adaptive Projective Gradient Descent. Jan 2025. https://arxiv.org/abs/2501.01230</summary>
52
+
53
+ Merging multiple expert models offers a promising approach for performing multi-task learning without accessing their original data. Existing methods attempt to alleviate task conflicts by sparsifying task vectors or promoting orthogonality among them. However, they overlook the fundamental requirement of model merging: ensuring the merged model performs comparably to task-specific models on respective tasks. We find these methods inevitably discard task-specific information that, while causing conflicts, is crucial for performance. Based on our findings, we frame model merging as a constrained optimization problem (i.e., minimizing the gap between the merged model and individual models, subject to the constraint of retaining shared knowledge) and solve it via adaptive projective gradient descent. Specifically, we align the merged model with individual models by decomposing and reconstituting the loss function, alleviating conflicts through data-free optimization of task vectors. To retain shared knowledge, we optimize this objective by projecting gradients within a shared subspace spanning all tasks. Moreover, we view merging coefficients as adaptive learning rates and propose a task-aware, training-free strategy. Experiments show that our plug-andplay approach consistently outperforms previous methods, achieving state-of-the-art results across diverse architectures and tasks in both vision and NLP domains. Our code is available here.
54
+ </details>
55
+
56
+ <details>
57
+ <summary>Hongling Zheng, Li Shen, Anke Tang, Yong Luo et al. Learn From Model Beyond Fine-Tuning: A Survey. Nature Machine Intelligence. Jan, 2025. https://www.nature.com/articles/s42256-024-00961-0</summary>
58
+
59
+ > Foundation models (FM) have demonstrated remarkable performance across a wide range of tasks (especially in the fields of natural language processing and computer vision), primarily attributed to their ability to comprehend instructions and access extensive, high-quality data. This not only showcases their current effectiveness but also sets a promising trajectory towards the development of artificial general intelligence. Unfortunately, due to multiple constraints, the raw data of the model used for large model training are often inaccessible, so the use of end-to-end models for downstream tasks has become a new research trend, which we call Learn From Model (LFM) in this article. LFM focuses on the research, modification, and design of FM based on the model interface, so as to better understand the model structure and weights (in a black box environment), and to generalize the model to downstream tasks. The study of LFM techniques can be broadly categorized into five major areas: model tuning, model distillation, model reuse, meta learning and model editing. Each category encompasses a repertoire of methods and strategies that aim to enhance the capabilities and performance of FM. This paper gives a comprehensive review of the current methods based on FM from the perspective of LFM, in order to help readers better understand the current research status and ideas. To conclude, we summarize the survey by highlighting several critical areas for future exploration and addressing open issues that require further attention from the research community. The relevant papers we investigated in this article can be accessed at <https://github.com/ruthless-man/Awesome-Learn-from-Model>.
60
+ </details>
61
+
62
+ <details>
63
+ <summary>Li Shen, Anke Tang, Enneng Yang et al. Efficient and Effective Weight-Ensembling Mixture of Experts for Multi-Task Model Merging. Oct, 2024. https://github.com/EnnengYang/Efficient-WEMoE</summary>
64
+
65
+ <img width="1018" alt="image" src="https://github.com/user-attachments/assets/b7e1279e-87fc-4016-8867-1bff7700e271">
66
+
67
+ </details>
68
+ <details>
69
+ <summary>Jinluan Yang et al. Mitigating the Backdoor Effect for Multi-Task Model Merging via Safety-Aware Subspace. Oct, 2024. http://arxiv.org/abs/2410.13910</summary>
70
+
71
+ <img width="1018" alt="image" src="https://github.com/user-attachments/assets/679aaa7e-0506-4e09-a12a-345c12cf529f">
72
+
73
+ </details>
74
+ <details>
75
+ <summary>Anke Tang et al. SMILE: Zero-Shot Sparse Mixture of Low-Rank Experts Construction From Pre-Trained Foundation Models. Aug, 2024. http://arxiv.org/abs/2408.10174</summary>
76
+
77
+ Example notebooks can be found at [examples/smile_upscaling](examples/smile_upscaling).
78
+ ![](examples/smile_upscaling/SMILE.png)
79
+
80
+ </details>
81
+
82
+ ## Installation
83
+
84
+ Install from PyPI:
85
+
86
+ ```bash
87
+ pip install fusion-bench
88
+ ```
89
+
90
+ or install the latest version in development from the GitHub repository
91
+
92
+ ```bash
93
+ git clone https://github.com/tanganke/fusion_bench.git
94
+ cd fusion_bench
95
+
96
+ pip install -e . # install the package in editable mode
97
+ ```
98
+
99
+ > [!TIP]
100
+ > FusionBench is highly dependent on the use of [Hydra](https://hydra.cc/) for configuration management and command line argument parsing, and [Lightning Fabric](https://lightning.ai/) for device management.
101
+ > If you are not familiar with these tools, it is strongly recommended to read the [Hydra](https://hydra.cc/docs/intro/) and [Lightning Fabric](https://lightning.ai/docs/fabric/stable/) documentation.
102
+
103
+ ### Install with [Language Model Evaluation Harness](https://github.com/EleutherAI/lm-evaluation-harness)
104
+
105
+ [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.10256836.svg)](https://doi.org/10.5281/zenodo.10256836)
106
+
107
+ ```bash
108
+ pip install "fusion-bench[lm-eval-harness]"
109
+ ```
110
+
111
+ or install from local directory
112
+
113
+ ```bash
114
+ pip install -e ".[lm-eval-harness]"
115
+ ```
116
+
117
+ This will install the latest version of fusion-bench and the dependencies required for LM-Eval Harness.
118
+ Documentation for using LM-Eval Harness within FusionBench framework can be found at [this online documentation](https://tanganke.github.io/fusion_bench/taskpool/lm_eval_harness) or in the [`docs/taskpool/lm_eval_harness.md`](docs/taskpool/lm_eval_harness.md) markdown file.
119
+
120
+ > [!TIP]
121
+ > Documentation for merging large language models using FusionBench can be found at [this online documentation](https://tanganke.github.io/fusion_bench/modelpool/causal_lm) or in the [`docs/modelpool/causal_lm.md`](docs/modelpool/causal_lm.md) markdown file.
122
+
123
+ ## Introduction to Deep Model Fusion
124
+
125
+ Deep model fusion is a technique that merges, ensemble, or fuse multiple deep neural networks to obtain a unified model.
126
+ It can be used to improve the performance and robustness of model or to combine the strengths of different models, such as fuse multiple task-specific models to create a multi-task model.
127
+ For a more detailed introduction to deep model fusion, you can refer to [W. Li, 2023, 'Deep Model Fusion: A Survey'](https://arxiv.org/abs/2309.15698). We also provide a brief overview of deep model fusion in [our documentation](https://tanganke.github.io/fusion_bench/).
128
+ In this benchmark, we evaluate the performance of different fusion methods on a variety of datasets and tasks.
129
+
130
+ A comprehensive list of papers about model merging can be found at [this repository](https://github.com/EnnengYang/Awesome-Model-Merging-Methods-Theories-Applications), and [the arXiv paper](https://arxiv.org/abs/2408.07666) is also available.
131
+
132
+ ## Project Structure
133
+
134
+ The project is structured as follows:
135
+
136
+ - `fusion_bench/`: the main package of the benchmark.
137
+ - `method`: contains the implementation of the fusion methods.
138
+ > **naming convention**: `fusion_bench/method/{method_name}/{variant}.py` contains the implementation of the specific method or its variants.
139
+ For example, `fusion_bench/method/regmean/clip_regmean.py` contains the implementation of the RegMean algorithm for CLIP vision models.
140
+ - `modelpool`: contains the implementation of the model pool, responsible for managing the models and dataset to be loaded.
141
+ - `taskpool`: contains the implementation of the task pool, responsible for evaluating the performance of models returned by the algorithm.
142
+ - `config/`: configuration files for the benchmark. We use [Hydra](https://hydra.cc/) to manage the configurations.
143
+ - `method`: configuration files for the fusion methods.
144
+ > **naming convention**: `config/method/{method_name}/{variant}.yaml` contains the configuration for the specific method or its variants.
145
+ - `modelpool`: configuration files for the model pool.
146
+ - `taskpool`: configuration files for the task pool.
147
+ - `model`: configuration files for the models.
148
+ - `dataset`: configuration files for the datasets.
149
+ - `docs/`: documentation for the benchmark. We use [mkdocs](https://www.mkdocs.org/) to generate the documentation. Start the documentation server locally with `mkdocs serve`. The required packages can be installed with `pip install -r mkdocs-requirements.txt`.
150
+ - `examples/`: example scripts for running some of the experiments.
151
+ > **naming convention**: `examples/{method_name}/` contains the files such as bash scripts and jupyter notebooks for the specific method.
152
+ - `tests/`: unit tests for the benchmark.
153
+
154
+ ## A Unified Command Line Interface
155
+
156
+ The `fusion_bench` command-line interface is a powerful tool for researchers and practitioners in the field of model fusion. It provides a streamlined way to experiment with various fusion algorithms, model combinations, and evaluation tasks.
157
+ By leveraging Hydra's configuration management, fusion_bench offers flexibility in setting up experiments and reproducibility in results.
158
+ The CLI's design allows for easy extension to new fusion methods, model types, and tasks, making it a versatile platform for advancing research in model fusion techniques.
159
+
160
+ Read the [CLI documentation](https://tanganke.github.io/fusion_bench/cli/fusion_bench/) for more information.
161
+
162
+ ## Implement your own model fusion algorithm
163
+
164
+ First, create a new Python file for the algorithm in the `fusion_bench/method` directory.
165
+ Following the naming convention, the file should be named `{method_name_or_class}/{variant}.py`.
166
+
167
+ ```python
168
+ from fusion_bench import BaseModelFusionAlgorithm, BaseModelPool
169
+
170
+ class DerivedModelFusionAlgorithm(BaseModelFusionAlgorithm):
171
+ """
172
+ An example of a derived model fusion algorithm.
173
+ """
174
+
175
+ # _config_mapping maps the attribution to the corresponding key in the configuration file.
176
+ # this is optional and can be used to serialize the object to a configuration file.
177
+ # `self.config.hyperparam_1` will be mapped to the attribute `hyperparam_attr_1`.
178
+ _config_mapping = BaseModelFusionAlgorithm._config_mapping | {
179
+ "hyperparam_attr_1": "hyperparam_1",
180
+ "hyperparam_attr_2": "hyperparam_2",
181
+ }
182
+
183
+ def __init__(self, hyperparam_1, hyperparam_2, **kwargs):
184
+ self.hyperparam_attr_1 = hyperparam_1
185
+ self.hyperparam_attr_2 = hyperparam_2
186
+ super().__init__(**kwargs)
187
+
188
+ def run(self, modelpool: BaseModelPool):
189
+ # modelpool is an object that responsible for managing the models and dataset to be loaded.
190
+ # implement the fusion algorithm here.
191
+ raise NotImplementedError(
192
+ "DerivedModelFusionAlgorithm.run() is not implemented."
193
+ )
194
+ ```
195
+
196
+ A corresponding configuration file should be created to specify the class and hyperparameters of the algorithm.
197
+ Here we assume the configuration file is placed at `config/method/your_algorithm_config.yaml`.
198
+
199
+ > [!NOTE]
200
+ > In fact, you can place your implementation anywhere you like, as long as the `_target_` in the configuration file points to the correct class.
201
+
202
+ ```yaml
203
+ _target_: path_to_the_module.DerivedModelFusionAlgorithm
204
+
205
+ hyperparam_1: some_value
206
+ hyperparam_2: another_value
207
+ ```
208
+
209
+ Use the algorithm in the FusionBench:
210
+
211
+ ```bash
212
+ fusion_bench \
213
+ method=your_algorithm_config \
214
+ method.hyperparam_1=you_can_override_this \
215
+ method.hyperparam_2=and_this \
216
+ ... # other configurations
217
+ ```
218
+
219
+ ### :rocket: Quick Start for Experienced Users
220
+
221
+ We provide a project template for quickly starting a new fusion algorithm implementation here: [FusionBench Project Template](https://github.com/fusion-bench/fusion-bench-project-template).
222
+
223
+ <div align='center'>
224
+
225
+ Click on [<kbd>Use this template</kbd>](https://github.com/fusion-bench/fusion-bench-project-template/generate) to initialize new repository.
226
+
227
+ </div>
228
+
229
+ ### FusionBench Command Generator WebUI (for v0.1.x)
230
+
231
+ FusionBench Command Generator is a user-friendly web interface for generating FusionBench commands based on configuration files.
232
+ It provides an interactive way to select and customize FusionBench configurations, making it easier to run experiments with different settings.
233
+ [Read more here](https://tanganke.github.io/fusion_bench/cli/fusion_bench_webui/).
234
+
235
+ ![FusionBench Command Generator Web Interface](docs/cli/images/fusion_bench_webui.png)
236
+
237
+ ## Citation
238
+
239
+ If you find this benchmark useful, please consider citing our work:
240
+
241
+ ```bibtex
242
+ @article{tang2024fusionbench,
243
+ title={Fusionbench: A comprehensive benchmark of deep model fusion},
244
+ author={Tang, Anke and Shen, Li and Luo, Yong and Hu, Han and Du, Bo and Tao, Dacheng},
245
+ journal={arXiv preprint arXiv:2406.03280},
246
+ year={2024}
247
+ }
248
+ ```
249
+
250
+ ## Star History
251
+
252
+ [![Star History Chart](https://api.star-history.com/svg?repos=tanganke/fusion_bench&type=Date)](https://www.star-history.com/#tanganke/fusion_bench&Date)
@@ -0,0 +1,46 @@
1
+ # ███████╗██╗ ██╗███████╗██╗ ██████╗ ███╗ ██╗ ██████╗ ███████╗███╗ ██╗ ██████╗██╗ ██╗
2
+ # ██╔════╝██║ ██║██╔════╝██║██╔═══██╗████╗ ██║ ██╔══██╗██╔════╝████╗ ██║██╔════╝██║ ██║
3
+ # █████╗ ██║ ██║███████╗██║██║ ██║██╔██╗ ██║█████╗██████╔╝█████╗ ██╔██╗ ██║██║ ███████║
4
+ # ██╔══╝ ██║ ██║╚════██║██║██║ ██║██║╚██╗██║╚════╝██╔══██╗██╔══╝ ██║╚██╗██║██║ ██╔══██║
5
+ # ██║ ╚██████╔╝███████║██║╚██████╔╝██║ ╚████║ ██████╔╝███████╗██║ ╚████║╚██████╗██║ ██║
6
+ # ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═══╝ ╚═════╝ ╚══════╝╚═╝ ╚═══╝ ╚═════╝╚═╝ ╚═╝
7
+ # flake8: noqa: F401
8
+ from . import (
9
+ constants,
10
+ dataset,
11
+ method,
12
+ metrics,
13
+ mixins,
14
+ modelpool,
15
+ models,
16
+ optim,
17
+ programs,
18
+ taskpool,
19
+ tasks,
20
+ utils,
21
+ )
22
+ from .constants import RuntimeConstants
23
+ from .method import BaseAlgorithm, BaseModelFusionAlgorithm
24
+ from .mixins import auto_register_config
25
+ from .modelpool import BaseModelPool
26
+ from .models import (
27
+ create_default_model_card,
28
+ load_model_card_template,
29
+ save_pretrained_with_remote_code,
30
+ separate_io,
31
+ )
32
+ from .programs import BaseHydraProgram
33
+ from .taskpool import BaseTaskPool
34
+ from .utils import (
35
+ cache_with_joblib,
36
+ get_rankzero_logger,
37
+ import_object,
38
+ instantiate,
39
+ parse_dtype,
40
+ print_parameters,
41
+ seed_everything_by_time,
42
+ set_default_cache_dir,
43
+ set_print_function_call,
44
+ set_print_function_call_permeanent,
45
+ timeit_context,
46
+ )
@@ -0,0 +1,3 @@
1
+ """
2
+ Tutorial module for FusionBench
3
+ """