From a5689c493b976104cd8297c0f06d5eb8c633b69c Mon Sep 17 00:00:00 2001 From: BeepBeepBopBop Date: Fri, 29 Nov 2024 19:23:11 +0100 Subject: [PATCH] remove pending prompt/response --- .../ViewModels/ConversationViewModel.cs | 92 ++----------------- 1 file changed, 10 insertions(+), 82 deletions(-) diff --git a/LM-Kit-Maestro/ViewModels/ConversationViewModel.cs b/LM-Kit-Maestro/ViewModels/ConversationViewModel.cs index 683b7a20..1ca99868 100644 --- a/LM-Kit-Maestro/ViewModels/ConversationViewModel.cs +++ b/LM-Kit-Maestro/ViewModels/ConversationViewModel.cs @@ -20,11 +20,6 @@ public partial class ConversationViewModel : AssistantSessionViewModelBase private bool _isSynchedWithLog = true; - private bool _awaitingLMKitUserMessage; - private bool _awaitingLMKitAssistantMessage; - private MessageViewModel? _pendingPrompt; - //private MessageViewModel? _pendingResponse; - [ObservableProperty] bool _usedDifferentModel; @@ -203,9 +198,6 @@ private void OnResponseRegenerationRequested(MessageViewModel message) message.Text = string.Empty; message.MessageInProgress = true; AwaitingResponse = true; - _awaitingLMKitAssistantMessage = true; - //_pendingResponse = new MessageViewModel(this, new Message() { Sender = MessageSender.Assistant }) { MessageInProgress = true }; - //Messages.Add(_pendingResponse); } private void OnNewlySubmittedPrompt(string prompt) @@ -214,13 +206,6 @@ private void OnNewlySubmittedPrompt(string prompt) UsedDifferentModel &= false; LatestPromptStatus = LMKitTextGenerationStatus.Undefined; AwaitingResponse = true; - _awaitingLMKitUserMessage = true; - _awaitingLMKitAssistantMessage = true; - _pendingPrompt = new MessageViewModel(this, new Message() { Sender = MessageSender.User, Text = prompt }); - //_pendingResponse = new MessageViewModel(this, new Message() { Sender = MessageSender.Assistant }) { MessageInProgress = true }; - - Messages.Add(_pendingPrompt); - //Messages.Add(_pendingResponse); } private void OnTextGenerationResult(LMKitService.LMKitResult? result, Exception? exception = null) @@ -231,21 +216,17 @@ private void OnTextGenerationResult(LMKitService.LMKitResult? result, Exception? { if (exception is OperationCanceledException operationCancelledException) { - //_pendingResponse!.Status = LMKitTextGenerationStatus.Cancelled; - - if (_pendingPrompt != null) - { - _pendingPrompt.Status = LMKitTextGenerationStatus.Cancelled; - } + //if (_pendingPrompt != null) + //{ + // _pendingPrompt.Status = LMKitTextGenerationStatus.Cancelled; + //} } else { - //_pendingResponse!.Status = LMKitTextGenerationStatus.UnknownError; - - if (_pendingPrompt != null) - { - _pendingPrompt!.Status = LMKitTextGenerationStatus.UnknownError; - } + //if (_pendingPrompt != null) + //{ + // _pendingPrompt!.Status = LMKitTextGenerationStatus.UnknownError; + //} } // todo: provide more error info with event args. @@ -254,7 +235,6 @@ private void OnTextGenerationResult(LMKitService.LMKitResult? result, Exception? else if (result != null) { LatestPromptStatus = result.Status; - //_pendingResponse!.Status = LatestPromptStatus; if (result.Status == LMKitTextGenerationStatus.Undefined && result.Result is TextGenerationResult textGenerationResult) { @@ -271,17 +251,6 @@ private void OnTextGenerationResult(LMKitService.LMKitResult? result, Exception? SaveConversation(); _isSynchedWithLog = true; } - - if (!_awaitingLMKitAssistantMessage) - { - //_pendingResponse = null; - } - - if (!_awaitingLMKitUserMessage) - { - _pendingPrompt = null; - } - } protected override async Task HandleCancel(bool shouldAwaitTermination) @@ -314,11 +283,6 @@ private void OnTextGenerationSuccess(TextGenerationResult result) private void OnTextGenerationFailure() { - //if (_pendingResponse != null) - //{ - // _pendingResponse.MessageInProgress = false; - //} - TextGenerationFailed?.Invoke(this, EventArgs.Empty); } @@ -330,43 +294,7 @@ private void OnLMKitChatHistoryChanged(object? sender, NotifyCollectionChangedEv { foreach (var item in e.NewItems!) { - ChatHistory.Message message = (ChatHistory.Message)item; - MessageViewModel messageViewModel = new MessageViewModel(this, message); - - if (message.AuthorRole == AuthorRole.User) - { - if (_pendingPrompt != null && _awaitingLMKitUserMessage) - { - _pendingPrompt.LMKitMessage = message; - _awaitingLMKitUserMessage = false; - - if (!AwaitingResponse) - { - _pendingPrompt = null; - } - } - - if (AwaitingResponse) - { - _pendingPrompt = messageViewModel; - } - - } - else if (message.AuthorRole == AuthorRole.Assistant) - { - if (/*_pendingResponse != null &&*/ _awaitingLMKitAssistantMessage) - { - //_pendingResponse.LMKitMessage = message; - _awaitingLMKitUserMessage = false; - - if (!AwaitingResponse) - { - //_pendingResponse = null; - } - } - } - - _mainThread.BeginInvokeOnMainThread(() => Messages.Add(messageViewModel)); + _mainThread.BeginInvokeOnMainThread(() => Messages.Add(new MessageViewModel(this, (ChatHistory.Message)item))); } } else if (e.Action == NotifyCollectionChangedAction.Remove) @@ -375,7 +303,7 @@ private void OnLMKitChatHistoryChanged(object? sender, NotifyCollectionChangedEv foreach (var item in e.OldItems!) { - _mainThread.BeginInvokeOnMainThread(() => Messages.RemoveAt(e.OldStartingIndex - e.OldItems.Count + count)); + Messages.RemoveAt(e.OldStartingIndex - e.OldItems.Count + count); count++; } }