我們和人類 (家人、朋友或同事) 的交流,有沒有像與 LLM 互動那麼講究
從「提示工程」當中反思「與人提問」如何能更加同理且高效
🦥
早安,這週目前都進行的順利嗎?我這週還蠻忙的,有兩場需要公開演說的場合,要一直講話,對於不擅長持續發聲的我真是一大挑戰。
其中一場演講是關於 “LLM 驗證與稽核” 主要就是將之前的文章 《企業導入 LLM 的資安藍圖: 風險, 框架與對策》再作一個梳理然後用投影片的方式呈現。
演說和寫作感覺有點不同,寫作的話可以慢慢的思考,而演說常會有一些臨場反應,強度比較高,有時候自己講完腦中也會迸出一些更好的敘事方法。不論哪種方法,根據 “Explaination Effect”,只要表達出來,都是最好的學習方式。
🦥
❏ 引言
在那場演說中,我提到 LLM 技術對於資安提出了三大挑戰:1. 非確定性 2. 更複雜的資料生命週期導致的攻擊面積增加 3. 模型權限與資料權限的不匹配。
這期我們來聊聊最重要的 “非確定性”:LLM 可以舉一反三,同樣的問題再問一次他會用不同的方式回答,這對創造類的任務來說是革命性的優點 — 但是,對資安來說,我認為會是一場災難 (當然其中有蘊含大量的機會)。
也因為這個 “不確定性”,出現了提示工程 (Prompt Engineering) 這樣的學問,甚至也出現了 專門研究如何與模型互動以榨出模型最佳表現 的工作崗位 “提示工程師 (Prompt Engineer)”。
我不禁想,我們和人類 (家人、朋友或同事) 的交流,有沒有像與 LLM 互動那麼講究。在問 ChatGPT 的時候,我會清楚的交代上下文,也會和 GPT 說我希望他在任務中扮演什麼角色,以及我對於任務成果的期待,甚至有時候還會透過一問一答慢慢耐心的引導它。
是不是可以從提示工程當中去反思「與人提問」如何能更加同理且高效呢?
.
📍 大綱
❏ 尊重對方
❏ 提供充分的上下文
❏ 通過協作迭代來完善理解
❏ 不要迴避困難或探究性的問題
❏ 清晰溝通
🦥 嘿,我是 Browny。
《非正式寫作》著墨琢磨 技術趨勢、溝通領導、概念理解 與 生活實踐。
每週一四派送,免費訂閱起來👇
🔍 工人智慧猜你也喜歡
❏ 尊重對方
既然是請教對方,代表你相信對方的知識和經驗可以協助你解決問題,做好前期的準備就相當重要 (DYOR: Do Your Own Research)。至少對將要提出的問題,有一個明確的範疇理解,不然對方很難回答開放式或是過於抽象的問題。
AI 工具的好處就是,你可以隨時重啟對話,他不會因為先前對話的冒犯而記恨於你。所以要向真人提問的時候,不妨先跟 AI 練習一下,請他列出你的提問有哪些可以優化的地方,如下:
👦:請針對下列的提問,提出優化該提問的方法:
GCP 的 log 可以跨專案存放嗎? 可以限制某些人可以看到某部分的 log 嗎?
🤖:為了優化這個提問,我建議可以從以下幾個方面進行調整:
1. 分開問題:將兩個不同的問題分開,以便得到更精確的回答。
2. 使用更具體的術語:例如,使用"Cloud Logging"而不是泛泛的"log"。
3. 提供更多背景信息:說明為什么需要這些功能,或者在什麼場景下使用。
4. 詢問具體的實現方法:如果知道這些功能是可能的,可以直接詢問如何實現。
5. 詢問替代方案:如果不確定這些功能是否存在,可以詢問是否有其他方式達到類似的目的。
優化後的問題可能如下:
1. "在Google Cloud Platform (GCP)中,Cloud Logging是否支持跨項目存儲日誌?如果支持,具體應該如何配置?"
2. "GCP的Cloud Logging有哪些方法可以實現對日誌訪問的細粒度控制?是否可以限制特定用戶只能查看部分日誌,如果可以,該如何設置?"
3. "在一個多團隊使用同一GCP項目的環境中,我們希望實現日誌的集中管理,同時保證不同團隊只能訪問自己的日誌。GCP的Cloud Logging是否提供這樣的功能?如果沒有,有什麼替代方案可以達到類似的效果?"
這樣的問題更加具體,更容易得到準確和有用的回答。
可以看到,AI 其實會將問題拆解,然後建議一些他覺得更好的提問方法。這些建議都是很好的 DYOR 素材,花一些時間就這些項目上網找一下答案。如果真的找不到,利用和 AI 的模擬練習,草擬一個提問流程,這樣在向專家請教的時候,對方也會覺得你是做好功課才來的 👍
.
❏ 清晰溝通
提示工程和有效的人際溝通都依賴於清晰簡潔的語言。使用精確的術語,避免行話,並邏輯地構建問題以減少歧義。
在提問的過程中,也可以適時請對方描述一下對於截至當前討論的理解,是不是和你一致,再繼續下去。避免其實對方誤解了你的問題,還努力的朝錯誤的方向想解法。
.
❏ 提供充分的上下文
在向 AI 模型提問時,提供足夠的背景和任務相關資訊至關重要:像是 Few-Shot Prompting (提供少樣範例)、Chain of Thought (請 AI 拆解他的思維步驟成 step by step 的形式) 等技巧。
同樣,在與人交流時,為對方提供清晰的 問題背景 和 你當前對於這個問題的 Chain of Thought。通過 設定情境 (你的問題從何而來) 並概述 你的思考過程 (你目前的想到的解決步驟有哪些,卡在哪個地方),能讓對方提供更相關和全面的答案。
.
❏ 通過協作迭代來完善理解
提示工程是基於 AI 模型的回應來反覆優化提示的過程。需要仔細觀察微小的輸入變化,對於模型輸出表現的影響。
將這種方法應用於人際互動中,就是要積極傾聽、提出澄清問題,並努力確保相互理解。如果最初的回應不符合預期,不要害怕重新表述問題或是從不同角度切入。將對話視為一個動態的共同創造過程,雙方都為達成共識做出貢獻。
.
❏ 不要迴避困難或探究性的問題
提示工程師經常通過具有挑戰性的任務來推動 AI 模型的能力邊界 (比如詢問模型開放性的問題、或是請模型做出策略性的規劃和方案)。同樣,在人際互動中提出發人深省的問題可以帶來更深入的見解和更有意義的對話。
在提問的過程,一開始可能是針對具體的事實或困難進行討論,隨著討論持續推進,有可能會碰觸到 ”元問題”:也就是為什麼會產生這個問題的問題。
不要害怕將討論推的更深入,不要害怕挑戰既有假設。展現出好奇心,就有機會從專家身上挖掘到更多的洞見與寶藏。
.
❏ 結語
模型可能會反過來向人類提問,以收集完成任務所需要的資訊
前陣子從這個影片 (四個 Anthropic提示工程師對 prompt engineering 的深度對談) 學到許多 (強力推薦),雖然講的是技術但是很多東西已經上升到哲學層面:
有時候,直接用口語表達你希望模型完成的任務,並將其錄音轉為文字作為提示,可能比精心設計的提示工程技巧更為有效。這是因為人們在面對文字輸入框時,往往會不自覺地簡化或省略一些細節 (這也是用文字與人溝通複雜問題很困難的原因)。
隨著模型的強大,未來的提示工程或許會變成直接將模型當作是一個「真實的人」一樣的和他溝通,不再需要什麼 few-shot prompting, chain of thought 之類的技巧。
模型可能會變得更擅長從人類這裡獲取完成任務所需的信息,換句話說,模型可能會反過來向人類提問,以收集完成任務所需要的資訊 (我們被模型 Prompt Engineering 了 😅)。
不變的是,如何將你理解的複雜概念,以清晰的方式傳達給能獨立思考但對該主題完全陌生的人,這種將思維外化的闡述或寫作能力,正是提示工程所需要的關鍵技能。也是我們向專家提問所需要的關鍵技能。
~
🔖 參考資料
[1] The Surprising Power of Questions - https://hbr.org/2018/05/the-surprising-power-of-questions
[2] How to Ask a Smart Question - https://web.archive.org/web/20180107021115/http://faculty.gvc.edu/ssnyder/121/Goodquestions.html
[3] A Quick Guide To Asking Better Questions - https://marcvollebregt.medium.com/a-quick-guide-to-asking-better-questions-6b0dd6a2501
[4] How to ask good questions - https://jvns.ca/blog/good-questions/
[5] The 7-step checklist to ask a great question (People will always answer) -