LMSupply.Captioner 0.111.0

dotnet add package LMSupply.Captioner --version 0.111.0
                    
NuGet\Install-Package LMSupply.Captioner -Version 0.111.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="LMSupply.Captioner" Version="0.111.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="LMSupply.Captioner" Version="0.111.0" />
                    
Directory.Packages.props
<PackageReference Include="LMSupply.Captioner" />
                    
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 LMSupply.Captioner --version 0.111.0
                    
#r "nuget: LMSupply.Captioner, 0.111.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 LMSupply.Captioner@0.111.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=LMSupply.Captioner&version=0.111.0
                    
Install as a Cake Addin
#tool nuget:?package=LMSupply.Captioner&version=0.111.0
                    
Install as a Cake Tool

LMSupply.Captioner

Local image captioning for .NET with automatic model downloading.

Features

  • Zero-config: Models download automatically from HuggingFace
  • GPU Acceleration: CUDA, CoreML (macOS)
  • Cross-platform: Windows, Linux, macOS
  • Simple API: Just 2 lines of code to get started

Quick Start

using LMSupply.Captioner;

// Load the default captioning model
var captioner = await LocalCaptioner.LoadAsync("default");

// Generate a caption
var result = await captioner.CaptionAsync("photo.jpg");
Console.WriteLine(result.Caption);
// Output: "A cat sitting on a windowsill looking outside"

Available Models

Model ID Download Description
default (also fast, auto) ~1 GB ViT-GPT2 — fast, one-sentence captions; tends to name a familiar scene rather than the subject
quality ~275 MB (int8) · ~545 MB (fp16) · ~1.1 GB (fp32) Florence-2 base — names the main subjects of everyday photos; brief, detailed or paragraph captions

quality is published in quantized variants; a load takes the one the hardware tier picks, or the one you name with QuantizationHint or a qualifier ("quality:fp16"). LocalCaptioner.GetDownloadSizeBytesAsync answers what a load will download, for a consent screen.

using LMSupply.Captioner;

long bytes = await LocalCaptioner.GetDownloadSizeBytesAsync("quality");

await using var captioner = await LocalCaptioner.LoadAsync("quality",
    new CaptionerOptions { Detail = CaptionDetail.Detailed, MaxLength = 100 });
var result = await captioner.CaptionAsync("photo.jpg");

Detail (Brief · Detailed · Paragraph) is read by quality; default captions at one level and refuses any other value at load. Prompt (caption prefix) is read by default; quality refuses it — its prompt selects the task.

Advanced Usage

using LMSupply;   // ExecutionProvider

// Custom options
var options = new CaptionerOptions
{
    MaxLength = 50,
    Provider = ExecutionProvider.Cuda
};

var captioner = await LocalCaptioner.LoadAsync("default", options);
var result = await captioner.CaptionAsync("image.jpg");

Console.WriteLine($"Caption: {result.Caption}");
Console.WriteLine($"Confidence: {result.Confidence:P1}");

GPU Acceleration

Do not add ONNX Runtime packages (Microsoft.ML.OnnxRuntime*): LMSupply provisions the runtime itself, and a second copy conflicts with it. ExecutionProvider.Auto uses CUDA when the CUDA 12 runtime and cuDNN 9 are installed on the machine, CoreML on macOS, and the CPU otherwise. On Windows with an AMD or Intel GPU, ONNX sessions run on the CPU (DirectML was removed in 0.67.0). See GPU acceleration.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  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.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on LMSupply.Captioner:

Package Downloads
FileFlux.Providers.LMSupply

LMSupply local ONNX model provider for FileFlux: document analysis (summarization, metadata extraction), embeddings, OCR, image captioning, and speech transcription — no API key required.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.111.0 0 10/7/2026
0.110.1 0 10/7/2026
0.110.0 0 10/7/2026
0.109.1 0 10/7/2026
0.109.0 0 10/7/2026
0.108.0 67 10/6/2026
0.107.0 55 10/6/2026
0.106.1 51 10/5/2026
0.106.0 107 10/5/2026
0.105.2 211 10/4/2026
0.105.1 147 10/4/2026
0.105.0 102 10/4/2026
0.104.0 111 10/3/2026
0.103.0 101 10/3/2026
0.102.0 96 10/3/2026
0.101.0 102 10/3/2026
0.100.0 99 10/3/2026
0.99.0 95 10/3/2026
0.98.2 109 10/2/2026
0.98.1 103 10/2/2026
Loading failed