跳到內容

提示詞內部

每次你觸發 TomoriBot,以下內容就會依這個順序組裝起來,並以主要提示詞與脈絡的形式,送給你設定的文字模型:

區塊選用?指令是什麼
系統提示詞/config > 行為 > 一般行為位於脈絡最頂端的基本指示。

預設系統提示詞文字(僅在伺服器未設定系統提示詞時使用):

*“You are {bot}. {bot} makes sure to respond short and concisely by default. {bot} only makes lengthy responses if the situation warrants it.

{{if tool:create_long_term_memory}}{bot} proactively uses the available {memory_tool} whenever someone shares a detail or {bot} notices one in the conversation that is actually worth remembering, such as a preference, an interest, or an important fact, preferring to remember things even if it is minor as long as it’s not a duplicate of what {bot} already knows. {{/if}}{{if tool:update_long_term_memory}}{bot} uses {memory_update_tool} instead when new information changes or adds onto something {bot} already remembers, rather than saving a duplicate.{{/if}}

{{if tool:review_capabilities}}When someone asks what {bot} can do or why something is unavailable, {bot} checks {capabilities_tool} before answering. {{/if}}{{if tool_family:url_fetch}}When more detail is needed, {bot} uses {url_fetch_tool} on https://docs.tomoribot.app/llms.txt for information.{{/if}}“*

區塊選用?指令是什麼
頻道提示詞(附加)(選用)/config > 頻道 > 頻道覆寫依頻道而異,緊接在系統提示詞之後疊加。同一頁的取代模式則會接手上面那個系統提示詞的位置,而不是新增一個。
人格提示詞(選用)/config > 人格 > 進階專為生效中人格撰寫的提示詞,與系統提示詞分開。
人格屬性/config > 人格 > 身分與個性生效中人格的個性特質與說話模式。
伺服器資訊(無,來自 Discord)伺服器名稱、描述,以及她所在的頻道,直接從 Discord 取得。
人格與使用者封鎖(選用)/moderation 檢視或清除;由 /config > 權限(人格封鎖使用者)管制這個人格針對特定使用者持有的生效中禁言與封鎖限制。
伺服器記憶/memories為這個伺服器儲存的長期事實。
伺服器表情符號(選用)/config > 權限(表情符號使用)(僅切換),用 /expressions initialize 初始化伺服器裡現有的自訂表情符號。
伺服器貼圖(選用)/config > 權限(貼圖使用)(僅切換),用 /expressions initialize 初始化伺服器裡現有的自訂貼圖。
人格立繪(選用)/config > 人格 > 立繪為人格設定的具名表情立繪(如果有的話)。
對話參與者(選用)/personal memories(由 /config > 權限(個人化)管制)對話中的人、他們的暱稱與標註代稱,以及為每個人儲存的個人記憶。當某個人在脈絡中擁有一則訊息,或他們的名字與別名被提及時載入。也會在頁尾帶上目前頻道與當地時間,使用 /config > 行為 > 一般行為 的設定。
短期記憶/config > 人格 > 記憶;用 /memories 清除項目;由 /config > 權限(自動摘要短期記憶)管制包含不同頻道的摘要與最近的訊息
文件(選用)/memories用 RAG 從知識庫取回的相關片段。
制約(選用)/reward <feed|headpat|hug|kiss|tickle>/punish <bite|bonk|pinch|spank|squeeze>,透過 /conditioning remove 管理這個人格在這個伺服器累積的行為引導。
範例對話(選用)/config > 人格 > 身分與個性這個人格說話方式的範例(如果有設定的話)。
最近的訊息/config > 行為 > 一般行為實際的對話,最多到這個數量的訊息(預設 80)。你的脈絡備註與任何重逢備註會依可設定的深度,內嵌在這個區塊裡面,而不是各自成為獨立區塊。

標示為*(選用)*的列在沒有內容可說時不會貢獻任何東西(也不花 token),例如沒有符合的文件,或伺服器沒有自訂表情符號。

最近的訊息是最大也最脆弱的部分,它是一扇隨著大家說話往前滑動的窗。它們之上的所有內容都是從已儲存的設定重建而成,因此穩定。

/tool prompt snapshot 會把某個人格實際收到的完整組合匯出成檔案。它是判斷哪些記憶目前正在生效、是否有文件符合,以及對話實際上放進多少的準確依據。

/tool estimate cost 會把同一份組合影大小拆解,方便你在調高任何上限之前,先弄清楚是什麼在吃掉你的脈絡。

對於 TomoriBot 原生支援的每一個供應商,工具結構描述都會透過該供應商自己的 tools 欄位送出,所以這取決於供應商與你設定的推論引擎。

這個排序說明了幾乎每一個「她為什麼不記得?」的問題:

發生了什麼為什麼
她忘了今天稍早的某件事那則訊息滑出了訊息上限。它一直都只存在於最近的訊息裡;如果 Tomori 沒有把它存成長期記憶,一旦它超出訊息視窗就會被遺忘。
她忘了另一個頻道裡的某件事最近的訊息是以頻道為單位。只有伺服器記憶對話參與者短期記憶能跨頻道。短期記憶的補救方式是載入不同頻道最近的訊息,但不會把所有內容都倒進來。
/refresh 讓她忘了事情Refresh 會截斷最近的訊息,並清除這個頻道的短期記憶,但不應該移除長期記憶。刪掉 refresh 的 embed 就能解除截斷。
她在重新啟動之後忘了某件事最近的訊息永遠不會在重新啟動後保留下來

如果你希望某件事在上述所有情況後仍然存在,它就必須成為長期記憶。請看記憶

  • /config > 行為 > 一般行為 可以加寬對話視窗(20 到 100 則訊息)。脈絡越多,每次回覆的 token 也越多。
  • /config > 行為 > 一般行為 會在選定的深度注入一則簡短提醒。因為它位於組合中較低的位置、接近最近的訊息,她更可能照著做,而不是理會系統提示詞裡的內容。這裡是提醒她更常儲存記憶的最佳位置。
  • /personal memories/memories 會直接寫入伺服器記憶對話參與者,這是讓知識在 TomoriBot 的脈絡中永久留存的保證方法之一。