diff --git a/src/Infrastructure/BotSharp.Core/Repository/FileRepository/FileRepository.User.cs b/src/Infrastructure/BotSharp.Core/Repository/FileRepository/FileRepository.User.cs index c8eb28dc..465ae961 100644 --- a/src/Infrastructure/BotSharp.Core/Repository/FileRepository/FileRepository.User.cs +++ b/src/Infrastructure/BotSharp.Core/Repository/FileRepository/FileRepository.User.cs @@ -54,6 +54,12 @@ public partial class FileRepository File.WriteAllText(path, JsonSerializer.Serialize(user, _options)); } + public void UpdateExistUser(string userId, User user) + { + user.Id = userId; + CreateUser(user); + } + public void UpdateUserVerified(string userId) { var user = GetUserById(userId); diff --git a/src/Plugins/BotSharp.Plugin.KnowledgeBase/data/agents/01acc3e5-0af7-49e6-ad7a-a760bd12dc40/templates/knowledge.generation.liquid b/src/Plugins/BotSharp.Plugin.KnowledgeBase/data/agents/01acc3e5-0af7-49e6-ad7a-a760bd12dc40/templates/knowledge.generation.liquid index 82afe7e6..49e374a1 100644 --- a/src/Plugins/BotSharp.Plugin.KnowledgeBase/data/agents/01acc3e5-0af7-49e6-ad7a-a760bd12dc40/templates/knowledge.generation.liquid +++ b/src/Plugins/BotSharp.Plugin.KnowledgeBase/data/agents/01acc3e5-0af7-49e6-ad7a-a760bd12dc40/templates/knowledge.generation.liquid @@ -1,7 +1,8 @@ -You are a knowledge generator for knowledge base. Extract the answer in "SQL Answer" to answer the User Questions -Replace alias with the actual table name. Output json array only, formatting as [{"question":"string", "answer":"string/sql statement"}]. -Skip the question/answer for tmp table. -Don't include tmp table in the answer. +You are a knowledge generator for knowledge base. Extract the answer in "SQL Answer" to answer the User Questions. +* Replace alias with the actual table name. Output json array only, formatting as [{"question":"string", "answer":""}]. +* Skip the question/answer for tmp table. +* Don't include tmp table in the answer. +* Include all the explanation comments as additional knowledge. ===== User Questions: diff --git a/src/Plugins/BotSharp.Plugin.SqlDriver/Functions/GetTableDefinitionFn.cs b/src/Plugins/BotSharp.Plugin.SqlDriver/Functions/GetTableDefinitionFn.cs index dcd70915..8d277b9d 100644 --- a/src/Plugins/BotSharp.Plugin.SqlDriver/Functions/GetTableDefinitionFn.cs +++ b/src/Plugins/BotSharp.Plugin.SqlDriver/Functions/GetTableDefinitionFn.cs @@ -43,7 +43,7 @@ public class GetTableDefinitionFn : IFunctionCallback { var settings = _services.GetRequiredService(); var tableDdls = new List(); - using var connection = new MySqlConnection(settings.MySqlExecutionConnectionString ?? settings.MySqlConnectionString); + using var connection = new MySqlConnection(settings.MySqlMetaConnectionString ?? settings.MySqlConnectionString); connection.Open(); foreach (var table in tables) diff --git a/src/Plugins/BotSharp.Plugin.SqlDriver/Settings/SqlDriverSetting.cs b/src/Plugins/BotSharp.Plugin.SqlDriver/Settings/SqlDriverSetting.cs index 3a4095a6..c6917894 100644 --- a/src/Plugins/BotSharp.Plugin.SqlDriver/Settings/SqlDriverSetting.cs +++ b/src/Plugins/BotSharp.Plugin.SqlDriver/Settings/SqlDriverSetting.cs @@ -6,6 +6,7 @@ public class SqlDriverSetting public string MySqlConnectionString { get; set; } = null!; public string MySqlExecutionConnectionString { get; set; } = null!; public string MySqlTempConnectionString { get; set; } = null!; + public string MySqlMetaConnectionString { get; set; } = null!; public string SqlServerConnectionString { get; set; } = null!; public string SqlServerExecutionConnectionString { get; set; } = null!; public string SqlLiteConnectionString { get; set; } = null!;