這是一篇國外的論文《Principled Instructions Are All You Need for Questioning LLaMA-1/2, GPT-3.5/4》研究如何有效提問大型語言模型寫出來的結論,有興趣的朋友可以參考。
本文介紹了26個指導原則,旨在簡化查詢和提示大型語言模型的過程。我們的目標是讓用戶更容易理解如何為不同規模的大型語言模型(LLMs)設計最佳的問題和指令,並提高這些模型在不同提示下的反應能力。我們對LLaMA-1/2(7B、13B和70B)和GPT-3.5/4進行了廣泛的實驗,以驗證所提出的原則在指令和提示設計中的有效性。希望這項工作能為研究大型語言模型提示工程的研究人員提供更好的指導。
介紹
大型語言模型(LLMs)如ChatGPT在多個領域和任務中展現了驚人的能力,如回答問題、數學推理、代碼生成等。然而,對於普通用戶來說,如何設計最佳的指令或提示仍然是一個挑戰。在本文中,我們旨在揭示這些神秘之處,幫助開發人員和一般用戶更好地與LLMs互動,並通過簡單地策劃更好的提示來提高預訓練LLMs的回應質量。
指導原則
提示結構和清晰度
- 無需對LLM禮貌,直接點明重點,省去「請」、「如果你不介意」、「謝謝」等詞語。
- 在提示中明確指出預期受眾,例如:「受眾是該領域的專家」。
- 將複雜的任務分解為一系列較簡單的提示,並進行互動式對話。
- 使用肯定的指令,如「做」,避免使用否定語言,如「不要」。
- 當需要澄清或深入了解某個主題、概念或資訊時,使用以下提示:
- 用簡單的術語解釋[插入特定主題]。
- 像對11歲孩子解釋一樣向我解釋。
- 像對[領域]的初學者解釋一樣向我解釋。
- 使用簡單的英文撰寫[文章/文字/段落],就像向5歲孩子解釋一樣。
明確性和資訊性
- 實施示例驅動的提示(使用少量示例提示)。
- 在提示中加入以下短語:「確保你的答案是公正的,不依賴於刻板印象。」
- 為了寫出類似於提供的樣本的文字,包含具體的指令:
- 「請根據提供的段落使用相同的語言。」。
- 當你想要用特定的詞語、短語或句子開始或繼續文本時,使用提供的提示結構:
- 我提供了開頭的[歌詞/故事/段落/文章]:[插入歌詞/詞語/句子]。根據提供的詞語完成它,保持一致的流暢性。
用戶互動和參與
- 允許模型通過向你提問來引出準確的細節和需求,直到它有足夠的訊息來提供所需的輸出:
- 「從現在起,我希望你問我問題,以...」。
- 撰寫詳細的[文章/文本/段落],在[主題]上詳盡地添加所有必要的訊息。
內容和語言風格
- 修正或更改特定文本而不改變其風格:
- 「嘗試修改用戶發送的每段文字。你應該只改進用戶的語法和詞彙,並確保它聽起來自然。不要改變寫作風格,例如將正式段落變為非正式。」
- 在提示中加入以下短語:「你的任務是」和「你必須」。
- 在提示中加入以下短語:「你將受到懲罰」。
- 為大型語言模型分配角色。
- 在提示中使用短語「以自然語言形式回答問題」。
複雜任務和編碼提示
- 將複雜的任務分解為一系列較簡單的提示,並進行互動式對話。
- 當你有複雜的編碼提示可能涉及不同的文件時,使用以下提示:
- 「從現在起,當你生成跨越多個文件的代碼時,生成一個[程式語言]腳本,該腳本可以運行自動創建指定的文件或對現有文件進行更改以插入生成的代碼。[你的問題]。」
- 結合思維鏈提示(CoT)和少量示例提示。
實驗結果
提升
使用所介紹的原則後,各種LLMs的回應品質都有顯著提高。特別是大型模型,如GPT-4,提升效果更加明顯。
正確性
使用這些原則後,回應的正確性也有了顯著提高。尤其是對於小型和中型模型,改進幅度基本達到20%到30%,對於大型模型,改進幅度超過50%。
結論
本文通過詳細分析,提出了26個原則,這些原則有助於LLM專注於輸入上下文的重要元素,從而生成高質量的回應。我們的實驗結果顯示,這種策略可以有效地重新組織可能會降低輸出品質的上下文,從而提高回應的相關性、簡潔性和客觀性。