| Quantization made by Richard Erkhov. | |
| [Github](https://github.com/RichardErkhov) | |
| [Discord](https://discord.gg/pvy7H8DZMG) | |
| [Request more models](https://github.com/RichardErkhov/quant_request) | |
| phi-3-tiny-random - bnb 4bits | |
| - Model creator: https://huggingface.co/yujiepan/ | |
| - Original model: https://huggingface.co/yujiepan/phi-3-tiny-random/ | |
| Original model description: | |
| --- | |
| library_name: transformers | |
| pipeline_tag: text-generation | |
| inference: true | |
| widget: | |
| - text: Hello! | |
| example_title: Hello world | |
| group: Python | |
| --- | |
| This model is randomly initialized, using the config from [microsoft/Phi-3-mini-128k-instruct](https://huggingface.co/microsoft/Phi-3-mini-128k-instruct) but with smaller size. | |
| Note the model is in float16. | |
| Codes: | |
| ```python | |
| import transformers | |
| import torch | |
| import os | |
| from huggingface_hub import create_repo, upload_folder | |
| source_model_id = 'microsoft/Phi-3-mini-128k-instruct' | |
| save_path = '/tmp/yujiepan/phi-3-tiny-random' | |
| repo_id = 'yujiepan/phi-3-tiny-random' | |
| config = transformers.AutoConfig.from_pretrained( | |
| source_model_id, trust_remote_code=True) | |
| config.hidden_size = 16 | |
| config.intermediate_size = 32 | |
| config.num_attention_heads = 4 | |
| config.num_hidden_layers = 2 | |
| config.num_key_value_heads = 4 | |
| config.rope_scaling['long_factor'] = [1.0299, 1.0499] | |
| config.rope_scaling['short_factor'] = [1.05, 1.05] | |
| model = transformers.AutoModelForCausalLM.from_config( | |
| config, trust_remote_code=True) | |
| model = model.to(torch.float16) | |
| model.save_pretrained(save_path) | |
| tokenizer = transformers.AutoTokenizer.from_pretrained( | |
| source_model_id, trust_remote_code=True) | |
| tokenizer.save_pretrained(save_path) | |
| result = transformers.pipelines.pipeline( | |
| 'text-generation', | |
| model=model.float(), tokenizer=tokenizer)('Hello') | |
| print(result) | |
| os.system(f'ls -alh {save_path}') | |
| create_repo(repo_id, exist_ok=True) | |
| upload_folder(repo_id=repo_id, folder_path=save_path) | |
| from transformers import AutoProcessor | |
| AutoProcessor.from_pretrained(source_model_id, trust_remote_code=True).push_to_hub(repo_id) | |
| ``` | |