Zero-Shot Prompting(零樣本提示)是最基礎的 AI 提示方式:直接給模型一個任務描述,不提供任何示範例子,期待它根據自己的訓練知識完成任務。
「零樣本」這個名字來自機器學習的術語——「樣本」指的是示範例子,「零樣本」就是「不提供示範,直接做」。和它相對的概念是 Few-Shot Prompting(提供幾個例子)和 One-Shot Prompting(提供一個例子)。
為什麼 Zero-Shot 對現代 LLM 效果這麼好?因為 Claude 這樣的模型在訓練過程中見過幾十億個各種任務的示範,它已經「內建」了大量任務類型的理解。你說「幫我寫一封給客戶的道歉郵件」,Claude 不需要你先給它看一封好的道歉郵件,它已經從訓練資料裡理解了道歉郵件的結構、語氣和要素。
在 GPT-3 之前的年代,Zero-Shot 的效果很差,幾乎所有任務都需要提供示範例子。現在的大型語言模型讓 Zero-Shot 成為日常使用的主要方式。
Zero-Shot 在什麼情況下效果最好?什麼情況下需要升級到 Few-Shot?
Zero-Shot 效果最好的情況:
通用性高的任務——翻譯、摘要、改寫、解釋概念、回答問題。這些任務的「正確做法」在 Claude 的訓練資料裡有大量示範,Zero-Shot 通常能直接得到高品質的輸出。
格式要求不特殊的任務——你要的輸出格式是常見的(標準郵件格式、一般的條列清單、正常的段落文章)。
需要升級到 Few-Shot 的情況:
非常特定的風格要求——你有一個獨特的品牌語氣、或者特定的寫作風格,用文字描述說不清楚,直接給幾個範例更有效。
複雜的自定義輸出格式——你需要的輸出有非常特定的結構(特定的表格欄位、特定的 JSON 格式、特定的編號方式),與其花很多文字描述,不如直接給一個範例。
一致性要求高的批量任務——你需要處理 100 個相同類型的任務,每個輸出都要保持高度一致的格式。給一個範例能大幅降低輸出的變異性。
實用判斷標準:先用 Zero-Shot 試一次;如果輸出的內容對但格式不對,加上詳細的格式說明(仍然是 Zero-Shot 的變體);如果還是不對,才升級到 Few-Shot。
Zero-Shot Prompting 有哪些簡單但有效的改善技巧?
即使在 Zero-Shot 的框架內(不提供範例),有幾個小技巧能顯著提升輸出品質:
明確說明角色和對象——「你是一個有 10 年經驗的 B2B 行銷顧問,請為一個 SaaS 新創公司的 CEO 寫一份市場分析」比「寫一份市場分析」效果好很多。角色設定讓 Claude 知道用什麼知識框架和語境。
指定輸出格式和長度——「用三個要點總結,每個要點一句話」比「幫我總結一下」更容易得到你要的格式。
說明目的和受眾——「這份說明是要給完全不懂技術的主管看的」讓 Claude 知道要用什麼程度的語言。
用「讓我們一步一步思考」(Chain-of-Thought)——對需要推理的任務,在提示詞最後加上「請一步一步思考後再給出結論」,能讓 Claude 在給出答案前先做更多推理,結果通常更準確。
這些技巧都不需要你提供範例(所以仍然是 Zero-Shot),但能讓 Zero-Shot 的效果大幅提升,通常夠用,不需要升級到 Few-Shot。
Zero-Shot 和其他提示技巧的關係是什麼?我應該從哪裡開始學?
Zero-Shot 是提示詞技巧的起點——幾乎所有人都從這裡開始。理解了 Zero-Shot 之後,提示詞技巧的學習路徑大概是:
Zero-Shot(現在)→ 加上角色設定(Role Prompting,讓輸出更專業)→ 加上詳細格式說明(讓輸出更符合需求)→ Few-Shot(提供幾個範例,改善格式一致性)→ Chain-of-Thought(讓 Claude 先思考後回答,改善推理質量)。
對大多數日常使用者:掌握好 Zero-Shot + 角色設定 + 詳細格式說明,已經能處理 80% 的使用場景。Few-Shot 和 Chain-of-Thought 是在特定場景下的升級工具,不是每次都需要。
對開發者和進階用戶:理解 Zero-Shot 的局限性(需要明確指令、格式控制依賴文字描述)能幫你決定什麼時候值得花額外努力升級到 Few-Shot 或其他更複雜的技巧。
跟你的實際使用有什麼關係:你現在問 Claude 的方式就是 Zero-Shot。要讓它更好用,最有效的起步不是學新技巧,而是把 Zero-Shot 用好——說清楚你的角色、你的受眾、你要的格式,這三件事做到位,大多數任務的輸出品質就能大幅提升。
同樣一個任務「幫我寫一封郵件」,Zero-Shot 提示詞品質對結果影響有多大:
低品質 Zero-Shot:「幫我寫一封郵件給客戶說我們要延遲交貨」 → Claude 可能寫出一封很制式、語氣生硬的郵件,因為它不知道你和客戶的關係、延遲多久、原因是什麼。
高品質 Zero-Shot:「我是一家軟體開發公司的專案經理。我需要寫一封郵件給合作三年的長期客戶(金融科技公司的 CTO),告知原定本週五的功能交付需要延後兩週,原因是我們在最後測試階段發現了一個影響資料安全的 bug,正在修復。語氣要誠懇但專業,說明問題的嚴重性和我們的謹慎態度,但不要過度道歉。300 字以內,繁體中文。」 → Claude 能產出一封語氣、內容、長度都符合需求的郵件草稿。
兩個提示詞都是 Zero-Shot(都沒有給範例),但第二個提供了足夠的上下文,讓 Claude 能做出有針對性的判斷。這就是 Zero-Shot 用得好和用得差的差距。
Zero-Shot 的核心取捨是「簡便性 vs 輸出可預測性」。不給範例的好處是快速——你直接說需求,不需要準備示範材料。代價是輸出的格式和風格更難精確控制,Claude 會根據它對任務的理解做出判斷,這個判斷可能和你的預期有出入。Few-Shot 的好處是輸出更可預測、格式更一致,代價是需要花時間準備高品質的示範例子。對大多數日常任務,Zero-Shot 的簡便性優先;對需要高度一致輸出的批量任務或有非常特定格式要求的任務,投資時間準備好的 Few-Shot 示範例子是值得的。