This commit is contained in:
H0llyW00dzZ 2024-10-20 19:57:32 +08:00 committed by GitHub
commit 1b426fcad9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 33 additions and 15 deletions

View File

@ -252,6 +252,12 @@
} }
} }
&-system {
.body {
background-color: var(--white);
}
}
&-user { &-user {
flex-direction: row-reverse; flex-direction: row-reverse;

View File

@ -568,15 +568,22 @@ export function ImagePreviewer(props: {
</div> </div>
</div> </div>
{props.messages.map((m, i) => { {props.messages.map((m, i) => {
const isUserMessage = m.role === "user";
const isSystemMessage = m.role === "system";
const avatar =
isUserMessage && config.avatar
? config.avatar
: isSystemMessage
? "2699-fe0f"
: mask.avatar;
const messageClass = `${styles["message"]} ${
styles["message-" + m.role]
}`;
return ( return (
<div <div className={messageClass} key={i}>
className={styles["message"] + " " + styles["message-" + m.role]}
key={i}
>
<div className={styles["avatar"]}> <div className={styles["avatar"]}>
<ExportAvatar <ExportAvatar avatar={avatar} />
avatar={m.role === "user" ? config.avatar : mask.avatar}
/>
</div> </div>
<div className={styles["body"]}> <div className={styles["body"]}>
@ -665,10 +672,6 @@ export function JsonPreviewer(props: {
}) { }) {
const msgs = { const msgs = {
messages: [ messages: [
{
role: "system",
content: `${Locale.FineTuned.Sysmessage} ${props.topic}`,
},
...props.messages.map((m) => ({ ...props.messages.map((m) => ({
role: m.role, role: m.role,
content: m.content, content: m.content,

View File

@ -652,10 +652,19 @@ export const useChatStore = createPersistStore(
onFinish(message) { onFinish(message) {
if (!isValidMessage(message)) return; if (!isValidMessage(message)) return;
get().updateCurrentSession( get().updateCurrentSession(
(session) => (session) => {
(session.topic = session.topic =
message.length > 0 ? trimTopic(message) : DEFAULT_TOPIC), message.length > 0 ? trimTopic(message) : DEFAULT_TOPIC;
); // Add system message after summarizing the topic
// which is powerful based of fine-tuning
const systemMessage: ChatMessage = {
date: new Date().toLocaleString(),
id: nanoid(),
role: "system",
content: `${Locale.FineTuned.Sysmessage} ${session.topic}`,
};
session.messages = [systemMessage, ...session.messages];
});
}, },
}); });
} }