OllamaClient 1.0.0

dotnet add package OllamaClient --version 1.0.0
NuGet\Install-Package OllamaClient -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="OllamaClient" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add OllamaClient --version 1.0.0
#r "nuget: OllamaClient, 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.
// Install OllamaClient as a Cake Addin
#addin nuget:?package=OllamaClient&version=1.0.0

// Install OllamaClient as a Cake Tool
#tool nuget:?package=OllamaClient&version=1.0.0

OllamaClient

.NET client library for Ollama - your gateway to seamless integration with the powerful Ollama APIs. This library provides developers with a straightforward way to interact with Ollama APIs, enabling rapid development of robust applications in C#.

Repository of Ollama

Build status

build and test

Quick Start

Installation

Install OllamaClient via NuGet Package Manager Console:

Install-Package OllamaClient

Example

using Microsoft.Extensions.DependencyInjection;
using OllamaClient;
using OllamaClient.Extensions;

var serviceProvider = new ServiceCollection()
          .AddOllamaClient()
          .BuildServiceProvider();

var client = serviceProvider.GetRequiredService<IOllamaHttpClient>();

var pullResult = client.Pull(new OllamaClient.Models.PullRequest()
{
    Name = "mistral",
}, CancellationToken.None);

Console.WriteLine(pullResult.Status);

var models = await client.GetModels(CancellationToken.None);

foreach (var model in models.Models)
{
    Console.WriteLine(model.Name);
}

var result = client.SendChat(new OllamaClient.Models.ChatStreamRequest()
{
    Model = models.Models[0].Name,
    Messages = new List<OllamaClient.Models.Message>() { new OllamaClient.Models.Message()
    {
        Content = "Hello, how are you?",
        Role = "user"
    } }
}, CancellationToken.None);

await foreach (var message in result)
{
    if(message.Message is null) continue;

    Console.Write(message.Message.Content);
}
Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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 200 4/21/2024