From cd51a310428a9a22993f3554b739c56f95816e13 Mon Sep 17 00:00:00 2001 From: Thorsten Sommer <thorsten.sommer@dlr.de> Date: Mon, 29 Jul 2024 09:05:07 +0200 Subject: [PATCH] Added possibility to configure a default provider for chats --- app/MindWork AI Studio/Components/Pages/Chat.razor.cs | 5 +++++ app/MindWork AI Studio/Components/Pages/Settings.razor | 2 ++ app/MindWork AI Studio/Settings/DataModel/Data.cs | 10 ++++++++++ app/MindWork AI Studio/wwwroot/changelog/v0.8.6.md | 1 + 4 files changed, 18 insertions(+) diff --git a/app/MindWork AI Studio/Components/Pages/Chat.razor.cs b/app/MindWork AI Studio/Components/Pages/Chat.razor.cs index 6f1a4038..d880982e 100644 --- a/app/MindWork AI Studio/Components/Pages/Chat.razor.cs +++ b/app/MindWork AI Studio/Components/Pages/Chat.razor.cs @@ -56,6 +56,11 @@ public partial class Chat : MSGComponentBase, IAsyncDisposable // Configure the spellchecking for the user input: this.SettingsManager.InjectSpellchecking(USER_INPUT_ATTRIBUTES); + + if (this.SettingsManager.ConfigurationData.PreselectChatOptions) + { + this.providerSettings = this.SettingsManager.ConfigurationData.Providers.FirstOrDefault(x => x.Id == this.SettingsManager.ConfigurationData.PreselectedChatProvider); + } await base.OnInitializedAsync(); } diff --git a/app/MindWork AI Studio/Components/Pages/Settings.razor b/app/MindWork AI Studio/Components/Pages/Settings.razor index 06673974..6551a722 100644 --- a/app/MindWork AI Studio/Components/Pages/Settings.razor +++ b/app/MindWork AI Studio/Components/Pages/Settings.razor @@ -75,6 +75,8 @@ <MudText Typo="Typo.h4" Class="mb-3">Chat Options</MudText> <ConfigurationSelect OptionDescription="Shortcut to send input" SelectedValue="@(() => this.SettingsManager.ConfigurationData.ShortcutSendBehavior)" Data="@ConfigurationSelectDataFactory.GetSendBehaviorData()" SelectionUpdate="@(selectedValue => this.SettingsManager.ConfigurationData.ShortcutSendBehavior = selectedValue)" OptionHelp="Do you want to use any shortcut to send your input?"/> + <ConfigurationOption OptionDescription="Preselect chat options?" LabelOn="Chat options are preselected" LabelOff="No chat options are preselected" State="@(() => this.SettingsManager.ConfigurationData.PreselectChatOptions)" StateUpdate="@(updatedState => this.SettingsManager.ConfigurationData.PreselectChatOptions = updatedState)" OptionHelp="When enabled, you can preselect chat options. This is might be useful when you prefer a specific provider."/> + <ConfigurationProviderSelection Data="@this.availableProviders" Disabled="@(() => !this.SettingsManager.ConfigurationData.PreselectChatOptions)" SelectedValue="@(() => this.SettingsManager.ConfigurationData.PreselectedChatProvider)" SelectionUpdate="@(selectedValue => this.SettingsManager.ConfigurationData.PreselectedChatProvider = selectedValue)"/> <MudText Typo="Typo.h4" Class="mb-3">Workspace Options</MudText> <ConfigurationSelect OptionDescription="Workspace behavior" SelectedValue="@(() => this.SettingsManager.ConfigurationData.WorkspaceStorageBehavior)" Data="@ConfigurationSelectDataFactory.GetWorkspaceStorageBehaviorData()" SelectionUpdate="@(selectedValue => this.SettingsManager.ConfigurationData.WorkspaceStorageBehavior = selectedValue)" OptionHelp="Should we store your chats?"/> diff --git a/app/MindWork AI Studio/Settings/DataModel/Data.cs b/app/MindWork AI Studio/Settings/DataModel/Data.cs index 0a1bcb5c..26639b6a 100644 --- a/app/MindWork AI Studio/Settings/DataModel/Data.cs +++ b/app/MindWork AI Studio/Settings/DataModel/Data.cs @@ -58,6 +58,16 @@ public sealed class Data /// </summary> public SendBehavior ShortcutSendBehavior { get; set; } = SendBehavior.MODIFER_ENTER_IS_SENDING; + /// <summary> + /// Preselect any chat options? + /// </summary> + public bool PreselectChatOptions { get; set; } + + /// <summary> + /// Should we preselect a provider for the chat? + /// </summary> + public string PreselectedChatProvider { get; set; } = string.Empty; + #endregion #region Workspace Settings diff --git a/app/MindWork AI Studio/wwwroot/changelog/v0.8.6.md b/app/MindWork AI Studio/wwwroot/changelog/v0.8.6.md index ab409ca0..59495062 100644 --- a/app/MindWork AI Studio/wwwroot/changelog/v0.8.6.md +++ b/app/MindWork AI Studio/wwwroot/changelog/v0.8.6.md @@ -1,3 +1,4 @@ # v0.8.6, build 168 +- Added possibility to configure a default provider for chats - Improved the readability of the `settings.json` file by using indentation and enum names instead of numbers - Increased the default value for the live translation delay from 1,000 to 1,500 ms \ No newline at end of file