mirror of
https://github.com/MindWorkAI/AI-Studio.git
synced 2026-10-09 22:53:48 +00:00
Added support for organization-managed provider confidence settings (#815)
Build and Release / Determine run mode (push) Waiting to run
Build and Release / Read metadata (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-apple-darwin, osx-arm64, macos-latest, aarch64-apple-darwin, dmg,app,updater, dmg) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-pc-windows-msvc.exe, win-arm64, windows-latest, aarch64-pc-windows-msvc, nsis,updater, nsis) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-unknown-linux-gnu, linux-arm64, ubuntu-22.04-arm, aarch64-unknown-linux-gnu, appimage,updater, appimage) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-apple-darwin, osx-x64, macos-latest, x86_64-apple-darwin, dmg,app,updater, dmg) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-pc-windows-msvc.exe, win-x64, windows-latest, x86_64-pc-windows-msvc, nsis,updater, nsis) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-unknown-linux-gnu, linux-x64, ubuntu-22.04, x86_64-unknown-linux-gnu, appimage,updater, appimage) (push) Blocked by required conditions
Build and Release / Prepare & create release (push) Blocked by required conditions
Build and Release / Publish release (push) Blocked by required conditions
Build and Release / Determine run mode (push) Waiting to run
Build and Release / Read metadata (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-apple-darwin, osx-arm64, macos-latest, aarch64-apple-darwin, dmg,app,updater, dmg) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-pc-windows-msvc.exe, win-arm64, windows-latest, aarch64-pc-windows-msvc, nsis,updater, nsis) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-unknown-linux-gnu, linux-arm64, ubuntu-22.04-arm, aarch64-unknown-linux-gnu, appimage,updater, appimage) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-apple-darwin, osx-x64, macos-latest, x86_64-apple-darwin, dmg,app,updater, dmg) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-pc-windows-msvc.exe, win-x64, windows-latest, x86_64-pc-windows-msvc, nsis,updater, nsis) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-unknown-linux-gnu, linux-x64, ubuntu-22.04, x86_64-unknown-linux-gnu, appimage,updater, appimage) (push) Blocked by required conditions
Build and Release / Prepare & create release (push) Blocked by required conditions
Build and Release / Publish release (push) Blocked by required conditions
This commit is contained in:
1 parent
5045da3a91
commit
e65110a142
31 files changed
+950
-380
No files matched your search
@@ -24,7 +24,8 @@ public static class SettingsMigrations
|
||||
configV1 = MigrateV1ToV2(logger, configV1);
|
||||
configV1 = MigrateV2ToV3(logger, configV1);
|
||||
var configV14 = MigrateV3ToV4(logger, configV1);
|
||||
return MigrateV4ToV5(logger, configV14);
|
||||
var configV15 = MigrateV4ToV5(logger, configV14);
|
||||
return MigrateV5ToV6(logger, configV15);
|
||||
|
||||
case Version.V2:
|
||||
var configV2 = JsonSerializer.Deserialize<DataV1V3>(configData, jsonOptions);
|
||||
@@ -36,7 +37,8 @@ public static class SettingsMigrations
|
||||
|
||||
configV2 = MigrateV2ToV3(logger, configV2);
|
||||
var configV24 = MigrateV3ToV4(logger, configV2);
|
||||
return MigrateV4ToV5(logger, configV24);
|
||||
var configV25 = MigrateV4ToV5(logger, configV24);
|
||||
return MigrateV5ToV6(logger, configV25);
|
||||
|
||||
case Version.V3:
|
||||
var configV3 = JsonSerializer.Deserialize<DataV1V3>(configData, jsonOptions);
|
||||
@@ -47,8 +49,9 @@ public static class SettingsMigrations
|
||||
}
|
||||
|
||||
var configV34 = MigrateV3ToV4(logger, configV3);
|
||||
return MigrateV4ToV5(logger, configV34);
|
||||
|
||||
var configV35 = MigrateV4ToV5(logger, configV34);
|
||||
return MigrateV5ToV6(logger, configV35);
|
||||
|
||||
case Version.V4:
|
||||
var configV4 = JsonSerializer.Deserialize<DataV4>(configData, jsonOptions);
|
||||
if (configV4 is null)
|
||||
@@ -57,18 +60,29 @@ public static class SettingsMigrations
|
||||
return new();
|
||||
}
|
||||
|
||||
return MigrateV4ToV5(logger, configV4);
|
||||
var configV45 = MigrateV4ToV5(logger, configV4);
|
||||
return MigrateV5ToV6(logger, configV45);
|
||||
|
||||
default:
|
||||
logger.LogInformation("No configuration migration is needed.");
|
||||
var configV5 = JsonSerializer.Deserialize<Data>(configData, jsonOptions);
|
||||
case Version.V5:
|
||||
var configV5 = JsonSerializer.Deserialize<DataV5>(configData, jsonOptions);
|
||||
if (configV5 is null)
|
||||
{
|
||||
logger.LogError("Failed to parse the v4 configuration. Using default values.");
|
||||
logger.LogError("Failed to parse the v5 configuration. Using default values.");
|
||||
return new();
|
||||
}
|
||||
|
||||
return configV5;
|
||||
return MigrateV5ToV6(logger, configV5);
|
||||
|
||||
default:
|
||||
logger.LogInformation("No configuration migration is needed.");
|
||||
var configV6 = JsonSerializer.Deserialize<Data>(configData, jsonOptions);
|
||||
if (configV6 is null)
|
||||
{
|
||||
logger.LogError("Failed to parse the v6 configuration. Using default values.");
|
||||
return new();
|
||||
}
|
||||
|
||||
return configV6;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -83,9 +97,9 @@ public static class SettingsMigrations
|
||||
return new()
|
||||
{
|
||||
Version = Version.V2,
|
||||
|
||||
|
||||
Providers = previousData.Providers.Select(provider => provider with { IsSelfHosted = false, Hostname = string.Empty }).ToList(),
|
||||
|
||||
|
||||
EnableSpellchecking = previousData.EnableSpellchecking,
|
||||
IsSavingEnergy = previousData.IsSavingEnergy,
|
||||
NextProviderNum = previousData.NextProviderNum,
|
||||
@@ -93,7 +107,7 @@ public static class SettingsMigrations
|
||||
UpdateInterval = previousData.UpdateInterval,
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
private static DataV1V3 MigrateV2ToV3(ILogger<SettingsManager> logger, DataV1V3 previousData)
|
||||
{
|
||||
//
|
||||
@@ -109,7 +123,7 @@ public static class SettingsMigrations
|
||||
{
|
||||
if(provider.IsSelfHosted)
|
||||
return provider with { Host = Host.LM_STUDIO };
|
||||
|
||||
|
||||
return provider with { Host = Host.NONE };
|
||||
}).ToList(),
|
||||
|
||||
@@ -129,14 +143,14 @@ public static class SettingsMigrations
|
||||
// Summary:
|
||||
// We grouped the settings into different categories.
|
||||
//
|
||||
|
||||
|
||||
logger.LogInformation("Migrating from v3 to v4...");
|
||||
return new()
|
||||
{
|
||||
Version = Version.V4,
|
||||
Providers = previousConfig.Providers,
|
||||
NextProviderNum = previousConfig.NextProviderNum,
|
||||
|
||||
|
||||
App = new(x => x.App)
|
||||
{
|
||||
EnableSpellchecking = previousConfig.EnableSpellchecking,
|
||||
@@ -144,27 +158,27 @@ public static class SettingsMigrations
|
||||
UpdateInterval = previousConfig.UpdateInterval,
|
||||
NavigationBehavior = previousConfig.NavigationBehavior,
|
||||
},
|
||||
|
||||
|
||||
Chat = new()
|
||||
{
|
||||
ShortcutSendBehavior = previousConfig.ShortcutSendBehavior,
|
||||
PreselectOptions = previousConfig.PreselectChatOptions,
|
||||
PreselectedProvider = previousConfig.PreselectedChatProvider,
|
||||
},
|
||||
|
||||
|
||||
Workspace = new()
|
||||
{
|
||||
StorageBehavior = previousConfig.WorkspaceStorageBehavior,
|
||||
StorageTemporaryMaintenancePolicy = previousConfig.WorkspaceStorageTemporaryMaintenancePolicy,
|
||||
},
|
||||
|
||||
|
||||
IconFinder = new()
|
||||
{
|
||||
PreselectOptions = previousConfig.PreselectIconOptions,
|
||||
PreselectedProvider = previousConfig.PreselectedIconProvider,
|
||||
PreselectedSource = previousConfig.PreselectedIconSource,
|
||||
},
|
||||
|
||||
|
||||
Translation = new()
|
||||
{
|
||||
PreselectLiveTranslation = previousConfig.PreselectLiveTranslation,
|
||||
@@ -177,7 +191,7 @@ public static class SettingsMigrations
|
||||
PreselectContentCleanerAgent = previousConfig.PreselectContentCleanerAgentForTranslation,
|
||||
PreselectWebContentReader = previousConfig.PreselectWebContentReaderForTranslation,
|
||||
},
|
||||
|
||||
|
||||
Coding = new()
|
||||
{
|
||||
PreselectOptions = previousConfig.PreselectCodingOptions,
|
||||
@@ -186,7 +200,7 @@ public static class SettingsMigrations
|
||||
PreselectedOtherProgrammingLanguage = previousConfig.PreselectedCodingOtherLanguage,
|
||||
PreselectCompilerMessages = previousConfig.PreselectCodingCompilerMessages,
|
||||
},
|
||||
|
||||
|
||||
TextSummarizer = new()
|
||||
{
|
||||
PreselectOptions = previousConfig.PreselectTextSummarizerOptions,
|
||||
@@ -199,7 +213,7 @@ public static class SettingsMigrations
|
||||
PreselectContentCleanerAgent = previousConfig.PreselectContentCleanerAgentForTextSummarizer,
|
||||
PreselectWebContentReader = previousConfig.PreselectWebContentReaderForTextSummarizer,
|
||||
},
|
||||
|
||||
|
||||
TextContentCleaner = new()
|
||||
{
|
||||
PreselectAgentOptions = previousConfig.PreselectAgentTextContentCleanerOptions,
|
||||
@@ -207,14 +221,14 @@ public static class SettingsMigrations
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
private static Data MigrateV4ToV5(ILogger<SettingsManager> logger, DataV4 previousConfig)
|
||||
|
||||
private static DataV5 MigrateV4ToV5(ILogger<SettingsManager> logger, DataV4 previousConfig)
|
||||
{
|
||||
//
|
||||
// Summary:
|
||||
// We renamed the LLM provider enum.
|
||||
//
|
||||
|
||||
|
||||
logger.LogInformation("Migrating from v4 to v5...");
|
||||
return new()
|
||||
{
|
||||
@@ -241,4 +255,68 @@ public static class SettingsMigrations
|
||||
MyTasks = previousConfig.MyTasks,
|
||||
};
|
||||
}
|
||||
|
||||
private static Data MigrateV5ToV6(ILogger<SettingsManager> logger, DataV5 previousConfig)
|
||||
{
|
||||
//
|
||||
// Summary:
|
||||
// We moved confidence settings out of LLM provider settings.
|
||||
//
|
||||
|
||||
logger.LogInformation("Migrating from v5 to v6...");
|
||||
return new()
|
||||
{
|
||||
Version = Version.V6,
|
||||
Providers = previousConfig.Providers,
|
||||
Confidence = new(x => x.Confidence)
|
||||
{
|
||||
EnforceGlobalMinimumConfidence = previousConfig.LLMProviders.EnforceGlobalMinimumConfidence,
|
||||
GlobalMinimumConfidence = previousConfig.LLMProviders.GlobalMinimumConfidence,
|
||||
ShowProviderConfidence = previousConfig.LLMProviders.ShowProviderConfidence,
|
||||
ConfidenceScheme = previousConfig.LLMProviders.ConfidenceScheme,
|
||||
CustomConfidenceScheme = previousConfig.LLMProviders.CustomConfidenceScheme,
|
||||
},
|
||||
EmbeddingProviders = previousConfig.EmbeddingProviders,
|
||||
TranscriptionProviders = previousConfig.TranscriptionProviders,
|
||||
DataSources = previousConfig.DataSources,
|
||||
Profiles = previousConfig.Profiles,
|
||||
ChatTemplates = previousConfig.ChatTemplates,
|
||||
EnabledPlugins = previousConfig.EnabledPlugins,
|
||||
ManagedEditableDefaults = previousConfig.ManagedEditableDefaults,
|
||||
AssistantPluginAudits = previousConfig.AssistantPluginAudits,
|
||||
NextProviderNum = previousConfig.NextProviderNum,
|
||||
NextEmbeddingNum = previousConfig.NextEmbeddingNum,
|
||||
NextTranscriptionNum = previousConfig.NextTranscriptionNum,
|
||||
NextDataSourceNum = previousConfig.NextDataSourceNum,
|
||||
NextProfileNum = previousConfig.NextProfileNum,
|
||||
NextChatTemplateNum = previousConfig.NextChatTemplateNum,
|
||||
NextDocumentAnalysisPolicyNum = previousConfig.NextDocumentAnalysisPolicyNum,
|
||||
App = previousConfig.App,
|
||||
Chat = previousConfig.Chat,
|
||||
Workspace = previousConfig.Workspace,
|
||||
IconFinder = previousConfig.IconFinder,
|
||||
Translation = previousConfig.Translation,
|
||||
Coding = previousConfig.Coding,
|
||||
ERI = previousConfig.ERI,
|
||||
DocumentAnalysis = previousConfig.DocumentAnalysis,
|
||||
MandatoryInformation = previousConfig.MandatoryInformation,
|
||||
TextSummarizer = previousConfig.TextSummarizer,
|
||||
TextContentCleaner = previousConfig.TextContentCleaner,
|
||||
AgentDataSourceSelection = previousConfig.AgentDataSourceSelection,
|
||||
AgentRetrievalContextValidation = previousConfig.AgentRetrievalContextValidation,
|
||||
AssistantPluginAudit = previousConfig.AssistantPluginAudit,
|
||||
Agenda = previousConfig.Agenda,
|
||||
GrammarSpelling = previousConfig.GrammarSpelling,
|
||||
RewriteImprove = previousConfig.RewriteImprove,
|
||||
PromptOptimizer = previousConfig.PromptOptimizer,
|
||||
EMail = previousConfig.EMail,
|
||||
SlideBuilder = previousConfig.SlideBuilder,
|
||||
LegalCheck = previousConfig.LegalCheck,
|
||||
Synonyms = previousConfig.Synonyms,
|
||||
MyTasks = previousConfig.MyTasks,
|
||||
JobPostings = previousConfig.JobPostings,
|
||||
BiasOfTheDay = previousConfig.BiasOfTheDay,
|
||||
I18N = previousConfig.I18N,
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user