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
CancelIndexing(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<NamespaceStatus> CancelIndexing(string namespaceName, string indexTag, CancellationToken cancellation)
Parameters
Returns
| Type |
Description |
| Task<NamespaceStatus> |
|
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<CssGenerationApiResponse> CreateFormsDesignSessionFromImage(Stream image, string cssClass, CancellationToken cancellationToken)
Parameters
Returns
| Type |
Description |
| Task<CssGenerationApiResponse> |
CSS rule + internal state blob. Fetch next class by calling NextSessionCssRule with the state argument and another CSS class name
|
Declaration
public Task<CssGenerationApiResponse> CreateFormsDesignSessionFromUrl(string url, string cssClass, CancellationToken cancellationToken)
Parameters
| Type |
Name |
Description |
| string |
url |
URL of webpage to fetch
|
| string |
cssClass |
Starting CSS class to return: ".foo"
|
| CancellationToken |
cancellationToken |
cancel?
|
Returns
| Type |
Description |
| Task<CssGenerationApiResponse> |
CSS rule + internal state blob. Fetch next class by calling NextSessionCssRule with the state argument and another CSS class name
|
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<DesignCssResult> GetFormsDesignCssFromImage(Stream image, string[] classes, CancellationToken cancellationToken)
Parameters
Returns
| Type |
Description |
| Task<DesignCssResult> |
|
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<DesignCssResult> GetFormsDesignCssFromUrl(string url, string[] classes, CancellationToken cancellationToken)
Parameters
Returns
| Type |
Description |
| Task<DesignCssResult> |
|
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)
Ends the indexing process for a given source in a namespace.
Removes all documents NOT marked with the indexTag.
Declaration
public Task<NamespaceStatus> IndexingFinished(string namespaceName, string indexTag)
Parameters
| Type |
Name |
Description |
| string |
namespaceName |
"ServiceCopilot" or "AllNames"
|
| string |
indexTag |
The unique id of the indexing run
|
Returns
| Type |
Description |
| Task<NamespaceStatus> |
|
IndexingStarted(string, string)
Start the indexing process for a given source in a namespace.
Marks all new/updated documents with the indexTag.
Declaration
public Task IndexingStarted(string namespaceName, string indexTag)
Parameters
| Type |
Name |
Description |
| string |
namespaceName |
"ServiceCopilot" or "AllNames"
|
| string |
indexTag |
The unique id of the indexing run
|
Returns
IndexingStatus(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<NamespaceStatus> IndexingStatus(string namespaceName, CancellationToken cancellationToken)
Parameters
Returns
| Type |
Description |
| Task<NamespaceStatus> |
|
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
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<CssGenerationApiResponse> NextFormsDesignSessionCssRule(string cssClass, string state, CancellationToken cancellationToken)
Parameters
Returns
| Type |
Description |
| Task<CssGenerationApiResponse> |
|
PutDocument(string, 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 indexRunTag, string id, string documentContent, RagType ragType, Dictionary<string, object> metadata = null)
Parameters
Returns
Implements
Microsoft.Kiota.Abstractions.Authentication.IAccessTokenProvider
Extension Methods