This page was machine-translated. Spotted a mistake?Help improve it.
Skip to content

AI Motoru Referansı

@snapotter/ai paketi, tüm ML işlemleri için Node.js'i kalıcı bir Python sidecar ile köprüler. Dispatcher süreci, hızlı sıcak başlatma performansı için istekler arasında canlı kalır. NVIDIA CUDA, başlangıçta otomatik algılanır ve mevcut olduğunda kullanılır; aksi takdirde AI araçları CPU üzerinde çalışır.

VA-API, Quick Sync veya OpenCL üzerinden Intel/AMD iGPU hızlandırma bugün AI çıkarımı için desteklenmiyor. /dev/dri öğesini bir konteynere eşlemek, CUDA yeteneğine sahip bir NVIDIA GPU mevcut olmadıkça bu Python sidecar araçlarını hızlandırmaz.

Dört modalite (image, audio, video, document) genelinde 19 Python sidecar AI aracı, artı isteğe bağlı AI yetenekleri olan 2 araç. Tüm modeller yerel olarak çalışır; ilk model indirmesinden sonra internet gerekmez.

Mimari

Node.js Tool Route
      |
      v
 @snapotter/ai bridge.ts
      | (stdin/stdout JSON + stderr progress events)
      v
 Python dispatcher (persistent process, "ai" profile)
      |
      |-- remove_bg.py        (rembg / BiRefNet)
      |-- upscale.py          (RealESRGAN)
      |-- inpaint.py          (LaMa ONNX)
      |-- outpaint.py         (LaMa canvas expansion)
      |-- ocr.py              (PaddleOCR / Tesseract)
      |-- ocr_pdf.py          (page-by-page document OCR)
      |-- ocr_preprocess.py   (image enhancement for OCR)
      |-- detect_faces.py     (MediaPipe)
      |-- face_landmarks.py   (MediaPipe landmarks)
      |-- enhance_faces.py    (GFPGAN / CodeFormer)
      |-- colorize.py         (DDColor)
      |-- noise_removal.py    (SCUNet / tiered denoising)
      |-- red_eye_removal.py  (landmark + color analysis)
      |-- restore.py          (scratch repair + enhancement + denoising)
      |-- transcribe.py       (faster-whisper speech-to-text)
      +-- install_feature.py  (on-demand bundle installer)

Ayrı bir "docs" dispatcher profili, AI izin listesini belge işleme betikleriyle (doc_pagecount, doc_health, doc_flatten, doc_redact, doc_text, doc_to_word, doc_metadata, doc_html_pdf) değiştirir ve ağır ML içe aktarmalarını atlar.

Zaman aşımları: varsayılan 300 s; OCR ve BiRefNet arka plan kaldırma 600 s alır.

Özellik Paketleri

AI modelleri, araç başına bir arşiv olarak değil, paylaşılan bağımlılık yığınına göre paketlenir. Bir özellik paketi, araçlar aynı model ailesini, Python wheel'lerini veya yerel kütüphaneleri kullandığında birden fazla aracı etkinleştirebilir. Bu, yayın Docker imgesini daha küçük tutar ve aynı arka plan matlama, yüz algılama, OCR, onarım ve konuşma modellerinin yinelenen kopyalarının saklanmasını önler.

Docker imgesi, uygulamayı artı ortak çalışma zamanını içerir. Büyük model arşivleri, talep üzerine kalıcı /data/ai birimine indirilir, ardından ihtiyaç duyan her araç tarafından yeniden kullanılır. Bir paket, başka bir araç ihtiyaç duyduğu için zaten yüklüyse, ona bağımlı yeni bir aracı etkinleştirmek o paketi tekrar indirmez.

Her AI aracı, çalışabilmesi için bir veya daha fazla özellik paketi gerektirir. Yönetici arayüzü, tam paket listesini çözen, zaten yüklü olan paketleri atlayan ve yalnızca eksik indirmeleri kuyruğa alan POST /api/v1/admin/tools/:toolId/features/install aracılığıyla araç bazında yükler. Örneğin, yeni bir örnekte Pasaport Fotoğrafı'nı etkinleştirmek background-removal ve face-detection paketlerini kuyruğa alır; Arka Plan Kaldırma zaten yüklüyken etkinleştirmek yalnızca face-detection paketini kuyruğa alır.

PaketBoyutPaylaşılan bağımlılık grubuOnu kullanan araçlar
background-removal4-5 GBrembg / BiRefNet arka plan matlamaremove-background, passport-photo, transparency-fixer, background-replace, blur-background
face-detection200-300 MBMediaPipe yüz algılama ve işaret noktalarıblur-faces, red-eye-removal, smart-crop
object-eraser-colorize1-2 GBLaMa inpainting/outpainting ve DDColorerase-object, colorize, ai-canvas-expand
upscale-enhance5-6 GBRealESRGAN, GFPGAN / CodeFormer, gürültü gidermeupscale, enhance-faces, noise-removal
photo-restoration4-5 GBçizik onarımı ve restorasyon hattırestore-photo
ocr5-6 GBPaddleOCR / Tesseract OCR yığınıocr, ocr-pdf
transcription~600 MBfaster-whisper konuşmadan metne modelleritranscribe-audio, auto-subtitles

Çapraz paket bağımlılıkları olan araçlar:

AraçGerekli paketlerNeden
passport-photobackground-removal, face-detectionArka planı kaldırır, ardından kırpmayı pasaport ve kimlik fotoğrafı kurallarına göre çerçevelemek için yüz işaret noktalarını kullanır.
enhance-facesupscale-enhance, face-detectionSeçilen yüz bölgelerinde GFPGAN veya CodeFormer iyileştirmesini çalıştırmadan önce yüzleri algılar.

Bir araç yalnızca gerekli tüm paketleri yüklendiğinde kullanılabilir. Kısmi yüklemeler geçerlidir ve kademeli olarak işlenir: yüklü paketler yeniden kullanılır, eksik paketler indirme olarak gösterilir ve paylaşılan Python ortamı eş zamanlı olarak değiştirilmesin diye kuyruğa alınan yüklemeler birer birer çalışır.


Arka Plan Kaldırma

Araç rotası: remove-background
Model: BiRefNet (varsayılan) veya U2-Net varyantları ile rembg

ParametreTürVarsayılanAçıklama
modelstring-Model varyantı (isteğe bağlı geçersiz kılma)
backgroundTypestring"transparent"Şunlardan biri: transparent, color, gradient, blur, image
backgroundColorstring-Düz arka plan için hex renk
gradientColor1string-Birinci gradyan rengi
gradientColor2string-İkinci gradyan rengi
gradientAnglenumber-Derece cinsinden gradyan açısı
blurEnabledboolean-Arka plan bulanıklaştırma efektini etkinleştir
blurIntensitynumber (0-100)-Bulanıklaştırma yoğunluğu
shadowEnabledboolean-Özne üzerinde gölge düşürmeyi etkinleştir
shadowOpacitynumber (0-100)-Gölge opaklığı
outputFormatstring-Çıktı biçimi: png, webp veya avif
edgeRefineinteger (0-3)-Kenar iyileştirme düzeyi
decontaminateboolean-Kenarlardan renk taşmasını kaldır

Arka Plan Değiştirme

Araç rotası: background-replace
Model: rembg / BiRefNet (remove-background ile paylaşılır)

Arka planı kaldırır ve düz bir renk veya gradyanla değiştirir.

ParametreTürVarsayılanAçıklama
backgroundType"color" | "gradient""color"Arka plan modu
colorstring"#ffffff"Arka plan hex rengi (backgroundType değeri color olduğunda)
gradientColor1string-Birinci gradyan hex rengi
gradientColor2string-İkinci gradyan hex rengi
gradientAngleinteger (0-360)180Derece cinsinden gradyan açısı
featherinteger (0-20)0Kenar yumuşatma yarıçapı
format"png" | "webp""png"Çıktı biçimi

Arka Planı Bulanıklaştırma

Araç rotası: blur-background
Model: rembg / BiRefNet (remove-background ile paylaşılır)

Özneyi keskin tutarken arka planı bulanıklaştırır.

ParametreTürVarsayılanAçıklama
intensityinteger (1-100)50Bulanıklaştırma yoğunluğu
featherinteger (0-20)0Kenar yumuşatma yarıçapı
format"png" | "webp""png"Çıktı biçimi

Görüntü Büyütme

Araç rotası: upscale
Model: RealESRGAN (kullanılamadığında Lanczos yedeği ile)

ParametreTürVarsayılanAçıklama
scalenumber2Büyütme faktörü
modelstring"auto"Model varyantı
faceEnhancebooleanfalseGFPGAN yüz iyileştirme geçişi uygula
denoisenumber0Gürültü giderme gücü
formatstring"auto"Çıktı biçimi geçersiz kılma
qualitynumber95Çıktı kalitesi (1-100)

OCR / Metin Çıkarma

Araç rotası: ocr
Modeller: Tesseract (hızlı), PaddleOCR PP-OCRv5 (dengeli), PaddleOCR-VL 1.5 (en iyi)

ParametreTürVarsayılanAçıklama
quality"fast" | "balanced" | "best""balanced"İşleme katmanı
languagestring"auto"Dil: auto, en, de, fr, es, zh, ja, ko
enhancebooleantrueOCR doğruluğunu artırmak için görüntüyü ön işle
enginestring-Kullanımdan kaldırıldı. tesseract değerini fast ile, paddleocr değerini balanced ile eşler

Sınırlayıcı kutular, güven puanları ve çıkarılan metin blokları ile yapılandırılmış sonuçlar döndürür.

PDF OCR

Araç rotası: ocr-pdf
Modeller: Görüntü OCR ile aynı katman sistemi

Yapay zeka destekli OCR kullanarak taranmış PDF belgelerinden sayfa sayfa metin çıkarır.

ParametreTürVarsayılanAçıklama
quality"fast" | "balanced" | "best""balanced"İşleme katmanı
languagestring"auto"Dil: auto, en, de, fr, es, zh, ja, ko
pagesstring"all"Sayfa seçimi: "all", "1-3", "1,3,5"

Yüz / PII Bulanıklaştırma

Araç rotası: blur-faces
Model: MediaPipe yüz algılama

ParametreTürVarsayılanAçıklama
blurRadiusnumber (1-100)30Gauss bulanıklaştırma yarıçapı
sensitivitynumber (0-1)0.5Algılama güven eşiği

Yüz İyileştirme

Araç rotası: enhance-faces
Modeller: GFPGAN, CodeFormer

ParametreTürVarsayılanAçıklama
model"auto" | "gfpgan" | "codeformer""auto"İyileştirme modeli
strengthnumber (0-1)0.8İyileştirme gücü
sensitivitynumber (0-1)0.5Yüz algılama eşiği
onlyCenterFacebooleanfalseYalnızca en merkezi yüzü iyileştir

AI Renklendirme

Araç rotası: colorize
Model: DDColor (OpenCV DNN yedeği ile)

Siyah-beyaz veya gri tonlamalı fotoğrafları tam renge dönüştürür.

ParametreTürVarsayılanAçıklama
intensitynumber (0-1)1.0Renk doygunluğu gücü
model"auto" | "ddcolor" | "opencv""auto"Model varyantı

Gürültü Giderme

Araç rotası: noise-removal
Model: SCUNet (katmanlı gürültü giderme hattı)

ParametreTürVarsayılanAçıklama
tier"quick" | "balanced" | "quality" | "maximum""balanced"İşleme katmanı
strengthnumber (0-100)50Gürültü giderme gücü
detailPreservationnumber (0-100)50Ne kadar ayrıntı korunacağı; daha yüksek değer daha fazla doku tutar
colorNoisenumber (0-100)30Renk gürültüsü azaltma gücü
formatstring"original"Çıktı biçimi: original, png, jpeg, webp, avif, jxl
qualitynumber (1-100)90Çıktı kodlama kalitesi

Kırmızı Göz Giderme

Araç rotası: red-eye-removal

Yüz işaret noktalarını algılar, göz bölgelerini bulur ve kırmızı kanal aşırı doygunluğunu düzeltir.

ParametreTürVarsayılanAçıklama
sensitivitynumber (0-100)50Kırmızı piksel algılama eşiği
strengthnumber (0-100)70Düzeltme gücü
formatstring-Çıktı biçimi geçersiz kılma (isteğe bağlı)
qualitynumber (1-100)90Çıktı kalitesi

Fotoğraf Onarımı

Araç rotası: restore-photo

Eski veya hasarlı fotoğraflar için çok adımlı hat: çizik/yırtık algılama ve onarım, yüz iyileştirme, gürültü giderme ve isteğe bağlı renklendirme.

ParametreTürVarsayılanAçıklama
scratchRemovalbooleantrueÇizikleri, yırtıkları algıla ve onar
faceEnhancementbooleantrueYüz iyileştirme geçişi uygula
fidelitynumber (0-1)0.7Yüz iyileştirme gücü (yüksek = daha temkinli)
denoisebooleantrueGürültü giderme geçişi uygula
denoiseStrengthnumber (0-100)25Gürültü giderme gücü
colorizebooleanfalseOnarımdan sonra renklendir
colorizeStrengthnumber (0-100)85Renklendirme yoğunluğu

Pasaport Fotoğrafı

Araç rotası: passport-photo
Modeller: MediaPipe yüz işaret noktaları + BiRefNet arka plan kaldırma

İki aşamalı iş akışı: analiz et (yüzü algıla + arka planı kaldır) ardından oluştur (kırp, yeniden boyutlandır, döşe). 6 bölgede 37+ ülkeyi destekler.

Aşama 1: Analiz

POST /api/v1/tools/image/passport-photo/analyze

Bir görüntü dosyası (multipart) kabul eder. Yüz işaret noktası verisi, base64 önizleme ve görüntü boyutları döndürür.

Aşama 2: Oluştur

POST /api/v1/tools/image/passport-photo/generate

Aşama 1 sonuçlarını artı oluşturma ayarlarını içeren bir JSON gövdesi kabul eder:

ParametreTürVarsayılanAçıklama
jobIdstring(gerekli)Aşama 1'den iş kimliği
filenamestring(gerekli)Aşama 1'den orijinal dosya adı
countryCodestring(gerekli)ISO ülke kodu (örneğin, US, GB, IN)
documentTypestring"passport"Belge türü
bgColorstring"#FFFFFF"Arka plan rengi hex
printLayoutstring"none"Baskı düzeni: none, 4x6, a4, letter
maxFileSizeKbnumber0KB cinsinden maks dosya boyutu (0 = sınır yok)
dpinumber (72-1200)300Çıktı DPI
customWidthMmnumber-mm cinsinden özel genişlik (ülke özelliğini geçersiz kılar)
customHeightMmnumber-mm cinsinden özel yükseklik (ülke özelliğini geçersiz kılar)
zoomnumber (0.5-3)1Yakınlaştırma faktörü
adjustXnumber0Yatay konum ayarı
adjustYnumber0Dikey konum ayarı
landmarksobject(gerekli)Aşama 1'den işaret noktaları
imageWidthnumber(gerekli)Aşama 1'den görüntü genişliği
imageHeightnumber(gerekli)Aşama 1'den görüntü yüksekliği

Nesne Silme (Inpainting)

Araç rotası: erase-object
Model: ONNX Runtime üzerinden LaMa

Maske, base64 olarak değil, ikinci bir dosya parçası (alan adı mask) olarak gönderilir. Maskedeki beyaz pikseller silinecek alanları belirtir. format ve quality ayarları üst düzey form alanları olarak gönderilir.

ParametreTürVarsayılanAçıklama
filefile(gerekli)Kaynak görüntü (multipart)
maskfile(gerekli)Maske görüntüsü (multipart, alan adı mask, beyaz = sil)
formatstring"auto"Çıktı biçimi: auto, png, jpg, jpeg, webp, tiff, gif, avif, heic, heif, jxl
qualityinteger (1-100)95Çıktı kalitesi

Bir NVIDIA GPU mevcut olduğunda CUDA hızlandırmalıdır.

AI Tuval Genişletme

Araç rotası: ai-canvas-expand
Model: LaMa tabanlı outpainting

Bir görüntünün tuvalini herhangi bir yönde genişletir ve yeni alanları mevcut görüntüyle eşleşen AI tarafından üretilen içerikle doldurur.

ParametreTürVarsayılanAçıklama
extendTopinteger0Üstte genişletilecek piksel
extendRightinteger0Sağda genişletilecek piksel
extendBottominteger0Altta genişletilecek piksel
extendLeftinteger0Solda genişletilecek piksel
tier"fast" | "balanced" | "high""balanced"Kalite katmanı
formatstring"auto"Çıktı biçimi: auto, png, jpg, jpeg, webp, tiff, gif, avif, heic, heif, jxl
qualityinteger (1-100)95Çıktı kalitesi

En az bir genişletme yönü 0'dan büyük olmalıdır.

Akıllı Kırpma

Araç rotası: smart-crop
Model: MediaPipe yüz algılama (yalnızca yüz modu)

ParametreTürVarsayılanAçıklama
modestring"subject"Kırpma stratejisi: subject, face, trim
strategy"attention" | "entropy""attention"Özne modu için strateji
widthinteger-Çıktı genişliği
heightinteger-Çıktı yüksekliği
paddinginteger (0-50)0Özne çevresindeki dolgu yüzdesi
facePresetstring"head-shoulders"mode=face olduğunda ön ayarlı çerçeveleme
sensitivitynumber (0-1)0.5Yüz algılama eşiği
thresholdinteger (0-255)30Arka plan algılama eşiği (kırpma modu)
padToSquarebooleanfalseKırpılan sonucu kareye doldur
padColorstring"#ffffff"Kare dolgusu için arka plan rengi
targetSizeinteger-Dolgulu çıktı için hedef boyut (piksel)
qualityinteger (1-100)-Çıktı kalitesi

Eski mode değerleri attention ve content kabul edilir ve sırasıyla subject ve trim ile eşlenir.

Yüz ön ayarları:

Ön ayarEn uygun kullanım
closeupPortre çekimleri
head-shouldersProfil fotoğrafları
upper-bodyLinkedIn / resmi
half-bodyTam üst gövde

Sesi Yazıya Dök

Araç rotası: transcribe-audio
Model: faster-whisper

Konuşmayı metne dönüştürür. Düz metin, SRT ve VTT çıktı biçimlerini destekler.

ParametreTürVarsayılanAçıklama
languagestring"auto"Dil: auto, en, de, fr, es, zh, ja, ko, id, th, vi
outputFormat"txt" | "srt" | "vtt""txt"Çıktı biçimi

Otomatik Altyazılar

Araç rotası: auto-subtitles
Model: faster-whisper (videodan sesi çıkarır, ardından yazıya döker)

Bir videonun ses parçasından altyazı dosyaları oluşturur.

ParametreTürVarsayılanAçıklama
languagestring"auto"Dil: auto, en, de, fr, es, zh, ja, ko, id, th, vi
format"srt" | "vtt""srt"Çıktı altyazı biçimi

PNG Saydamlık Düzeltici

Araç rotası: transparency-fixer
Model: BiRefNet HR-matting (2048x2048 çözünürlük)

Arka planın kaldırıldığı ancak arkada saçaklanma, hale veya yarı saydam kalıntılar bırakıldığı "sahte saydam" PNG'leri düzeltir. Temiz bir alfa kanalı üretmek için BiRefNet'in yüksek çözünürlüklü matlama modelini kullanır, ardından kenarlar boyunca renk kirlenmesini kaldırmak için yapılandırılabilir saçak giderme işlemi uygular.

OOM yedek zinciri: BiRefNet HR-matting mevcut belleği aşarsa, araç otomatik olarak önce birefnet-general değerine, ardından u2net değerine geri döner.

ParametreTürVarsayılanAçıklama
defringenumber (0-100)30Renk kirlenmesini kaldırmak için kenar saçak giderme gücü
outputFormat"png" | "webp""png"Çıktı görüntü biçimi
removeWatermarkbooleanfalseFiligran kaldırma ön işlemesi uygula (medyan filtresi)
bash
curl -X POST http://localhost:1349/api/v1/tools/image/transparency-fixer \
  -H "Authorization: Bearer <token>" \
  -F "[email protected]" \
  -F 'settings={"defringe":30,"outputFormat":"png"}'

İsteğe Bağlı AI Yetenekleri Olan Araçlar

Aşağıdaki araçlar Python sidecar araçları değildir ancak belirli seçenekler etkinleştirildiğinde AI özelliklerini kullanır.

Görüntü İyileştirme

Araç rotası: image-enhancement
Motor: Analiz tabanlı (Sharp histogramı ve istatistikleri)

Görüntüyü analiz eder ve pozlama, kontrast, beyaz dengesi, doygunluk, keskinlik ve gürültü için otomatik düzeltmeler uygular. Sahneye özgü modları destekler.

ParametreTürVarsayılanAçıklama
mode"auto" | "portrait" | "landscape" | "low-light" | "food" | "document""auto"Düzeltmeleri ayarlamak için sahne modu
intensitynumber (0-100)50Genel düzeltme gücü
corrections.exposurebooleantruePozlama düzeltmesi uygula
corrections.contrastbooleantrueKontrast düzeltmesi uygula
corrections.whiteBalancebooleantrueBeyaz dengesi düzeltmesi uygula
corrections.saturationbooleantrueDoygunluk düzeltmesi uygula
corrections.sharpnessbooleantrueKeskinlik düzeltmesi uygula
corrections.denoisebooleantrueGürültü giderme uygula
deepEnhancebooleanfalseSCUNet üzerinden AI gürültü giderme etkinleştir (upscale-enhance paketi gerektirir)

POST /api/v1/tools/image/image-enhancement/analyze adresinde, algılanan düzeltmeleri uygulamadan döndüren ek bir analiz uç noktası mevcuttur.

İçerik Duyarlı Yeniden Boyutlandırma (Seam Carving)

Araç rotası: content-aware-resize
Motor: Go caire ikilisi (Python değil, GPU avantajı yok)

Düşük enerjili dikişleri kaldırarak görüntüleri akıllıca yeniden boyutlandırır, önemli içeriği korur.

ParametreTürVarsayılanAçıklama
widthnumber-Hedef genişlik
heightnumber-Hedef yükseklik
protectFacesbooleanfalseAlgılanan yüz bölgelerini koru (face-detection paketi gerektirir)
blurRadiusnumber (0-20)4Enerji hesaplaması için ön bulanıklaştırma
sobelThresholdnumber (1-20)2Kenar hassasiyeti eşiği
squarebooleanfalseKare çıktıyı zorla