模型简介
模型特点
模型能力
使用案例
🚀 QwQ-32B-ArliAI-RpR-v4 GGUF模型
基于Qwen/QwQ-32B的文本生成模型
🚀 快速开始
本模型适用于文本生成任务,以下是使用不同格式模型的简要说明:
- 若你的硬件支持BF16加速,推荐使用
QwQ-32B-ArliAI-RpR-v4-bf16.gguf
。 - 若硬件支持FP16但不支持BF16,使用
QwQ-32B-ArliAI-RpR-v4-f16.gguf
。 - 对于内存受限的CPU推理,
QwQ-32B-ArliAI-RpR-v4-q4_k.gguf
是不错的选择。
详细的使用步骤和注意事项,请参考后续文档内容。
✨ 主要特性
- 超低比特量化:采用IQ-DynamicGate方法进行1 - 2比特量化,实现了精度自适应量化,提升了模型在极端低比特下的性能。
- 多格式支持:提供BF16、F16、多种量化格式(如Q4_K、Q6_K、Q8_0等),满足不同硬件和内存约束需求。
- 长对话处理:经过特殊训练,在长多轮角色扮演聊天中能输出连贯且有趣的内容。
📦 安装指南
本模型基于transformers
库,确保你已安装该库。你可以从Hugging Face下载相应的模型文件,例如:
- BF16格式:https://huggingface.co/ArliAI/QwQ-32B-ArliAI-RpR-v4
- GGUF格式:https://huggingface.co/ArliAI/QwQ-32B-ArliAI-RpR-v4-GGUF
💻 使用示例
基础用法
使用transformers
库加载并运行模型:
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch
# 选择合适的模型文件路径
model_path = "path/to/your/model"
model = AutoModelForCausalLM.from_pretrained(model_path, torch_dtype=torch.bfloat16 if "bf16" in model_path else torch.float16)
tokenizer = AutoTokenizer.from_pretrained(model_path)
input_text = "Your input text here"
inputs = tokenizer(input_text, return_tensors="pt")
outputs = model.generate(**inputs)
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(generated_text)
推理模型设置示例
对于推理模型,需注意在SuperChat(ST)中进行正确设置:
- 前缀仅设置为
<think>
,后缀仅设置为</think>
,无空格或换行。 - 回复以
<think>
开头。 - 取消勾选“Always add character names”。
- “Include names”设置为“never”。
- 聊天模板应符合模型要求。
测试模型使用示例
如果你想参与测试AI网络监控模型,可以按以下步骤操作:
- 访问免费网络监控器 。
- 选择AI助手类型:
TurboLLM
(GPT - 4o - mini)HugLLM
(Huggingface开源)TestLLM
(仅支持CPU的实验性模型)
📚 详细文档
模型生成细节
本模型使用llama.cpp 在提交版本f5cd27b7
下生成。
超低比特量化(1 - 2比特)
我们最新的量化方法为超低比特模型(1 - 2比特)引入了精度自适应量化,通过对Llama - 3 - 8B的基准测试验证了其有效性。该方法采用特定层策略,在保证极端内存效率的同时保留精度。
基准测试背景
所有测试均在Llama - 3 - 8B - Instruct上进行,使用以下设置:
- 标准困惑度评估管道
- 2048令牌上下文窗口
- 所有量化设置使用相同的提示集
方法
- 动态精度分配:
- 前/后25%的层 → IQ4_XS(选定层)
- 中间50% → IQ2_XXS/IQ3_S(提高效率)
- 关键组件保护:
- 嵌入层/输出层使用Q5_K
- 与标准1 - 2比特量化相比,误差传播降低38%
量化性能对比(Llama - 3 - 8B)
量化方式 | 标准困惑度(PPL) | 动态门控困惑度(DynamicGate PPL) | PPL变化百分比 | 标准大小 | 动态门控大小 | 大小变化 | 标准推理速度 | 动态门控推理速度 |
---|---|---|---|---|---|---|---|---|
IQ2_XXS | 11.30 | 9.84 | -12.9% | 2.5G | 2.6G | +0.1G | 234s | 246s |
IQ2_XS | 11.72 | 11.63 | -0.8% | 2.7G | 2.8G | +0.1G | 242s | 246s |
IQ2_S | 14.31 | 9.02 | -36.9% | 2.7G | 2.9G | +0.2G | 238s | 244s |
IQ1_M | 27.46 | 15.41 | -43.9% | 2.2G | 2.5G | +0.3G | 206s | 212s |
IQ1_S | 53.07 | 32.00 | -39.7% | 2.1G | 2.4G | +0.3G | 184s | 209s |
关键说明:
- PPL = 困惑度(越低越好)
- ∆ PPL = 从标准量化到动态门控量化的困惑度变化百分比
- 速度 = 推理时间(CPU avx2,2048令牌上下文)
- 大小差异反映了混合量化开销
主要改进:
- IQ1_M 困惑度大幅降低43.9%(从27.46降至15.41)
- IQ2_S 困惑度降低36.9%,仅增加0.2GB大小
- IQ1_S 在1比特量化下仍保持39.7%的精度提升
权衡:
- 所有变体的大小增加幅度较小(0.1 - 0.3GB)
- 推理速度差异不大(<5%)
使用场景
- 适合GPU显存不足的情况
- 内存受限的部署
- 可容忍1 - 2比特误差的CPU和边缘设备
- 超低比特量化研究
选择合适的模型格式
选择正确的模型格式取决于硬件能力和内存约束。
BF16(大脑浮点16) - 若支持BF16加速则使用
- 一种16位浮点格式,专为更快计算设计,同时保留良好精度。
- 与FP32具有相似动态范围,但内存使用更低。
- 若硬件支持BF16加速(查看设备规格),建议使用。
- 适用于高性能推理,与FP32相比可减少内存占用。
适用情况:
- 硬件具有原生BF16支持(如较新的GPU、TPU)
- 希望在节省内存的同时获得更高精度
- 计划将模型重新量化为其他格式
避免情况:
- 硬件不支持BF16(可能会回退到FP32,运行速度变慢)
- 需要与缺乏BF16优化的旧设备兼容
F16(浮点16) - 比BF16更广泛支持
- 16位浮点格式,精度较高,但取值范围小于BF16。
- 适用于大多数支持FP16加速的设备(包括许多GPU和部分CPU)。
- 数值精度略低于BF16,但通常足以进行推理。
适用情况:
- 硬件支持FP16但不支持BF16
- 需要在速度、内存使用和精度之间取得平衡
- 在GPU或其他针对FP16计算优化的设备上运行
避免情况:
- 设备缺乏原生FP16支持(运行速度可能比预期慢)
- 有内存限制
量化模型(Q4_K、Q6_K、Q8_0等) - 用于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的设备 | BF16不可用时的GPU推理 |
Q4_K | 中低 | 低 | CPU或低显存设备 | 内存受限环境最佳选择 |
Q6_K | 中 | 适中 | 内存较多的CPU | 量化模型中精度较好且仍有一定内存优势 |
Q8_0 | 高 | 适中 | 有足够显存的CPU或GPU | 量化模型中精度最佳 |
IQ3_XS | 极低 | 极低 | 超低内存设备 | 极端内存效率但精度低 |
Q4_0 | 低 | 低 | ARM或低内存设备 | llama.cpp可针对ARM设备优化 |
包含的文件及详情
文件名称 | 说明 |
---|---|
QwQ-32B-ArliAI-RpR-v4-bf16.gguf |
模型权重为BF16格式。若要将模型重新量化为其他格式,可使用此文件。适用于支持BF16加速的设备。 |
QwQ-32B-ArliAI-RpR-v4-f16.gguf |
模型权重为F16格式。若设备支持FP16,特别是不支持BF16时,可使用此文件。 |
QwQ-32B-ArliAI-RpR-v4-bf16-q8_0.gguf |
输出和嵌入层保持BF16,其他层量化为Q8_0。适用于支持BF16且需要量化版本的设备。 |
QwQ-32B-ArliAI-RpR-v4-f16-q8_0.gguf |
输出和嵌入层保持F16,其他层量化为Q8_0。 |
QwQ-32B-ArliAI-RpR-v4-q4_k.gguf |
输出和嵌入层量化为Q8_0,其他层量化为Q4_K。适合内存有限的CPU推理。 |
QwQ-32B-ArliAI-RpR-v4-q4_k_s.gguf |
最小的Q4_K变体,内存使用更少,但精度有所牺牲。最适合极低内存设置。 |
QwQ-32B-ArliAI-RpR-v4-q6_k.gguf |
输出和嵌入层量化为Q8_0,其他层量化为Q6_K。 |
QwQ-32B-ArliAI-RpR-v4-q8_0.gguf |
完全Q8量化模型,精度更好,但需要更多内存。 |
QwQ-32B-ArliAI-RpR-v4-iq3_xs.gguf |
IQ3_XS量化,针对极端内存效率优化。最适合超低内存设备。 |
QwQ-32B-ArliAI-RpR-v4-iq3_m.gguf |
IQ3_M量化,提供中分块大小以提高精度。适用于低内存设备。 |
QwQ-32B-ArliAI-RpR-v4-q4_0.gguf |
纯Q4_0量化,针对ARM设备优化。最适合低内存环境。优先选择IQ4_NL以获得更好精度。 |
模型测试相关
如果你觉得这些模型有用,请点击“点赞”!帮助测试人工智能网络监控助手的量子安全检查:
测试方法: 选择一种AI助手类型:
TurboLLM
(GPT - 4o - mini)HugLLM
(Huggingface开源)TestLLM
(仅支持CPU的实验性模型)
测试内容
主要测试小型开源模型在AI网络监控中的极限,具体包括:
- 针对实时网络服务的函数调用
- 模型规模最小化,同时处理以下任务:
- 自动化Nmap扫描
- 量子就绪检查
- 网络监控任务
不同助手介绍
-
TestLLM - 当前实验性模型(llama.cpp在2个CPU线程上):
- 零配置设置
- 30秒加载时间(推理速度慢,但无API成本)
- 寻求帮助!如果你对边缘设备AI感兴趣,让我们一起合作!
-
TurboLLM - 使用gpt - 4o - mini实现:
- 创建自定义命令处理器,在免费网络监控代理上运行.net代码
- 实时网络诊断和监控
- 安全审计
- 渗透测试(Nmap/Metasploit)
- 登录或下载集成AI助手的免费网络监控代理可获得更多令牌。
-
HugLLM - 最新开源模型:
- 在Hugging Face推理API上运行
模型系列概述
RpR v4变化
- 减少重复和模仿:采用更高级的过滤方法,减少LLM重复相似短语或替用户发言的情况。若出现重复或模仿,是由于基础QwQ模型的训练方式,而非RpR数据集。
- 增加训练序列长度:训练序列长度增加到16K,有助于在更长的聊天中提高意识和记忆能力。
RpR系列构建
RpR(角色扮演推理)系列是ArliAI的新系列模型,直接基于RPMax系列成功的数据集策划方法和训练方法构建。
为创建RpR,首先将现有的RPMax数据集重新处理为推理数据集,利用基础QwQ指令模型为RPMax数据集中的每个对话示例创建推理过程,并进一步细化以确保推理与数据集中的实际响应示例一致。
训练时,使用axolotl和无手动模板段数据集,确保模型在训练过程中不会看到推理块,就像在推理时的使用方式一样。
训练结果表明,即使在长多轮角色扮演聊天中,模型也能输出连贯且有趣的内容。据我们所知,这是首个真正经过正确训练的用于角色扮演和创意写作的推理模型。
你可以在https://arliai.com 访问该模型,我们还有一个模型排名页面:[https://www.arliai.com/models - ranking](https://www.arliai.com/models - ranking) 。如有疑问,可在我们的新Discord服务器https://discord.com/invite/t75KbPgwhk 或Reddit社区https://www.reddit.com/r/ArliAI/ 提问。
模型描述
QwQ - 32B - ArliAI - RpR - v4是RpR系列的第三个版本。它是一个320亿参数的模型,基于RPMax数据集策划的RpR数据集进行微调,并结合了在长多轮聊天中保持推理能力的技术。
推荐采样器
- RpR模型与重复惩罚类型的采样器(如XTC或DRY)配合不佳。
- 最好使用简单的采样器设置,并允许模型进行长时间推理(高最大令牌数)。
- 你也可以下载本仓库文件部分上传的ST主导出文件。
推荐初始设置:
- 温度:1.0
- MinP:0.02
- TopK:40
- 响应令牌数:2048+
规格参数
- 基础模型:QwQ - 32B
- 最大上下文长度:使用Yarn时最大128K(与基础QwQ原生的32K相同)
- 参数数量:32B
- 推理模型:是
训练细节
- 序列长度:16384
- 训练轮数:1轮(继承自RPMax方法)
- 微调方法:RS - QLORA + (秩稳定LoRA + LoRA Plus 8x)
- 秩/阿尔法:128秩,128阿尔法
- 学习率:0.00001
- 调度器:Rex
- 梯度累积:32
训练图表
这里展示了训练损失和评估损失的图表,帮助你了解模型训练过程:  
量化信息
- BF16:[https://huggingface.co/ArliAI/QwQ - 32B - ArliAI - RpR - v4](https://huggingface.co/ArliAI/QwQ - 32B - ArliAI - RpR - v4)
- GGUF:[https://huggingface.co/ArliAI/QwQ - 32B - ArliAI - RpR - v4 - GGUF](https://huggingface.co/ArliAI/QwQ - 32B - ArliAI - RpR - v4 - GGUF)
RPMax基础细节
目标:减少重复和提高创造力
RPMax和RpR数据集策划的目标是减少重复,提高模型在不同情况下的创意写作能力。这意味着模型在不同情况下的输出响应差异很大,不会陷入可预测的套路。
重复和创造力的定义
- 创造力:指模型输出的多样性。不要将创造力与写作风格混淆,模型写出优美的文章并不意味着具有创造力。
- 重复类型:
- 上下文内重复:模型在单个对话中重复相同短语。这种重复在某些情况下可能是有意的,不一定会降低模型的写作能力。RPMax和RpR系列目前暂未重点消除这种重复。
- 跨上下文重复:模型在非常不同的情况下重复相同的短语或套路,这是一种不良现象,表明模型在训练数据集中过度拟合了某种“创意写作”风格。RPMax和RpR数据集策划的主要目标是减少跨上下文重复。
数据集策划
模型的成功得益于训练方法和为微调创建的独特数据集。该数据集包含尽可能多的开源创意写作和角色扮演数据集(均来自Hugging Face),并经过筛选,去除了纯粹的合成生成数据集,因为这些数据集往往会降低模型性能。
使用Llama 3.1 8B(或类似能力的模型)创建数据集中角色和情况的数据库,对数据集进行去重,确保每个角色或情况只有一个示例。
微调的黄金法则
与预训练阶段不同,微调模型的关键不是数据量,而是质量。因此,这里使用的数据集比包含重复角色和情况的数据集小得多,但最终模型不会让人感觉是另一个创意写作/角色扮演模型的“近亲”。
训练参数和非常规方法
通常的训练方法是使用低学习率和高梯度累积来稳定损失,然后进行多轮训练。而RPMax和RpR方法仅使用一轮训练,低梯度累积和高于正常的学习率。训练过程中损失曲线不稳定,但平滑后呈下降趋势。其原理是让模型从数据集中的每个示例中学到更多,避免模型过度依赖单一角色或故事套路。
训练中的损失波动是因为模型在处理新示例时无法准确预测答案。相对较高的最终损失(1.0或略高)是可以接受的,因为目标不是让模型输出与训练数据集完全一致的内容,而是创造一个有足够创意的模型。
🔧 技术细节
- 模型基于
transformers
库,使用llama.cpp
进行模型生成。 - 量化方法采用精度自适应量化和动态门控技术,在低比特量化下保持精度。
- 推理模型在训练和使用时需注意特定的设置,以确保正确输出推理内容。
🤝 贡献指南
如果你对本模型感兴趣,欢迎参与贡献:
- 报告问题或提出建议,可在GitHub仓库的Issues中提交。
- 如果你有代码改进或新功能添加,请提交Pull Request。
📄 许可证
本模型采用Apache 2.0许可证。详情请参考许可证文件。


