fix: model name inconsistencies

This commit is contained in:
cogwheel0
2025-09-01 18:49:43 +05:30
parent 2c263cf866
commit 047a67a0c5
3 changed files with 84 additions and 44 deletions

View File

@@ -688,6 +688,29 @@ class _ChatPageState extends ConsumerState<ChatPage> {
final isSelected = _selectedMessageIds.contains(message.id);
// Resolve a friendly model display name for message headers
String? displayModelName;
final rawModel = message.model;
if (rawModel != null && rawModel.isNotEmpty) {
final modelsAsync = ref.watch(modelsProvider);
if (modelsAsync.hasValue) {
final models = modelsAsync.value!;
try {
// Prefer exact ID match; fall back to exact name match
final match = models.firstWhere(
(m) => m.id == rawModel || m.name == rawModel,
);
displayModelName = match.name;
} catch (_) {
// As a fallback, format the raw value to be more readable
displayModelName = _formatModelDisplayName(rawModel);
}
} else {
// Models not loaded yet; format raw value for readability
displayModelName = _formatModelDisplayName(rawModel);
}
}
// Wrap message in selection container if in selection mode
Widget messageWidget;
@@ -698,7 +721,7 @@ class _ChatPageState extends ConsumerState<ChatPage> {
message: message,
isUser: isUser,
isStreaming: isStreaming,
modelName: message.model,
modelName: displayModelName,
onCopy: () => _copyMessage(message.content),
onEdit: () => _editMessage(message),
onRegenerate: () => _regenerateMessage(message),
@@ -710,7 +733,7 @@ class _ChatPageState extends ConsumerState<ChatPage> {
key: ValueKey('assistant-${message.id}'),
message: message,
isStreaming: isStreaming,
modelName: message.model,
modelName: displayModelName,
onCopy: () => _copyMessage(message.content),
onRegenerate: () => _regenerateMessage(message),
onLike: () => _likeMessage(message),