This is the Mistral version of
Qwen2-7B-Instruct model by Alibaba Cloud.
The original codebase can be found at: (
https://github.com/hiyouga/LLaMA-Factory/blob/main/tests/llamafy_qwen.py).
I have made modifications to make it compatible with qwen2.
This model is converted with
https://github.com/Minami-su/character_AI_open/blob/main/mistral_qwen2.py
1.Before using this model, you need to modify modeling_mistral.py in transformers library
2.vim /root/anaconda3/envs/train/lib/python3.9/site-packages/transformers/models/mistral/modeling_mistral.py
Compared to qwen2 llamafy,qwen2 mistral can use sliding window attention,qwen2 mistral is faster than qwen2 llamafy, and the context length is better
1
2from transformers import AutoModelForCausalLM, AutoTokenizer, TextStreamer
3tokenizer = AutoTokenizer.from_pretrained("Minami-su/Qwen2-7B-Instruct-mistral")
4model = AutoModelForCausalLM.from_pretrained("Minami-su/Qwen2-7B-Instruct-mistral", torch_dtype="auto", device_map="auto")
5streamer = TextStreamer(tokenizer, skip_prompt=True, skip_special_tokens=True)
6
7messages = [
8 {"role": "user", "content": "Who are you?"}
9]
10inputs = tokenizer.apply_chat_template(messages, tokenize=True, add_generation_prompt=True, return_tensors="pt")
11inputs = inputs.to("cuda")
12generate_ids = model.generate(inputs,max_length=2048, streamer=streamer)
13