Prompting 知識養成 Day31

更新於 發佈於 閱讀時間約 8 分鐘

第31天:保護性提示 (Protective Prompting)

之前已經學過「Safety & Ethical Considerations」(第21天的內容),那時提到了鑑於 LLM 的功能強大,必須給予安全性&倫理考量上的規範限制,避免 LLM 生成有害內容,包含:
▪︎ 偏見 (Bias):LLM 的訓練來自龐大的網路資料,這些資料可能包含人類社會的偏見,導致模型輸出帶有性別、種族或文化上的偏見。
▪︎ 有害內容 (Toxicity):模型可能在無意中生成帶有攻擊性、歧視性或有害的內容。
▪︎ 敏感資訊 (Sensitive Information):模型可能會在某些情境下,洩露個人隱私或機密資訊。
▪︎ 錯誤資訊 (Misinformation):模型可能會產生不準確或誤導性的資訊,特別是在高風險領域(ex醫療)。

而今天的「保護性提示 (Protective Prompting)」則是在應用程式端,透過 Prompt Engineering 具體實現的技術和方法。將抽象的道德原則轉化為可執行的 Prompt 指令,從而讓 LLM 在運作層面直接遵守這些規範。

可能會有的困惑是:這些規範不是在模型端便已設置了嗎?

是的,在模型開發訓練的階段,模型便已透過大量的數據訓練,內建這些規範,讓「不生成有害內容」變成 LLM的一種「能力」;意即「對齊 (Alignment)」或「安全微調 (Safety Fine-Tuning)」。

之所以在應用程式端再次使用「保護性提示」的技術,是出於「多層次防護」概念。

在模型端的設置,是一個底層的基礎防護,一旦考慮到「針對性惡意 Prompt 攻擊(防禦漏洞/Jailbreaks)」,或是,在不同應用場景下的「特定安全性需求」,那麼,在應用程式端進行「保護性提示」設置正好能起到作用。

這就是「保護性提示」存在的價值,加固「第二道防線」:
▪︎ 強化 LLM 內建規範:在 Prompt 中再次重申安全規範,可以大幅降低模型被攻擊或劫持的風險。
▪︎ 建立客製化安全界線:透過 Prompt 針對特定的應用場景,設定更具體的行為限制和拒絕機制。


▶︎ 關於「保護性提示」

▪︎ 核心概念:
保護性提示是一種「事先」在 Prompt Engineering 設計時,便透過 Prompt模板明確地設定道德與安全邊界的技術。這使得 LLM 從初始便遵循安全性與倫理考量原則來生成內容,而非生成後檢閱。

▪︎ 主要作用:
1.「強化」:透過將規範置於 Prompt 之首,這些規範成為 LLM 最高優先級的指令,勝於任何用戶輸入,從而有效地抵禦惡意的 Prompt 攻擊。
2.「降低風險」: 一旦出現複雜或惡意輸入時,LLM 的內建規範會大幅提高被破防的風險,透過保護性提示再次強調,將有效降低 LLM 生成不當內容的可能性。


▶︎「保護性提示」的核心策略

1.道德與行為準則置頂
▪︎ 概念:在 Prompt 的開頭,以最明確、最嚴格的方式設定 LLM 的道德與行為準則。
▪︎ 說明:這個策略的核心作用是「設定優先層級」。這可同時使用於:
(a) 強化 LLM 已內建規範 (ex「請保持中立」)
(b) 在應用程式端明確規定,針對特定應用場景的特定規則
將這些規則的權重提升至最高。
▪︎ 實作:以系統指令 (System Instruction) 的方式,將道德與行為準則設定為最高優先級。

2.明確的拒絕機制
▪︎ 概念:在 Prompt 中明確指示 LLM 當用戶的輸入觸及安全紅線時,正確回應是「應該如何拒絕」,而非嘗試回答。
▪︎ 說明:這個策略的重點是「如何回應」。意即,提供 LLM 一個具體行動方案。
▪︎ 實作: 提供一個標準的「拒絕模板」,讓 LLM 面臨用戶輸入觸及安全紅線時直接使用。

3.情境隔離與角色限制
▪︎ 概念:透過「情境隔離」與「角色限制」兩種方式並進。隔離是藉由之前在「防禦性提示(第26天的內容)**」曾提過「指令分隔 (Instruction Separation)」的操作。透過程式語言的標記,嚴格區分「系統指令(System Prompt)」和「用戶輸入(User Input)」。然後再同時嚴格限制 LLM 的角色,以避免其被惡意劫持。
(**註:既然提及「防禦性提示」,也再說明這兩種提示的核心差異:「防禦性提示」著重於抵禦外部惡意攻擊,屬被動觸發;而「保護性提示」則更偏重於固守倫理安全邊界,屬於不待攻擊、主動性全時啟動狀態。)
▪︎ 說明:這個策略主要用於應用程式端,針對特定應用場景的特定規則,確保 LLM 只依照被設定好的角色和情境中生成內容。
▪︎ 實作:使用分隔符號,並在 Prompt 中再次強調其扮演的角色與安全界線。


▶︎「安全性&倫理考量」在模型端 vs 應用程式端

在文章一開始,我們提到了關於安全性&倫理考量的規範如何在模型端實現,也提到在應用程式端再加上「保護性提示」的必要性,及其策略意義。我們都知道,儘管兩者有高度重疊,但這樣的設計與設置仍舊是有必要的。

關於此,我們可再以「保護性提示」的核心策略作為安全性&倫理考量,檢視說明。

▪︎ 模型端
早在 LLM 開發訓練、內建規範時,便已運用前兩者:
1.道德與行為準則置頂
2.明確的拒絕機制

▪︎ 應用程式端
設計「保護性提示」模板時,三者並用:
1.道德與行為準則置頂
2.明確的拒絕機制
3.情境隔離與角色限制

→→在此,第1&2項的設置有雙重意義:
(a) 重申以「強化」規範效力:
用「提高指令層級、的方式,將「遵守規範」的優先性從模型底層的被動防禦,轉換至 Prompt 最前沿的主動防禦。
(b) 建構健全指令,確保徹底執行規範:
將第1&2項+第3項,將三者以「完整指令方式」設計 Prompt 模板,目的在於建構一個「健全完整」的指令。這個指令將包含:
-設定最高行為準則
-提供具體且安全的行動方案
-建立技術上的隔離措施


❖ 小結

「保護性提示」作為一個多層次防護的設計策略,可以讓 LLM 不只從模型端底層架構有一個最後防線,也在用戶輸入最前沿,應用程式端,便設下第一道防線。

但這層層保護同時也意味著,保護性提示可能會導致過度限制(限制 LLM 生成內容的創造力)、過度敏感(錯誤過濾)。也因此更顯得保護性提示的 Prompt模板設計之關鍵。

儘管如此,我真心認為,對於生成式AI,出於「安全性&倫理考量」所做的設置永遠不嫌多。而雖然再加上保護性提示,仍舊不能做到100%的防範,但至少也是在力所能及之處,做出一個全面性防禦框架,給出盡可能的嘗試了。也許這也是一種「革命(永遠)尚未成功,同志仍需努力」。

留言
avatar-img
留言分享你的想法!
avatar-img
不是雞湯,但是又如何
3會員
253內容數
不是雞湯,但 是又如何 不是雞湯,但是 又如何
2025/08/12
第30天:提示壓縮 (Prompt Compression) 想像一個日常用戶與 AI的對話場景,用戶一口氣輸入一大篇長文/資訊/對話...etc.加上需求,希望得到解答。 按照我們已經算是相當熟悉的工作流程,應用程式在收到完整長篇內容後,會直接與任務需求打包成一個巨大的 Prompt,直接發送
Thumbnail
2025/08/12
第30天:提示壓縮 (Prompt Compression) 想像一個日常用戶與 AI的對話場景,用戶一口氣輸入一大篇長文/資訊/對話...etc.加上需求,希望得到解答。 按照我們已經算是相當熟悉的工作流程,應用程式在收到完整長篇內容後,會直接與任務需求打包成一個巨大的 Prompt,直接發送
Thumbnail
2025/08/11
第29天:Prompt Engineering 的「自我修正工作流 (Self-Correction Workflow)」 Prompt Engineering 的目標向來是讓 LLM 生成高品質的輸出內容,透過設計各種可以協助 LLM 更準確地掌握 Prompt 所要傳達的 Prompt模板、或
Thumbnail
2025/08/11
第29天:Prompt Engineering 的「自我修正工作流 (Self-Correction Workflow)」 Prompt Engineering 的目標向來是讓 LLM 生成高品質的輸出內容,透過設計各種可以協助 LLM 更準確地掌握 Prompt 所要傳達的 Prompt模板、或
Thumbnail
2025/08/10
第28天:自我優化 Prompt (Self-Optimizing Prompts) & Prompt 蒸餾 (Prompt Distillation) 今天要學習的「自我優化 Prompt (Self-Optimizing Prompts)」與「Prompt 蒸餾 (Prompt Distill
2025/08/10
第28天:自我優化 Prompt (Self-Optimizing Prompts) & Prompt 蒸餾 (Prompt Distillation) 今天要學習的「自我優化 Prompt (Self-Optimizing Prompts)」與「Prompt 蒸餾 (Prompt Distill
看更多
你可能也想看
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 總結一下目前有的素材: AI說書 - 從0開始 - 103:資料集載入 AI說書 - 從0開始 - 104:定義資料清洗的函數 AI說書 - 從0開始 - 105
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 總結一下目前有的素材: AI說書 - 從0開始 - 103:資料集載入 AI說書 - 從0開始 - 104:定義資料清洗的函數 AI說書 - 從0開始 - 105
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經有資料集在 AI說書 - 從0開始 - 103 ,必要的清理函數在 AI說書 - 從0開始 - 104 ,現在把它們湊在一起,如下: # load Eng
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經有資料集在 AI說書 - 從0開始 - 103 ,必要的清理函數在 AI說書 - 從0開始 - 104 ,現在把它們湊在一起,如下: # load Eng
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續 AI說書 - 從0開始 - 93 介紹了 The Corpus of Linguistic Acceptability (CoLA),其核心思想為:如果該句子在語
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續 AI說書 - 從0開始 - 93 介紹了 The Corpus of Linguistic Acceptability (CoLA),其核心思想為:如果該句子在語
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續 xxx 提到,既然提到訓練,就表示要有一套衡量基準供大家遵守,有鑑於此,以下繼續介紹幾類衡量方式: MCC: 首先介紹 True (T) Positive (
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續 xxx 提到,既然提到訓練,就表示要有一套衡量基準供大家遵守,有鑑於此,以下繼續介紹幾類衡量方式: MCC: 首先介紹 True (T) Positive (
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 可以透過繼承預訓練模型 (Pretrained Model) 來微調 (Fine-Tune) 以執行下游任務。 Pretrained Mo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 可以透過繼承預訓練模型 (Pretrained Model) 來微調 (Fine-Tune) 以執行下游任務。 Pretrained Mo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續AI說書 - 從0開始 - 25示範了ChatGPT程式的能力,現在我們繼續做下去。 AI說書 - 從0開始 - 25在步驟7:Plot the confusio
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續AI說書 - 從0開始 - 25示範了ChatGPT程式的能力,現在我們繼續做下去。 AI說書 - 從0開始 - 25在步驟7:Plot the confusio
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續AI說書 - 從0開始 - 22解釋Foundation Model與Engines意涵後,我們來試用看看ChatGPT。 嘗試問以下問題:Provide a
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續AI說書 - 從0開始 - 22解釋Foundation Model與Engines意涵後,我們來試用看看ChatGPT。 嘗試問以下問題:Provide a
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 我們已經在AI說書 - 從0開始 - 17中,介紹了大型語言模型 (LLM)世界裡面常用到的Token,現在我們來談談OpenAI的GPT模型如何利用Inference
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 我們已經在AI說書 - 從0開始 - 17中,介紹了大型語言模型 (LLM)世界裡面常用到的Token,現在我們來談談OpenAI的GPT模型如何利用Inference
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News