首頁 > 科技週邊 > 人工智慧 > 經過思考鏈的提示:LLMS分步推理

經過思考鏈的提示:LLMS分步推理

Lisa Kudrow
發布: 2025-03-05 10:37:19
原創
767 人瀏覽過

大型語言模型(LLMS)使用稱為自動性的技術生成文本,該技術涉及根據以前單詞預測序列中最有可能的下一個單詞。 LLM驅動的代理(例如ChatGpt)也經過微調以遵循用戶意圖。因此,他們不僅完成了輸入序列,還可以在輸入上捕獲用戶的意圖並相應地生成一個響應。

如果您已經嘗試了一段時間,我相信您已經意識到給定答案的

質量也取決於用戶輸入的質量,例如,代理人比其他返回的秘訣

最好的答案

是了解LLMS如何生成輸出並相應地制定輸入提示。應用於用戶輸入以利用模型的全部潛力的一組技術稱為及時工程。 在本文中,我們將探討最強大的及時工程技術之一:經過思考鏈(COT)提示。該技術涉及以一種方式構造提示,從而使模型更容易完成需要推理或解決問題的複雜任務。已經表明,如果沒有COT,相同的模型無法提供正確的答案。 模型默認功能

儘管LLM的概括能力聞名,但模型功能取決於任務

。使用LLMS時,重要的是要考慮到每個模型都已在一個巨大但有限的數據庫上進行了培訓,並且已針對某些任務進行了優化。因此,儘管該模型可以在某些域中具有高度性能,但在其他域中可能會失敗。

>

模型功能也取決於時間。就像在人類中一樣,如果您給我5位數字的總和,則需要一些時間來思考和回答正確的答案。如果您急忙這樣做,您可能會輕易地估計並在回應中失敗。 

同樣,如果我們給語言模型一個任務太複雜了,無法在計算其下一個令牌的時間內執行,則可能無法提供正確的答案。

> >類似於人類,這並不一定意味著該模型無法執行任務。 有一些時間或指導以推理問題,該模型仍然可以可靠地回答。 該模型的響應和生成所需的時間也可能受到各種因素的影響,例如該問題的特定措辭:

  • 如果提示為簡短而簡單,模型可能不會花費太多時間來生成下一個令牌。
  • >
  • 如果提示為>
  • 複雜
,該模型可能需要處理更多信息,然後才能生成接下來的令牌,這可能需要更長的時間。

經過思考鏈提示指南LLMS成功地解決了複雜的任務,既可以選擇制定提示的方式並為模型提供所需的時間或步驟,以生成正確的答案。

什麼是經過思考的提示?

> 經過思考鏈的提示是一種通過明確提示該模型在到達最終答案之前生成逐步的解釋或推理過程的技術。此方法有助於模型分解問題,而不是跳過任何中間任務以避免推理失敗。

> COT是有效的,因為它有助於集中LLM的注意力機制。推理過程的分解使模型一次將注意力集中在問題的一個部分上,從而最大程度地減少了通過同時處理過多信息而可能引起的錯誤風險。 

cot

的起源

Google的研究人員在2022年介紹了一篇題為“促使大語模型中引發推理的思想鏈”的論文中引入了經過思考的促進。這項研究強調瞭如何通過一系列中級推理步驟來指導模型如何顯著提高其在數學上解決問題,邏輯問題,邏輯上的推理,和多數 - 多人 - 可求和問題的任務上的任務,並提高了其在任務上的執行。

讓我們來看看提議的示例之一:

經過思考鏈的提示:LLMS分步推理

標準提示和COT提示之間的比較。在左側,指示模型直接提供最終答案(標準提示)。在右側,指示模型顯示推理過程以獲取最終答案(COT提示)。 正如我們可以觀察到的那樣,產生一系列思想(一系列中間推理步驟)有助於模型提供正確的答案。 >最初的作者將思想鏈稱為導致最終輸出的一系列中間自然語言推理步驟,將這種方法稱為經過思考的提示。 >思想鏈如何提示工作?

>該過程始於製定提示,鼓勵模型以分步的方式思考問題,從而生成中間步驟,而無需直接跳到最終答案。這可以使用不同的策略來完成:

#1。明確說明

給出明確的說明意味著將問題分解為用戶提示本身。例如,使用諸如“首先,我們需要考慮……”之類的句子來提示該模型詳細詳細介紹其思維過程。

讓我們看一下它! >

想像我的西班牙媽媽給​​我寄給我準備冷水的家庭食譜:

>假設我們有興趣將所有與咖啡相關的單詞翻譯成英語,我們想將Chatgpt用於任務:
input_text = """
¡Preparar café Cold Brew es un proceso sencillo y refrescante!
Todo lo que necesitas son granos de café molido grueso y agua fría.
Comienza añadiendo el café molido a un recipiente o jarra grande.
Luego, vierte agua fría, asegurándote de que todos los granos de café
estén completamente sumergidos.
Remueve la mezcla suavemente para garantizar una saturación uniforme.
Cubre el recipiente y déjalo en remojo en el refrigerador durante al
menos 12 a 24 horas, dependiendo de la fuerza deseada.
"""
登入後複製

這是對此提示的響應:
prompt = f"""
Give me a numbered list of all coffee-related words in English from the text below:
Text: <{input_text}>
"""
response = chatgpt_call(prompt)
print(response)
登入後複製
>

經過思考鏈的提示:LLMS分步推理>如果我們要求模型立即執行此任務,我們可以看到它錯誤地執行了任務。它不僅輸出了非相關的咖啡單詞,而且還以西班牙語而不是用英語輸出。

>

我們可以考慮此任務很複雜,因為它需要兩個步驟:>

將文本從西班牙語翻譯成英語。

    識別與咖啡相關的單詞。
  1. 相反,該模型直接跳到識別與咖啡相關的單詞的最終任務,缺少翻譯步驟。通過將翻譯指定為中間任務或在主要兩個步驟中分解任務,我們可以將模型引導到正確的輸出:
  2. >
包括上面的經營鏈會導致正確的答案:

prompt = f"""
Give me a numbered list of all coffee-related words in English from the text below:
The task requires the following actions:
1 - Translate the given text into English.
2 - List each coffee-related word from the English text.
Text: <{input_text}>
"""
response = chatgpt_call(prompt)
print(response)
登入後複製

您有興趣使用其他LLM而不是ChatGpt或OpenAI API嘗試此技術,如本文,“開發大型語言模型”課程適合您!

#2。隱式指令

有時,無需在提示中分解問題。東京大學與Google Research一起提出了一種改善LLM響應的好方法,其中包括在原始提示的結束時簡單地添加“逐步思考”。 經過思考鏈的提示:LLMS分步推理這個簡單的句子提示該模型大聲推理,並仔細閱讀所有必需的步驟以執行任務。

>讓我們分析作者在原始論文中提出的一個例子之一:

>

標準提示與隱式COT指令的使用之間的比較

>。在左側,該模型立即為問題提供了最終答案(零射擊提示)和失敗。在右邊,該模型將使用隱式COT指令(COT提示)指示正確響應。 在第一個示例中,作者要求模型解決算術問題,但在此任務中失敗了。

然後,通過將“逐步思考”附加到原始問題時,模型的原因大聲並成功。

將這個簡單的技巧應用於多麗絲數學數據集,作者發現該隱式指令將準確性從18%提高到79%! 如果您有興趣,可以在“使用此簡短提示來提高Chatgpt的結果”的情況下閱讀有關此技術的更多信息。

#3。示例

>我們在上面的部分中使用了“零射”一詞。

零射擊是指模型執行任務的能力,而無需在該特定任務的示例中明確訓練

。 

>它依賴於該模型對新任務和以前看不見的任務進行適當響應的能力。這意味著,當我們打開chatgpt的用戶界面並立即提出問題時,我們正在做零射擊的提示。

> >儘管如此,有一些方法可以顯示模型我們要解決的幾個類似任務的示例。根據提供的示例數量,提供一系列示例的示例被稱為單發,很少射擊

>一次性提示

>一次性提示涉及

顯示模型一個示例,該示例類似於指導的目標任務。 例如,如果我們參考文章的第一個數字,我們可以觀察到該模型可以生成思想鏈,這要歸功於提示中提供的示例示例。 幾次提示

很少的學習效果與單桿相同,但是

給出的示例數量較高,通常約為一百個。模型的性能隨示例的數量線性增加。

Jason Wei和Denny Zhou等人研究了很少的射擊提示。來自Google。這種方法對於需要更專業或特定於領域的知識的任務特別有用,在這種任務中,模型可能沒有足夠的背景知識來使用零射或一聲提示執行任務。在新的或特殊數據的集合中,有時很少有射擊提示是模型的小微調。 >請參閱更多一聲示例,少量示例提示“通過及時的工程提高chatgpt性能”。

>幾個射門cot提示

一擊和很少的射擊提示不是COT。但是,研究人員已經探索了幾乎沒有射擊的學習與COT提示,稱為“很少射擊的COT提示”。在幾個鏡頭中,該模型提供了一些問題的示例,以及他們的逐步解決方案,以指導其推理過程

>將少量的cot與其他技術(例如檢索型發電或交互式查詢)相結合,可以進一步增強模型的性能和可靠性。集成外部知識庫,數據庫或信息檢索系統允許該模型通過事實和最新信息增強其推理。

實施實踐促進鏈接

經過思考鏈的提示:LLMS分步推理

數學問題的迷宮

說明COT如何幫助模型瀏覽知識空間並解決複雜的任務。使用ChatGpt 4O圖像生成的自我生成圖像,並帶有以下提示:“通過迷宮的數學問題想像語言模型代理”。 有多種方法可以在我們的提示中加入cot:

    結構化模板
  • :使用明確概述模型應採取的步驟的模板,如我們在咖啡示例中所見。請參閱《提示指南》文章中的更多及時模板和有條件提示的示例。 > >
  • 互動提示
  • :將模型引入對話中,以提示每個步驟解釋每個步驟或通過在每個步驟提供反饋或更正來指導模型的推理過程。這也被稱為人類在環境中。
  • >反饋迴路
  • :合併反饋機制,在必要時評估和完善模型的中間步驟。這也稱為多階段提示。 >
  • >多個框架可以幫助您實施COT和其他及時的工程技術,但是Langchain是我的最愛。如果您有興趣將Langchain用作LLM驅動項目的一部分,那麼“使用Langchain開發LLM應用程序”課程是理想的起點。
促進鍊鍊的好處

經過思考的提示提供了一些好處,尤其是在提高複雜任務中語言模型的性能和可靠性方面。

#1。提高精度

通過將問題分解為較小,易於管理的步驟,該模型可以更準確地處理複雜的任務。中間步驟提供檢查點,可以在其中捕獲和糾正潛在錯誤,從而獲得更準確的最終答案。

諸如數學問題,邏輯難題或多跳問題回答之類的任務的原因,從這種方法中受益,是因為

>他們已經自然需要多個推理的步驟

>。

#2。增強的解釋性

>逐步推理過程是透明的,使用戶可以理解該模型如何得出其結論。這種透明度建立了對模型輸出的信任。

>

>>也可以幫助調試,因為用戶可以更輕鬆地發現模型可能在其推理中出現問題的位置。

>限制和注意事項

當然,與任何技術一樣,總是有一些不利的不利因素值得考慮:

模型依賴性

>重要的是要考慮COT是

模型依賴性技術。因此,COT的有效性在很大程度上取決於基本語言模型的能力。

提示生成

>製作有效的COT提示也可能具有挑戰性。它需要仔細的設計,以確保提示通過推理過程正確指導模型。

>更新和維護提示針對不同類型的任務和域可能會很耗時,並且可能需要持續的細化。

性能

> COT提示對於沒有明確的順序推理過程的任務可能不那麼有效。此外,如果沒有額外的培訓或適應,就可能無法很好地概括為全新或意外的問題

> ,因此保持最新的知識基礎和合適的提示至關重要。 權衡

> cot提示通過提供分步說明來提高可解釋性,但它也可能導致更長且更多的冗長輸出

>,對於所有應用程序,這可能並不總是值得的。

> 結論 在本文中,我們已經看到了經過深思熟慮的促進鏈如何在增強大語言模型的推理能力以及其實施的一些實際示例方面取得了重大進步。 

是使用提示模板,交互式提示還是反饋循環,這些方法背後的想法是指導模型通過推理過程並利用其功能。 

此外,我們還探索了強大的技術,例如一次性和少量發動機,以進一步提高模型的性能,並可以與COT結合使用,以及我們無法忽略的好處和一些局限性。

>

考慮嘗試在本文中討論的技術來構建更可靠,更高性能的提示,並牢記:

提示工程可能會對您的輸出產生重大影響!

>您可以通過DataCamp的課程了解有關及時工程的更多信息,了解及時的工程和CHATGPT迅速為開發人員提供工程。您還可以查看單獨的指南,以提示工程認證,並找出最佳學習途徑適合您。 

Chain-of-Thought Prompting FAQs

Can Chain-of-Thought Prompting be used for all types of questions?

While Chain-of-Thought Prompting is particularly effective for complex, multi-step reasoning tasks, it may not always be necessary for simpler questions that can be answered directly. It’s most beneficial for problems where a detailed, step-by-step process is also naturally required to reach the correct answer.

Can Chain-of-Thought prompting be used with any AI model?

Yes, for example, when training a robot to navigate a maze, the CoT approach can be used to break down the navigation into steps,例如識別當前位置,評估可能的路徑並在最小障礙物中選擇路徑。

是想提示的鏈接有助於AI解釋性嗎? ​​

是,它可以幫助使用該模型的過程,並使用戶更加跨度。這在醫療保健和財務等領域特別有價值,在這種領域中,了解AI決策背後的理由至關重要。

>經過經驗鏈的提示和多個步驟的提示和多步驟鏈之間有什麼區別?

以上是經過思考鏈的提示:LLMS分步推理的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板