Fix group chat member names in openai.js

Group members are not by card name, so look up the actual character name instead
This commit is contained in:
ShisoFox
2023-05-01 04:14:42 -04:00
parent 4b2faa6639
commit 29cfa97ddc

View File

@ -311,7 +311,11 @@ async function prepareOpenAIMessages(name2, storyString, worldInfoBefore, worldI
if (selected_group) {
// set "special" group nudging messages
const groupMembers = groups.find(x => x.id === selected_group)?.members;
const names = Array.isArray(groupMembers) ? groupMembers.join(', ') : '';
let names = '';
if (Array.isArray(groupMembers)) {
names = groupMembers.map(member => characters.find(c => c.avatar === member)).map((x) => x.name);
names = names.join(', ')
}
new_chat_msg.content = `[Start a new group chat. Group members: ${names}]`;
let group_nudge = { "role": "system", "content": `[Write the next reply only as ${name2}]` };
openai_msgs.push(group_nudge);