LMSupply.Captioner
0.111.0
dotnet add package LMSupply.Captioner --version 0.111.0
NuGet\Install-Package LMSupply.Captioner -Version 0.111.0
<PackageReference Include="LMSupply.Captioner" Version="0.111.0" />
<PackageVersion Include="LMSupply.Captioner" Version="0.111.0" />
<PackageReference Include="LMSupply.Captioner" />
paket add LMSupply.Captioner --version 0.111.0
#r "nuget: LMSupply.Captioner, 0.111.0"
#:package LMSupply.Captioner@0.111.0
#addin nuget:?package=LMSupply.Captioner&version=0.111.0
#tool nuget:?package=LMSupply.Captioner&version=0.111.0
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 | Versions 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. |
-
net10.0
- LMSupply.Text.Core (>= 0.111.0)
- LMSupply.Vision.Core (>= 0.111.0)
- System.Numerics.Tensors (>= 10.0.12)
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 |