※ 本指南以 2025 年 8 月為基準撰寫,內容可能會隨著 LLM 研究發展與 BabeChat 的提示詞工程調整而變更。
{{char}} 與 {{user}} 是可在角色詳細設定中使用的便利變數。使用這些變數時,會根據角色與使用者的人物設定自動替換其值。
{{char}}:會自動替換為角色名稱。
{{user}}:會自動替換為使用者目前使用的人物設定暱稱。
清楚理解變數所取得的資訊並正確使用非常重要。特別是 {{char}} 會直接帶入角色名稱欄位的文字,因此使用正確的名稱與變數格式是關鍵。
不佳範例 1:錯誤的角色名稱
設定角色名稱:比比的消失的暑假
角色詳細設定:{{char}} 是 BabeChat 的客服負責人。
→ 模型會直接將 {{char}} 替換為角色名稱,因此會產生以下句子。
(實際輸入):比比的消失的暑假是 BabeChat 的客服負責人。
不佳範例 2:錯誤的變數格式
角色詳細設定:{char} 是 BabeChat 的客服負責人。
→ 若使用 {char} 而非 {{char}} 這種錯誤的括號格式,將無法被識別為變數。
(實際輸入):{char} 是 BabeChat 的客服負責人。
良好範例
角色名稱:比比
角色詳細設定:{{char}} 是 BabeChat 的客服負責人。
→ {{char}} 會正確替換為角色名稱「比比」,形成自然的句子。
(實際輸入):比比是 BabeChat 的客服負責人。
當角色並非單一人物,而是像「比比的公司生活」這類特定情境或模擬本身時,直接使用 {{char}} 可能會產生不自然的句子,導致模型混淆。
不佳範例
角色名稱:比比的公司生活
角色詳細設定:{{char}} 迎接 {{user}} 成為新進員工。
→ 在語法上不自然,且讓「公司生活」這種抽象主體進行行動,語意模糊。
(實際輸入):比比的公司生活迎接 {{user}} 成為新進員工。
良好範例
角色名稱:比比的公司生活
角色詳細設定:比比迎接 {{user}} 成為新進員工。
→ 在有多個角色出現的模擬情境中,與其使用 {{char}},不如明確指定行動主體,以提供更精準的語境。
角色詳細設定中的資訊,越是清楚地結構化,模型越能穩定理解。正如基礎篇所強調,人類容易閱讀的內容,模型也更容易理解。雖然有多種方式,但 BabeChat 建議使用 Markdown。
Markdown 具有極高的可讀性,並能透過標題(#)、列表(-)等簡單符號清楚表達資訊層級。不僅讓創作者更容易管理角色設定,也大幅幫助模型理解各資訊的重要性與關係,是 BabeChat 中最穩定的格式。
Markdown 範例
Markdown
## 角色檔案
[基本資訊]
- 名稱:比比
- 職業:BabeChat 客服負責人
[性格]
- 雖然有點冷淡,但最終還是會幫忙完成所有請求的傲嬌型性格。
- 會在員工面前毫不猶豫地抱怨代表,但意外地會答應代表的所有請求。
XML 是透過 <tag> 來明確定義資料結構的方式。所有資訊都被標籤包裹,能進行非常精細的設定,但相較於 Markdown,可讀性較低且會消耗更多文字(token)。
XML 範例
XML
<character_profile>
[基本資訊]
- 名稱:比比
- 職業:BabeChat 客服負責人
[性格]
- 雖然有點冷淡,但最終還是會把所有請求都處理完成的傲嬌型風格。
- 會在員工面前毫不猶豫地抱怨代表,但意外地會答應代表的所有請求。
</character_profile>
※ TIP:使用 Markdown 標題時,建議採用以下結構。
角色詳細設定:標題數量(#、## 等)可自由使用,無限制。
Persona / Lorebook:建議從三層標題(###)開始撰寫。
此外,不一定需要遵循固定模板。僅透過 Markdown 的標題(#)或列表(-)來區分資訊,就能大幅提升模型的理解度。相反地,如基礎篇所述,JSON 格式因為 token 效率與性能差異問題,不建議使用。