mirror of
https://github.com/MindWorkAI/AI-Studio.git
synced 2026-11-04 20:27:21 +00:00
Co-authored-by: Thorsten Sommer <SommerEngineering@users.noreply.github.com>
33 lines
1.3 KiB
C#
33 lines
1.3 KiB
C#
using AIStudio.Chat;
|
|
using AIStudio.Provider;
|
|
|
|
namespace AIStudio.Tools.RAG;
|
|
|
|
public interface IAugmentationProcess
|
|
{
|
|
/// <summary>
|
|
/// How is the augmentation process called?
|
|
/// </summary>
|
|
public string TechnicalName { get; }
|
|
|
|
/// <summary>
|
|
/// How is the augmentation process called in the UI?
|
|
/// </summary>
|
|
public string UIName { get; }
|
|
|
|
/// <summary>
|
|
/// How works the augmentation process?
|
|
/// </summary>
|
|
public string Description { get; }
|
|
|
|
/// <summary>
|
|
/// Starts the augmentation process.
|
|
/// </summary>
|
|
/// <param name="provider">The LLM provider. Gets used, e.g., for automatic retrieval context validation.</param>
|
|
/// <param name="lastUserPrompt">The last user prompt that was issued by the user.</param>
|
|
/// <param name="chatThread">The chat thread.</param>
|
|
/// <param name="retrievalContexts">The retrieval contexts that were issued by the retrieval process.</param>
|
|
/// <param name="token">The cancellation token.</param>
|
|
/// <returns>The altered chat thread, together with the retrieval contexts handed to the AI.</returns>
|
|
public Task<AugmentationResult> ProcessAsync(IProvider provider, IContent lastUserPrompt, ChatThread chatThread, IReadOnlyList<IRetrievalContext> retrievalContexts, CancellationToken token = default);
|
|
} |