alt.freeweights.qwen / Qwen2.5-7B-Instruct-1M
From: Qwen <huggingface.co/Qwen>Newsgroups: alt.freeweights.qwenSubject:

Qwen2.5-7B-Instruct-1M

Date: 2026-11-15Commit: e28526fSigned: 2DC28CC7B26A283B ✓

Text generation model with 7.6B parameters. Safetensors weights, 15.2 GB in all. Published by Qwen under Apache-2.0.

7.6B params15.2GBQwen2.5-7B-Instruct-1Msafetensorspermissive
FactsParams7.6BSize15.2 GBFormatssafetensorsTasktext generationLicenseApache-2.0From sourcepermissive
$ fw get Qwen/Qwen2.5-7B-Instruct-1M
# manifest sha256 4b82d3ef0448… · 15.2 GB · 15 files
$ fw verify ./Qwen2.5-7B-Instruct-1M Qwen/Qwen2.5-7B-Instruct-1M
From sourceHosted (signed)Qwen/Qwen2.5-7B-Instruct-1MLast check: 2026-11-15 02:31 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Fine-tune of Qwen2.5-7B.

Works with

Overview

Size
15.2 GB
Weights
15.2 GB (safetensors)
Parameters
7.6B
Formats
safetensors
Task
text generation
License
Apache-2.0 (permissive)
Files
15, each with a sha256
Publisher
Qwen
Added
2026-11-15
Section
alt.freeweights.qwen
Lineage

Original release from the publisher.

Base model: Qwen/Qwen2.5-7B

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 02:31 UTCpassed

Model card

From the publisher at commit e28526f. Shown as plain text with links; images open at the publisher.

Qwen2.5-7B-Instruct-1M#

Chat

Introduction#

Qwen2.5-1M is the long-context version of the Qwen2.5 series models, supporting a context length of up to 1M tokens. Compared to the Qwen2.5 128K version, Qwen2.5-1M demonstrates significantly improved performance in handling long-context tasks while maintaining its capability in short tasks.

The model has the following features:

  • Type: Causal Language Models
  • Training Stage: Pretraining & Post-training
  • Architecture: transformers with RoPE, SwiGLU, RMSNorm, and Attention QKV bias
  • Number of Parameters: 7.61B
  • Number of Paramaters (Non-Embedding): 6.53B
  • Number of Layers: 28
  • Number of Attention Heads (GQA): 28 for Q and 4 for KV
  • Context Length: Full 1,010,000 tokens and generation 8192 tokens
    • We recommend deploying with our custom vLLM, which introduces sparse attention and length extrapolation methods to ensure efficiency and accuracy for long-context tasks. For specific guidance, refer to this section.
    • You can also use the previous framework that supports Qwen2.5 for inference, but accuracy degradation may occur for sequences exceeding 262,144 tokens.

For more details, please refer to our blog, GitHub, Technical Report, and Documentation.

Requirements#

The code of Qwen2.5 has been in the latest Hugging face transformers and we advise you to use the latest version of transformers.

With transformers<4.37.0, you will 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.

from transformers import AutoModelForCausalLM, AutoTokenizer

model_name = "Qwen/Qwen2.5-7B-Instruct-1M"

model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype="auto",
    device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)

prompt = "Give me a short introduction to large language model."
messages = [
    {"role": "system", "content": "You are Qwen, created by Alibaba Cloud. 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(model.device)

generated_ids = model.generate(
    **model_inputs,
    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 Ultra Long Texts#

To enhance processing accuracy and efficiency for long sequences, we have developed an advanced inference framework based on vLLM, incorporating sparse attention and length extrapolation. This approach significantly improves model generation performance for sequences exceeding 256K tokens and achieves a 3 to 7 times speedup for sequences up to 1M tokens.

Here we provide step-by-step instructions for deploying the Qwen2.5-1M models with our framework.

1. System Preparation#

To achieve the best performance, we recommend using GPUs with Ampere or Hopper architecture, which support optimized kernels.

Ensure your system meets the following requirements:

  • CUDA Version: 12.1 or 12.3
  • Python Version: >=3.9 and <=3.12

VRAM Requirements:

  • For processing 1 million-token sequences:
    • Qwen2.5-7B-Instruct-1M: At least 120GB VRAM (total across GPUs).
    • Qwen2.5-14B-Instruct-1M: At least 320GB VRAM (total across GPUs).

If your GPUs do not have sufficient VRAM, you can still use Qwen2.5-1M for shorter tasks.

2. Install Dependencies#

For now, you need to clone the vLLM repository from our custom branch and install it manually. We are working on getting our branch merged into the main vLLM project.

git clone -b dev/dual-chunk-attn git@github.com:QwenLM/vllm.git
cd vllm
pip install -e . -v
3. Launch vLLM#

vLLM supports offline inference or launch an openai-like server.

Example of Offline Inference

from transformers import AutoTokenizer
from vllm import LLM, SamplingParams

# Initialize the tokenizer
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen2.5-7B-Instruct-1M")

# Pass the default decoding hyperparameters of Qwen2.5-7B-Instruct
# max_tokens is for the maximum length for generation.
sampling_params = SamplingParams(temperature=0.7, top_p=0.8, repetition_penalty=1.05, max_tokens=512)

# Input the model name or path. See below for parameter explanation (after the example of openai-like server).
llm = LLM(model="Qwen/Qwen2.5-7B-Instruct-1M",
    tensor_parallel_size=4,
    max_model_len=1010000,
    enable_chunked_prefill=True,
    max_num_batched_tokens=131072,
    enforce_eager=True,
    # quantization="fp8", # Enabling FP8 quantization for model weights can reduce memory usage.
)

# Prepare your prompts
prompt = "Tell me something about large language models."
messages = [
    {"role": "system", "content": "You are Qwen, created by Alibaba Cloud. You are a helpful assistant."},
    {"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True
)

# generate outputs
outputs = llm.generate([text], sampling_params)

# Print the outputs.
for output in outputs:
    prompt = output.prompt
    generated_text = output.outputs[0].text
    print(f"Prompt: {prompt!r}, Generated text: {generated_text!r}")

Example of Openai-like Server

vllm serve Qwen/Qwen2.5-7B-Instruct-1M \
  --tensor-parallel-size 4 \
  --max-model-len 1010000 \
  --enable-chunked-prefill --max-num-batched-tokens 131072 \
  --enforce-eager \
  --max-num-seqs 1

# --quantization fp8  # Enabling FP8 quantization for model weights can reduce memory usage.

Then you can use curl or python to interact with the deployed model.

Parameter Explanations:

  • --tensor-parallel-size
    • Set to the number of GPUs you are using. Max 4 GPUs for the 7B model, and 8 GPUs for the 14B model.
  • --max-model-len
    • Defines the maximum input sequence length. Reduce this value if you encounter Out of Memory issues.
  • --max-num-batched-tokens
    • Sets the chunk size in Chunked Prefill. A smaller value reduces activation memory usage but may slow down inference.
    • Recommend 131072 for optimal performance.
  • --max-num-seqs
    • Limits concurrent sequences processed.

You can also refer to our Documentation for usage of vLLM.

Troubleshooting:#
  1. Encountering the error: "The model's max sequence length (xxxxx) is larger than the maximum number of tokens that can be stored in the KV cache." The VRAM reserved for the KV cache is insufficient. Consider reducing the max_model_len or increasing the tensor_parallel_size. Alternatively, you can reduce max_num_batched_tokens, although this may significantly slow down inference.
  2. Encountering the error: "torch.OutOfMemoryError: CUDA out of memory." The VRAM reserved for activation weights is insufficient. You can try setting gpu_memory_utilization to 0.85 or lower, but be aware that this might reduce the VRAM available for the KV cache.
  3. Encountering the error: "Input prompt (xxxxx tokens) + lookahead slots (0) is too long and exceeds the capacity of the block manager." The input is too lengthy. Consider using a shorter sequence or increasing the max_model_len.

Evaluation & Performance#

Detailed evaluation results are reported in this 📑 blog and our technical report.

Citation#

If you find our work helpful, feel free to give us a cite.

@misc{qwen2.5-1m,
    title = {Qwen2.5-1M: Deploy Your Own Qwen with Context Length up to 1M Tokens},
    url = {https://qwenlm.github.io/blog/qwen2.5-1m/},
    author = {Qwen Team},
    month = {January},
    year = {2025}
}

@article{qwen2.5,
      title={Qwen2.5-1M Technical Report}, 
      author={An Yang and Bowen Yu and Chengyuan Li and Dayiheng Liu and Fei Huang and Haoyan Huang and Jiandong Jiang and Jianhong Tu and Jianwei Zhang and Jingren Zhou and Junyang Lin and Kai Dang and Kexin Yang and Le Yu and Mei Li and Minmin Sun and Qin Zhu and Rui Men and Tao He and Weijia Xu and Wenbiao Yin and Wenyuan Yu and Xiafei Qiu and Xingzhang Ren and Xinlong Yang and Yong Li and Zhiying Xu and Zipeng Zhang},
      journal={arXiv preprint arXiv:2501.15383},
      year={2025}
}

Files

15 files · 15.2 GBWeights 15.2 GB (safetensors). Sizes and sha256 from the signed manifest.
Hide all 15 files with their sha256
FileSizesha256
.gitattributes1.52 KB11ad7efa24975ee4b0c3c3a38ed18737f0658a5f75a0a96787b576a78a023361
LICENSE11.3 KB832dd9e00a68dd83b3c3fb9f5588dad7dcf337a0db50f7d9483f310cd292e92e
README.md9.28 KB926c67523a033cc14b0db4f487ef67babbc6eb4c02d2cacd6d487f249f3c8bdd
config.json825 B3836d4f7ef434824ffbe23d3a7eefbdd1a40f4db9809f9a69a3f9d26d3f2152e
generation_config.json243 B3a8f9087e486054c8a4a08dae2e5a3ba62e23da212b5b8c08bc42cb983c3459f
merges.txt1.67 MB599bab54075088774b1733fde865d5bd747cbcc7a547c5bc12610e874e26f5e3
model-00001-of-00004.safetensors3.95 GBaae4b10f414cf2e954deba8594d4d5519c0f9346994da68193a108f4965ca28d
model-00002-of-00004.safetensors3.86 GB360cf2d2dfc3367356e43dcb2a2a5194fff061ec36a0a3f04be140a5acb946fe
model-00003-of-00004.safetensors3.86 GBec41a7ece5fb466743b36a3fc01d2277d4f4ed5ee280c9e36bfe21d735702256
model-00004-of-00004.safetensors3.56 GB9543b6ff861c85cd52c8862f5bf0de45182e389ace65f0e0012849f5ddbae1d6
model.safetensors.index.json27.8 KB624bf7c47cd12468fdc16e38a47cf4f19e0415b859a223ba3c027eed2f0e1028
sparse_attention_config.json47.9 KBe4d18f0867f47b57323b064f10f9d832e3749b50bdf6061d984f58797a8e8125
tokenizer.json7.03 MBc0382117ea329cdf097041132f6d735924b697924d6f6fc3945713e96ce87539
tokenizer_config.json7.23 KB26526103465e01638f5beee912faa5f863ddfb86fc15864012f785413991aa82
vocab.json2.78 MBca10d7e9fb3ed18575dd1e277a2579c16d108e32f27439684afa0e10b1440910
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
e28526f7bb pinned now2026-11-15 02:31 UTC15 files · 15.2 GB

Use it

$ fw get Qwen/Qwen2.5-7B-Instruct-1M
# manifest sha256 4b82d3ef0448… · 15.2 GB · 15 files
$ fw verify ./Qwen2.5-7B-Instruct-1M Qwen/Qwen2.5-7B-Instruct-1M
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/Qwen/Qwen2.5-7B-Instruct-1M.json --dir ./Qwen2.5-7B-Instruct-1M $ python3 fw.py verify ./Qwen2.5-7B-Instruct-1M ./Qwen__Qwen2.5-7B-Instruct-1M.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download Qwen/Qwen2.5-7B-Instruct-1M --revision e28526f7bb80e2a9c8af03b831a9af3812f18fba --local-dir ./Qwen2.5-7B-Instruct-1M
transformersLoad the weights in Python.
import os os.environ["HF_ENDPOINT"] = "https://freeweights.allternit.com" from transformers import AutoModelForCausalLM, AutoTokenizer tok = AutoTokenizer.from_pretrained("Qwen/Qwen2.5-7B-Instruct-1M", revision="e28526f7bb80e2a9c8af03b831a9af3812f18fba") model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen2.5-7B-Instruct-1M", revision="e28526f7bb80e2a9c8af03b831a9af3812f18fba", device_map="auto")
vLLMServe an OpenAI-compatible API.
$ HF_ENDPOINT=https://freeweights.allternit.com vllm serve Qwen/Qwen2.5-7B-Instruct-1M --revision e28526f7bb80e2a9c8af03b831a9af3812f18fba

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
LICENSE
Text sha256
832dd9e00a68dd83b3c3fb9f5588dad7dcf337a0db50f7d9483f310cd292e92e
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: Qwen <huggingface.co/Qwen>Newsgroups: alt.freeweights.qwenSubject: Qwen2.5-7B-Instruct-1MDate: 2026-11-15Commit: e28526fSigned: 2DC28CC7B26A283B ✓
Upstream
Qwen/Qwen2.5-7B-Instruct-1M
Pinned commit
e28526f7bb80e2a9c8af03b831a9af3812f18fba
Manifest
Qwen2.5-7B-Instruct-1M.json · .minisig
Manifest sha256
4b82d3ef0448325ffdec3c78a22660c069432172fbbe20853451a018a13557a4
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 02:31 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/Qwen/Qwen2.5-7B-Instruct-1M.json $ curl -O https://freeweights.allternit.com/manifests/Qwen/Qwen2.5-7B-Instruct-1M.json.minisig $ minisign -Vm Qwen2.5-7B-Instruct-1M.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

Parent

Qwen/Qwen2.5-7B · this model is a finetune of it

2 models in the catalog name this one as their parent.

Quantizations
2
Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download Qwen/Qwen2.5-7B-Instruct-1M
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. Qwen2.5-7B-Instruct-1M.json. Provenance. Takedown history: none.

Variants

2 quantized or adapter builds of Qwen2.5-7B-Instruct-1M. Each has its own license check and page.

From: BAAI <huggingface.co/BAAI>Subject: Aquila-VL-2B-llava-qwen
From: Perciqa <huggingface.co/Perciqa>Subject: Aurora-Code-1
From: BAAI <huggingface.co/BAAI>Subject: bge-reasoner-embed-qwen3-8b-0923
From: amazon <huggingface.co/amazon>Subject: BMOJOF-primed-HQwen3-8B-Instruct
From: nbeerbower <huggingface.co/nbeerbower>Subject: Bubba-Qwen3.6-27B-LoRA
From: bartowski <huggingface.co/bartowski>Subject: bytkim_Qwen3.8-27B-pi-GGUF