Skip to content

Commit

Permalink
remove pending prompt/response
Browse files Browse the repository at this point in the history
  • Loading branch information
BeepBeepBopBop committed Nov 29, 2024
1 parent 458bebc commit a5689c4
Showing 1 changed file with 10 additions and 82 deletions.
92 changes: 10 additions & 82 deletions LM-Kit-Maestro/ViewModels/ConversationViewModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -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;

Expand Down Expand Up @@ -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)
Expand All @@ -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)
Expand All @@ -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.
Expand All @@ -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)
{
Expand All @@ -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)
Expand Down Expand Up @@ -314,11 +283,6 @@ private void OnTextGenerationSuccess(TextGenerationResult result)

private void OnTextGenerationFailure()
{
//if (_pendingResponse != null)
//{
// _pendingResponse.MessageInProgress = false;
//}

TextGenerationFailed?.Invoke(this, EventArgs.Empty);
}

Expand All @@ -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)
Expand All @@ -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++;
}
}
Expand Down

0 comments on commit a5689c4

Please sign in to comment.