|
--- |
|
base_model: unsloth/phi-3.5-mini-instruct-bnb-4bit |
|
language: |
|
- en |
|
license: apache-2.0 |
|
tags: |
|
- text-generation-inference |
|
- transformers |
|
- unsloth |
|
- llama |
|
- trl |
|
pipeline_tag: text-generation |
|
--- |
|
## Model Summary |
|
|
|
EpistemeAI/Iceball-Phi-3.5-mini-instruct-shareGPT-v1.0 is a lightweight, state-of-the-art open model built upon datasets used for Phi-3 - synthetic data and filtered publicly available websites - with a focus on very high-quality, reasoning dense data. The model belongs to the Phi-3 model family and supports 128K token context length. The model underwent a rigorous enhancement process, incorporating both supervised fine-tuning, proximal policy optimization, and direct preference optimization to ensure precise instruction adherence and robust safety measures. |
|
|
|
<script type='text/javascript' src='https://storage.ko-fi.com/cdn/widget/Widget_2.js'></script><script type='text/javascript'>kofiwidget2.init('Support Me on Ko-fi', '#29abe0', 'C0C8127LWN');kofiwidget2.draw();</script> |
|
|
|
|
|
π‘ [Phi-3 Portal](https://azure.microsoft.com/en-us/products/phi-3) <br> |
|
π° [Phi-3 Microsoft Blog](https://aka.ms/phi3.5-techblog) <br> |
|
π [Phi-3 Technical Report](https://arxiv.org/abs/2404.14219) <br> |
|
π©βπ³ [Phi-3 Cookbook](https://github.com/microsoft/Phi-3CookBook) <br> |
|
π₯οΈ [Try It](https://aka.ms/try-phi3.5mini) <br> |
|
|
|
**EpistemeAI/Iceball-Phi-3.5-mini-instruct-shareGPT-v1.0 - Phi-3.5**: [[mini-instruct]](https://huggingface.co/microsoft/Phi-3.5-mini-instruct); [[MoE-instruct]](https://huggingface.co/microsoft/Phi-3.5-MoE-instruct) ; [[vision-instruct]](https://huggingface.co/microsoft/Phi-3.5-vision-instruct) |
|
|
|
## Intended Uses |
|
|
|
### Primary Use Cases |
|
|
|
The model is intended for commercial and research use in multiple languages. The model provides uses for general purpose AI systems and applications which require: |
|
|
|
1) Memory/compute constrained environments |
|
2) Latency bound scenarios |
|
3) Strong reasoning (especially code, math and logic) |
|
|
|
Our model is designed to accelerate research on language and multimodal models, for use as a building block for generative AI powered features. |
|
|
|
## Usage |
|
|
|
### Requirements |
|
Phi-3 family has been integrated in the `4.43.0` version of `transformers`. The current `transformers` version can be verified with: `pip list | grep transformers`. |
|
|
|
Examples of required packages: |
|
``` |
|
flash_attn==2.5.8 |
|
torch==2.3.1 |
|
accelerate==0.31.0 |
|
transformers==4.43.0 |
|
``` |
|
|
|
Phi-3.5-mini-instruct is also available in [Azure AI Studio](https://aka.ms/try-phi3.5mini) |
|
|
|
### Tokenizer |
|
|
|
Phi-3.5-mini-Instruct supports a vocabulary size of up to `32064` tokens. The [tokenizer files](https://huggingface.co/microsoft/Phi-3.5-mini-instruct/blob/main/added_tokens.json) already provide placeholder tokens that can be used for downstream fine-tuning, but they can also be extended up to the model's vocabulary size. |
|
|
|
### Input Formats |
|
Given the nature of the training data, the Phi-3.5-mini-instruct model is best suited for prompts using the chat format as follows: |
|
|
|
``` |
|
<|system|> |
|
You are a helpful assistant.<|end|> |
|
<|user|> |
|
How to explain Internet for a medieval knight?<|end|> |
|
<|assistant|> |
|
``` |
|
|
|
### Loading the model locally |
|
After obtaining the Phi-3.5-mini-instruct model checkpoint, users can use this sample code for inference. |
|
|
|
```python |
|
import torch |
|
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline |
|
torch.random.manual_seed(0) |
|
model = AutoModelForCausalLM.from_pretrained( |
|
"EpistemeAI/Iceball-Phi-3.5-mini-instruct-shareGPT-v1.0", |
|
device_map="cuda", |
|
torch_dtype="auto", |
|
trust_remote_code=True, |
|
) |
|
tokenizer = AutoTokenizer.from_pretrained("EpistemeAI/Iceball-Phi-3.5-mini-instruct-shareGPT-v1.0") |
|
messages = [ |
|
{"role": "system", "content": "You are a helpful AI assistant."}, |
|
{"role": "user", "content": "Can you provide ways to eat combinations of bananas and dragonfruits?"}, |
|
{"role": "assistant", "content": "Sure! Here are some ways to eat bananas and dragonfruits together: 1. Banana and dragonfruit smoothie: Blend bananas and dragonfruits together with some milk and honey. 2. Banana and dragonfruit salad: Mix sliced bananas and dragonfruits together with some lemon juice and honey."}, |
|
{"role": "user", "content": "What about solving an 2x + 3 = 7 equation?"}, |
|
] |
|
pipe = pipeline( |
|
"text-generation", |
|
model=model, |
|
tokenizer=tokenizer, |
|
) |
|
generation_args = { |
|
"max_new_tokens": 500, |
|
"return_full_text": False, |
|
"temperature": 0.0, |
|
"do_sample": False, |
|
} |
|
output = pipe(messages, **generation_args) |
|
print(output[0]['generated_text']) |
|
``` |
|
|
|
Notes: If you want to use flash attention, call _AutoModelForCausalLM.from_pretrained()_ with _attn_implementation="flash_attention_2"_ |
|
|
|
|
|
# Uploaded model |
|
|
|
- **Developed by:** EpistemeAI |
|
- **License:** apache-2.0 |
|
- **Finetuned from model :** unsloth/phi-3.5-mini-instruct-bnb-4bit |
|
|
|
This llama model was trained 2x faster with [Unsloth](https://github.com/unslothai/unsloth) and Huggingface's TRL library. |
|
|
|
[<img src="https://raw.githubusercontent.com/unslothai/unsloth/main/images/unsloth%20made%20with%20love.png" width="200"/>](https://github.com/unslothai/unsloth) |