* typing * Update cross_entropy_loss.py * Update cross_entropy_loss.py * Update cross_entropy_loss.py * Update cross_entropy_loss.py * Update cross_entropy_loss.py * Update cross_entropy_loss.py * Update cross_entropy_loss.py * Update cross_entropy_loss.py * Update cross_entropy_loss.py * int64 * Update _utils.py * Update cross_entropy_loss.py * constexpr * constexpr * Update cross_entropy_loss.py * Update cross_entropy_loss.py * Update _utils.py * Update _utils.py * Update _utils.py * CE * Update cross_entropy_loss.py * Update _utils.py * Update llama.py * Update _utils.py * Update rms_layernorm.py * Update rms_layernorm.py * Update rms_layernorm.py * Update rms_layernorm.py * Update rms_layernorm.py * Update rms_layernorm.py * Update utils.py * Update rms_layernorm.py * Update rms_layernorm.py * Update rms_layernorm.py * Update rms_layernorm.py * Update rms_layernorm.py * Update rms_layernorm.py * Update rms_layernorm.py * Update rms_layernorm.py * Update rms_layernorm.py * Update rms_layernorm.py * Update rms_layernorm.py * Update rms_layernorm.py * typing * Update rope_embedding.py * types * Disable compiling * Update _utils.py * Update _utils.py * Forward hook * Update _utils.py * Update llama.py * Update _utils.py * Update llama.py * Update llama.py * Update _utils.py * Update pyproject.toml * Update _utils.py * Update llama.py * CE Loss * Update cross_entropy_loss.py * Update _utils.py * Update cross_entropy_loss.py * Update cross_entropy_loss.py * Update cross_entropy_loss.py * Update llama.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Fix: cast logits to float32 in cross_entropy_forward to prevent errors (#1254) * Fix: cast logits to float32 in cross_entropy_forward to prevent errors * Update cross_entropy_loss.py --------- Co-authored-by: Daniel Han <danielhanchen@gmail.com> * Throw error when inferencing longer than max_popsition_embeddings (#1236) * Throw error when inferencing longer than max_popsition_embeddings without rope scaling * Update llama.py --------- Co-authored-by: Daniel Han <danielhanchen@gmail.com> * CLI now handles user input strings for dtype correctly (#1235) Co-authored-by: root <root@ieeres.chu.cam.ac.uk> * Update flex_attention.py * Update _utils.py * Update _utils.py * Update flex_attention.py * Update flex_attention.py * Update loader.py * Update loader.py * Update flex_attention.py * Update flex_attention.py * Update flex_attention.py * Update flex_attention.py * Update _utils.py * Update cross_entropy_loss.py * Update _utils.py * Update tokenizer_utils.py * Update tokenizer_utils.py * Update tokenizer_utils.py * Update tokenizer_utils.py * Update tokenizer_utils.py * triton_cast * Update utils.py * Qwen 2.5 Coder * Fix/export mistral (#1281) * Enhance install_python_non_blocking to handle protobuf installation and process management * Revert "Enhance install_python_non_blocking to handle protobuf installation and process management" This reverts commit a3b796a05841fb8d93c652c845591e12cf81ea93. * Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION to 'python' to address issue #1266 * Revert "Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION to 'python' to address issue #1266" This reverts commit f00fbf5eac7ad4f5d48c70b98d770255d1a9ef58. * Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION to 'python' to address issue #1266 * Update __init__.py --------- Co-authored-by: Daniel Han <danielhanchen@gmail.com> * DOC Update - Update README.md with os.environ in example (#1269) * Update README.md with os.environ in example Added OS Environ in example to avoid device conflicts , for a user at least in jupyter notebook this allows to select GPU in a multi GPU setup. As currently the unsloth init checks all GPU's and takes the first in the order which can be a issue when some GPU's are in use and the list still shows them. So to manually avoid this, this os config is required. Small change but a bit time saver for those who straight away copies the tutorials * Update README.md --------- Co-authored-by: Daniel Han <danielhanchen@gmail.com> * fix/get_chat_template (#1246) * Refactor `get_chat_template` to now support system message instead. It supposed to fix ollama tokenizer chattemplate to * Remove type hinting * Update chat_templates.py --------- Co-authored-by: Daniel Han <danielhanchen@gmail.com> * fix/sft-trainer (#1276) * Add patch for SFTTrainer to maintain backward compatibility with TRL changes * Update trainer.py * Update trainer.py * Refactor trainer patch to maintain backward compatibility with TRL changes * Update trainer.py * Refactor trainer.py to exclude non-convertible trainers from backward compatibility patch --------- Co-authored-by: Daniel Han <danielhanchen@gmail.com> * Update __init__.py * Update trainer.py * Update trainer.py * Update trainer.py * Update tokenizer_utils.py * Update llama.py * Fix #853 * fix/sfttrainer-compatibility (#1293) * Refactor trainer.py to import SFTConfig directly and update UnslothTrainingArguments class inheritance * Update trainer.py * Update trainer.py --------- Co-authored-by: Daniel Han <danielhanchen@gmail.com> * Update rms_layernorm.py * Update rms_layernorm.py * Gemma * Update rms_layernorm.py * Update gemma2.py * Cut Cross Entropy * Update llama.py * Cut Cross Entropy * Update llama.py * Update llama.py * Update llama.py * Update __init__.py * Update __init__.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update mapper.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * patch_fast_lora * vision * Update fast_lora.py * Update _utils.py * Update _utils.py * Vision * Update trainer.py * Update save.py * FastBaseVisionModel * Update loader_utils.py * Update vision.py * Update loader.py * Update vision.py * Update loader.py * Update vision.py * Update _utils.py * tokenizer_name * Update loader.py * Update vision.py * Update save.py * Update save.py * Update vision.py * Update vision.py * Update vision.py * Update vision.py * Update vision.py * Update vision.py * Update _utils.py * Update loader.py * kwargs * logits * Update llama.py * Update llama.py * Update llama.py * Update _utils.py * Update _utils.py * Update _utils.py * error * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update _utils.py * Update loader.py * Update llama.py * Update vision.py * Update loader.py * Old torch versions * Update loader.py * Update loader.py * prints * recheck * Update loader.py * Update loader.py * Update _utils.py * Update _utils.py * Update mapper.py * Feat/kto (#1316) * Add PatchKTOTrainer and update model imports * Update dpo.py * Update __init__.py * Delete unsloth/models/kto.py --------- Co-authored-by: Daniel Han <danielhanchen@gmail.com> * Fix orpo/dpo trainer (#1286) * change the colab notebook for dpo zephyr and orpo * use original tokenizer * Update README.md * Update README.md --------- Co-authored-by: Daniel Han <danielhanchen@gmail.com> * skip modules * Update vision.py * Update llama.py * Update llama.py * Update llama.py * Update llama.py * Update llama.py * Update llama.py * Update llama.py * Update llama.py * Update llama.py * Update llama.py * Update llama.py * Fix llama.cpp * Update save.py * Update save.py * Update vision.py * Update save.py * Update save.py * Update save.py * Update save.py * Update save.py * Update save.py * Update save.py * Update _utils.py * Update save.py * Update save.py * Update mapper.py * modules --------- Co-authored-by: Edd <68678137+Erland366@users.noreply.github.com> Co-authored-by: Datta Nimmaturi <datta.nimmaturi@nutanix.com> Co-authored-by: Edwin Fennell <edwinfennell1@gmail.com> Co-authored-by: root <root@ieeres.chu.cam.ac.uk> Co-authored-by: Uday Girish Maradana <einsteingirish@gmail.com> Co-authored-by: cell-dame <122996026+dame-cell@users.noreply.github.com>
555 lines
18 KiB
Python
555 lines
18 KiB
Python
# Copyright 2023-present Daniel Han-Chen & the Unsloth team. All rights reserved.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
__all__ = [
|
|
"INT_TO_FLOAT_MAPPER",
|
|
"FLOAT_TO_INT_MAPPER",
|
|
]
|
|
|
|
__INT_TO_FLOAT_MAPPER = \
|
|
{
|
|
"unsloth/mistral-7b-bnb-4bit" : (
|
|
"unsloth/mistral-7b",
|
|
"mistralai/Mistral-7B-v0.1",
|
|
),
|
|
"unsloth/llama-2-7b-bnb-4bit" : (
|
|
"unsloth/llama-2-7b",
|
|
"meta-llama/Llama-2-7b-hf",
|
|
),
|
|
"unsloth/llama-2-13b-bnb-4bit" : (
|
|
"unsloth/llama-2-13b",
|
|
"meta-llama/Llama-2-13b-hf",
|
|
),
|
|
"unsloth/codellama-34b-bnb-4bit" : (
|
|
"codellama/CodeLlama-34b-hf",
|
|
),
|
|
"unsloth/zephyr-sft-bnb-4bit" : (
|
|
"unsloth/zephyr-sft",
|
|
"HuggingFaceH4/mistral-7b-sft-beta",
|
|
),
|
|
"unsloth/tinyllama-bnb-4bit" : (
|
|
"unsloth/tinyllama",
|
|
"TinyLlama/TinyLlama-1.1B-intermediate-step-1431k-3T",
|
|
),
|
|
"unsloth/tinyllama-chat-bnb-4bit" : (
|
|
"unsloth/tinyllama-chat",
|
|
"TinyLlama/TinyLlama-1.1B-Chat-v1.0",
|
|
),
|
|
"unsloth/mistral-7b-instruct-v0.1-bnb-4bit" : (
|
|
"unsloth/mistral-7b-instruct-v0.1",
|
|
"mistralai/Mistral-7B-Instruct-v0.1",
|
|
),
|
|
"unsloth/mistral-7b-instruct-v0.2-bnb-4bit" : (
|
|
"unsloth/mistral-7b-instruct-v0.2",
|
|
"mistralai/Mistral-7B-Instruct-v0.2",
|
|
),
|
|
"unsloth/llama-2-7b-chat-bnb-4bit" : (
|
|
"unsloth/llama-2-7b-chat",
|
|
"meta-llama/Llama-2-7b-chat-hf",
|
|
),
|
|
"unsloth/llama-2-7b-chat-bnb-4bit" : (
|
|
"unsloth/llama-2-7b-chat",
|
|
"meta-llama/Llama-2-7b-chat-hf",
|
|
),
|
|
"unsloth/codellama-7b-bnb-4bit" : (
|
|
"unsloth/codellama-7b",
|
|
"codellama/CodeLlama-7b-hf",
|
|
),
|
|
"unsloth/codellama-13b-bnb-4bit" : (
|
|
"codellama/CodeLlama-13b-hf",
|
|
),
|
|
"unsloth/yi-6b-bnb-4bit" : (
|
|
"unsloth/yi-6b",
|
|
"01-ai/Yi-6B",
|
|
),
|
|
"unsloth/solar-10.7b-bnb-4bit" : (
|
|
"upstage/SOLAR-10.7B-v1.0",
|
|
),
|
|
"unsloth/gemma-7b-bnb-4bit" : (
|
|
"unsloth/gemma-7b",
|
|
"google/gemma-7b",
|
|
),
|
|
"unsloth/gemma-2b-bnb-4bit" : (
|
|
"unsloth/gemma-2b",
|
|
"google/gemma-2b",
|
|
),
|
|
"unsloth/gemma-7b-it-bnb-4bit" : (
|
|
"unsloth/gemma-7b-it",
|
|
"google/gemma-7b-it",
|
|
),
|
|
"unsloth/gemma-2b-bnb-4bit" : (
|
|
"unsloth/gemma-2b-it",
|
|
"google/gemma-2b-it",
|
|
),
|
|
"unsloth/mistral-7b-v0.2-bnb-4bit" : (
|
|
"unsloth/mistral-7b-v0.2",
|
|
"alpindale/Mistral-7B-v0.2-hf",
|
|
),
|
|
"unsloth/gemma-1.1-2b-it-bnb-4bit" : (
|
|
"unsloth/gemma-1.1-2b-it",
|
|
"google/gemma-1.1-2b-it",
|
|
),
|
|
"unsloth/gemma-1.1-7b-it-bnb-4bit" : (
|
|
"unsloth/gemma-1.1-7b-it",
|
|
"google/gemma-1.1-7b-it",
|
|
),
|
|
"unsloth/Starling-LM-7B-beta-bnb-4bit" : (
|
|
"unsloth/Starling-LM-7B-beta",
|
|
"Nexusflow/Starling-LM-7B-beta",
|
|
),
|
|
"unsloth/Hermes-2-Pro-Mistral-7B-bnb-4bit" : (
|
|
"unsloth/Hermes-2-Pro-Mistral-7B",
|
|
"NousResearch/Hermes-2-Pro-Mistral-7B",
|
|
),
|
|
"unsloth/OpenHermes-2.5-Mistral-7B-bnb-4bit" : (
|
|
"unsloth/OpenHermes-2.5-Mistral-7B",
|
|
"teknium/OpenHermes-2.5-Mistral-7B",
|
|
),
|
|
"unsloth/codegemma-2b-bnb-4bit" : (
|
|
"unsloth/codegemma-2b",
|
|
"google/codegemma-2b",
|
|
),
|
|
"unsloth/codegemma-7b-bnb-4bit" : (
|
|
"unsloth/codegemma-7b",
|
|
"google/codegemma-7b",
|
|
),
|
|
"unsloth/codegemma-7b-it-bnb-4bit" : (
|
|
"unsloth/codegemma-7b-it",
|
|
"google/codegemma-7b-it",
|
|
),
|
|
"unsloth/llama-3-8b-bnb-4bit" : (
|
|
"unsloth/llama-3-8b",
|
|
"meta-llama/Meta-Llama-3-8B",
|
|
),
|
|
"unsloth/llama-3-8b-Instruct-bnb-4bit" : (
|
|
"unsloth/llama-3-8b-Instruct",
|
|
"meta-llama/Meta-Llama-3-8B-Instruct",
|
|
),
|
|
"unsloth/llama-3-70b-bnb-4bit" : (
|
|
"meta-llama/Meta-Llama-3-70B",
|
|
),
|
|
"unsloth/llama-3-70b-Instruct-bnb-4bit" : (
|
|
"meta-llama/Meta-Llama-3-70B-Instruct",
|
|
),
|
|
"unsloth/Phi-3-mini-4k-instruct-bnb-4bit" : (
|
|
"unsloth/Phi-3-mini-4k-instruct",
|
|
"microsoft/Phi-3-mini-4k-instruct",
|
|
),
|
|
"unsloth/mistral-7b-v0.3-bnb-4bit" : (
|
|
"unsloth/mistral-7b-v0.3",
|
|
"mistralai/Mistral-7B-v0.3",
|
|
),
|
|
"unsloth/mistral-7b-instruct-v0.3-bnb-4bit" : (
|
|
"unsloth/mistral-7b-instruct-v0.3",
|
|
"mistralai/Mistral-7B-Instruct-v0.3",
|
|
),
|
|
"unsloth/Phi-3-medium-4k-instruct-bnb-4bit" : (
|
|
"unsloth/Phi-3-medium-4k-instruct",
|
|
"microsoft/Phi-3-medium-4k-instruct",
|
|
),
|
|
"unsloth/Qwen2-0.5B-bnb-4bit" : (
|
|
"unsloth/Qwen2-0.5B",
|
|
"Qwen/Qwen2-0.5B",
|
|
),
|
|
"unsloth/Qwen2-0.5B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2-0.5B-Instruct",
|
|
"Qwen/Qwen2-0.5B-Instruct",
|
|
),
|
|
"unsloth/Qwen2-1.5B-bnb-4bit" : (
|
|
"unsloth/Qwen2-1.5B",
|
|
"Qwen/Qwen2-1.5B",
|
|
),
|
|
"unsloth/Qwen2-1.5B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2-1.5B-Instruct",
|
|
"Qwen/Qwen2-1.5B-Instruct",
|
|
),
|
|
"unsloth/Qwen2-7B-bnb-4bit" : (
|
|
"unsloth/Qwen2-7B",
|
|
"Qwen/Qwen2-7B",
|
|
),
|
|
"unsloth/Qwen2-7B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2-7B-Instruct",
|
|
"Qwen/Qwen2-7B-Instruct",
|
|
),
|
|
"unsloth/Qwen2-70B-bnb-4bit" : (
|
|
"Qwen/Qwen2-70B",
|
|
),
|
|
"unsloth/Qwen2-70B-Instruct-bnb-4bit" : (
|
|
"Qwen/Qwen2-70B-Instruct",
|
|
),
|
|
"mistralai/Codestral-22B-v0.1" : (
|
|
"mistral-community/Codestral-22B-v0.1",
|
|
),
|
|
"unsloth/gemma-2-9b-bnb-4bit" : (
|
|
"unsloth/gemma-2-9b",
|
|
"google/gemma-2-9b",
|
|
),
|
|
"unsloth/gemma-2-27b-bnb-4bit" : (
|
|
"unsloth/gemma-2-27b",
|
|
"google/gemma-2-27b",
|
|
),
|
|
"unsloth/gemma-2-9b-it-bnb-4bit" : (
|
|
"unsloth/gemma-2-9b-it",
|
|
"google/gemma-2-9b-it",
|
|
),
|
|
"unsloth/gemma-2-27b-it-bnb-4bit" : (
|
|
"unsloth/gemma-2-27b-it",
|
|
"google/gemma-2-27b-it",
|
|
),
|
|
"unsloth/Phi-3-mini-4k-instruct-v0-bnb-4bit" : ( # Old Phi pre July
|
|
"unsloth/Phi-3-mini-4k-instruct-v0",
|
|
),
|
|
"unsloth/Mistral-Nemo-Instruct-2407-bnb-4bit" : ( # New 12b Mistral models
|
|
"unsloth/Mistral-Nemo-Instruct-2407",
|
|
"mistralai/Mistral-Nemo-Instruct-2407",
|
|
),
|
|
"unsloth/Mistral-Nemo-Base-2407-bnb-4bit" : ( # New 12b Mistral models
|
|
"unsloth/Mistral-Nemo-Base-2407",
|
|
"mistralai/Mistral-Nemo-Base-2407",
|
|
),
|
|
"unsloth/Meta-Llama-3.1-8B-bnb-4bit" : (
|
|
"unsloth/Meta-Llama-3.1-8B",
|
|
"meta-llama/Meta-Llama-3.1-8B",
|
|
),
|
|
"unsloth/Meta-Llama-3.1-8B-Instruct-bnb-4bit" : (
|
|
"unsloth/Meta-Llama-3.1-8B-Instruct",
|
|
"meta-llama/Meta-Llama-3.1-8B-Instruct",
|
|
),
|
|
"unsloth/Meta-Llama-3.1-70B-bnb-4bit" : (
|
|
"unsloth/Meta-Llama-3.1-70B",
|
|
"meta-llama/Meta-Llama-3.1-70B",
|
|
),
|
|
"unsloth/Meta-Llama-3.1-405B-bnb-4bit" : (
|
|
"meta-llama/Meta-Llama-3.1-405B",
|
|
),
|
|
"unsloth/Meta-Llama-3.1-405B-Instruct-bnb-4bit" : (
|
|
"meta-llama/Meta-Llama-3.1-405B-Instruct",
|
|
),
|
|
"unsloth/Meta-Llama-3.1-70B-Instruct-bnb-4bit" : (
|
|
"unsloth/Meta-Llama-3.1-70B-Instruct",
|
|
"meta-llama/Meta-Llama-3.1-70B-Instruct",
|
|
),
|
|
"unsloth/Mistral-Large-Instruct-2407-bnb-4bit" : (
|
|
"mistralai/Mistral-Large-Instruct-2407",
|
|
),
|
|
"unsloth/gemma-2-2b-bnb-4bit" : (
|
|
"unsloth/gemma-2-2b",
|
|
"google/gemma-2-2b",
|
|
),
|
|
"unsloth/gemma-2-2b-it-bnb-4bit" : (
|
|
"unsloth/gemma-2-2b-it",
|
|
"google/gemma-2-2b-it",
|
|
),
|
|
"unsloth/Phi-3.5-mini-instruct-bnb-4bit" : (
|
|
"unsloth/Phi-3.5-mini-instruct",
|
|
"microsoft/Phi-3.5-mini-instruct",
|
|
),
|
|
"unsloth/c4ai-command-r-08-2024-bnb-4bit" : (
|
|
"CohereForAI/c4ai-command-r-08-2024",
|
|
),
|
|
"unsloth/c4ai-command-r-plus-08-2024-bnb-4bit" : (
|
|
"CohereForAI/c4ai-command-r-plus-08-2024",
|
|
),
|
|
"unsloth/Llama-3.1-Storm-8B-bnb-4bit" : (
|
|
"unsloth/Llama-3.1-Storm-8B",
|
|
"akjindal53244/Llama-3.1-Storm-8B",
|
|
),
|
|
"unsloth/Hermes-3-Llama-3.1-8B-bnb-4bit" : (
|
|
"unsloth/Hermes-3-Llama-3.1-8B",
|
|
"NousResearch/Hermes-3-Llama-3.1-8B",
|
|
),
|
|
"unsloth/Hermes-3-Llama-3.1-70B-bnb-4bit" : (
|
|
"unsloth/Hermes-3-Llama-3.1-70B",
|
|
"NousResearch/Hermes-3-Llama-3.1-70B",
|
|
),
|
|
"unsloth/Hermes-3-Llama-3.1-405B-bnb-4bit" : (
|
|
"NousResearch/Hermes-3-Llama-3.1-405B",
|
|
),
|
|
"unsloth/SmolLM-135M-bnb-4bit" : (
|
|
"unsloth/SmolLM-135M",
|
|
"HuggingFaceTB/SmolLM-135M",
|
|
),
|
|
"unsloth/SmolLM-360M-bnb-4bit" : (
|
|
"unsloth/SmolLM-360M",
|
|
"HuggingFaceTB/SmolLM-360M",
|
|
),
|
|
"unsloth/SmolLM-1.7B-bnb-4bit" : (
|
|
"unsloth/SmolLM-1.7B",
|
|
"HuggingFaceTB/SmolLM-1.7B",
|
|
),
|
|
"unsloth/SmolLM-135M-Instruct-bnb-4bit" : (
|
|
"unsloth/SmolLM-135M-Instruct",
|
|
"HuggingFaceTB/SmolLM-135M-Instruct",
|
|
),
|
|
"unsloth/SmolLM-360M-Instruct-bnb-4bit" : (
|
|
"unsloth/SmolLM-360M-Instruct",
|
|
"HuggingFaceTB/SmolLM-360M-Instruct",
|
|
),
|
|
"unsloth/SmolLM-1.7B-Instruct-bnb-4bit" : (
|
|
"unsloth/SmolLM-1.7B-Instruct",
|
|
"HuggingFaceTB/SmolLM-1.7B-Instruct",
|
|
),
|
|
"unsloth/Mistral-Small-Instruct-2409-bnb-4bit" : (
|
|
"unsloth/Mistral-Small-Instruct-2409",
|
|
"mistralai/Mistral-Small-Instruct-2409",
|
|
),
|
|
"unsloth/Qwen2.5-0.5B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-0.5B-Instruct",
|
|
"Qwen/Qwen2.5-0.5B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-1.5B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-1.5B-Instruct",
|
|
"Qwen/Qwen2.5-1.5B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-3B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-3B-Instruct",
|
|
"Qwen/Qwen2.5-3B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-7B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-7B-Instruct",
|
|
"Qwen/Qwen2.5-7B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-14B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-14B-Instruct",
|
|
"Qwen/Qwen2.5-14B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-32B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-32B-Instruct",
|
|
"Qwen/Qwen2.5-32B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-72B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-72B-Instruct",
|
|
"Qwen/Qwen2.5-72B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-0.5B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-0.5B",
|
|
"Qwen/Qwen2.5-0.5B",
|
|
),
|
|
"unsloth/Qwen2.5-1.5B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-1.5B",
|
|
"Qwen/Qwen2.5-1.5B",
|
|
),
|
|
"unsloth/Qwen2.5-3B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-3B",
|
|
"Qwen/Qwen2.5-3B",
|
|
),
|
|
"unsloth/Qwen2.5-7B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-7B",
|
|
"Qwen/Qwen2.5-7B",
|
|
),
|
|
"unsloth/Qwen2.5-14B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-14B",
|
|
"Qwen/Qwen2.5-14B",
|
|
),
|
|
"unsloth/Qwen2.5-32B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-32B",
|
|
"Qwen/Qwen2.5-32B",
|
|
),
|
|
"unsloth/Qwen2.5-72B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-72B",
|
|
"Qwen/Qwen2.5-72B",
|
|
),
|
|
"unsloth/Qwen2.5-Math-1.5B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Math-1.5B",
|
|
"Qwen/Qwen2.5-Math-1.5B",
|
|
),
|
|
"unsloth/Qwen2.5-Math-7B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Math-7B",
|
|
"Qwen/Qwen2.5-Math-7B",
|
|
),
|
|
"unsloth/Qwen2.5-Math-72B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Math-72B",
|
|
"Qwen/Qwen2.5-Math-72B",
|
|
),
|
|
"unsloth/Qwen2.5-Math-1.5B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Math-1.5B-Instruct",
|
|
"Qwen/Qwen2.5-Math-1.5B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-Math-7B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Math-7B-Instruct",
|
|
"Qwen/Qwen2.5-Math-7B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-Math-72B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Math-72B-Instruct",
|
|
"Qwen/Qwen2.5-Math-72B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-Coder-0.5B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Coder-0.5B",
|
|
"Qwen/Qwen2.5-Coder-0.5B",
|
|
),
|
|
"unsloth/Qwen2.5-Coder-1.5B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Coder-1.5B",
|
|
"Qwen/Qwen2.5-Coder-1.5B",
|
|
),
|
|
"unsloth/Qwen2.5-Coder-3B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Coder-3B",
|
|
"Qwen/Qwen2.5-Coder-3B",
|
|
),
|
|
"unsloth/Qwen2.5-Coder-7B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Coder-7B",
|
|
"Qwen/Qwen2.5-Coder-7B",
|
|
),
|
|
"unsloth/Qwen2.5-Coder-14B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Coder-14B",
|
|
"Qwen/Qwen2.5-Coder-14B",
|
|
),
|
|
"unsloth/Qwen2.5-Coder-32B-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Coder-32B",
|
|
"Qwen/Qwen2.5-Coder-32B",
|
|
),
|
|
"unsloth/Qwen2.5-Coder-0.5B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Coder-0.5B-Instruct",
|
|
"Qwen/Qwen2.5-Coder-0.5B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-Coder-1.5B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Coder-1.5B-Instruct",
|
|
"Qwen/Qwen2.5-Coder-1.5B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-Coder-3B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Coder-3B-Instruct",
|
|
"Qwen/Qwen2.5-Coder-3B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-Coder-7B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Coder-7B-Instruct",
|
|
"Qwen/Qwen2.5-Coder-7B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-Coder-14B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Coder-14B-Instruct",
|
|
"Qwen/Qwen2.5-Coder-14B-Instruct",
|
|
),
|
|
"unsloth/Qwen2.5-Coder-32B-Instruct-bnb-4bit" : (
|
|
"unsloth/Qwen2.5-Coder-32B-Instruct",
|
|
"Qwen/Qwen2.5-Coder-32B-Instruct",
|
|
),
|
|
"unsloth/Llama-3.2-1B-bnb-4bit" : (
|
|
"unsloth/Llama-3.2-1B",
|
|
"meta-llama/Llama-3.2-1B",
|
|
),
|
|
"unsloth/Llama-3.2-3B-bnb-4bit" : (
|
|
"unsloth/Llama-3.2-3B",
|
|
"meta-llama/Llama-3.2-3B",
|
|
),
|
|
"unsloth/Llama-3.2-1B-Instruct-bnb-4bit" : (
|
|
"unsloth/Llama-3.2-1B-Instruct",
|
|
"meta-llama/Llama-3.2-1B-Instruct",
|
|
),
|
|
"unsloth/Llama-3.2-3B-Instruct-bnb-4bit" : (
|
|
"unsloth/Llama-3.2-3B-Instruct",
|
|
"meta-llama/Llama-3.2-3B-Instruct",
|
|
),
|
|
"unsloth/Llama-3.1-Nemotron-70B-Instruct-bnb-4bit" : (
|
|
"unsloth/Llama-3.1-Nemotron-70B-Instruct",
|
|
"nvidia/Llama-3.1-Nemotron-70B-Instruct-HF",
|
|
),
|
|
"unsloth/Qwen2-VL-2B-Instruct-unsloth-bnb-4bit" : (
|
|
"unsloth/Qwen2-VL-2B-Instruct",
|
|
"Qwen/Qwen2-VL-2B-Instruct",
|
|
"unsloth/Qwen2-VL-2B-Instruct-bnb-4bit",
|
|
),
|
|
"unsloth/Qwen2-VL-7B-Instruct-unsloth-bnb-4bit" : (
|
|
"unsloth/Qwen2-VL-7B-Instruct",
|
|
"Qwen/Qwen2-VL-7B-Instruct",
|
|
"unsloth/Qwen2-VL-7B-Instruct-bnb-4bit",
|
|
),
|
|
"unsloth/Qwen2-VL-72B-Instruct-unsloth-bnb-4bit" : (
|
|
"unsloth/Qwen2-VL-72B-Instruct",
|
|
"Qwen/Qwen2-VL-72B-Instruct",
|
|
"unsloth/Qwen2-VL-72B-Instruct-bnb-4bit",
|
|
),
|
|
"unsloth/Llama-3.2-11B-Vision-Instruct-unsloth-bnb-4bit" : (
|
|
"unsloth/Llama-3.2-11B-Vision-Instruct",
|
|
"meta-llama/Llama-3.2-11B-Vision-Instruct",
|
|
"unsloth/Llama-3.2-11B-Vision-Instruct-bnb-4bit",
|
|
),
|
|
"unsloth/Llama-3.2-90B-Vision-Instruct-unsloth-bnb-4bit" : (
|
|
"unsloth/Llama-3.2-90B-Vision-Instruct",
|
|
"meta-llama/Llama-3.2-90B-Vision-Instruct",
|
|
"unsloth/Llama-3.2-90B-Vision-Instruct-bnb-4bit",
|
|
),
|
|
"unsloth/Llama-3.2-11B-Vision-unsloth-bnb-4bit" : (
|
|
"unsloth/Llama-3.2-11B-Vision",
|
|
"meta-llama/Llama-3.2-11B-Vision",
|
|
"unsloth/Llama-3.2-11B-Vision-bnb-4bit",
|
|
),
|
|
"unsloth/Llama-3.2-90B-Vision-unsloth-bnb-4bit" : (
|
|
"unsloth/Llama-3.2-90B-Vision",
|
|
"meta-llama/Llama-3.2-90B-Vision",
|
|
"unsloth/Llama-3.2-90B-Vision-bnb-4bit",
|
|
),
|
|
"unsloth/Pixtral-12B-2409-unsloth-bnb-4bit" : (
|
|
"unsloth/Pixtral-12B-2409",
|
|
"mistralai/Pixtral-12B-2409",
|
|
"unsloth/Pixtral-12B-2409-bnb-4bit",
|
|
),
|
|
"unsloth/Pixtral-12B-2409-Base-bnb-4bit" : (
|
|
"unsloth/Pixtral-12B-Base-2409",
|
|
"mistralai/Pixtral-12B-Base-2409",
|
|
),
|
|
"unsloth/llava-1.5-7b-hf-bnb-4bit" : (
|
|
"unsloth/llava-1.5-7b-hf",
|
|
"llava-hf/llava-1.5-7b-hf",
|
|
),
|
|
"unsloth/llava-v1.6-mistral-7b-hf-bnb-4bit" : (
|
|
"unsloth/llava-v1.6-mistral-7b-hf",
|
|
"llava-hf/llava-v1.6-mistral-7b-hf",
|
|
),
|
|
"unsloth/Llama-3.1-Tulu-3-8B-bnb-4bit" : (
|
|
"unsloth/Llama-3.1-Tulu-3-8B",
|
|
"allenai/Llama-3.1-Tulu-3-8B",
|
|
),
|
|
"unsloth/Llama-3.1-Tulu-3-70B-bnb-4bit" : (
|
|
"unsloth/Llama-3.1-Tulu-3-70B",
|
|
"allenai/Llama-3.1-Tulu-3-70B",
|
|
),
|
|
"unsloth/QwQ-32B-Preview-bnb-4bit" : (
|
|
"unsloth/QwQ-32B-Preview",
|
|
"Qwen/QwQ-32B-Preview",
|
|
),
|
|
}
|
|
|
|
INT_TO_FLOAT_MAPPER = {}
|
|
FLOAT_TO_INT_MAPPER = {}
|
|
MAP_TO_UNSLOTH_16bit = {}
|
|
|
|
for key, values in __INT_TO_FLOAT_MAPPER.items():
|
|
INT_TO_FLOAT_MAPPER[key] = values[0]
|
|
|
|
for value in values:
|
|
FLOAT_TO_INT_MAPPER[value] = key
|
|
pass
|
|
|
|
# Map to Unsloth version for 16bit versions
|
|
if len(values) == 2:
|
|
if values[0].startswith("unsloth"):
|
|
MAP_TO_UNSLOTH_16bit[values[1]] = values[0]
|
|
MAP_TO_UNSLOTH_16bit[values[1].lower()] = values[0]
|
|
pass
|
|
elif len(values) == 3:
|
|
# Dynamic Unsloth quantization
|
|
if values[0].startswith("unsloth"):
|
|
MAP_TO_UNSLOTH_16bit[values[1]] = values[0]
|
|
MAP_TO_UNSLOTH_16bit[values[1].lower()] = values[0]
|
|
MAP_TO_UNSLOTH_16bit[values[2]] = values[0]
|
|
MAP_TO_UNSLOTH_16bit[values[2].lower()] = values[0]
|
|
pass
|
|
pass
|
|
|
|
# Get lowercased
|
|
lowered_key = key.lower()
|
|
INT_TO_FLOAT_MAPPER[lowered_key] = values[0].lower()
|
|
|
|
for value in values:
|
|
FLOAT_TO_INT_MAPPER[value.lower()] = lowered_key
|
|
pass
|
|
pass
|