模型简介
模型特点
模型能力
使用案例
许可证:Apache-2.0
许可证链接:https://huggingface.co/Qwen/Qwen2.5-1.5B-Instruct/blob/main/LICENSE
支持语言:
- 中文
- 英语
- 法语
- 西班牙语
- 葡萄牙语
- 德语
- 意大利语
- 俄语
- 日语
- 韩语
- 越南语
- 泰语
- 阿拉伯语
任务标签:文本生成
基础模型:Qwen/Qwen2.5-1.5B
标签: - 对话
库名称:transformers
Qwen2.5-1.5B-Instruct GGUF模型
选择正确的模型格式
选择合适的模型格式取决于您的硬件能力和内存限制。
BF16(Brain Float 16)——如果支持BF16加速则使用
- 一种16位浮点格式,专为更快计算而设计,同时保持良好的精度。
- 提供与FP32相似的动态范围,但内存占用更低。
- 如果您的硬件支持BF16加速(请检查设备规格),则推荐使用。
- 与FP32相比,适合高性能推理且内存占用更少。
📌 使用BF16的情况:
✔ 您的硬件原生支持BF16(例如较新的GPU、TPU)。
✔ 您希望在节省内存的同时获得更高精度。
✔ 您计划将模型重新量化为其他格式。
📌 避免使用BF16的情况:
❌ 您的硬件不支持BF16(可能会回退到FP32,运行速度变慢)。
❌ 您需要与缺乏BF16优化的旧设备兼容。
F16(Float 16)——比BF16支持更广泛
- 一种16位浮点格式,精度较高,但数值范围比BF16小。
- 适用于大多数支持FP16加速的设备(包括许多GPU和部分CPU)。
- 数值精度略低于BF16,但通常足以满足推理需求。
📌 使用F16的情况:
✔ 您的硬件支持FP16但不支持BF16。
✔ 您需要在速度、内存占用和准确性之间取得平衡。
✔ 您在GPU或其他针对FP16计算优化的设备上运行。
📌 避免使用F16的情况:
❌ 您的设备缺乏原生FP16支持(可能运行速度低于预期)。
❌ 您的内存有限。
量化模型(Q4_K、Q6_K、Q8等)——适用于CPU和低显存推理
量化可减少模型大小和内存占用,同时尽可能保持准确性。
- 低位模型(Q4_K) → 内存占用最小,但精度可能较低。
- 高位模型(Q6_K、Q8_0) → 准确性更好,但需要更多内存。
📌 使用量化模型的情况:
✔ 您在CPU上运行推理,需要优化模型。
✔ 您的设备显存较低,无法加载全精度模型。
✔ 您希望减少内存占用,同时保持合理的准确性。
📌 避免使用量化模型的情况:
❌ 您需要最高精度(全精度模型更适合)。
❌ 您的硬件有足够显存支持更高精度格式(BF16/F16)。
超低位量化(IQ3_XS、IQ3_S、IQ3_M、Q4_K、Q4_0)
这些模型针对极致内存效率进行了优化,适合低功耗设备或大规模部署,其中内存是关键限制因素。
-
IQ3_XS:超低位量化(3位),极致内存效率。
- 适用场景:适合超低内存设备,甚至Q4_K也过大时。
- 权衡:与高位量化相比,精度较低。
-
IQ3_S:小块尺寸,最大化内存效率。
- 适用场景:适合低内存设备,IQ3_XS过于激进时。
-
IQ3_M:中等块尺寸,比IQ3_S精度更高。
- 适用场景:适合低内存设备,IQ3_S限制过多时。
-
Q4_K:4位量化,块优化以提高准确性。
- 适用场景:适合低内存设备,Q6_K过大时。
-
Q4_0:纯4位量化,针对ARM设备优化。
- 适用场景:适合基于ARM的设备或低内存环境。
模型格式选择摘要表
模型格式 | 精度 | 内存占用 | 设备要求 | 最佳使用场景 |
---|---|---|---|---|
BF16 | 最高 | 高 | 支持BF16的GPU/CPU | 高速推理,内存占用较低 |
F16 | 高 | 高 | 支持FP16的设备 | GPU推理,BF16不可用时 |
Q4_K | 中低 | 低 | CPU或低显存设备 | 内存受限环境的最佳选择 |
Q6_K | 中 | 中等 | 内存较多的CPU | 量化模型中精度较高 |
Q8_0 | 高 | 中等 | 显存足够的CPU或GPU | 量化模型中精度最高 |
IQ3_XS | 极低 | 极低 | 超低内存设备 | 极致内存效率,精度较低 |
Q4_0 | 低 | 低 | ARM或低内存设备 | llama.cpp可针对ARM设备优化 |
包含文件及详情
Qwen2.5-1.5B-Instruct-bf16.gguf
- 模型权重以BF16保存。
- 如果您想将模型重新量化为其他格式,请使用此文件。
- 如果您的设备支持BF16加速,则最佳选择。
Qwen2.5-1.5B-Instruct-f16.gguf
- 模型权重以F16保存。
- 如果您的设备支持FP16,尤其是BF16不可用时使用。
Qwen2.5-1.5B-Instruct-bf16-q8_0.gguf
- 输出和嵌入保持为BF16。
- 其他层量化为Q8_0。
- 如果您的设备支持BF16且需要量化版本,请使用此文件。
Qwen2.5-1.5B-Instruct-f16-q8_0.gguf
- 输出和嵌入保持为F16。
- 其他层量化为Q8_0。
Qwen2.5-1.5B-Instruct-q4_k.gguf
- 输出和嵌入量化为Q8_0。
- 其他层量化为Q4_K。
- 适合内存有限的CPU推理。
Qwen2.5-1.5B-Instruct-q4_k_s.gguf
- 最小的Q4_K变体,内存占用更少,但精度较低。
- 适合极低内存配置。
Qwen2.5-1.5B-Instruct-q6_k.gguf
- 输出和嵌入量化为Q8_0。
- 其他层量化为Q6_K。
Qwen2.5-1.5B-Instruct-q8_0.gguf
- 完全Q8量化模型,精度更高。
- 需要更多内存,但提供更高精度。
Qwen2.5-1.5B-Instruct-iq3_xs.gguf
- IQ3_XS量化,针对极致内存效率优化。
- 适合超低内存设备。
Qwen2.5-1.5B-Instruct-iq3_m.gguf
- IQ3_M量化,提供中等块尺寸以提高精度。
- 适合低内存设备。
Qwen2.5-1.5B-Instruct-q4_0.gguf
- 纯Q4_0量化,针对ARM设备优化。
- 适合低内存环境。
- 如需更高精度,推荐使用IQ4_NL。
🚀 如果您觉得这些模型有用
❤ 请点击“点赞”支持!
帮助测试我的AI驱动的网络监控助手,支持量子安全检测:
👉 免费网络监控工具
💬 测试方法:
- 点击聊天图标(页面右下角)
- 选择AI助手类型:
TurboLLM
(GPT-4-mini)FreeLLM
(开源模型)TestLLM
(实验性CPU专用)
测试内容
我正在探索小型开源模型在AI网络监控中的极限,具体包括:
- 针对实时网络服务的函数调用
- 模型小型化的同时仍能处理:
- 自动化Nmap扫描
- 量子安全检测
- Metasploit集成
🟡 TestLLM——当前实验模型(llama.cpp,6 CPU线程):
- ✅ 零配置设置
- ⏳ 30秒加载时间(推理较慢,但无API成本)
- 🔧 寻求帮助! 如果您对边缘设备AI感兴趣,欢迎合作!
其他助手
🟢 TurboLLM——使用gpt-4-mini实现:
- 实时网络诊断
- 自动化渗透测试(Nmap/Metasploit)
- 🔑 通过下载免费网络监控代理获取更多令牌
🔵 HugLLM——开源模型(≈80亿参数):
- 比TurboLLM多2倍令牌
- AI驱动的日志分析
- 🌐 基于Hugging Face Inference API运行
💡 测试示例命令:
"提供我网站SSL证书的信息"
"检查我的服务器是否使用量子安全加密通信"
"运行快速Nmap漏洞测试"
Qwen2.5-1.5B-Instruct
简介
Qwen2.5是Qwen大语言模型的最新系列。对于Qwen2.5,我们发布了从0.5到720亿参数的基础语言模型和指令调优语言模型。Qwen2.5在Qwen2的基础上带来了以下改进:
- 知识量显著增加,在编程和数学方面的能力大幅提升,这得益于我们在这些领域的专家模型。
- 在指令遵循、生成长文本(超过8K tokens)、理解结构化数据(例如表格)和生成结构化输出(尤其是JSON)方面有显著改进。对系统提示的多样性更具弹性,增强了聊天机器人的角色扮演实现和条件设置。
- 支持长上下文,最高可达128K tokens,并可生成长达8K tokens的内容。
- 支持29种以上语言,包括中文、英语、法语、西班牙语、葡萄牙语、德语、意大利语、俄语、日语、韩语、越南语、泰语、阿拉伯语等。
此仓库包含指令调优的1.5B Qwen2.5模型,具有以下特点:
- 类型:因果语言模型
- 训练阶段:预训练和后训练
- 架构:基于transformers,包含RoPE、SwiGLU、RMSNorm、Attention QKV偏置和绑定词嵌入
- 参数数量:15.4亿
- 非嵌入参数数量:13.1亿
- 层数:28
- 注意力头数(GQA):Q为12,KV为2
- 上下文长度:完整32,768 tokens,生成8,192 tokens
要求
Qwen2.5的代码已集成到最新版Hugging Face transformers
中,建议使用最新版transformers
。
如果使用transformers<4.37.0
,会遇到以下错误:
KeyError: 'qwen2'
快速开始
以下代码片段展示了如何使用apply_chat_template
加载分词器和模型,并生成内容。
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "Qwen/Qwen2.5-1.5B-Instruct"
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
prompt = "简要介绍一下大语言模型。"
messages = [
{"role": "system", "content": "你是由阿里云创建的Qwen。你是一个乐于助人的助手。"},
{"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]
评估与性能
详细评估结果请参阅📑博客。
关于GPU内存需求和相应吞吐量的结果,请参见此处。
引用
如果您觉得我们的工作有帮助,欢迎引用。
@misc{qwen2.5,
title = {Qwen2.5: A Party of Foundation Models},
url = {https://qwenlm.github.io/blog/qwen2.5/},
author = {Qwen Team},
month = {September},
year = {2024}
}
@article{qwen2,
title={Qwen2 Technical Report},
author={An Yang and Baosong Yang and Binyuan Hui and Bo Zheng and Bowen Yu and Chang Zhou and Chengpeng Li and Chengyuan Li and Dayiheng Liu and Fei Huang and Guanting Dong and Haoran Wei and Huan Lin and Jialong Tang and Jialin Wang and Jian Yang and Jianhong Tu and Jianwei Zhang and Jianxin Ma and Jin Xu and Jingren Zhou and Jinze Bai and Jinzheng He and Junyang Lin and Kai Dang and Keming Lu and Keqin Chen and Kexin Yang and Mei Li and Mingfeng Xue and Na Ni and Pei Zhang and Peng Wang and Ru Peng and Rui Men and Ruize Gao and Runji Lin and Shijie Wang and Shuai Bai and Sinan Tan and Tianhang Zhu and Tianhao Li and Tianyu Liu and Wenbin Ge and Xiaodong Deng and Xiaohuan Zhou and Xingzhang Ren and Xinyu Zhang and Xipin Wei and Xuancheng Ren and Yang Fan and Yang Yao and Yichang Zhang and Yu Wan and Yunfei Chu and Yuqiong Liu and Zeyu Cui and Zhenru Zhang and Zhihao Fan},
journal={arXiv preprint arXiv:2407.10671},
year={2024}
}


