Constructor CloudVisionImageModerator
- Namespace
- UsluzionicaServer.Infrastructure.Media
- Assembly
- UsluzionicaServer.dll
CloudVisionImageModerator(HttpClient, IConfiguration, ILogger<CloudVisionImageModerator>)
Provera slika preko Google Cloud Vision SafeSearch-a.
ZAŠTO GOOGLE, a ne lokalni ONNX model: Prvih 1.000 slika mesečno je besplatno — za aplikaciju koja tek kreće to je oko 200 novih oglasa sa po pet slika. Lokalni model (NsfwSharp, NudeNet) ne bi koštao ništa po slici, ali bi na jeftinom Hetzner VPS-u trošio CPU koji deli sa bazom i API-jem, i nosio bi ~50 MB modela u Docker slici.
ZAŠTO REST, a ne Google.Cloud.Vision.V1 paket: Paket povlači gRPC i ceo Google.Api lanac zavisnosti zbog jednog poziva koji je običan POST sa base64 telom. Ovako nema nove zavisnosti.
KLJUČ NE SME U REPO. Čita se iz konfiguracije
(ImageModeration:ApiKey), koja na produkciji dolazi iz .env-a.
public CloudVisionImageModerator(HttpClient http, IConfiguration config, ILogger<CloudVisionImageModerator> logger)
Parameters
httpHttpClientconfigIConfigurationloggerILogger<CloudVisionImageModerator>