diff --git a/src/Plugins/BotSharp.Plugin.KnowledgeBase/KnowledgeBasePlugin.cs b/src/Plugins/BotSharp.Plugin.KnowledgeBase/KnowledgeBasePlugin.cs index a1d41307e..637348c98 100644 --- a/src/Plugins/BotSharp.Plugin.KnowledgeBase/KnowledgeBasePlugin.cs +++ b/src/Plugins/BotSharp.Plugin.KnowledgeBase/KnowledgeBasePlugin.cs @@ -11,6 +11,8 @@ public class KnowledgeBasePlugin : IBotSharpPlugin public string Name => "Knowledge Base"; public string Description => "Embedding private data and feed them into LLM in the conversation."; public string IconUrl => "https://cdn-icons-png.flaticon.com/512/9592/9592995.png"; + private string _membaseCredential = string.Empty; + private string _membaseProjectId = string.Empty; public void RegisterDI(IServiceCollection services, IConfiguration config) { @@ -26,6 +28,9 @@ public void RegisterDI(IServiceCollection services, IConfiguration config) services.AddScoped(); services.AddScoped(); services.AddScoped(); + + _membaseCredential = config.GetValue("Membase:ApiKey")!; + _membaseProjectId = config.GetValue("Membase:ProjectId")!; } public bool AttachMenu(List menu) @@ -37,7 +42,15 @@ public bool AttachMenu(List menu) SubMenu = new List { new PluginMenuDef("Q & A", link: "page/knowledge-base/question-answer"), - new PluginMenuDef("Relationships", link: "page/knowledge-base/relationships"), + new PluginMenuDef("Relationships", link: "page/knowledge-base/relationships/membase") + { + EmbeddingInfo = new EmbeddingData + { + Source = "membase", + HtmlTag = "iframe", + Url = $"http://console.membase.dev/query-editor/{_membaseProjectId}?token={_membaseCredential}" + } + }, new PluginMenuDef("Documents", link: "page/knowledge-base/documents"), new PluginMenuDef("Dictionary", link: "page/knowledge-base/dictionary") } diff --git a/src/Plugins/BotSharp.Plugin.Membase/Settings/MembaseSettings.cs b/src/Plugins/BotSharp.Plugin.Membase/Settings/MembaseSettings.cs index cdb2fa464..77bf58351 100644 --- a/src/Plugins/BotSharp.Plugin.Membase/Settings/MembaseSettings.cs +++ b/src/Plugins/BotSharp.Plugin.Membase/Settings/MembaseSettings.cs @@ -3,5 +3,6 @@ namespace BotSharp.Plugin.Membase.Settings; public class MembaseSettings { public string Host { get; set; } = "localhost"; + public string ProjectId { get; set; } = string.Empty; public string ApiKey { get; set; } = string.Empty; }