Instructions to use duyntnet/Qwen2-7B-Instruct-imatrix-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use duyntnet/Qwen2-7B-Instruct-imatrix-GGUF with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="duyntnet/Qwen2-7B-Instruct-imatrix-GGUF")# pip install -U transformers accelerate # Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("duyntnet/Qwen2-7B-Instruct-imatrix-GGUF", device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use duyntnet/Qwen2-7B-Instruct-imatrix-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "duyntnet/Qwen2-7B-Instruct-imatrix-GGUF" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "duyntnet/Qwen2-7B-Instruct-imatrix-GGUF", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/duyntnet/Qwen2-7B-Instruct-imatrix-GGUF
- SGLang
How to use duyntnet/Qwen2-7B-Instruct-imatrix-GGUF with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "duyntnet/Qwen2-7B-Instruct-imatrix-GGUF" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "duyntnet/Qwen2-7B-Instruct-imatrix-GGUF", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "duyntnet/Qwen2-7B-Instruct-imatrix-GGUF" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "duyntnet/Qwen2-7B-Instruct-imatrix-GGUF", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Docker Model Runner
How to use duyntnet/Qwen2-7B-Instruct-imatrix-GGUF with Docker Model Runner:
docker model run hf.co/duyntnet/Qwen2-7B-Instruct-imatrix-GGUF
|
Download README.md from duyntnet/Qwen2-7B-Instruct-imatrix-GGUF: direct link, hf CLI and curl.
- Browser
- Download file 3.82 kB
-
https://huggingface.co/duyntnet/Qwen2-7B-Instruct-imatrix-GGUF/resolve/main/README.md
- Command line
-
hf download hf://duyntnet/Qwen2-7B-Instruct-imatrix-GGUF/README.md
-
curl -L -o README.md https://huggingface.co/duyntnet/Qwen2-7B-Instruct-imatrix-GGUF/resolve/main/README.md
3.82 kB
| license: other | |
| language: | |
| - en | |
| pipeline_tag: text-generation | |
| inference: false | |
| tags: | |
| - transformers | |
| - gguf | |
| - imatrix | |
| - Qwen2-7B-Instruct | |
| Quantizations of https://huggingface.co/Qwen/Qwen2-7B-Instruct | |
| **Note: you should use latest llama.cpp version with -fa switch to avoid garbage output.** | |
| # From original readme | |
| ## Requirements | |
| The code of Qwen2 has been in the latest Hugging face transformers and we advise you to install `transformers>=4.37.0`, or you might encounter the following error: | |
| ``` | |
| KeyError: 'qwen2' | |
| ``` | |
| ## Quickstart | |
| Here provides a code snippet with `apply_chat_template` to show you how to load the tokenizer and model and how to generate contents. | |
| ```python | |
| from transformers import AutoModelForCausalLM, AutoTokenizer | |
| device = "cuda" # the device to load the model onto | |
| model = AutoModelForCausalLM.from_pretrained( | |
| "Qwen/Qwen2-7B-Instruct", | |
| torch_dtype="auto", | |
| device_map="auto" | |
| ) | |
| tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen2-7B-Instruct") | |
| prompt = "Give me a short introduction to large language model." | |
| messages = [ | |
| {"role": "system", "content": "You are a helpful assistant."}, | |
| {"role": "user", "content": prompt} | |
| ] | |
| text = tokenizer.apply_chat_template( | |
| messages, | |
| tokenize=False, | |
| add_generation_prompt=True | |
| ) | |
| model_inputs = tokenizer([text], return_tensors="pt").to(device) | |
| generated_ids = model.generate( | |
| model_inputs.input_ids, | |
| max_new_tokens=512 | |
| ) | |
| generated_ids = [ | |
| output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids) | |
| ] | |
| response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0] | |
| ``` | |
| ### Processing Long Texts | |
| To handle extensive inputs exceeding 32,768 tokens, we utilize [YARN](https://arxiv.org/abs/2309.00071), a technique for enhancing model length extrapolation, ensuring optimal performance on lengthy texts. | |
| For deployment, we recommend using vLLM. You can enable the long-context capabilities by following these steps: | |
| 1. **Install vLLM**: You can install vLLM by running the following command. | |
| ```bash | |
| pip install "vllm>=0.4.3" | |
| ``` | |
| Or you can install vLLM from [source](https://github.com/vllm-project/vllm/). | |
| 2. **Configure Model Settings**: After downloading the model weights, modify the `config.json` file by including the below snippet: | |
| ```json | |
| { | |
| "architectures": [ | |
| "Qwen2ForCausalLM" | |
| ], | |
| // ... | |
| "vocab_size": 152064, | |
| // adding the following snippets | |
| "rope_scaling": { | |
| "factor": 4.0, | |
| "original_max_position_embeddings": 32768, | |
| "type": "yarn" | |
| } | |
| } | |
| ``` | |
| This snippet enable YARN to support longer contexts. | |
| 3. **Model Deployment**: Utilize vLLM to deploy your model. For instance, you can set up an openAI-like server using the command: | |
| ```bash | |
| python -m vllm.entrypoints.openai.api_server --served-model-name Qwen2-7B-Instruct --model path/to/weights | |
| ``` | |
| Then you can access the Chat API by: | |
| ```bash | |
| curl http://localhost:8000/v1/chat/completions \ | |
| -H "Content-Type: application/json" \ | |
| -d '{ | |
| "model": "Qwen2-7B-Instruct", | |
| "messages": [ | |
| {"role": "system", "content": "You are a helpful assistant."}, | |
| {"role": "user", "content": "Your Long Input Here."} | |
| ] | |
| }' | |
| ``` | |
| For further usage instructions of vLLM, please refer to our [Github](https://github.com/QwenLM/Qwen2). | |
| **Note**: Presently, vLLM only supports static YARN, which means the scaling factor remains constant regardless of input length, **potentially impacting performance on shorter texts**. We advise adding the `rope_scaling` configuration only when processing long contexts is required. |