EasyReasy.KnowledgeBase.OllamaGeneration
1.0.0
dotnet add package EasyReasy.KnowledgeBase.OllamaGeneration --version 1.0.0
NuGet\Install-Package EasyReasy.KnowledgeBase.OllamaGeneration -Version 1.0.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="EasyReasy.KnowledgeBase.OllamaGeneration" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="EasyReasy.KnowledgeBase.OllamaGeneration" Version="1.0.0" />
<PackageReference Include="EasyReasy.KnowledgeBase.OllamaGeneration" />
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 EasyReasy.KnowledgeBase.OllamaGeneration --version 1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: EasyReasy.KnowledgeBase.OllamaGeneration, 1.0.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 EasyReasy.KnowledgeBase.OllamaGeneration@1.0.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=EasyReasy.KnowledgeBase.OllamaGeneration&version=1.0.0
#tool nuget:?package=EasyReasy.KnowledgeBase.OllamaGeneration&version=1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
EasyReasy.KnowledgeBase.OllamaGeneration
Ollama-based implementations for EasyReasy.KnowledgeBase generation services. Provides embedding generation and one-shot text processing using the EasyReasy.Ollama.Client library.
Features
- 🧠 Embedding Service: Generate embeddings from text using Ollama models
- 🎯 One-Shot Processing: AI-powered text processing (summarization, question generation, etc.)
- 🔐 Automatic Authentication: Built-in JWT authentication with API key
- ⚡ Async/Await: Full async support with cancellation tokens
- 🛡️ Error Handling: Comprehensive error handling and resource disposal
Quick Start
Installation
dotnet add package EasyReasy.KnowledgeBase.OllamaGeneration
Embedding Service
using EasyReasy.KnowledgeBase.OllamaGeneration;
// Create embedding service
EasyReasyOllamaEmbeddingService embeddingService = await EasyReasyOllamaEmbeddingService.CreateAsync(
baseUrl: "https://your-ollama-server.com",
apiKey: "your-api-key",
modelName: "nomic-embed-text");
// Generate embeddings
float[] embeddings = await embeddingService.EmbedAsync("Hello, world!");
// Dispose when done
embeddingService.Dispose();
One-Shot Service
using EasyReasy.KnowledgeBase.OllamaGeneration;
// Create one-shot service
EasyReasyOllamaOneShotService oneShotService = await EasyReasyOllamaOneShotService.CreateAsync(
baseUrl: "https://your-ollama-server.com",
apiKey: "your-api-key",
modelName: "llama3.1");
// Process text with AI
string systemPrompt = "Summarize the following text in 2-3 sentences:";
string userInput = "Long document text here...";
string summary = await oneShotService.ProcessAsync(systemPrompt, userInput);
// Dispose when done
oneShotService.Dispose();
Using with KnowledgeBase
// Use as embedding service for document processing
SectionReaderFactory factory = new SectionReaderFactory(embeddingService, tokenizer);
using Stream stream = File.OpenRead("document.md");
SectionReader reader = factory.CreateForMarkdown(stream, maxTokensPerChunk: 100, maxTokensPerSection: 1000);
await foreach (List<KnowledgeFileChunk> chunks in reader.ReadSectionsAsync())
{
// Process sections...
}
API Reference
EasyReasyOllamaEmbeddingService
Creation
static Task<EasyReasyOllamaEmbeddingService> CreateAsync(
string baseUrl,
string apiKey,
string modelName,
CancellationToken cancellationToken = default)
Methods
EmbedAsync(string text, CancellationToken cancellationToken = default)
: Generate embedding vectorDispose()
: Clean up resources
EasyReasyOllamaOneShotService
Creation
static Task<EasyReasyOllamaOneShotService> CreateAsync(
string baseUrl,
string apiKey,
string modelName,
CancellationToken cancellationToken = default)
Methods
ProcessAsync(string systemPrompt, string userInput, CancellationToken cancellationToken = default)
: Process text with AIDispose()
: Clean up resources
Dependencies
- .NET 8.0+: Modern async/await patterns
- EasyReasy.KnowledgeBase: Core interfaces (
IEmbeddingService
,IOneShotService
) - EasyReasy.Ollama.Client: Ollama API client library
- EasyReasy.Ollama.Common: Shared models and types
License
MIT
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
- EasyReasy.KnowledgeBase (>= 1.0.0)
- EasyReasy.Ollama.Client (>= 1.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
1.0.0 | 114 | 8/18/2025 |