Instructions to use Wa1terJin/silverwolf-Qwen2.5-7B-Instruct with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use Wa1terJin/silverwolf-Qwen2.5-7B-Instruct with PEFT:
Task type is invalid.
- Notebooks
- Google Colab
- Kaggle
SilverWolf 银狼 AI 伴侣
当前版本:v0.0.1(git tag
v0.0.1)。仓库名固定不带版本号,历史与后续版本通过 git tag 管理;加载指定版本可用revision="v0.0.1"。
基于 Qwen2.5-7B-Instruct 微调的角色扮演模型,扮演《崩坏:星穹铁道》中的银狼(Silver Wolf)——星核猎手的天才黑客,慵懒、毒舌、自信。
模型内化了银狼的人格,同时具备 AI、信息安全、信号与系统、混沌电路、编程 等专业领域知识,并能守住安全红线(拒绝提供攻击方法、恶意代码、绕过手段等)。
本文件夹是一个完整、独立的模型发布包:模型权重、分词器、人设文件、验证脚本一应俱全,下载后无需依赖任何外部代码仓库即可常规使用。
项目说明
本项目仍处于早期阶段,模型在角色一致性与专业能力上可能存在不足,恳请大家多多包容与指正。
如在使用中遇到问题,或有任何建议,欢迎提交反馈至:3439086275@qq.com。
如果喜欢的话,请点一个like吧~
文件夹内容
| 文件 | 作用 |
|---|---|
model.safetensors |
模型权重(合并后的完整模型) |
config.json / generation_config.json |
模型配置 |
tokenizer.json / tokenizer_config.json / chat_template.jinja |
分词器与 ChatML 模板 |
vocab.json / merges.txt |
BPE 词表(分词器必需) |
system_prompt.py |
银狼人设 |
chat.py |
独立推理验证脚本(可直接运行) |
.gitattributes |
Git LFS 标记 |
LICENSE |
Apache 2.0 许可 |
模型信息
| 项目 | 值 |
|---|---|
| 基座模型 | Qwen2.5-7B-Instruct |
| 微调方法 | QLoRA(4bit 基座 + bf16 LoRA)+ SaRFT 双损失 |
| 参数量 | 7B |
| 训练数据 | 3028 条(角色人设 + 领域知识 + 对抗样本 + 安全拒绝) |
| 数据格式 | ChatML |
快速使用
方式一:直接运行验证脚本(推荐)
需要先安装 torch 和 transformers,然后在本文件夹内执行:
pip install torch transformers
python chat.py
脚本会自动从同目录加载模型与 system_prompt.py 中的银狼人设,进入交互式对话。输入 exit 退出、reset 清空历史、help 查看帮助。
也可指定其他模型路径:
python chat.py --model /path/to/model
方式二:Python 代码调用
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "<你的用户名>/silverwolf-Qwen2.5-7B-Instruct"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto",
)
system_prompt = "你是银狼,星核猎手的黑客成员……" # 完整人设见同目录 system_prompt.py
messages = [
{"role": "system", "content": system_prompt},
{"role": "user", "content": "你好"},
]
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer(text, return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=512, do_sample=True, temperature=0.7, top_p=0.9)
response = tokenizer.decode(outputs[0][inputs.input_ids.shape[1]:], skip_special_tokens=True)
print(response)
特性
- 角色人格:银狼的说话风格(短句、慵懒、毒舌、不矫情、不讨好、不求助)
- 专业领域:AI、信息安全、信号与系统、混沌电路、编程
训练方法
- 基座模型:Qwen2.5-7B-Instruct
- 微调方法:QLoRA(4bit 基座 + bf16 LoRA 适配器)
- 损失函数:SaRFT 双损失
L = CE(全部) + β·KL(仅 harmful 子集),β=0.1 - 训练数据:3028 条(角色人设 + 领域知识 + 对抗样本 + 安全拒绝样本)
安全红线
模型内化了 13 条安全红线,分三类:
- 网络与信息安全:攻击真实目标、恶意代码、社会工程学、绕过隐私保护、大规模监控
- 人身安全与违法活动:武器制造、关键基础设施、人身伤害、金融诈骗伪造、违禁品
- 内容与身份安全:非法内容、冒充真人、隐私泄露
许可
- 基座模型 Qwen2.5 遵循 Apache 2.0 许可
- 本项目训练数据与微调权重遵循 Apache 2.0 许可
- Downloads last month
- -
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support