Skip to content

Sightengine

Nuget package dotnet License: MIT Discord

Features 🔥

  • Fully generated C# SDK based on official Sightengine OpenAPI specification using AutoSDK
  • Same day update to support new features
  • Updated and supported automatically if there are no breaking changes
  • All modern .NET features - nullability, trimming, NativeAOT, etc.
  • Support .Net Framework/.Net Standard 2.0

Usage

1
2
3
using Sightengine;

using var client = new SightengineClient(apiKey);

Image Moderation

Basic example showing how to moderate an image URL for harmful content.

1
2
3
4
5
6
7
8
9
using var client = new SightengineClient(apiKey);

// Moderate an image by URL using multiple detection models at once.
// Available models include nudity-2.1, gore-2.0, weapon, drugs,
// violence, alcohol, offensive, self-harm, scam, face-attributes,
// text-content, qr-content, genai, type, and quality.
var response = await client.CheckImageByUrlAsync(
    url: "https://upload.wikimedia.org/wikipedia/commons/thumb/b/b6/Image_created_with_a_mobile_phone.png/1200px-Image_created_with_a_mobile_phone.png",
    models: "nudity-2.1,violence,offensive");

Text Moderation

Example showing how to moderate text content for profanity and personal information.

1
2
3
4
5
6
7
8
9
using var client = new SightengineClient(apiKey);

// Moderate text content for profanity, personal information
// (emails, phone numbers, usernames, IP addresses, SSNs), and links.
// Supports rule-based mode and username validation mode.
var response = await client.CheckTextAsync(
    text: "Hello world, this is a clean test message.",
    lang: "en",
    mode: CheckTextRequestMode.Rules);

AI-Generated Image Detection

Example showing how to detect AI-generated images.

1
2
3
4
5
6
7
8
using var client = new SightengineClient(apiKey);

// Detect whether an image was AI-generated using the genai model.
// Works for images from Stable Diffusion, MidJourney, DALL-E,
// Adobe Firefly, Flux, and other generators.
var response = await client.CheckImageByUrlAsync(
    url: "https://upload.wikimedia.org/wikipedia/commons/thumb/b/b6/Image_created_with_a_mobile_phone.png/1200px-Image_created_with_a_mobile_phone.png",
    models: "genai");

MEAI Tools

Example showing how to use Sightengine as AI function tools with any IChatClient.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
using var client = new SightengineClient(apiKey);

// Sightengine provides AIFunction tools that can be used with any
// Microsoft.Extensions.AI IChatClient for content moderation.

// Moderate images for harmful content
var moderateImageTool = client.AsModerateImageTool();

// Detect AI-generated images
var detectAiTool = client.AsDetectAiGeneratedTool();

// Moderate text for profanity and personal info
var moderateTextTool = client.AsModerateTextTool();

// Validate usernames
var validateUsernameTool = client.AsValidateUsernameTool();

Support

Priority place for bugs: https://github.com/tryAGI/Sightengine/issues
Priority place for ideas and general questions: https://github.com/tryAGI/Sightengine/discussions
Discord: https://discord.gg/Ca2xhfBf3v

Acknowledgments

JetBrains logo

This project is supported by JetBrains through the Open Source Support Program.