Class KnowledgeService
- Namespace
- FoundationaLLM.Context.Services
- Assembly
- FoundationaLLM.ContextEngine.dll
Provides the implementation for the FoundationaLLM Knowledge Graph service.
public class KnowledgeService : IKnowledgeService
- Inheritance
-
KnowledgeService
- Implements
- Inherited Members
- Extension Methods
Constructors
KnowledgeService(IStorageService, IAuthorizationServiceClient, IResourceProviderService, IResourceProviderService, IResourceProviderService, IResourceProviderService, IHttpClientFactoryService, KnowledgeServiceSettings, ILoggerFactory)
Provides the implementation for the FoundationaLLM Knowledge Graph service.
public KnowledgeService(IStorageService storageService, IAuthorizationServiceClient authorizationServiceClient, IResourceProviderService agentResourceProvider, IResourceProviderService contextResourceProvider, IResourceProviderService configurationResourceProvider, IResourceProviderService vectorResourceProvider, IHttpClientFactoryService httpClientFactory, KnowledgeServiceSettings settings, ILoggerFactory loggerFactory)
Parameters
storageServiceIStorageServiceThe IStorageService providing storage services.
authorizationServiceClientIAuthorizationServiceClientThe client for the FoundationaLLM Authorization API.
agentResourceProviderIResourceProviderServiceThe FoundationaLLM.Agent resource provider.
contextResourceProviderIResourceProviderServiceThe FoundationaLLM.Context resource provider service.
configurationResourceProviderIResourceProviderServiceThe FoundationaLLM.Configuration resource provider service.
vectorResourceProviderIResourceProviderServiceThe FoundationaLLM.Vector resource provider service.
httpClientFactoryIHttpClientFactoryServiceThe factory for creating HTTP clients.
settingsKnowledgeServiceSettingsThe settings for the Knowledge Graph service.
loggerFactoryILoggerFactoryThe logger factory used to create loggers.
Methods
GetKnowledgeSource(string, string, string?, UnifiedUserIdentity)
Retrieves a specified knowledge source.
public Task<ContextServiceResponse<ResourceProviderGetResult<KnowledgeSource>>> GetKnowledgeSource(string instanceId, string knowledgeSourceId, string? agentName, UnifiedUserIdentity userIdentity)
Parameters
instanceIdstringThe FoundationaLLM instance identifier.
knowledgeSourceIdstringThe knowledge source identifier.
agentNamestringThe agent name if the request is being made on behalf of an agent.
userIdentityUnifiedUserIdentityThe identity of the security principal submitting the request.
Returns
GetKnowledgeSources(string, ContextKnowledgeResourceListRequest, UnifiedUserIdentity)
Retrieves the list of knowledge sources.
public Task<ContextServiceResponse<IEnumerable<ResourceProviderGetResult<KnowledgeSource>>>> GetKnowledgeSources(string instanceId, ContextKnowledgeResourceListRequest listRequest, UnifiedUserIdentity userIdentity)
Parameters
instanceIdstringThe FoundationaLLM instance identifier.
listRequestContextKnowledgeResourceListRequestThe request containing the information used to filter the knowledge resources.
userIdentityUnifiedUserIdentityThe identity of the security principal submitting the request.
Returns
GetKnowledgeUnit(string, string, string?, UnifiedUserIdentity)
Retrieves a specified knowledge unit.
public Task<ContextServiceResponse<ResourceProviderGetResult<KnowledgeUnit>>> GetKnowledgeUnit(string instanceId, string knowledgeUnitId, string? agentName, UnifiedUserIdentity userIdentity)
Parameters
instanceIdstringThe FoundationaLLM instance identifier.
knowledgeUnitIdstringThe knowledge unit identifier.
agentNamestringThe agent name if the request is being made on behalf of an agent.
userIdentityUnifiedUserIdentityThe identity of the security principal submitting the request.
Returns
GetKnowledgeUnits(string, ContextKnowledgeResourceListRequest, UnifiedUserIdentity)
Retrieves the list of knowledge units.
public Task<ContextServiceResponse<IEnumerable<ResourceProviderGetResult<KnowledgeUnit>>>> GetKnowledgeUnits(string instanceId, ContextKnowledgeResourceListRequest listRequest, UnifiedUserIdentity userIdentity)
Parameters
instanceIdstringThe FoundationaLLM instance identifier.
listRequestContextKnowledgeResourceListRequestThe request containing the information used to filter the knowledge resources.
userIdentityUnifiedUserIdentityThe identity of the security principal submitting the request.
Returns
QueryKnowledgeSource(string, string, ContextKnowledgeSourceQueryRequest, UnifiedUserIdentity)
Queries a knowledge source.
public Task<ContextKnowledgeSourceQueryResponse> QueryKnowledgeSource(string instanceId, string knowledgeSourceId, ContextKnowledgeSourceQueryRequest queryRequest, UnifiedUserIdentity userIdentity)
Parameters
instanceIdstringThe FoundationaLLM instance identifier.
knowledgeSourceIdstringThe knowledge source identifier.
queryRequestContextKnowledgeSourceQueryRequestThe request containing the details of the query.
userIdentityUnifiedUserIdentityThe identity of the security principal submitting the request.
Returns
RenderKnowledgeUnitGraph(string, string, ContextKnowledgeSourceQueryRequest?, UnifiedUserIdentity)
Retrieves the knowledge unit's knowledge graph in a format suitable for visualization or further processing.
public Task<ContextKnowledgeUnitRenderGraphResponse> RenderKnowledgeUnitGraph(string instanceId, string knowledgeUnitId, ContextKnowledgeSourceQueryRequest? queryRequest, UnifiedUserIdentity userIdentity)
Parameters
instanceIdstringThe FoundationaLLM instance identifier.
knowledgeUnitIdstringThe knowledge unit identifier.
queryRequestContextKnowledgeSourceQueryRequestThe request containing the details of the query.
userIdentityUnifiedUserIdentityThe identity of the security principal submitting the request.
Returns
SetKnowledgeUnitGraph(string, string, ContextKnowledgeUnitSetGraphRequest, UnifiedUserIdentity)
Sets the knowledge graph associated with a knowledge unit.
public Task<ContextServiceResponse<ResourceProviderActionResult>> SetKnowledgeUnitGraph(string instanceId, string knowledgeUnitId, ContextKnowledgeUnitSetGraphRequest setGraphRequest, UnifiedUserIdentity userIdentity)
Parameters
instanceIdstringThe FoundationaLLM instance identifier.
knowledgeUnitIdstringThe knowledge unit identifier.
setGraphRequestContextKnowledgeUnitSetGraphRequestThe request containing the knowledge graph details.
userIdentityUnifiedUserIdentityThe identity of the security principal submitting the request.
Returns
UpsertKnowledgeSource(string, KnowledgeSource, UnifiedUserIdentity)
Creates or updates a knowledge source in the context service.
public Task<ContextServiceResponse<ResourceProviderUpsertResult<KnowledgeSource>>> UpsertKnowledgeSource(string instanceId, KnowledgeSource knowledgeSource, UnifiedUserIdentity userIdentity)
Parameters
instanceIdstringThe FoundationaLLM instance identifier.
knowledgeSourceKnowledgeSourceThe knowledge source to be created or updated.
userIdentityUnifiedUserIdentityThe identity of the security principal submitting the request.
Returns
UpsertKnowledgeUnit(string, KnowledgeUnit, UnifiedUserIdentity)
Creates or updates a knowledge unit in the context service.
public Task<ContextServiceResponse<ResourceProviderUpsertResult<KnowledgeUnit>>> UpsertKnowledgeUnit(string instanceId, KnowledgeUnit knowledgeUnit, UnifiedUserIdentity userIdentity)
Parameters
instanceIdstringThe FoundationaLLM instance identifier.
knowledgeUnitKnowledgeUnitThe knowledge unit to be created or updated.
userIdentityUnifiedUserIdentityThe identity of the security principal submitting the request.