Update formatMessages.mjs

This commit is contained in:
被遗忘的记忆
2024-11-19 22:26:23 +08:00
committed by GitHub
parent fb2ab54079
commit 354bdd03f4
+8 -3
View File
@@ -163,15 +163,20 @@ function convertRoles(messages, roleFeatures) {
});
}
// 替换 content 中的角色定义
// 转义正则特殊字符
function escapeRegExp(string) {
return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
}
// 替换 content 角色定义
function replaceRolesInContent(messages, roleFeatures) {
const { prefix } = roleFeatures;
// 构建角色名称列表
const roles = ['System', 'Human', 'Assistant', 'system', 'human', 'user', 'assistant'];
const rolePatterns = roles.map(role => {
const escapedRole = role.replace(/[\^$\\.*+?()[\]{}|]/g, '\\$&');
const escapedPrefix = prefix.replace(/[\^$\\.*+?()[\]{}|]/g, '\\$&');
const escapedRole = escapeRegExp(role);
const escapedPrefix = escapeRegExp(prefix);
return `(${escapedPrefix}?${escapedRole}:)`;
});
const roleRegex = new RegExp(rolePatterns.join('|'), 'g');