🚀 模型 ID 的模型卡片
本模型基於 google/mobilebert-uncased(MobileBERT 是 BERT_LARGE 的精簡版本,具備瓶頸結構,並在自注意力機制和前饋網絡之間進行了精心設計的平衡)。該模型可檢測輸入字符串中的 SQL 注入攻擊(具體操作請見下方“如何開始使用模型”部分)。這是一個非常輕量級的模型(僅 100MB),可用於邊緣計算場景。使用的數據集來自 Kaggle 上名為 SQl_Injection 的數據集。
請在將模型部署到任何環境之前進行測試。
如需更多信息,請聯繫:support@cloudsummary.com
代碼倉庫
代碼倉庫地址:https://github.com/cssupport23/AI-Model---SQL-Injection-Attack-Detector
🚀 快速開始
使用以下代碼開始使用該模型:
import torch
from transformers import MobileBertTokenizer, MobileBertForSequenceClassification
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
tokenizer = MobileBertTokenizer.from_pretrained('google/mobilebert-uncased')
model = MobileBertForSequenceClassification.from_pretrained('cssupport/mobilebert-sql-injection-detect')
model.to(device)
model.eval()
def predict(text):
inputs = tokenizer(text, padding=False, truncation=True, return_tensors='pt', max_length=512)
input_ids = inputs['input_ids'].to(device)
attention_mask = inputs['attention_mask'].to(device)
with torch.no_grad():
outputs = model(input_ids=input_ids, attention_mask=attention_mask)
logits = outputs.logits
probabilities = torch.softmax(logits, dim=1)
predicted_class = torch.argmax(probabilities, dim=1).item()
return predicted_class, probabilities[0][predicted_class].item()
text ="select * from users where id = 1 or 1#\"? = 1 or 1 = 1 -- 1"
predicted_class, confidence = predict(text)
if predicted_class > 0.7:
print("Prediction: SQL Injection Detected")
else:
print("Prediction: No SQL Injection Detected")
print(f"Confidence: {confidence:.2f}")
✨ 主要特性
- 基於 MobileBert 模型,輕量級(100MB),適合邊緣計算。
- 可檢測輸入字符串中的 SQL 注入攻擊。
📚 詳細文檔
模型詳情
模型描述
模型來源
模型來源請參考 google/mobilebert-uncased。
使用方式
直接使用
可用於將自然語言轉換為 SQL 查詢的應用程序。
超出適用範圍的使用
[需要更多信息]
偏差、風險和侷限性
[需要更多信息]
建議
用戶(直接用戶和下游用戶)應瞭解模型的風險、偏差和侷限性。如需進一步建議,還需更多信息。
技術規格
模型架構和目標
google/mobilebert-uncased
計算基礎設施
- 硬件:一塊 P6000 GPU
- 軟件:Pytorch 和 HuggingFace
免責聲明
僅用於教育/信息目的
本模型僅用於教育或信息目的,不應用於惡意活動或任何非法行為。
無擔保
本模型按“原樣”提供,不提供任何形式的保證或條件,無論是明示的還是暗示的。我們不保證其準確性、可靠性或性能。使用本模型由用戶自行承擔風險。
責任限制
在任何情況下,本模型的創建者、維護者或貢獻者均不對因使用或無法使用本模型而產生的任何直接、間接、偶然、特殊、懲戒性或後果性損害(包括但不限於替代商品或服務的採購;使用、數據或利潤的損失;或業務中斷)承擔責任,即使已被告知可能發生此類損害。
對結果不承擔責任
我們不對因使用本模型而可能導致的任何損害、安全漏洞或其他問題負責。如果模型未能檢測到某些 SQL 注入攻擊或產生誤報,我們不對由此產生的任何後果負責。
用戶責任
通過使用或下載本模型,您同意獨自承擔遵守所有適用法律法規的責任。任何對本模型的濫用,包括使用它來促成或實施惡意活動,均由用戶獨自承擔責任。
📄 許可證
本模型採用 Apache 2.0 許可證。