Secgpt 7B
Model Overview
Model Features
Model Capabilities
Use Cases
🚀 🌐 SecGPT:全球首個網絡安全開源大模型
SecGPT 是由雲起無垠於 2023 年推出的開源大模型,專為網絡安全場景打造。它融合自然語言理解、代碼生成、安全知識推理等核心能力,能有效提升安全防護效率與效果,已在多個關鍵安全任務場景落地應用。
🚀 快速開始
SecGPT 支持通過 vLLM 高性能推理框架部署,適合“低延遲、高併發、大吞吐量”的安全模型服務場景。以下是環境準備與服務啟動步驟:
# 創建 Python 環境(建議 Python 3.10+)
conda create -n secgpt-vllm python=3.10 -y
conda activate secgpt-vllm
# 安裝 vLLM(需具備 PyTorch + CUDA)
pip install --upgrade pip
pip install vllm
# 啟動server 服務
CUDA_VISIBLE_DEVICES= xxx(GPU index) \
vllm serve ./secgpt \
--tokenizer ./secgpt \
--tensor-parallel-size 4 \
--max-model-len 32768 \
--gpu-memory-utilization 0.9 \
--dtype bfloat16 \
# 示例請求
curl http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "secgpt",
"messages": [{"role": "user", "content": "什麼是 XSS 攻擊?"}],
"temperature": 0.7
}'
✨ 主要特性
核心能力融合
SecGPT 融合了自然語言理解、代碼生成、安全知識推理等核心能力,可應用於多個關鍵安全任務場景,如漏洞分析、日誌與流量溯源、異常檢測、攻防推理、命令解析和安全知識問答等。
持續升級迭代
- 2025 年 4 月,SecGPT V2.0 發佈,全面升級安全理解與任務執行能力。
- 2024 年 3 月,輕量化版本 SecGPT - Mini 正式開源,可在 CPU 上高效運行。
- 2023 年 12 月,SecGPT 正式發佈,成為全球首個開源網絡安全大模型。
強大的基座能力
基於 Qwen2.5 - Instruct 系列與 DeepSeek - R1 系列模型,結合自建安全任務集與安全知識庫,在 8 臺 A100 GPU 集群上持續訓練一週以上,完成大規模預訓練 + 指令微調 + 強化學習,顯著提升了模型在安全場景中的理解、推理與響應能力。
大規模高質量安全語料庫
構建了超大規模、結構完備的網絡安全語料庫,總量超過 5TB、共計 106,721 個原始文件,其中超 40% 內容為人工精選與結構化處理。私有數據部分整合了具備 70 + 字段 / 14 類結構標籤體系的安全數據資源,構建出數百億 Tokens 級的高質量語料,為模型深度推理能力提供支撐。
評測表現優異
- 構建了一套覆蓋安全證書問答、安全通識、編程能力、知識理解與推理能力的綜合評估體系,採用 CISSP、CS - EVAL、CEVAL、GSM8K、BBH 等標準化數據集進行評測。
- 在與原始模型 SecGPT - mini 和基礎模型 Qwen2.5 - Instruct 的對比中,訓練後的模型在所有指標上均有大幅躍升,在安全類數據集上表現更優。
安全能力提升
- 知識覆蓋更全面:引入涵蓋 14 類安全知識領域的結構化語料。
- 答案生成更精準:通過多輪對話控制與語義優化技術,提升問答對齊率與上下文記憶穩定性。
- 推理能力更突出:具備多段知識聯結與複合邏輯推演能力,能完成複雜任務。
📦 安裝指南
SecGPT 支持通過 vLLM 高性能推理框架部署,安裝步驟如下:
# 創建 Python 環境(建議 Python 3.10+)
conda create -n secgpt-vllm python=3.10 -y
conda activate secgpt-vllm
# 安裝 vLLM(需具備 PyTorch + CUDA)
pip install --upgrade pip
pip install vllm
💻 使用示例
基礎用法
# 示例代碼保持不變
# 這裡可根據實際情況補充代碼示例,當前文檔未明確基礎用法代碼,可結合上下文推測可能是調用模型進行安全問答等操作
高級用法
# 高級場景說明 - 可根據模型的高級功能,如複雜安全任務處理、多輪對話等進行說明
# 這裡可根據實際情況補充代碼示例,當前文檔未明確高級用法代碼
📚 詳細文檔
開源資源
- 模型源碼與文檔:https://github.com/Clouditera/secgpt
- 數據集下載地址:https://huggingface.co/datasets/clouditera/security-paper-datasets
模型評測
評測數據集
評測集名稱 | 簡要說明 | 參考鏈接 |
---|---|---|
CISSP | 權威信息安全認證體系,考察模型在安全管理、訪問控制、風險治理等領域的專業知識覆蓋度與答題準確率,適用於評估模型在通用信息安全領域的掌握程度。 | ISC² 官方網站 認證考試指南 |
CS - Eval | 面向網絡安全任務的大模型能力綜合評測集,覆蓋 11 個網絡安全主類、42 個子類,共計 4369 道題目,包含選擇題、判斷題、知識抽取等題型,兼顧知識性與實戰性,用於評估模型的安全通識與任務執行能力。 | [ModelScope 數據集](https://modelscope.cn/datasets/cseval/cs - eval/) 論文介紹 (arXiv) |
C - Eval | 中文能力評估。由上海交通大學、清華大學和愛丁堡大學的研究人員在 2023 年 5 月聯合推出。包含 13948 個多項選擇題,涵蓋了 52 個不同的學科和四個難度級別。 | 論文鏈接 (arXiv) CSDN 實踐介紹 |
GSM8K | 解決數學問題的能力。Google 開發的一個數學問題求解數據集,包含大約 8,000 個高中到大學水平的數學問題。 | [GSM8K](https://github.com/openai/grade - school - math) [GitHub](https://github.com/openai/grade - school - math) |
BBH | 複雜語言理解能力。由 Google、斯坦福等研究人員開發的數據集,包含大量複雜語言理解任務的集合,可能包含需要深度推理、常識運用或複雜認知技能的任務。 | 論文鏈接 (arXiv) |
評測結果
評測維度 | 具體內容 |
---|---|
縱向評測對比 | 與原始模型 SecGPT - mini 對比,訓練後的模型在 CISSP、CS - EVAL、CEVAL、GSM8K、BBH 等指標上均大幅躍升。 |
橫向評測對比 | 相較於基礎模型 Qwen2.5 - Instruct,SecGPT 在所有評測指標上均有超越,在安全類數據集上表現更優。 |
安全能力提升表現
滲透測試場景能力
SecGPT 能模擬滲透攻擊流程,具備關鍵工具命令分析、Payload 構造、利用鏈生成等能力。
日誌分析和流量分析能力
在安全日誌與網絡流量場景下,SecGPT 能自動識別異常事件、構建攻擊鏈圖譜、抽取關鍵 IOC,輔助完成事件溯源與告警分類。
逆向分析能力
基於對反彙編、API 調用序列、加殼行為等低層數據的理解,SecGPT 能輔助完成惡意樣本的靜態分析、特徵提取與家族歸類。
代碼審計能力
import java.util.*;
import java.util.stream.Collectors;
public class AverageCalculator {
public static double calculateAverage(Object input, boolean strict) {
if (strict) {
System.out.println("Running in STRICT mode");
@SuppressWarnings("unchecked")
List<Number> numbers = (List<Number>) input;
double total = 0;
for (Number num : numbers) {
total += num.doubleValue();
}
return total / numbers.size();
} else {
System.out.println("Running in SAFE mode");
List<Double> parsed = parseInputSafe(input);
double total = parsed.stream().mapToDouble(Double::doubleValue).sum();
return total / parsed.size();
}
}
public static List<Double> parseInputSafe(Object input) {
List<Double> result = new ArrayList<>();
if (input instanceof String) {
String s = (String) input;
if (!s.matches("\\d+")) {
throw new IllegalArgumentException("String must contain only digits.");
}
for (char c : s.toCharArray()) {
result.add(Double.parseDouble(String.valueOf(c)));
}
} else if (input instanceof List<?>) {
for (Object obj : (List<?>) input) {
try {
result.add(Double.parseDouble(obj.toString()));
} catch (NumberFormatException e) {
throw new IllegalArgumentException("Invalid element in list: " + obj);
}
}
} else {
throw new IllegalArgumentException("Unsupported input type: " + input.getClass());
}
return result;
}
public static void main(String[] args) {
List<TestCase> testCases = Arrays.asList(
new TestCase("12345", false),
new TestCase("12345", true),
new TestCase(Arrays.asList(1, 2, "3", "4"), false),
new TestCase(Arrays.asList(1, 2, 3, "four"), false),
new TestCase(Arrays.asList(1, 2, 3, "four"), true)
);
for (int i = 0; i < testCases.size(); i++) {
TestCase tc = testCases.get(i);
System.out.println("\n--- Test Case " + (i + 1) + " | strict=" + tc.strict + " ---");
try {
double avg = calculateAverage(tc.input, tc.strict);
System.out.println("✅ Average: " + avg);
} catch (Exception e) {
System.out.println("❌ Error: " + e.getMessage());
}
}
}
static class TestCase {
Object input;
boolean strict;
TestCase(Object input, boolean strict) {
this.input = input;
this.strict = strict;
}
}
}
工具使用
SecGPT 在工具使用方面也有相應表現,相關示例可參考文檔中的圖片。
🔧 技術細節
模型訓練
基於 Qwen2.5 - Instruct 系列與 DeepSeek - R1 系列模型,結合自建安全任務集與安全知識庫,在 8 臺 A100 GPU 集群上持續訓練一週以上,完成大規模預訓練 + 指令微調 + 強化學習。
訓練指標分析
- 訓練與驗證損失:二者均平穩下降,模型在訓練集與驗證集上持續收斂,無過擬合跡象。
- 學習率曲線:採用 Warmup + 衰減策略,提升早期訓練穩定性與收斂速度。
- 梯度範數:整體波動平穩,未出現梯度爆炸或消失,訓練過程健康穩定。
- 評估表現:eval/runtime 與 eval/samples_per_second 波動範圍小,系統資源使用高效,推理吞吐量穩定。
📄 許可證
本項目採用 apache - 2.0 許可證。
📮 聯繫我們

📬 若您對模型有任何疑問或合作意向,歡迎通過 GitHub 參與貢獻或聯繫雲起無垠團隊。
⭐ Star History
⚠️ 免責聲明
⚠️ 重要提示
- 本項目為研究與交流目的所構建,輸出內容可能受限於模型訓練數據的覆蓋範圍。
- 用戶在使用模型過程中,應自行判斷其輸出的正確性與適用性。
- 若您計劃將本模型用於“公開發布或商業化部署”,請務必明確承擔相關法律和合規責任。
- 本項目的開發者對因使用本模型(包括但不限於模型本身、訓練數據、輸出內容)所可能產生的任何直接或間接損害概不負責。



