🚀 禮貌衛士(Polite Guard)
禮貌衛士(Polite Guard)是英特爾開發的開源NLP語言模型,基於BERT微調而來,用於文本分類任務。它能將文本分為禮貌、有點禮貌、中立和不禮貌四類,助力開發者構建更智能、更具上下文感知能力的AI系統。
🚀 快速開始
你可以直接使用管道將文本分類為禮貌、有點禮貌、中立和不禮貌類別。
from transformers import pipeline
classifier = pipeline("text-classification", "Intel/polite-guard")
text = "Your input text"
output = classifier(text)
print(output)
下一個示例展示瞭如何在瀏覽器中使用Hugging Face的transformers.js
庫和webnn-gpu
進行硬件加速來運行此模型。
<!DOCTYPE html>
<html>
<body>
<h1>WebNN Transformers.js Intel/polite-guard</h1>
<script type="module">
import { pipeline } from "https://cdn.jsdelivr.net/npm/@huggingface/transformers";
const classifier = await pipeline("text-classification", "Intel/polite-guard", {
dtype: "fp32",
device: "webnn-gpu",
});
const text = "Your input text";
const output = await classifier(text);
console.log(`${text}: ${output[0].label}`);
</script>
</body>
</html>
✨ 主要特性
- 可擴展的模型開發:提供可擴展的模型開發管道和方法,方便開發者創建和微調自己的模型。
- 增強魯棒性:為系統提供對抗攻擊的防禦機制,確保模型在面對潛在有害輸入時仍能保持性能和可靠性。
- 基準測試與評估:引入首個禮貌基準,幫助開發者評估和比較模型在禮貌分類方面的性能。
- 提升客戶體驗:確保在各種平臺上進行尊重和禮貌的交互,顯著提高客戶滿意度和忠誠度。
📦 安裝指南
文檔未提供安裝步驟,暫不展示。
💻 使用示例
基礎用法
from transformers import pipeline
classifier = pipeline("text-classification", "Intel/polite-guard")
text = "Your input text"
output = classifier(text)
print(output)
高級用法
<!DOCTYPE html>
<html>
<body>
<h1>WebNN Transformers.js Intel/polite-guard</h1>
<script type="module">
import { pipeline } from "https://cdn.jsdelivr.net/npm/@huggingface/transformers";
const classifier = await pipeline("text-classification", "Intel/polite-guard", {
dtype: "fp32",
device: "webnn-gpu",
});
const text = "Your input text";
const output = await classifier(text);
console.log(`${text}: ${output[0].label}`);
</script>
</body>
</html>
📚 詳細文檔
模型信息
屬性 |
詳情 |
模型類型 |
BERT*(雙向編碼器表徵,Bidirectional Encoder Representations from Transformers) |
架構 |
微調的 BERT-base uncased |
任務 |
文本分類 |
源代碼 |
https://github.com/intel/polite-guard |
數據集 |
https://huggingface.co/datasets/Intel/polite-guard |
標籤說明
- 禮貌(polite):文本體貼,表現出尊重和良好的禮儀,通常包含禮貌用語和友好的語氣。
- 有點禮貌(somewhat polite):文本通常是尊重的,但缺乏熱情或正式感,以得體的禮貌程度進行交流。
- 中立(neutral):文本直接且基於事實,沒有情感暗示或特別的禮貌表達。
- 不禮貌(impolite):文本不尊重或粗魯,通常直言不諱或不屑一顧,表現出對接收者感受的不考慮。
模型細節
- 訓練數據:該模型在 禮貌衛士數據集 上進行訓練,使用了英特爾® Gaudi® AI加速器。訓練數據集由跨多個領域的合成客戶服務交互組成,包括金融、旅遊、食品和飲料、零售、體育俱樂部、文化和教育以及專業發展。
- 基礎模型:BERT-base,有12層,1.1億個參數。
- 微調過程:使用PyTorch Lightning*在禮貌衛士訓練數據集上進行微調,使用以下超參數:
超參數 |
批量大小 |
學習率 |
學習率調度 |
最大輪數 |
優化器 |
權重衰減 |
精度 |
值 |
32 |
4.78e - 05 |
線性預熱(步驟的10%) |
2 |
AdamW |
1.01e - 06 |
bf16 - 混合 |
使用Optuna*通過貝葉斯優化和樹結構Parzen估計器(TPE)算法進行了35次試驗,以最大化驗證F1分數。超參數搜索空間包括:
學習率:[1e - 5, 5e - 4]
權重衰減:[1e - 6, 1e - 2]
微調過程使用了Optuna的剪枝回調來終止表現不佳的超參數試驗,並使用模型檢查點來保存表現最佳的模型狀態。

合成數據生成和微調的代碼可以在 這裡 找到。
指標
以下是模型在包含合成和手動標註數據的測試數據集上的關鍵性能指標:
- 準確率:在禮貌衛士測試數據集上為92%。
- F1分數:在禮貌衛士測試數據集上為92%。
文章參考
加入社區
如果您有興趣探索其他模型,歡迎加入英特爾和Hugging Face社區。這些模型簡化了生成式AI解決方案的開發和採用,同時促進全球開發者的創新。如果您認為這個項目有價值,請在Hugging Face上點贊❤️ 並與您的人脈分享。您的支持有助於我們擴大社區並吸引更多貢獻者。
免責聲明
禮貌衛士在有限的客戶評論、產品評論和企業通信數據集上進行了訓練和驗證。在這些狹窄用例之外,無法保證準確性指標,因此應在具體使用場景中驗證此工具。此工具不用於評估員工績效,在許多情況下不足以防止傷害,在不禮貌言論可能對個人、社區或社會造成傷害的任何敏感用例中,應使用其他工具和技術。
隱私聲明
請注意,禮貌衛士模型使用AI技術,您正在與聊天機器人進行交互。演示期間使用的提示不會被存儲。有關收集的個人數據處理信息,請參考 全球隱私聲明,其中涵蓋了我們的隱私實踐。
🔧 技術細節
文檔中關於技術細節的描述已在詳細文檔中體現,此處不再重複。
📄 許可證
本項目採用Apache 2.0許可證。