@using AIStudio.Settings.DataModel
@inherits MSGComponentBase
@* The tile behaves differently with and without a workspace, so the form says which of the two is
chosen right now instead of only explaining that both are possible. *@
@(this.OpensTemporaryChat
? T("Without a workspace, the tile opens a disappearing chat: it belongs to no workspace and is deleted according to your workspace maintenance settings.")
: T("The tile opens its chat in this workspace and creates the workspace when it does not exist yet."))
@if (this.OpensTemporaryChat && this.SettingsManager.GetChatTemplateWorkspaceName(this.SelectedChatTemplate) is { } templateWorkspaceName)
{
@string.Format(T("The chosen chat template keeps its chats in the workspace '{0}', so the tile opens its chat there instead. A workspace entered here wins over the one of the template."), templateWorkspaceName)
}
@T("Use chat default")
@foreach (var provider in this.SettingsManager.GetConfidentProviders(Components.CHAT))
{
}
@if (this.SelectedChatTemplate.ProviderId is not null)
{
@T("The chosen chat template preselects a provider of its own, and it wins over a selection made here as long as that provider can be used for chats.")
}
@T("Use chat default")
@T("Use no profile")
@foreach (var profile in this.SettingsManager.ConfigurationData.Profiles)
{
@profile.GetSafeName()
}
@if (this.SelectedChatTemplate is { AllowProfileUsage: true, ProfileId: not null })
{
@T("The chosen chat template preselects a profile of its own, and it wins over a selection made here as long as that profile exists.")
}
@T("Use chat default")
@T("Use no chat template")
@foreach (var chatTemplate in this.SettingsManager.ConfigurationData.ChatTemplates)
{
@chatTemplate.GetSafeName()
}
@* Without the RAG preview, the chat uses no data sources, so there is nothing to choose here. A
selection made before stays with the launcher and counts once RAG is switched on again: *@
@if (PreviewFeatures.PRE_RAG_2024.IsEnabled(this.SettingsManager))
{
@foreach (var dataSource in this.SettingsManager.ConfigurationData.DataSources)
{
@dataSource.Name
}
@* A chat template wins over what is chosen here, so the form says so before somebody picks
something which would never take effect: *@
@if (this.SelectedChatTemplate.DataSourceOptions is not null)
{
@T("The chosen chat template brings data sources of its own, and those win over a selection made here. Only a template can also leave the choice of sources to the AI, which is why it decides this on its own.")
}
}
@if (this.SelectedChatTemplate.ToolIds is not null)
{
@T("The chosen chat template brings tools of its own, and those win over a selection made here.")
}