Skip to main content

自訂提示詞

💡TL;DR

Notemd 可讓您為每種任務類型覆寫預設的 LLM 提示語。 自訂提示語能讓您掌控模型應優先處理的內容:您可以將概念抽取限制在特定領域、改變連結方式,或調整翻譯的語氣。像 {{content}}{{concept}} 這樣的提示變數會在執行時被替換。聚焦式學習領域功能則會在抽取結果前加上您的研究領域,以自動限定其範圍。

這是Obsidian AI知識管理指南的一部分。

概覽

Notemd 內建的提示詞是為了通用知識工作而設計的。它們在多個領域都能良好運作,但仍有空間可進行領域特定的優化。自訂提示詞讓您能夠明確告訴 LLM 在您的使用情境中應如何運作——無論是需要僅提取醫學術語、僅連結命名實體,或是以正式的語氣進行翻譯。

自訂提示語並不會取代整個系統提示語。它們會覆寫或補充特定任務的指示部分,同時保留 Notemd 在解析時所依賴的結構化輸出格式(例如 CONCEPT: 行、維基連結語法)。

它是如何運作的

提示詞架構

每個 Notemd 任務都遵循相同的提示結構:

[System role: You are a helpful assistant...]
[Domain constraint: Relevant Fields: [{domain}]] <-- focused learning (optional)
[Custom task prompt] <-- your override (optional)
[Output format instructions] <-- always preserved
[Content: {{content}}] <-- runtime substitution
  1. 基礎系統提示 -- 設定助理的角色形象。不可覆寫。
  2. 聚焦學習領域 -- 會在前面加上 Relevant Fields: [medicine / law / computer science / ...] 以限制範圍。這是一個設定開關,而非原始提示語。
  3. 自訂任務提示 -- 用於取代預設的任務說明(例如,應提取哪類概念、連結的強度如何)。
  4. 輸出格式 -- 結構規則(CONCEPT: 行,維基連結格式)。最後一律附加 Notemd 以確保可解析性。
  5. 內容 -- 實際的筆記文字,會在執行時以 {{content}} 來取代。

提示詞變數

變數會在執行時被取代。可用的變數因任務而異:

變數任務已替換為
{{content}}全部備註或選取的文字
{{concept}}概念說明文件範本提取出的概念名稱
{{description}}概念說明文件範本LLM-產生的概念描述
{{backlinks}}概念說明文件範本含連結的來源筆記清單
{{date}}概念說明文件範本目前日期 (YYYY-MM-DD)
{{language}}翻譯目標輸出語言
{{source}}概念說明文件範本來源備註檔名

專注學習領域

聚焦學習功能是用於界定領域範圍的快捷方式。您不必撰寫提及您所處領域的自訂提示語,只需在設定中輸入 focusedLearningDomain 即可:

Settings → Advanced → Focused Learning Domain
Example: "medicine" or "computer science" or "Chinese philosophy"

這會在提取提示語的前面加上 Relevant Fields: [medicine],讓 LLM 優先考慮與領域相關的概念,並忽略一般性的內容。它比完整的自訂提示語更輕量,且適用於所有提取任務。

設定

設定預設值效果
customAddLinksPrompt''覆寫預設的 add-links 任務提示
customExtractConceptsPrompt''覆寫預設的概念抽取提示語
customResearchPrompt''覆寫預設的研究 + 摘要提示
customTranslatePrompt''覆寫預設的翻譯提示語
customDiagramPrompt''覆寫預設的圖表生成提示語
focusedLearningDomain''在抽取與連結的提示語前加上領域背景資訊
extractConceptsMinimalTemplatetrue使用僅含標題的概念說明文件範本(會影響 {{concept}} 範本的作用範圍)
customConceptNoteTemplate''以完整的變數支援功能,覆寫概念說明檔案範本

當自訂提示字元欄位為空白時,會使用內建的預設提示字元。

範例

你是一名醫學研究人員,負責從臨床試驗筆記中提取概念。預設的提示詞會同時擷取一般名詞與醫學術語,這會讓你的概念資料夾變得混亂。

解決方案: 設定專注的學習領域以及自訂的提取提示。

  1. focusedLearningDomain 設定為 medicine
  2. customExtractConceptsPrompt 設定為:
Extract only clinically relevant concepts: diseases, drug names,
anatomical terms, measurement endpoints, and statistical methods.
Ignore generic English nouns, brand names, and institutional names.
Prioritize MeSH terminology where applicable.

現在當你在臨床筆記上執行「Extract concepts」時,LLM 會產生:

CONCEPT: Randomized Controlled Trial
CONCEPT: Double-Blind Method
CONCEPT: Myocardial Infarction
CONCEPT: Creatine Kinase-MB
CONCEPT: Kaplan-Meier Estimate

而非可能會提取「醫院」或「月份」等不需要的通用詞彙的預設行為。

技巧

  • 在撰寫完整的自訂提示詞之前,先從聚焦的學習領域開始。透過單一設定即可涵蓋 80% 的使用情境。
  • 保留輸出格式 -- 永遠不要從自訂提示中移除「每行一個」或「CONCEPT: prefix」之類的格式說明。Notemd 的解析器依賴這些說明。
  • 先以單一筆記測試 -- 自訂提示詞可能對資料提取的範圍產生預期之外的影響。在批次處理前,請先在一筆記上進行驗證。
  • 保持提示語簡潔 -- 過於長大的自訂提示語會消耗代碼單元,且可能讓模型的注意力分散。

接下來的步驟

  • Wiki-Links -- 當您自訂 add-links 提示時,會連結到什麼內容
  • 概念說明 -- 概念說明範本與 {{concept}} 變數
  • 批次處理 -- 對整個資料夾套用自訂提示詞
  • 故障排除 -- 解決自訂提示語句產生非預期輸出的問題