你的提示詞根本只是在浪費(fèi)算力,如何讓Deepseek發(fā)揮極限潛能 - 多跳推理
最近幾周自學(xué)deepseek原理+應(yīng)用+實(shí)踐,一些成果,和大家分享。
對(duì)于deepseek的流弊:
- 小部分人會(huì)關(guān)心,deepseek為什么這么流弊;
- 大部分人會(huì)關(guān)心,提示詞要怎么寫;
今天和大家聊聊,deepseek的核心機(jī)制之一的多跳推理,以及如何優(yōu)化我們的提示詞,使得deepseek能夠最大化發(fā)揮其多跳推理的潛力。
什么是多跳推理?
多跳推理,multi-hop reasoning,是模型將不同源中的信息關(guān)聯(lián),整合與推理的能力。
比較抽象,舉個(gè)例子。
- 源1:項(xiàng)目A是張三開發(fā)的(信息)
- 源2:項(xiàng)目A是李四測試的(信息)
- 源3:項(xiàng)目A是本季度上線的(信息)
- 源4:項(xiàng)目A上線時(shí)出現(xiàn)了故障(信息)
提問:本季度績效誰該背325?(知識(shí))
我們會(huì)發(fā)現(xiàn):比拼參數(shù)量的大模型,是無法從已有知識(shí)中得到提問的答案的,但通過簡單推理,將已有的多源信息關(guān)聯(lián),就能極大提升回答的質(zhì)量。這就是多跳推理。
人們是怎么想到多跳推理的?
多跳推理最符合人的真實(shí)思維。
誰該背325?你是經(jīng)理你怎么想?
- 第一步,我先看看本季度有沒有線上故障;
- 第二步,線上故障是哪個(gè)項(xiàng)目;
- 第三步,項(xiàng)目的開發(fā)與測試負(fù)責(zé)人分別是誰;
- 最后,相關(guān)負(fù)責(zé)人背325。
是不是這樣?當(dāng)我們面臨一個(gè)新的問題時(shí),如果我們腦中的信息沒有直接答案,我們就是通過多跳推理,通過信息的關(guān)聯(lián),一步步找到答案。
這聽上去不是很簡單嗎?
這對(duì)我們?nèi)藖碚f簡單,但對(duì)大模型來說就要了命了,信息量十分巨大,兩個(gè)信息的關(guān)聯(lián),三個(gè)信息的關(guān)聯(lián),多個(gè)信息的關(guān)聯(lián),即使能夠預(yù)處理,其計(jì)算量也是巨大的。
既然deepseek用了這個(gè)技術(shù),我們?nèi)绾文軌蜃畲蠡l(fā)揮deepseek多跳推理的優(yōu)勢(shì)呢?
通過提示詞顯性的告訴deepseek關(guān)聯(lián)關(guān)系與關(guān)聯(lián)步驟,而不要讓大模型在有限的深度思考里,浪費(fèi)注意力去探索海量的關(guān)聯(lián)關(guān)系。
這也是《讓deepseek達(dá)到最佳效果的3大原則(第1講)》里提到的,為什么“系統(tǒng)性”的提示詞能極大提升回答的質(zhì)量,原因就在于此。
再舉個(gè)例子。
bad case:請(qǐng)幫我定位與修復(fù)異常代碼。
good case:請(qǐng)幫忙通過以下步驟定位與修復(fù)異常代碼:
- 查看調(diào)用鏈中的異常信息,定位出錯(cuò)模塊
- 查看出錯(cuò)模塊的日志信息,定位異常代碼的源文件名,函數(shù)名
- 分析源文件相關(guān)函數(shù)
- 修復(fù)相關(guān)函數(shù)
說到底,我們是如何思考與解題的,就顯性的用提示詞告訴deepseek如何思考與解題,這樣能夠:
- 極大提升deepseek效率,提升答案深度;
- 增強(qiáng)答案追溯性與邏輯性;
- 提升知識(shí)的準(zhǔn)確性,而不是讓deepseek在有限的深度思考時(shí)間里自行探索;
總結(jié)
- 多跳推理能極大提升deepseek的回復(fù)質(zhì)量;
- 多跳推理最接近人的真實(shí)思維;
- 提示詞通過顯性告之deepseek關(guān)聯(lián)關(guān)系與關(guān)聯(lián)步驟,能夠最大化發(fā)揮多跳推理的潛力;
一切的一切,提示詞只有適配了AI的認(rèn)知模式,才能最高效的發(fā)揮最大的作用。
知其然,知其所以然。
思路比結(jié)論更重要。
補(bǔ)充閱讀材料:
《Multi-hop RAG》:https://arxiv.org/pdf/2401.15391
PDF,可下載。