Class RagAIHelper
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Implements
IAccessTokenProvider
Assembly: SoDataBase.BusinessLogic.dll
Syntax
public class RagAIHelper : IAccessTokenProvider
Constructors
RagAIHelper(IOptions<RagAIConfiguration>, ILogger<RagAIHelper>, ICacheManager)
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public RagAIHelper(IOptions<RagAIConfiguration> options, ILogger<RagAIHelper> logger, ICacheManager cacheManager)
Parameters
Fields
ServiceCopilotNS
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public const string ServiceCopilotNS = "ServiceCopilot"
Field Value
_sharedHttpClient
This HttpClient is created with an explicit IHttpClientHandler, to avoid Kiota
creating one using its own factory. This is because when on .NET Framework,
Kiota defaults to using a different IHttpClientHandler implementation (WinHttpHandler.cs)
than the one used in the rest of the codebase, and we want to use the same implementation
everywhere to ensure HTTP requests behaves consistently and predictably.
Declaration
protected static HttpClient _sharedHttpClient
Field Value
Properties
AllowedHostsValidator
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public AllowedHostsValidator AllowedHostsValidator { get; }
Property Value
| Type |
Description |
| AllowedHostsValidator |
|
Methods
AnswerAcceptedAsync(string)
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public Task AnswerAcceptedAsync(string trackingId)
Parameters
| Type |
Name |
Description |
| string |
trackingId |
|
Returns
AnswerFeedbackAsync(string, bool)
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public Task AnswerFeedbackAsync(string trackingId, bool isThumbsUp)
Parameters
| Type |
Name |
Description |
| string |
trackingId |
|
| bool |
isThumbsUp |
|
Returns
DeleteNamespace(string)
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public Task DeleteNamespace(string namespaceName)
Parameters
| Type |
Name |
Description |
| string |
namespaceName |
|
Returns
EnrichmentSearchAsync(string, string, CancellationToken)
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public Task<List<(string, string)>> EnrichmentSearchAsync(string q, string isoCode, CancellationToken cancellationToken)
Parameters
Returns
GetAuthorizationTokenAsync(Uri, Dictionary<string, object>, CancellationToken)
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public Task<string> GetAuthorizationTokenAsync(Uri uri, Dictionary<string, object> additionalAuthenticationContext = null, CancellationToken cancellationToken = default)
Parameters
Returns
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public Task<Dictionary<string, string>> GetFormsDesignFromImage(Stream image, CancellationToken cancellationToken)
Parameters
Returns
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public Task<Dictionary<string, string>> GetFormsDesignFromUrl(string url, CancellationToken cancellationToken)
Parameters
Returns
IndexingFinished(string, string, string)
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public Task IndexingFinished(string namespaceName, string uid, string tag)
Parameters
Returns
IndexingStarted(string, string, string)
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public Task IndexingStarted(string namespaceName, string uid, string tag)
Parameters
Returns
InitNamespace(string)
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public Task InitNamespace(string namespaceName)
Parameters
| Type |
Name |
Description |
| string |
namespaceName |
|
Returns
Markdownize(bool, string)
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public Task<string> Markdownize(bool isHtml, string documentContent)
Parameters
| Type |
Name |
Description |
| bool |
isHtml |
|
| string |
documentContent |
|
Returns
Markdownize(string, string, Stream)
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public Task<string> Markdownize(string filename, string mimeType, Stream documentContent)
Parameters
Returns
Markdownize(string, string, string)
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public Task<string> Markdownize(string filename, string mimeType, string documentContent)
Parameters
Returns
PutDocument(string, string, string, RagType, Dictionary<string, object>)
Call AI RAG backend services.
Requires ServiceCopilot feature toggle or
AiPlatform + AiTextServices/AiCategorization licenses.
Gets options from appsettings.json via RagConfiguration options.
Declaration
public Task PutDocument(string namespaceName, string id, string documentContent, RagType ragType, Dictionary<string, object> metadata = null)
Parameters
Returns
Implements
Microsoft.Kiota.Abstractions.Authentication.IAccessTokenProvider
Extension Methods