relocate knowledge service
This commit is contained in:
parent
f38fdf7497
commit
495ac9949c
|
|
@ -1,4 +1,4 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>$(TargetFramework)</TargetFramework>
|
||||
|
|
|
|||
|
|
@ -1,4 +1,7 @@
|
|||
namespace BotSharp.Plugin.KnowledgeBase.Helpers;
|
||||
using BotSharp.Abstraction.Knowledges.Settings;
|
||||
using BotSharp.Abstraction.MLTasks;
|
||||
|
||||
namespace BotSharp.Core.Knowledges.Helpers;
|
||||
|
||||
public static class KnowledgeSettingHelper
|
||||
{
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
using BotSharp.Core.Knowledges.Services;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
|
||||
namespace BotSharp.Core.Knowledges;
|
||||
|
||||
public class KnowledgeCorePlugin : IBotSharpPlugin
|
||||
{
|
||||
public string Id => "a5ebc8f9-d089-44d0-bf00-4eac97a050bc";
|
||||
|
||||
public string Name => "Knowledge Core";
|
||||
|
||||
public string Description => "Provides core knowledge services.";
|
||||
|
||||
|
||||
public void RegisterDI(IServiceCollection services, IConfiguration config)
|
||||
{
|
||||
services.AddScoped<IKnowledgeService, KnowledgeService>();
|
||||
}
|
||||
}
|
||||
|
|
@ -1,11 +1,16 @@
|
|||
namespace BotSharp.Plugin.KnowledgeBase.Services;
|
||||
using BotSharp.Abstraction.Knowledges.Models;
|
||||
using BotSharp.Abstraction.VectorStorage.Models;
|
||||
|
||||
namespace BotSharp.Core.Knowledges.Services;
|
||||
|
||||
public partial class KnowledgeService
|
||||
{
|
||||
public async Task FeedVectorKnowledge(string collectionName, KnowledgeCreationModel knowledge)
|
||||
{
|
||||
var index = 0;
|
||||
var lines = _textChopper.Chop(knowledge.Content, new ChunkOption
|
||||
|
||||
var textChopper = _services.GetRequiredService<ITextChopper>();
|
||||
var lines = textChopper.Chop(knowledge.Content, new ChunkOption
|
||||
{
|
||||
Size = 1024,
|
||||
Conjunction = 32,
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
namespace BotSharp.Plugin.KnowledgeBase.Services;
|
||||
namespace BotSharp.Core.Knowledges.Services;
|
||||
|
||||
public partial class KnowledgeService
|
||||
{
|
||||
|
|
@ -1,6 +1,8 @@
|
|||
using BotSharp.Abstraction.Graph.Models;
|
||||
using BotSharp.Abstraction.Knowledges.Models;
|
||||
using BotSharp.Abstraction.VectorStorage.Models;
|
||||
|
||||
namespace BotSharp.Plugin.KnowledgeBase.Services;
|
||||
namespace BotSharp.Core.Knowledges.Services;
|
||||
|
||||
public partial class KnowledgeService
|
||||
{
|
||||
|
|
@ -1,4 +1,6 @@
|
|||
namespace BotSharp.Plugin.KnowledgeBase.Services;
|
||||
using BotSharp.Abstraction.VectorStorage.Models;
|
||||
|
||||
namespace BotSharp.Core.Knowledges.Services;
|
||||
|
||||
public partial class KnowledgeService
|
||||
{
|
||||
|
|
@ -1,22 +1,24 @@
|
|||
using BotSharp.Abstraction.Graph;
|
||||
using BotSharp.Abstraction.Knowledges.Settings;
|
||||
using BotSharp.Abstraction.MLTasks;
|
||||
using BotSharp.Abstraction.VectorStorage;
|
||||
using BotSharp.Core.Knowledges.Helpers;
|
||||
|
||||
namespace BotSharp.Plugin.KnowledgeBase.Services;
|
||||
namespace BotSharp.Core.Knowledges.Services;
|
||||
|
||||
public partial class KnowledgeService : IKnowledgeService
|
||||
{
|
||||
private readonly IServiceProvider _services;
|
||||
private readonly KnowledgeBaseSettings _settings;
|
||||
private readonly ITextChopper _textChopper;
|
||||
private readonly ILogger<KnowledgeService> _logger;
|
||||
|
||||
public KnowledgeService(
|
||||
IServiceProvider services,
|
||||
KnowledgeBaseSettings settings,
|
||||
ITextChopper textChopper,
|
||||
ILogger<KnowledgeService> logger)
|
||||
{
|
||||
_services = services;
|
||||
_settings = settings;
|
||||
_textChopper = textChopper;
|
||||
_logger = logger;
|
||||
}
|
||||
|
||||
|
|
@ -1,3 +1,5 @@
|
|||
using BotSharp.Core.Knowledges.Helpers;
|
||||
|
||||
namespace BotSharp.Plugin.KnowledgeBase.Functions;
|
||||
|
||||
public class KnowledgeRetrievalFn : IFunctionCallback
|
||||
|
|
|
|||
|
|
@ -1,3 +1,5 @@
|
|||
using BotSharp.Core.Knowledges.Helpers;
|
||||
|
||||
namespace BotSharp.Plugin.KnowledgeBase.Functions;
|
||||
|
||||
public class MemorizeKnowledgeFn : IFunctionCallback
|
||||
|
|
|
|||
|
|
@ -21,7 +21,6 @@ public class KnowledgeBasePlugin : IBotSharpPlugin
|
|||
});
|
||||
|
||||
services.AddScoped<ITextChopper, TextChopperService>();
|
||||
services.AddScoped<IKnowledgeService, KnowledgeService>();
|
||||
services.AddSingleton<IPdf2TextConverter, PigPdf2TextConverter>();
|
||||
services.AddScoped<IAgentUtilityHook, KnowledgeBaseUtilityHook>();
|
||||
services.AddScoped<IAgentHook, KnowledgeBaseAgentHook>();
|
||||
|
|
|
|||
Loading…
Reference in a new issue