VOOZH about

URL: https://www.nuget.org/packages/Mythosia.AI.Rag.Abstractions/

⇱ NuGet Gallery | Mythosia.AI.Rag.Abstractions 6.2.0




Mythosia.AI.Rag.Abstractions 6.2.0

dotnet add package Mythosia.AI.Rag.Abstractions --version 6.2.0
 
 
NuGet\Install-Package Mythosia.AI.Rag.Abstractions -Version 6.2.0
 
 
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Mythosia.AI.Rag.Abstractions" Version="6.2.0" />
 
 
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Mythosia.AI.Rag.Abstractions" Version="6.2.0" />
 
Directory.Packages.props
<PackageReference Include="Mythosia.AI.Rag.Abstractions" />
 
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Mythosia.AI.Rag.Abstractions --version 6.2.0
 
 
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Mythosia.AI.Rag.Abstractions, 6.2.0"
 
 
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Mythosia.AI.Rag.Abstractions@6.2.0
 
 
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Mythosia.AI.Rag.Abstractions&version=6.2.0
 
Install as a Cake Addin
#tool nuget:?package=Mythosia.AI.Rag.Abstractions&version=6.2.0
 
Install as a Cake Tool
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Mythosia.AI.Rag.Abstractions

Package Summary

Core interfaces and models for the Mythosia.AI RAG ecosystem.
This package defines the contracts that all RAG components implement — you only need this directly if you're building a custom implementation.

Interfaces

Interface Description
IRagPipeline Main pipeline contract: ProcessAsync(query)RagProcessedQuery
IEmbeddingProvider Text → vector embedding (GetEmbeddingAsync, GetEmbeddingsAsync)
IVectorStore Vector storage & search (UpsertAsync, SearchAsync, DeleteAsync)
IRagDiagnosticsStore Optional diagnostics contract (ListAllRecordsAsync, ScoredListAsync)
ITextSplitter Document → chunks (Split(RagDocument))
IContextBuilder Search results → LLM prompt (BuildContext(query, results))
IQueryRewriter Rewrites queries into retrieval-ready form using conversation history, and decides whether document search is needed (search gate)
IRetrievalStrategy Abstracts retrieval logic — pure vector or hybrid (BM25 + vector + RRF)
IReranker Re-ranks search results post-retrieval for improved relevance

Models

Model Description
RagChunk A chunk of text with ID, content, document ID, index, and metadata
RagDocument A loaded document with Id, Content, Source, and Metadata for the RAG pipeline
RagProcessedQuery Pipeline output: original query, rewritten semantic query, retrieval keywords, RequestMessageContent, references, RetrievalCandidates, SearchSkipped, RewriteResult, HasReferences flag, and Diagnostics
QueryRewriteResult Result of rewriting a query into retrieval-ready form, including search gate decision (NeedsSearch) and optional retrieval keywords. Factory methods Pass() and Search()
ConversationTurn Lightweight DTO representing a single conversation turn (role + content) for IQueryRewriter context
RagQueryDiagnostics Applied retrieval metadata (FinalTopK, RetrievalTopK, AppliedFinalMinScore, AppliedRetrievalMinScore, ElapsedMs, RewriteElapsedMs)
RagPipelineOptions Configuration: DefaultQuery, PromptTemplate, EmbeddingBatchSize. Includes Clone() for snapshot-style runtime updates
RagQueryOptions Per-request overrides: FinalFilter, RetrievalDerivation, StoreFilter, FinalSelection, ProgressAsync. Includes Clone() for safe per-query overrides on top of RagPipelineOptions.DefaultQuery
RagFinalSelectionOptions Final selection policy after re-ranking (Mode, RetrievalWeight). Includes Clone()
RagFinalSelectionMode Enum: RerankerOnly (default) or WeightedBlend
RagFilter Final selection policy (TopK, MinScore). Includes Clone()
RagRetrievalDerivation Controls how retrieval candidates are derived (TopKMultiplier, MinScoreDivider). Includes Clone()
RagRetrievalFilter Immutable computed retrieval filter (TopK, MinScore)
RagProgressStage Enum for pipeline stage progress reporting (QueryRewrite, Embedding, Filtering, Retrieval, Reranking, ContextBuild)
VectorRecord Stored vector with ID, content, embedding, and metadata
VectorSearchResult Search result with record and similarity score
VectorFilter Filter by metadata conditions or minimum score

Per-Query Overrides via Clone()

RagPipelineOptions, RagQueryOptions, RagFilter, RagRetrievalDerivation, and RagFinalSelectionOptions all expose a Clone() method. Use Clone() to override a single field on top of RagPipelineOptions.DefaultQuery without losing the other configured fields (notably StoreFilter and ProgressAsync):

var options = pipeline.Options.DefaultQuery.Clone();
options.FinalFilter.TopK = 10;
await pipeline.QueryAsync(query, options);

Constructing new RagQueryOptions { FinalFilter = ... } from scratch silently drops every other field, including any tenant/permission scope on StoreFilter and any progress callback on ProgressAsync. Clone() makes the "inherit defaults, override one field" pattern safe.

Custom Implementation Example

public class MyEmbeddingProvider : IEmbeddingProvider
{
 public int Dimensions => 768;

 public Task<float[]> GetEmbeddingAsync(string text, CancellationToken ct = default)
 {
 // Your embedding logic here
 }

 public Task<IReadOnlyList<float[]>> GetEmbeddingsAsync(
 IEnumerable<string> texts, CancellationToken ct = default)
 {
 // Batch embedding logic here
 }
}

Then register via the builder:

.WithRag(rag => rag.UseEmbedding(new MyEmbeddingProvider()))
Product Versions Compatible and additional computed target framework versions.
.NET net5.0 net5.0 was computed.  net5.0-windows net5.0-windows was computed.  net6.0 net6.0 was computed.  net6.0-android net6.0-android was computed.  net6.0-ios net6.0-ios was computed.  net6.0-maccatalyst net6.0-maccatalyst was computed.  net6.0-macos net6.0-macos was computed.  net6.0-tvos net6.0-tvos was computed.  net6.0-windows net6.0-windows was computed.  net7.0 net7.0 was computed.  net7.0-android net7.0-android was computed.  net7.0-ios net7.0-ios was computed.  net7.0-maccatalyst net7.0-maccatalyst was computed.  net7.0-macos net7.0-macos was computed.  net7.0-tvos net7.0-tvos was computed.  net7.0-windows net7.0-windows was computed.  net8.0 net8.0 was computed.  net8.0-android net8.0-android was computed.  net8.0-browser net8.0-browser was computed.  net8.0-ios net8.0-ios was computed.  net8.0-maccatalyst net8.0-maccatalyst was computed.  net8.0-macos net8.0-macos was computed.  net8.0-tvos net8.0-tvos was computed.  net8.0-windows net8.0-windows was computed.  net9.0 net9.0 was computed.  net9.0-android net9.0-android was computed.  net9.0-browser net9.0-browser was computed.  net9.0-ios net9.0-ios was computed.  net9.0-maccatalyst net9.0-maccatalyst was computed.  net9.0-macos net9.0-macos was computed.  net9.0-tvos net9.0-tvos was computed.  net9.0-windows net9.0-windows was computed.  net10.0 net10.0 was computed.  net10.0-android net10.0-android was computed.  net10.0-browser net10.0-browser was computed.  net10.0-ios net10.0-ios was computed.  net10.0-maccatalyst net10.0-maccatalyst was computed.  net10.0-macos net10.0-macos was computed.  net10.0-tvos net10.0-tvos was computed.  net10.0-windows net10.0-windows was computed. 
.NET Core netcoreapp3.0 netcoreapp3.0 was computed.  netcoreapp3.1 netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 netstandard2.1 is compatible. 
MonoAndroid monoandroid monoandroid was computed. 
MonoMac monomac monomac was computed. 
MonoTouch monotouch monotouch was computed. 
Tizen tizen60 tizen60 was computed. 
Xamarin.iOS xamarinios xamarinios was computed. 
Xamarin.Mac xamarinmac xamarinmac was computed. 
Xamarin.TVOS xamarintvos xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on Mythosia.AI.Rag.Abstractions:

Package Downloads
Mythosia.AI.Rag

RAG (Retrieval Augmented Generation) orchestration for Mythosia.AI. Implements Mythosia.AI.Rag.Abstractions v6.x. Includes RagPipeline, text splitters, context builder, OpenAI/vLLM embedding providers, hybrid search (BM25 + Vector + RRF), re-ranking (Cohere, LLM, vLLM), Agentic RAG tool registration with per-call RagQueryOptions and structured search traces, search gate, keyword extraction, weighted-blend final selection, progress reporting, DoclingDocument-to-RagDocument conversion, and per-query VectorFilter passthrough (StoreFilter). Depends on Mythosia.AI.Abstractions (IAIService) instead of the full Mythosia.AI implementation.

Mythosia.VectorDb.InMemory

In-memory vector store implementation for Mythosia VectorDb. Provides InMemoryVectorStore with cosine similarity TopK search, metadata filtering, upsert/delete operations, GetBatchAsync, CountAsync, IDisposable, Bm25Index keyword search, and normalized hybrid RRF scoring.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
6.2.0 475 4/28/2026
6.1.0 862 4/4/2026
6.0.0 384 3/30/2026
5.1.0 185 3/29/2026
5.0.0 256 3/22/2026
4.0.1 197 3/15/2026
4.0.0 163 3/15/2026 4.0.0 is deprecated because it has critical bugs.
3.2.0 135 3/11/2026 3.2.0 is deprecated because it has critical bugs.
3.1.0 164 3/7/2026 3.1.0 is deprecated because it has critical bugs.
3.0.0 266 3/6/2026
2.0.0 144 3/5/2026
1.0.0 306 2/25/2026

v6.2.0: Added Clone() to RagPipelineOptions, RagQueryOptions, RagFilter, RagRetrievalDerivation, and RagFinalSelectionOptions for snapshot-style runtime updates and safe per-query overrides on top of RagPipelineOptions.DefaultQuery without losing fields like ProgressAsync or StoreFilter.