ChatGPT 提示語工程的高級技巧:思維鏈 (CoT)、思維樹 (ToT)

Peter Chang
精選數位行銷部落格|中文
10 min readMay 9, 2024
ChatGPT 提示語工程的高級技巧:思維鏈 (CoT)、思維樹 (ToT)

在這篇部落格中,我們深入研究了Xavier Amatriain 的「提示語設計與工程:簡介和高級方法」,這是對 GPT-3 和 DALL-E 等LLM的提示語工程的全面檢查。我們的目標是對本文關於克服LLM限制的見解進行紮實的探索,例如記憶限制和過時資訊的傾向。

透過提示語範例和與LLM提供者的 API 集成,我們將應用本文探討的技術,包括思想鍊和檢索增強生成,展示人工智慧開發中的實際應用,並專注於專業實施。

什麼是提示語工程?

提示語工程是指設計和優化提示以引導語言模型的輸出。這是利用 GPT-3 和 DALL-E 等大型語言模型的一個關鍵步驟,這些模型以其生成類似人類文本的能力而聞名。

然而,如果沒有精心設計的提示指導,這些模型可能會產生不準確、有偏見或不相關的輸出。提示語工程涉及建立有效的提示以指導模型輸出,確保生成的文本符合使用者的意圖和需求。

為什麼提示語工程很重要?

提示語工程對於充分發揮語言模型的潛力並減輕其限制至關重要。通過提供清晰準確的提示,開發人員可以引導模型的回應,確保生成的文字準確、相關且符合使用者的需求。

尤其是在執行特定任務時(如內容生成、問答或語言翻譯),這一點尤為重要。如果沒有精心設計的提示,模型的輸出可能會不一致、有偏見或資訊不足,導致結果不理想和使用者不滿意。

提示語工程的關鍵技術

Xavier Amatriain 的文章「提示語設計與工程」探討了提示語工程中的幾個關鍵技術。這些技術旨在解決與語言模型相關的常見挑戰,並提供改進即時設計和工程的實用策略。

我們將透過程式碼範例探索如何利用 API 使用語言模型來實現這些技術。

下面,我們概述了本文中探討的幾種種技術及其用例:

  1. 思維鏈 (CoT)
  2. 思維樹 (ToT)

1.思維鏈 (CoT) Chain of Thoughts

是一種提示語工程技術,用於引導語言模型進行多步推理過程。以下是該技術的概述、技術特點和示例:

左圖為一般提示語,右圖為COT提示語

CoT允許將複雜問題分解為中間步驟,以引導模型進行邏輯推理,使其能夠更準確地理解和回答問題。

提高可解釋性

人工智慧的決策過程通常看起來像一個“黑盒子”,因此很難理解結論是如何得出的。思維提示鏈透過提供人工智慧推理過程的透明、逐步說明來解決這個問題。這種透明度不僅建立了對人工智慧解決方案的信任,還使用戶更容易識別和糾正推理過程中的潛在錯誤。

思維鏈 COT 提示的例子

例子 1- 數學問題解決

問題:“如果你有 5 個蘋果,你放棄了 2 個,你還剩下多少個?”

思維鏈 COT提示:讓我們分解一下。你從 5 個蘋果開始。如果您贈送 2 個蘋果,則用 5 減去 2,即可得出還剩下多少個蘋果。所以,5 減 2 等於 3。

好處:這個例子展示了思維鏈提示如何引導人工智慧透過一系列邏輯步驟來解決簡單的算術問題,從而更容易遵循和驗證解決方案。

例子 1-複雜的決策

問題:“公司應該投資再生能源項目嗎?”

思維鏈 COT提示:「若要確定投資再生能源是否明智,請考慮以下步驟: 1. 分析初始投資成本與長期節省的能源成本。 2. 評估環境影響和正向公共關係的潛力。 3. 考慮政府對再生能源項目的獎勵措施。 4.評估再生能源與公司長期策略的兼容性。

好處:在這個場景中,思路提示引導AI進行多方位的分析,考慮經濟、環境和戰略因素。這種方法可確保進行全面評估,從而得出合理的建議。

讓我們一步步思考 Let’s Think step by step

一些例子表明,透過添加

「讓我們一步一步思考 Let’s Think step by step」

提示的末尾可以增強模型輸出,因為您首先告訴LLM思考它的答案並在給出回應之前提供推理,而不是僅僅提供回應。

允許LLM提出自己的一套推理步驟可以改善模型結果,而不是依賴手動添加的推理步驟,因為我們自己的人工輸入可能會導致結果出現偏差,然後在未來的示例中,模型會錯誤地從過去手動提供的範例中得出結論。

請注意,這些只是簡單的範例,您最好嘗試一些自己的範例並閱讀有關該主題的更多資訊。

2. 思維樹 (ToT) Tree of Thought

ToT維護著一棵思維樹,其中思維由連貫的語言序列表示,這些序列是解決問題的中間步驟。透過這種方法,語言模型能夠自行評估推理過程中的中間思維,並在系統性探索思維過程中向前驗證和回溯。

思維樹 (ToT)技巧解決的問題:

一些對於需要探索或預判策略的複雜任務來說,傳統或簡單的提示技巧是不夠的。

最近,Yao et el. (2023)(在新分頁中開啟)提出了思維樹(Tree of Thoughts,ToT)框架,該框架基於思維鏈提示進行了總結,引導語言模型探索把思維作為中間步驟來解決通用問題。

ToT技術使用樹狀結構來表示思維過程中的各個步驟,並且提供一種方法讓語言模型自我評估這些步驟的有效性。模型結合生成和評估思維的能力,以及搜索算法(例如廣度優先搜索和深度優先搜索),使其能夠更系統地探索和理解問題,並生成更精確的回答

例子 1-複雜的決策

有時候,解決問題需要更全面的規劃和思考,而不僅僅是考慮單個步驟。

思維樹 (ToT) 提供了一種方法來展示問題解決過程中的所有步驟,從而使語言模型能夠更好地理解問題的整體情況。通過構建一個完整的思維樹,模型可以更好地探索問題空間,並做出更準確和全面的決策。

一般提示語:
Logo Design of my shoes brand (for woman doing sport)
我的鞋子品牌標誌設計(適合女性運動)

以下是著名的三位專家的 TOT 提示語,提供了一種方法來展示問題解決過程中的所有步驟,從而使語言模型能夠更好地理解問題的整體情況。

TOT提示語:
Imagine three different experts are answering this question. All experts will write down 1 step of their thinking, then share it with the group. Then all experts will go on to the next step, etc. If any expert realises they’re wrong at any point then they leave. To the question: “Logo Design of my shoes brand (for woman doing sport)”

Simulate three brilliant, logical experts collaboratively answering a question. Each one verbosely explains their thought process in real-time, considering the prior explanations of others and openly acknowledging mistakes. At each step, whenever possible, each expert refines and builds upon the thoughts of others, acknowledging their contributions. They continue until there is a definitive answer to the question. For clarity, your entire response should be in a markdown table (display the role).
To the question: “Logo Design of my shoes brand (for woman doing sport)”

Identify and behave as three different experts that are appropriate to answering this question.
All experts will write down the step and their thinking about the step, then share it with the group.
Then, all experts will go on to the next step, etc.
At each step all experts will score their peers response between 1 and 5, 1 meaning it is highly unlikely, and 5 meaning it is highly likely.
If any expert is judged to be wrong at any point then they leave.
After all experts have provided their analysis, you then analyze all 3 analyses and provide either the consensus solution or your best guess solution.

-=-=-=-=-=question
Logo Design of my shoes brand (for woman doing sport)

想像一下三位不同的專家正在回答這個問題。 所有專家都會寫下他們的想法的 1 個步驟,然後與小組分享。 然後所有專家將繼續下一步,依此類推。 對於問題:“我的鞋子品牌的標誌設計(針對從事運動的女性)”

模擬三位才華洋溢、邏輯嚴密的專家合作回答問題。 每個人都即時詳細地解釋他們的思考過程,考慮其他人先前的解釋並公開承認錯誤。 在每一步中,只要有可能,每位專家都會提煉和借鏡其他人的想法,承認他們的貢獻。 他們會繼續下去,直到問題得到明確的答案。 為了清楚起見,您的整個回應應位於降價表中(顯示角色)。
對於問題:“我的鞋子品牌的標誌設計(針對從事運動的女性)”

確定並扮演適合回答此問題的三位不同專家。
所有專家都會寫下該步驟以及他們對該步驟的想法,然後與小組分享。
然後,所有專家將繼續下一步,等等。
在每一步中,所有專家都會對同儕的反應進行評分,評分在 1 到 5 之間,1 表示極不可能,5 表示極有可能。
如果任何專家在任何時候被認為是錯誤的,那麼他們就會離開。
在所有專家提供分析後,您將分析所有 3 項分析並提供一致解決方案或您的最佳猜測解決方案。

-=-=-=-=-=問題
我的鞋子品牌標誌設計(適合女性運動)

思維樹 (ToT) 技術為語言模型提供了一種強大的工具,用於深度推理和問題解決。通過構建清晰結構的思維樹,模型能夠更有效地理解和解決各種複雜問題,從而提高了其應用範圍和準確性。 ToT技術的應用將在未來推動語言模型在多領域中的應用和發展。

Reference:

https://arxiv.org/abs/2401.14423

https://ploomber.io/blog/prompt-engineering-techniques/

https://www.promptingguide.ai/models/chatgpt

--

--