修改世界书
setLorebookSettings
修改世界书全局设置。
typescript
async function setLorebookSettings(
settings: Partial<LorebookSettings>
): Promise<void>;
参数
settings
- 类型:
Partial<LorebookSettings>
- 描述: 要修改的世界书设置
注意
setLorebookSettings
因为酒馆问题很慢,建议先 getLorebookSetting
, 进行比较,再 setLorebookSettings
示例
typescript
await setLorebookSettings({ context_percentage: 100, recursive: true });
typescript
const expected_settings = {
/*预期设置*/
};
const settings = await getLorebookSettings();
if (_.isEqual(_.merge({}, settings, expected_settings), settings)) {
setLorebookSettings(expected_settings);
}
setLorebookEntries
修改世界书中的条目信息。
typescript
async function setLorebookEntries(
lorebook: string,
entries: (Pick<LorebookEntry, "uid"> & Partial<Omit<LorebookEntry, "uid">>)[]
): Promise<void>;
参数
lorebook
- 类型:
string
- 描述: 条目所在的世界书名称
entries
- 类型:
(Pick<LorebookEntry, "uid"> & Partial<Omit<LorebookEntry, "uid">>)[]
- 描述: 要修改的条目信息数组。其中必须有 "uid",而其他字段可选
注意
这只是修改信息,不能创建新的条目,因此要求条目必须已经在世界书中。
示例
typescript
const lorebook = "eramgt少女歌剧";
const entries = await getLorebookEntries(lorebook);
await setLorebookEntries(
lorebook,
entries.map((entry) => ({
uid: entry.uid,
prevent_recursion: true,
}))
);
typescript
const lorebook = "eramgt少女歌剧";
const entries = await getLorebookEntries(lorebook);
await setLorebookEntries(
lorebook,
entries.map((entry) => ({
uid: entry.uid,
prevent_recursion: !entry.prevent_recursion,
}))
);
setCurrentCharLorebooks
设置当前角色卡绑定的世界书。
typescript
async function setCurrentCharLorebooks(
lorebooks: Partial<CharLorebooks>
): Promise<void>;
参数
lorebooks
- 类型:
CharLorebook[]
- 描述:
primary: string | null;
: 主要世界书名称,设为null或空字符串表示移除additional: string[];
: 附加世界书名称数组,设为空数组表示移除所有附加世界书