#LLM入門|Prompt#1.2_提示原則_Guidelines

提示原則

一、編寫清晰、具體的指令

  1. 使用分隔符清晰地表示輸入的不同部分:
  • 在Prompt中使用分隔符,如```、“”"、< >、 、:等,將不同的文本部分區分開來,避免混淆和意外的結果。
  • 分隔符能夠防止提示詞注入,提高模型輸出的準確性和可靠性。
from tool import get_completiontext = f"""
您應該提供盡可能清晰、具體的指示,以表達您希望模型執行的任務。\
這將引導模型朝向所需的輸出,并降低收到無關或不正確響應的可能性。\
不要將寫清晰的提示詞與寫簡短的提示詞混淆。\
在許多情況下,更長的提示詞可以為模型提供更多的清晰度和上下文信息,從而導致更詳細和相關的輸出。
"""
# 需要總結的文本內容
prompt = f"""
把用三個反引號括起來的文本總結成一句話。
```{text}```
"""
# 指令內容,使用 ```來分隔指令和待總結的內容
response = get_completion(prompt)
print(response)
  1. 尋求結構化的輸出:
  • 請求語言模型以結構化格式(如JSON)返回結果,便于進一步處理和解析。
  • 結構化輸出適合在代碼中進一步解析和處理,提高了效率和可操作性。
prompt = f"""
請生成包括書名、作者和類別的三本虛構的、非真實存在的中文書籍清單,\
并以 JSON 格式提供,其中包含以下鍵:book_id、title、author、genre。
"""
response = get_completion(prompt)
print(response)
{"books": [{"book_id": 1,"title": "迷失的時光","author": "張三","genre": "科幻"},{"book_id": 2,"title": "幻境之門","author": "李四","genre": "奇幻"},{"book_id": 3,"title": "虛擬現實","author": "王五","genre": "科幻"}]
}
  1. 要求模型檢查是否滿足條件:
  • 在Prompt中要求模型檢查條件,如果不滿足則指出并停止執行后續操作。
  • 考慮可能出現的邊緣情況和模型的應對策略,避免意外結果或錯誤發生。
# 滿足條件的輸入(text中提供了步驟)
text_1 = f"""
泡一杯茶很容易。首先,需要把水燒開。\
在等待期間,拿一個杯子并把茶包放進去。\
一旦水足夠熱,就把它倒在茶包上。\
等待一會兒,讓茶葉浸泡。幾分鐘后,取出茶包。\
如果您愿意,可以加一些糖或牛奶調味。\
就這樣,您可以享受一杯美味的茶了。
"""
prompt = f"""
您將獲得由三個引號括起來的文本。\
如果它包含一系列的指令,則需要按照以下格式重新編寫這些指令:第一步 - ...
第二步 - …
…
第N步 - …如果文本中不包含一系列的指令,則直接寫“未提供步驟”。"
\"\"\"{text_1}\"\"\"
"""
response = get_completion(prompt)
print("Text 1 的總結:")
print(response)
Text 1 的總結:
第一步 - 把水燒開。
第二步 - 拿一個杯子并把茶包放進去。
第三步 - 把燒開的水倒在茶包上。
第四步 - 等待幾分鐘,讓茶葉浸泡。
第五步 - 取出茶包。
第六步 - 如果需要,加入糖或牛奶調味。
第七步 - 就這樣,您可以享受一杯美味的茶了。
# 不滿足條件的輸入(text中未提供預期指令)
text_2 = f"""
今天陽光明媚,鳥兒在歌唱。\
這是一個去公園散步的美好日子。\
鮮花盛開,樹枝在微風中輕輕搖曳。\
人們外出享受著這美好的天氣,有些人在野餐,有些人在玩游戲或者在草地上放松。\
這是一個完美的日子,可以在戶外度過并欣賞大自然的美景。
"""
prompt = f"""
您將獲得由三個引號括起來的文本。\
如果它包含一系列的指令,則需要按照以下格式重新編寫這些指令:第一步 - ...
第二步 - …
…
第N步 - …如果文本中不包含一系列的指令,則直接寫“未提供步驟”。"
\"\"\"{text_2}\"\"\"
"""
response = get_completion(prompt)
print("Text 2 的總結:")
print(response)
Text 2 的總結:
未提供步驟。
  1. 提供少量示例:
  • 在任務開始前,提供少量示例樣本,讓模型了解要求和期望的輸出樣式。
  • 少量示例可以幫助模型快速上手新任務,提高效率和準確性。
prompt = f"""
您的任務是以一致的風格回答問題。<孩子>: 請教我何為耐心。<祖父母>: 挖出最深峽谷的河流源于一處不起眼的泉眼;最宏偉的交響樂從單一的音符開始;最復雜的掛毯以一根孤獨的線開始編織。<孩子>: 請教我何為韌性。
"""
response = get_completion(prompt)
print(response)
<祖父母>: 韌性是一種堅持不懈的品質,就像一棵頑強的樹在風雨中屹立不倒。它是面對困難和挑戰時不屈不撓的精神,能夠適應變化和克服逆境。韌性是一種內在的力量,讓我們能夠堅持追求目標,即使面臨困難和挫折也能堅持不懈地努力。

二、給模型時間去思考

  • 給予語言模型充足的推理時間非常重要,避免讓模型匆忙給出結論,減少錯誤的可能性。
  • 在Prompt中添加逐步推理的要求,讓模型有足夠的時間進行深入思考和邏輯推理,提高結果的可靠性和準確性。
  1. 接下來,我們將展示這一策略的效果,通過給定一個復雜任務,提供一系列步驟來完成。首先,我們將描述杰克和吉爾的故事,并給出以下操作的提示詞:
    1. 用一句話概括三個反引號限定的文本。
    2. 將摘要翻譯成英語。
    3. 在英語摘要中列出每個名稱。
    4. 輸出包含以下鍵的JSON對象:英語摘要和人名個數。要求輸出以換行符分隔。

2.1 指定完成任務所需的步驟

text = f"""
在一個迷人的村莊里,兄妹杰克和吉爾出發去一個山頂井里打水。\
他們一邊唱著歡樂的歌,一邊往上爬,\
然而不幸降臨——杰克絆了一塊石頭,從山上滾了下來,吉爾緊隨其后。\
雖然略有些摔傷,但他們還是回到了溫馨的家中。\
盡管出了這樣的意外,他們的冒險精神依然沒有減弱,繼續充滿愉悅地探索。
"""
# example 1
prompt_1 = f"""
執行以下操作:
1-用一句話概括下面用三個反引號括起來的文本。
2-將摘要翻譯成英語。
3-在英語摘要中列出每個人名。
4-輸出一個 JSON 對象,其中包含以下鍵:english_summary,num_names。請用換行符分隔您的答案。Text:
```{text}```
"""
response = get_completion(prompt_1)
print("prompt 1:")
print(response)
prompt 1:
1-兩個兄妹在山上打水時發生意外,但最終平安回家。
2-In a charming village, siblings Jack and Jill set off to fetch water from a well on top of a hill. While singing joyfully, they climbed up, but unfortunately, Jack tripped on a stone and rolled down the hill, with Jill following closely behind. Despite some minor injuries, they made it back to their cozy home. Despite the mishap, their adventurous spirit remained undiminished as they continued to explore with delight.
3-Jack, Jill
4-{"english_summary": "In a charming village, siblings Jack and Jill set off to fetch water from a well on top of a hill. While singing joyfully, they climbed up, but unfortunately, Jack tripped on a stone and rolled down the hill, with Jill following closely behind. Despite some minor injuries, they made it back to their cozy home. Despite the mishap, their adventurous spirit remained undiminished as they continued to explore with delight.", "num_names": 2}

接下來,我們將展示這一策略的效果,通過給定一個復雜任務,提供一系列步驟來完成。首先,我們將描述杰克和吉爾的故事,并給出以下操作的提示詞:

  1. 用一句話概括三個反引號限定的文本。
  2. 將摘要翻譯成英語。
  3. 在英語摘要中列出每個名稱。
  4. 輸出包含英語摘要和人名個數的JSON對象,要求使用英語鍵名,如 “summary” 和 “names_count”。輸出內容應以換行符分隔。
prompt_2 = f"""
1-用一句話概括下面用<>括起來的文本。
2-將摘要翻譯成英語。
3-在英語摘要中列出每個名稱。
4-輸出一個 JSON 對象,其中包含以下鍵:English_summary,num_names。請使用以下格式:
文本:<要總結的文本>
摘要:<摘要>
翻譯:<摘要的翻譯>
名稱:<英語摘要中的名稱列表>
輸出 JSON:<帶有 English_summary 和 num_names 的 JSON>Text: <{text}>
"""
response = get_completion(prompt_2)
print("\nprompt 2:")
print(response)
prompt 2:
Summary: 在一個迷人的村莊里,兄妹杰克和吉爾在山頂井里打水時發生了意外,但他們的冒險精神依然沒有減弱,繼續充滿愉悅地探索。Translation: In a charming village, siblings Jack and Jill set off to fetch water from a well on top of a hill. Unfortunately, Jack tripped on a rock and tumbled down the hill, with Jill following closely behind. Despite some minor injuries, they made it back home safely. Despite the mishap, their adventurous spirit remained strong as they continued to explore joyfully.Names: Jack, JillJSON Output: {"English_summary": "In a charming village, siblings Jack and Jill set off to fetch water from a well on top of a hill. Unfortunately, Jack tripped on a rock and tumbled down the hill, with Jill following closely behind. Despite some minor injuries, they made it back home safely. Despite the mishap, their adventurous spirit remained strong as they continued to explore joyfully.", "num_names": 2}

2.2 指導模型在下結論之前找出一個自己的解法

在設計 Prompt 時,我們還可以通過明確指導語言模型進行自主思考,來獲得更好的效果。
舉個例子,假設我們要語言模型判斷一個數學問題的解答是否正確。僅僅提供問題和解答是不夠的,語言模型可能會匆忙做出錯誤判斷。
相反,我們可以在 Prompt 中先要求語言模型自己嘗試解決這個問題,思考出自己的解法,然后再與提供的解答進行對比,判斷正確性。這種先讓語言模型自主思考的方式,能幫助它更深入理解問題,做出更準確的判斷。
接下來我們會給出一個問題和一份來自學生的解答,要求模型判斷解答是否正確:

prompt = f"""
判斷學生的解決方案是否正確。問題:
我正在建造一個太陽能發電站,需要幫助計算財務。土地費用為 100美元/平方英尺我可以以 250美元/平方英尺的價格購買太陽能電池板我已經談判好了維護合同,每年需要支付固定的10萬美元,并額外支付每平方英尺10美元作為平方英尺數的函數,首年運營的總費用是多少。學生的解決方案:
設x為發電站的大小,單位為平方英尺。
費用:土地費用:100x太陽能電池板費用:250x維護費用:100,000美元+100x總費用:100x+250x+100,000美元+100x=450x+100,000美元
"""
response = get_completion(prompt)
print(response)
學生的解決方案是正確的。他正確地計算了土地費用、太陽能電池板費用和維護費用,并將它們相加得到了總費用。

但是注意,學生的解決方案實際上是錯誤的。(維護費用項100x應為10x,總費用450x應為360x
我們可以通過指導模型先自行找出一個解法來解決這個問題。
在接下來這個 Prompt 中,我們要求模型先自行解決這個問題,再根據自己的解法與學生的解法進行對比,從而判斷學生的解法是否正確。同時,我們給定了輸出的格式要求。通過拆分任務、明確步驟,讓模型有更多時間思考,有時可以獲得更準確的結果。在這個例子中,學生的答案是錯誤的,但如果我們沒有先讓模型自己計算,那么可能會被誤導以為學生是正確的。

prompt = f"""
請判斷學生的解決方案是否正確,請通過如下步驟解決這個問題:步驟:首先,自己解決問題。然后將您的解決方案與學生的解決方案進行比較,對比計算得到的總費用與學生計算的總費用是否一致,并評估學生的解決方案是否正確。在自己完成問題之前,請勿決定學生的解決方案是否正確。使用以下格式:問題:問題文本學生的解決方案:學生的解決方案文本實際解決方案和步驟:實際解決方案和步驟文本學生計算的總費用:學生計算得到的總費用實際計算的總費用:實際計算出的總費用學生計算的費用和實際計算的費用是否相同:是或否學生的解決方案和實際解決方案是否相同:是或否學生的成績:正確或不正確問題:我正在建造一個太陽能發電站,需要幫助計算財務。 - 土地費用為每平方英尺100美元- 我可以以每平方英尺250美元的價格購買太陽能電池板- 我已經談判好了維護合同,每年需要支付固定的10萬美元,并額外支付每平方英尺10美元;作為平方英尺數的函數,首年運營的總費用是多少。學生的解決方案:設x為發電站的大小,單位為平方英尺。費用:1. 土地費用:100x美元2. 太陽能電池板費用:250x美元3. 維護費用:100,000+100x=10萬美元+10x美元總費用:100x美元+250x美元+10萬美元+100x美元=450x+10萬美元實際解決方案和步驟:
"""
response = get_completion(prompt)
print(response)
實際解決方案和步驟:1. 土地費用:每平方英尺100美元,所以總費用為100x美元。2. 太陽能電池板費用:每平方英尺250美元,所以總費用為250x美元。3. 維護費用:固定費用為10萬美元,額外費用為每平方英尺10美元,所以總費用為10萬美元+10x美元。4. 總費用:將上述三項費用相加,得到總費用為100x美元+250x美元+10萬美元+10x美元=360x+10萬美元。學生計算的總費用:450x+10萬美元
實際計算的總費用:360x+10萬美元
學生計算的費用和實際計算的費用是否相同:否
學生的解決方案和實際解決方案是否相同:否
學生的成績:不正確

三、局限性

開發大模型相關應用時請務必銘記:
虛假知識:模型偶爾會生成一些看似真實實則編造的知識
在開發與應用語言模型時,需要注意它們可能生成虛假信息的風險。盡管模型經過大規模預訓練,掌握了豐富知識,但它實際上并沒有_完全_記住所見的信息,難以準確判斷自己的知識邊界,可能做出錯誤推斷。若讓語言模型描述一個不存在的產品,它可能會自行構造出似是而非的細節。這被稱為“幻覺”(Hallucination),是語言模型的一大缺陷。
如下示例展示了大模型的幻覺。我們要求告訴我們華為公司生產的 GT Watch 運動手表 產品的信息,事實上,這個公司是真實存在的,但產品是編造的,而模型一本正經地提供了它編造的知識,而且迷惑性很強。

prompt = f"""
告訴我華為公司生產的GT Watch運動手表的相關信息
"""
response = get_completion(prompt)
print(response)
華為公司生產的GT Watch運動手表是一款智能手表,具有多種功能和特點。以下是相關信息:1. 設計和外觀:GT Watch采用圓形表盤設計,具有精致的外觀和高質量的材料制造。它有多種顏色和表帶選擇,可以根據個人喜好進行定制。2. 顯示屏:GT Watch配備了1.39英寸的AMOLED顯示屏,具有高清分辨率和良好的可視性。用戶可以通過觸摸屏幕進行操作和導航。3. 運動追蹤:GT Watch具有全天候的運動追蹤功能,可以監測用戶的步數、跑步距離、卡路里消耗和心率等數據。它還支持多種運動模式,如跑步、騎行、游泳等。4. 健康監測:GT Watch可以監測用戶的心率、血氧飽和度和睡眠質量等健康指標。它還提供健康建議和提醒,幫助用戶保持良好的健康狀態。5. 通知和連接:GT Watch可以與用戶的手機進行連接,通過藍牙技術實現通知推送和電話提醒。用戶可以在手表上查看短信、電話和社交媒體通知,無需拿出手機。6. 長續航時間:GT Watch具有較長的續航時間,一次充電可以使用數天。它還支持快速充電技術,可以在短時間內充滿電。7. 其他功能:GT Watch還具有其他功能,如天氣預報、鬧鐘、計時器、計步器等。它還支持NFC支付和音樂控制等便利功能。總體而言,華為GT Watch是一款功能強大、外觀精致的智能運動手表,適合那些注重健康和運動的用戶使用。
  • 問題: 語言模型可能生成虛假信息,令人難以分辨真偽,影響應用的可靠性與安全性。
  • 解決方案: 開發者可通過優化Prompt設計降低幻覺發生的可能性,例如先引用原文再解答。目前,相關公司正在研究解決該問題,但需謹慎使用語言模型。
  • 注意事項: 在應用語言模型時,需警惕幻覺信息對應用的影響,采取措施減少幻覺發生的可能性。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/697479.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/697479.shtml
英文地址,請注明出處:http://en.pswp.cn/news/697479.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

petalinux_zynq7 驅動DAC以及ADC模塊之四:python實現http_api

前文&#xff1a; petalinux_zynq7 C語言驅動DAC以及ADC模塊之一&#xff1a;建立IPhttps://blog.csdn.net/qq_27158179/article/details/136234296petalinux_zynq7 C語言驅動DAC以及ADC模塊之二&#xff1a;petalinuxhttps://blog.csdn.net/qq_27158179/article/details/1362…

Java觀察者模式:實現高效的事件驅動編程

Java中的裝飾者模式&#xff1a;靈活地為對象添加功能 一、引言 在軟件設計中&#xff0c;我們經常需要為對象動態地添加功能或行為。裝飾者模式&#xff08;Decorator Pattern&#xff09;是一種結構型設計模式&#xff0c;它允許我們在運行時將功能動態地添加到對象上&…

串的相關題目

于是他錯誤的點名開始了 我發現有關hash得題目有些是可以通過map數組來完成的&#xff1a;何為map數組&#xff0c;我們先思考一下最簡單的桶的排序&#xff0c;桶排序是將我們需要數字最為下標輸進數組中&#xff0c;而數組是存放的數字是這個數字出現的次數&#xff0c;但是由…

Matlab論文插圖繪制模板第137期—極坐標分組氣泡圖

在之前的文章中&#xff0c;分享了Matlab極坐標氣泡圖的繪制模板&#xff1a; 進一步&#xff0c;再來分享一下極坐標分組氣泡圖。 先來看一下成品效果&#xff1a; ? 特別提示&#xff1a;本期內容『數據代碼』已上傳資源群中&#xff0c;加群的朋友請自行下載。有需要的朋…

解決SSH遠程登錄開飯板出現密碼錯誤問題

輸入“adduser Zhanggong回車”&#xff0c;使用adduser命令創建開發板用戶名為Zhanggong 輸入密碼“123456” 輸入密碼“123456”

openGauss學習筆記-226 openGauss性能調優-系統調優-配置LLVM-LLVM適用場景與限制

文章目錄 openGauss學習筆記-226 openGauss性能調優-系統調優-配置LLVM-LLVM適用場景與限制226.1 適用場景226.2 非適用場景 openGauss學習筆記-226 openGauss性能調優-系統調優-配置LLVM-LLVM適用場景與限制 226.1 適用場景 支持LLVM的表達式 查詢語句中存在以下的表達式支持…

PostgreSQL數據庫備份和恢復

一、數據庫備份 /usr/lib/postgresql/16/bin/pg_dump -h localhost -p 5432 -U odoo -F c -b -v -f backup.sql laonian 二、數據庫恢復 1 現在目標pgsql數據庫中創建空數據庫老年 create database laonian owner odoo; 2 執行恢復命令&#xff08;windows系統下&#xff…

網絡安全-nc(Netcat)工具詳解

經常在反彈shell的時候使用nc命令&#xff0c;但是從來沒有了解過&#xff0c;今天翻書看到了&#xff0c;準備記錄一下。 nc全稱Netcat&#xff0c;是TCP/IP連接的瑞士軍刀。哈哈我最喜歡瑞士軍刀了。 有一個比較偏的知識點&#xff0c;nc還可以探測目標的端口是否開放&…

Modern C++ std::variant的5個特性+原理

1 前言 上一節《Modern C std::variant的實現原理》我們簡單分析了std::variant的實現原理&#xff0c;其實要學好C編程&#xff0c;除了看優秀的代碼包括標準庫實現&#xff0c;讀文檔也是很便捷且必須的一種辦法。 本節我將逐條解析文檔中的五個特性&#xff0c;解析的辦法有…

LINUX操作系統:重定向

輸出重定向&#xff1a;將命令行程序的輸出重定向到其他位置&#xff0c;如文件、程序、打印機等。 輸入重定向&#xff1a;從其他位置獲取輸入&#xff0c;而不是從標準輸入&#xff08;鍵盤、鼠標等&#xff09; 錯誤重定向&#xff1a;同輸出。 輸出重定向&#xff08;Outp…

R語言【sp】——over(),%over%

Package sp version 1.5-0 Description 點、網格和多邊形的一致空間覆蓋:在對象x的空間位置從空間對象y檢索索引或屬性。 Usage over(x, y, returnList = FALSE, fn = NULL, ...) x %over% y Arguments 參數【x】:查詢的幾何(位置)。 參數【y】:層,從中查詢幾何或屬性。…

PYTHON-使用正則表達式進行模式匹配

目錄 Python 正則表達式Finding Patterns of Text Without Regular ExpressionsFinding Patterns of Text with Regular ExpressionsCreating Regex ObjectsMatching Regex ObjectsReview of Regular Expression MatchingMore Pattern Matching with Regular ExpressionsGroupi…

阿里開源低代碼引擎 - Low-Code Engine

阿里開源低代碼引擎 - Low-Code Engine 本文主要介紹如何在Windows運行/開發阿里開源低代碼引擎 - Low-Code Engine 詳細文檔參見【 阿里開源低代碼引擎 - Low-Code Engine 官方文檔】 目錄 阿里開源低代碼引擎 - Low-Code Engine一、環境準備1、使用 WSL 在 Windows 上安裝 L…

方法鑒權:基于 Spring Aop 的注解鑒權

在Spring框架中&#xff0c;可以使用面向切面編程&#xff08;AOP&#xff09;來實現注解鑒權。這通常涉及到定義一個切面&#xff08;Aspect&#xff09;&#xff0c;該切面會在方法執行前進行攔截&#xff0c;并根據注解value值來決定是否允許執行該方法。 簡單思路&#xf…

Java學習筆記2024/2/22

面向對象進階部分學習方法&#xff1a; 特點&#xff1a; 邏輯性沒有那么強&#xff0c;但是概念會比較多。 記憶部分重要的概念&#xff0c;理解課堂上講解的需要大家掌握的概念&#xff0c;多多練習代碼。 今日內容 復習回顧 static關鍵字 繼承 教學目標 能夠掌握st…

【開源】JAVA+Vue.js實現醫院門診預約掛號系統

目錄 一、摘要1.1 項目介紹1.2 項目錄屏 二、功能模塊2.1 功能性需求2.1.1 數據中心模塊2.1.2 科室醫生檔案模塊2.1.3 預約掛號模塊2.1.4 醫院時政模塊 2.2 可行性分析2.2.1 可靠性2.2.2 易用性2.2.3 維護性 三、數據庫設計3.1 用戶表3.2 科室檔案表3.3 醫生檔案表3.4 醫生放號…

qml 保存當前界面并在其圖片中添加文字

使用場景&#xff1a;在保存二維碼的時候&#xff0c; 在二維碼圖片加標題或描述 保存后的圖片 demo&#xff1a;https://download.csdn.net/download/uVarAndMethod/88868455

Electron實戰之環境搭建

工欲善其事必先利其器&#xff0c;在進行實戰開發的時候&#xff0c;我們最終的步驟是搞好一個舒服的開發環境&#xff0c;目前支持 Vue 的 Electron 工程化工具主要有 electron-vue、Vue CLI Plugin Electron Builder、electron-vite。 接下來我們將分別介紹基于 Vue CLI Plu…

一、計算機的語言奇跡:探秘ChatGPT的智能回答和寫作能力—我耀學IT

目前我們這個行業&#xff0c;最火的話題無疑是AI人工智能&#xff0c;類似ChatGPT這樣的智能Ai,今天剩下的時間不多&#xff0c;每天一個主題&#xff0c;我給大家講一下計算機回答問題和寫作的能力&#xff0c;尤其是聊天型AI模型ChatGPT。讓大家可以更加前沿的了解一下關于它…

暴雨信息|警惕AI 的變革陣痛與不穩定性

過去的未來主義幽靈使我們對數字化變革的預測保持謹慎。 我們現在經常聽到&#xff0c;世界正處于一個技術轉折點&#xff1b;我們正在快速步入一個由 ChatGPT 等人工智能工具塑造的未來。然而&#xff0c;我懷疑&#xff0c;2024 年我們將會被提醒到納普斯特的幽靈——以及其他…