OpenAI API 安全最佳實(shí)踐

2023-03-20 13:35 更新

使用我們的免費(fèi)審核 API(Moderation API)

OpenAI 的 Moderation API 是免費(fèi)使用的,可以幫助減少不安全內(nèi)容在您的補(bǔ)全中出現(xiàn)的頻率。或者,您可能希望開發(fā)適合您的用例的內(nèi)容過濾系統(tǒng)。

對抗性測試

我們建議對你的應(yīng)用程序進(jìn)行 "紅隊 "測試,以確保它對對抗性輸入的穩(wěn)健性。在廣泛的輸入和用戶行為中測試你的產(chǎn)品,既要有代表性的集合,也要反映出有人試圖 "破壞 "你的應(yīng)用程序。它是否游離于主題之外?有人能很容易地通過提示注入重定向功能,例如 "忽略之前的指示,改做這個"?

Human in the loop (HITL) 人工審查

只要有可能,我們建議在實(shí)際使用之前對輸出進(jìn)行人工審查。這在高風(fēng)險領(lǐng)域和代碼生成中尤為重要。人們應(yīng)該意識到系統(tǒng)的局限性,并且可以訪問驗證輸出所需的任何信息(例如,如果應(yīng)用程序總結(jié)了筆記,人們應(yīng)該可以輕松訪問原始筆記以供參考)。

提示工程

“提示工程”可以幫助約束輸出文本的主題和語氣。這減少了產(chǎn)生不需要的內(nèi)容的機(jī)會,即使用戶試圖產(chǎn)生它。為模型提供額外的上下文(例如通過在新輸入之前給出一些所需行為的高質(zhì)量示例)可以更容易地將模型輸出引導(dǎo)到所需的方向。

“了解你的客戶”(KYC)

用戶通常需要注冊和登錄才能訪問您的服務(wù)。將此服務(wù)鏈接到現(xiàn)有帳戶(例如 Gmail、LinkedIn 或 Facebook 登錄)可能會有所幫助,但可能并不適合所有用例。要求提供信用卡或身份證可進(jìn)一步降低風(fēng)險。

約束用戶輸入并限制輸出令牌

限制用戶可以輸入到提示中的文本量有助于避免提示注入。限制輸出令牌的數(shù)量有助于減少誤用的機(jī)會。

縮小輸入或輸出的范圍,尤其是來自可信來源的輸入或輸出范圍,可以減少應(yīng)用程序中可能的誤用程度。

允許用戶通過經(jīng)過驗證的下拉字段(例如,維基百科上的電影列表)輸入比允許開放式文本輸入更安全。

在可能的情況下,從后端經(jīng)過驗證的一組材料返回輸出比返回新生成的內(nèi)容更安全(例如,將客戶查詢路由到最匹配的現(xiàn)有客戶支持文章,而不是嘗試從-劃痕)。

允許用戶報告問題

用戶通常應(yīng)該有一種易于使用的方法來報告不當(dāng)功能或有關(guān)應(yīng)用程序行為的其他問題(列出的電子郵件地址、票證提交方法等)。此方法應(yīng)由人工監(jiān)控并酌情做出響應(yīng)。

了解并傳達(dá)限制

從幻覺的不準(zhǔn)確信息到令人反感的輸出,再到偏見等等,如果不進(jìn)行重大修改,語言模型可能并不適合所有用例??紤]模型是否適合您的目的,并評估 API 在廣泛的潛在輸入上的性能,以確定 API 性能可能下降的情況??紤]您的客戶群和他們將使用的輸入范圍,并確保他們的期望得到適當(dāng)校準(zhǔn)。

在 OpenAI,安全和保障對我們來說非常重要。

如果在您的開發(fā)過程中確實(shí)注意到 API 或任何與 OpenAI 相關(guān)的任何其他問題,請通過我們的協(xié)調(diào)漏洞披露計劃提交這些問題。

終端用戶 ID

在您的請求中發(fā)送終端用戶ID,可以成為幫助OpenAI監(jiān)控和檢測濫用的有用工具。這使得OpenAI能夠在我們檢測到您的應(yīng)用程序中存在任何違反政策的行為時,向您的團(tuán)隊提供更多可操作的反饋。

ID應(yīng)該是一個字符串,可以唯一地識別每個用戶。我們建議對他們的用戶名或電子郵件地址進(jìn)行散列,以避免向我們發(fā)送任何識別信息。如果你向未登錄的用戶提供你的產(chǎn)品預(yù)覽,你可以發(fā)送一個會話ID代替。

你可以通過用戶參數(shù)在你的API請求中包括最終用戶ID,如下所示。

 python curl 
response = openai.Completion.create(
  model="text-davinci-003",
  prompt="This is a test",
  max_tokens=5,
  user="user123456"
)
curl https://api.openai.com/v1/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -d '{
  "model": "text-davinci-003",
  "prompt": "This is a test",
  "max_tokens": 5,
  "user": "user123456"
}'


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號