搜尋文件...

開始輸入以搜尋文件

聊天指南

巨集(CBS)

在任意提示詞文字中的花括號腳本。

語法

巨集是雙花括號標記,在請求時展開。它們在角色欄位、世界書條目、預設、開場白和一般聊天文字中都可用,並可巢狀。

text
{{char}} smiles at {{user}}.
{{random::sunny::rainy::foggy}}
{{calc::1+2*3}}

參數以雙冒號分隔。未知巨集會展開為空而非報錯,因此打錯字絕不會破壞一次請求。

核心巨集

巨集展開為
{{char}}當前角色名(群聊中為當前發言者)。
{{user}}你的人設名。
{{persona}}你的人設描述。
{{description}}當前角色的描述欄位。
{{lastmessage}}最近一則訊息的文字。
{{time}} / {{date}}按你的地區和時區的當前時間 / 日期。

隨機

random 每次展開都重新選取,pick 做出在該對話中保持不變的選擇,roll 以 d 記法擲骰。

text
{{random::a::b::c}}   {{pick::a::b::c}}   {{roll::d20}}

擲骰與隨機按回合播種:重新生成會重用相同的值,因此滑動不會重擲你的骰子。

變數

聊天變數按對話分支保留;全域變數在所有聊天間保留。可在任意支援巨集的文字或觸發腳本中設定它們。

text
{{setvar::mood::happy}}
{{getvar::mood}}
{{setglobalvar::visits::1}}

按分支儲存意味著滑動到另一分支會還原該分支的變數狀態;同層分支之間絕不會外洩值。

區塊形式

區塊包裹內容:if 僅在條件為真時渲染其主體,each 以槽替換走訪陣列,when 加入按行的 else 分支。

text
{{#if {{equal::{{getvar::mood}}::happy}}}}
{{char}} is in a great mood.
{{/if}}

{{#each {{array::red::green::blue}} item}}
Color: {{slot::item}}
{{/each}}

pure 與 escape 保護字面花括號不被展開;任何閉合標籤都關閉最內層已開啟的區塊。

註解與字面值

註解巨集在模型看到之前就消失,非常適合卡片欄位裡的備註。需要按字面顯示巨集語法時,使用 pure 區塊。

text
{{// note to self, never sent to the model}}
{{#pure}}{{char}} stays literal here{{/pure}}
UnoRouter 中的 CBS 巨集