![]() |
VOOZH | about |
dotnet add package RAGamuffin --version 1.0.8
NuGet\Install-Package RAGamuffin -Version 1.0.8
<PackageReference Include="RAGamuffin" Version="1.0.8" />
<PackageVersion Include="RAGamuffin" Version="1.0.8" />Directory.Packages.props
<PackageReference Include="RAGamuffin" />Project file
paket add RAGamuffin --version 1.0.8
#r "nuget: RAGamuffin, 1.0.8"
#:package RAGamuffin@1.0.8
#addin nuget:?package=RAGamuffin&version=1.0.8Install as a Cake Addin
#tool nuget:?package=RAGamuffin&version=1.0.8Install as a Cake Tool
👁 NuGet Version
👁 Build Status
A lightweight, cross-platform .NET library for building RAG (Retrieval-Augmented Generation) pipelines with local embedding models and SQLite vector storage.
dotnet add package RAGamuffin
using RAGamuffin.Builders;
using RAGamuffin.Core;
using RAGamuffin.Embedding;
using RAGamuffin.Enums;
// 1. Set up your embedding model (download from HuggingFace)
var embedder = new OnnxEmbedder("path/to/model.onnx", "path/to/tokenizer.json");
// 2. Configure your vector database
var vectorDb = new SqliteDatabaseModel("documents.db", "my_collection");
// 3. Build and train your pipeline
var pipeline = new IngestionTrainingBuilder()
.WithEmbeddingModel(embedder)
.WithVectorDatabase(vectorDb)
.WithTrainingStrategy(TrainingStrategy.RetrainFromScratch)
.WithTrainingFiles(new[] { "document.pdf" })
.Build();
var ingestedItems = await pipeline.Train();
// 4. Search your documents
string[] results = await pipeline.SearchAndReturnTexts("What is the company policy?", 5);
// Stream text content directly into your vector store
var textItems = new[]
{
new TextItem("Meeting notes from Q1", "Q1 was successful with 15% growth..."),
new TextItem("Product roadmap", "Next quarter we'll launch feature X...")
};
var (ingestedItems, model) = await pipeline.TrainWithText(textItems);
// Search without retraining
var vectorStore = new SqliteVectorStoreProvider("documents.db", "my_collection");
var searchResults = await vectorStore.SearchAsync("your query", embedder, 5);
// Get metadata
var metadata = await vectorStore.GetAllDocumentsMetadataAsync();
Check out the comprehensive examples in the Examples/ directory:
RAGamuffin supports ONNX models for cross-platform compatibility. Recommended starter model:
// PDF processing options
.WithPdfOptions(new PdfHybridParagraphIngestionOptions
{
MinSize = 0, // Minimum chunk size
MaxSize = 800, // Maximum chunk size
Overlap = 400, // Overlap between chunks
UseMetadata = true // Include document metadata
})
// Text processing options
.WithTextOptions(new TextHybridParagraphIngestionOptions
{
MinSize = 500, // Minimum chunk size
MaxSize = 800, // Maximum chunk size
Overlap = 400, // Overlap between chunks
UseMetadata = true // Include document metadata
})
RAGamuffin is built with a modular architecture:
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the file for details.
RAGamuffin - Making RAG pipelines simple and accessible for .NET developers.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 net8.0 is compatible. 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. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.