Persist regenerated answer versions
This commit is contained in:
@@ -91,9 +91,19 @@ class ApiRepository {
|
||||
messages:
|
||||
(data['messages'] as List<dynamic>).map((item) {
|
||||
final message = item as Map<String, dynamic>;
|
||||
final content = message['content'] as String;
|
||||
final fromUser = message['role'] == 'user';
|
||||
final versions =
|
||||
(message['versions'] as List<dynamic>? ?? const [])
|
||||
.cast<String>();
|
||||
return ChatMessage(
|
||||
message['content'] as String,
|
||||
fromUser: message['role'] == 'user',
|
||||
content,
|
||||
fromUser: fromUser,
|
||||
answerVersions:
|
||||
fromUser
|
||||
? const []
|
||||
: (versions.isEmpty ? [content] : versions),
|
||||
selectedVersion: message['selected_version'] as int? ?? 0,
|
||||
);
|
||||
}).toList(),
|
||||
);
|
||||
@@ -111,6 +121,13 @@ class ApiRepository {
|
||||
(message) => {
|
||||
'role': message.fromUser ? 'user' : 'assistant',
|
||||
'content': message.text,
|
||||
if (!message.fromUser) ...{
|
||||
'versions':
|
||||
message.answerVersions.isEmpty
|
||||
? [message.text]
|
||||
: message.answerVersions,
|
||||
'selected_version': message.selectedVersion,
|
||||
},
|
||||
},
|
||||
)
|
||||
.toList(),
|
||||
|
||||
Reference in New Issue
Block a user