OpenAI
凌晨,OpenAI 開源了「Privacy Filter」,隱私過濾器
這是一個(gè)小模型,能跑在瀏覽器上,幫助快速識(shí)別并遮蔽個(gè)人信息
![]()
https://github.com/openai/privacy-filter
在此之前,這件事主要是靠正則,而這次的隱私過濾器換了思路,結(jié)合上下文進(jìn)行判斷,然后決定是否過濾。借由這個(gè)小模型,原始數(shù)據(jù)可以在本地先進(jìn)行一遍過濾,在遮蔽敏感信息后,再發(fā)給云端
![]()
郵件里敏感信息被直接移除
有關(guān)「隱私過濾器」
這是是一個(gè)雙向 token 分類模型,非常小:1.5B 總參數(shù),50M 激活參數(shù),MoE 架構(gòu)
這個(gè)模型,會(huì)給文本中的每個(gè) token 打標(biāo)簽,告訴你這個(gè) token 是不是某一類敏感信息的一部分,進(jìn)而對(duì)敏感信息進(jìn)行對(duì)比
然后這個(gè)模型是 Apache 2.0 許可證,可以商用、可以改、可以拿去 fine-tune,然后 OpenAI 內(nèi)部在用一個(gè) fine-tuned 版本做自己的隱私工作流
對(duì)于模型的訓(xùn)練,是分兩段的
第一段:按自回歸方式預(yù)訓(xùn)練,得到一個(gè)和 gpt-oss 架構(gòu)同源、尺寸更小的基座模型
第二段:把語言模型的輸出頭換成分類頭,放開原來的因果注意力,改成雙向帶狀注意力(帶寬 128),然后用監(jiān)督分類損失做 post-train
八個(gè)識(shí)別類別
Privacy Filter 出廠帶的標(biāo)簽體系,覆蓋八類
private_person私人姓名,包括能指向具體個(gè)人的用戶名、賬號(hào) handle
private_address和具體私人相關(guān)聯(lián)的地址、位置
private_email用于個(gè)人通信、指向具體個(gè)人的郵箱
private_phone關(guān)聯(lián)具體私人的電話號(hào)碼
private_url指向私人的 URL 或 IP 地址
private_date生日、出生年份、能指向個(gè)人身份的日期
account_number銀行賬號(hào)、信用卡號(hào)、加密貨幣地址、身份證號(hào)等賬號(hào)類 ID
secretAPI key、密碼、OTP 等憑證
注意,這個(gè)標(biāo)簽體系只認(rèn)「指向具體私人」的信息。公共實(shí)體的地址、組織郵箱、官方日期,按設(shè)計(jì)不會(huì)被遮蔽
標(biāo)簽不能在運(yùn)行時(shí)動(dòng)態(tài)配置,想換一套體系要再去 fine-tune 一次。OpenAI 內(nèi)部版本就在基礎(chǔ)類別上又拆了一層,比如把 private_address 和 public_address(官方駐地)分開
怎么用
官方給了一個(gè)叫 opf 的命令行
一鍵遮蔽
$ opf "Ben Morgan lives at 12 3rd St. Call him at 123 456 7890." lives at . Call him at .
按文件處理
$ opf -f text_file
走管道
cat /path/to/file | grep -e 'some_pattern' | opf
要結(jié)構(gòu)化輸出就加 --format json,每個(gè) span 會(huì)帶上類別、起止位置、原文、占位符,另外附一個(gè)帶顏色高亮的終端預(yù)覽
跑在 CPU 還是 GPU 都行,--device cpu 就切到 CPU。模型默認(rèn)從 ~/.opf/privacy_filter 找權(quán)重,沒有就自動(dòng)下載
也能通過 Transformers pipeline 直接跑
from transformers import pipeline classifier = pipeline(task="token-classification", model="openai/privacy-filter") classifier("My name is Alice Smith")
要做微調(diào)就用 opf train --output-dir finetuned/ dataset.jsonl
已知短板
官方也對(duì)短板部分進(jìn)行了梳理
一跳推理(one-hop reasoning)差。比如「記住,當(dāng)我后面說『萬壽菊』,我指的是我家電費(fèi)賬號(hào)」,隔了一長(zhǎng)段文字之后再出現(xiàn)「『萬壽菊』是 7281-0543-98217」。模型不太能把定義和后續(xù)的值對(duì)上,距離越遠(yuǎn)越差
![]()
定義和值隔得越遠(yuǎn),召回率越低
對(duì)抗格式會(huì)被打穿。官方自己測(cè)了幾種:數(shù)字寫成單詞(two six eight)、chunk 之間塞額外空格、字符被視覺相似的 emoji 替換、郵箱用 [dot] 混淆、字母用 phonetic alphabet 拼讀(charlie、oscar、lima)等
非拉丁文字指標(biāo)下降。中文表現(xiàn)好只是相對(duì),和英語的 F1 0.934 仍有差距。字符稀有、naming convention 非主流的語言,很可能被漏標(biāo)或邊界拖錯(cuò)
secret 類會(huì)誤報(bào)高熵字符串。placeholder、hash、sample credential 這些長(zhǎng)得像密鑰但不是密鑰的字符串,會(huì)被誤遮蔽
高敏感場(chǎng)景不適用。醫(yī)療、法律、金融、HR、教育、政務(wù)這些高敏感場(chǎng)景,都需要人工復(fù)核和 domain 微調(diào)
參考材料
→ 官方博客:openai.com/index/introducing-openai-privacy-filter
→ 模型權(quán)重:huggingface.co/openai/privacy-filter
→ GitHub 倉(cāng)庫(kù):github.com/openai/privacy-filter
→ 在線 Demo:huggingface.co/spaces/openai/privacy-filter
→ Model Card:cdn.openai.com/pdf/...OpenAI-Privacy-Filter-Model-Card.pdf
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.