# SecGPT 网络安全大模型
探索使用网络安全知识训练大模型,能达到怎样的能力边界。
**模型下载**
- [huggingface](https://huggingface.co/w8ay/secgpt)
- [wisemodel](https://wisemodel.cn/models/w8ay/secgpt)
## 训练步骤
### 1. 基座模型:Baichuan-13B
- 基于Baichuan-13B (无道德限制,较好中文支持,显存资源占用小)
- 运行环境:
- webdemo推理: 2*4090(24G)
- lora训练: 3*4090(24G)
### 2. 微调技术
- 基于Lora做预训练和SFT训练,优化后的训练代码展示了训练的底层知识,同时大幅减少训练的显存占用,在3*4090上训练。
### 3. 数据
- 预训练数据
- 收集了安全书籍,安全知识库,安全论文,安全社区文章,漏洞库等等安全内容
- 数据集开源地址:https://huggingface.co/datasets/w8ay/security-paper-datasets
![Alt text](images/image.png)
- 有监督数据
- chatgpt+人工构造各类有监督安全能力数据集,让模型能了解各类安全指令。
![Alt text](images/image-1.png)
- 思维链:基于思维链方式构造有监督数据集让模型能够根据问题逐步推理到最终答案,展现推理过程。
- 知乎回答:加入了部分高质量知乎数据集,在一些开放性问题上模型能通过讲故事举例子等方式回答答案和观点,更易读懂。
- 为防止灾难性遗忘,有监督数据喂通用能力数据+安全能力数据,数据占比5:1
### 4. 模型训练
- 修改train.py中超参数信息
```python
# 最大token长度
max_position_embeddings = 2048
# batch size大小
batch_size = 4
# 梯度累积
accumulation_steps = 8
# 训练多少个epoch
num_train_epochs = 10
# 每隔多少步保存一次模型
save_steps = 400
# 每隔多少步打印一次日志
logging_steps = 50
# 学习率
lr = 1e-4
# 预训练模型地址
pre_train_path = "models/Baichuan-13B-Base"
# 训练数据json地址
dataset_paper = "data.json"
train_option = "pretrain"
# lora
use_lora = True
pre_lora_train_path = "" # 如果要继续上一个lora训练,这里填上上一个lora训练的地址
lora_rank = 8
lora_alpha = 32
```
#### 预训练
修改
```python
# 预训练模型地址
pre_train_path = "models/Baichuan-13B-Base"
# 训练数据json地址
dataset_paper = "w8ay/secgpt"
train_option = "pretrain"
```
执行
`python train.py`
#### SFT训练
修改
```python
# 预训练模型地址
pre_train_path = "models/Baichuan-13B-Base"
# 训练数据json地址
dataset_paper = "sft.jsonl"
train_option = "sft"
pre_lora_train_path = "output/secgpt-epoch-1" # 预训练lora保存目录
```
执行
`python train.py`
### 5. 效果展示
模型结果的输出有着随机性,模型可能知道答案,但是随机后改变输出,这时候可以增加提示词让模型注意力集中,也可以做RLHF强化学习:让模型输出多个结果,选择正确的那个,提升模型效果。
```
pytho webdemo.py --base_model w8ay/secgpt
```
自带RLHF选择器,模型会输出三个结果,选择最好的一个记录下来,可对后面RLHF微调模型提供数据参考。
#### 开放问题
![img.png](images/image-2.png)
![Alt text](images/image-3.png)
![Alt text](images/image-4.png)
没有合适的资源?快使用搜索试试~ 我知道了~
SecGPT 网络安全大模型
共21个文件
py:10个
png:5个
txt:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 152 浏览量
2024-01-19
14:23:41
上传
评论
收藏 2.71MB ZIP 举报
温馨提示
SecGPT 网络安全大模型
资源推荐
资源详情
资源评论
收起资源包目录
secgpt-main.zip (21个子文件)
secgpt-main
train_dpo.py 15KB
evaltion
eval.json 6KB
evaltion.py 4KB
webdemo
webdemo.py 8KB
LICENSE 11KB
output
_ 0B
dataset
__init__.py 0B
pretrain_cache.py 900B
make_pt_cache.py 3KB
pretrain.py 2KB
sft.py 4KB
dpo.py 4KB
requirements.txt 122B
.gitignore 7KB
images
image.png 32KB
image-3.png 1.1MB
image-2.png 111KB
image-4.png 1.43MB
image-1.png 50KB
train.py 6KB
README.md 3KB
共 21 条
- 1
资源评论
汀、人工智能
- 粉丝: 7w+
- 资源: 376
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 华为云会议安装包适配华为擎云L410 -1060 ARM架构
- 清空redis缓存脚本指令
- STM8S微控制器-寄存器操作指南
- apk一键安装,获取apk签名信息
- opencv4.8.0+contrib+cuda文件
- 【全网最新最全】大气公司年度月度总结汇报PPT
- C语言实现低功耗STM32F411开发板(原理图+PCB源文件+官方例程+驱动等).zip
- C语言实现基于STM32 的联合调试侦听设备解决方案(原理图、PCB源文件、调试工具、视频).zip
- 【全网最全最酷】部门年度年终工作总结汇报PPT模板
- C语言实现基于STM32F103RC的电子相册(原理图、PCB源文件、程序源码及制作).zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功