Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
davidcastagnetoa avatar

Torchserve

  • 10 installs
  • 1 repo stars
  • Updated March 10, 2026
  • davidcastagnetoa/skills

Deploys TorchServe to serve PyTorch models (face recognition, liveness, anti-spoofing) with dynamic batching, model versioning, and Prometheus metrics.

About

Configures and deploys TorchServe as a PyTorch model server with MAR packaging, dynamic batching, hot model versioning, and health checks. A developer uses it when serving ML inference models in production with monitoring and multiple simultaneous versions.

  • MAR packaging and config.properties with dynamic batching and workers
  • Hot model registration via Management API plus Prometheus metrics

Torchserve by the numbers

  • 10 all-time installs (skills.sh)
  • Ranked #1,561 of 2,064 Data Science & ML skills by installs in the Skillselion catalog
  • Data as of Jul 29, 2026 (Skillselion catalog sync)
npx skills add https://github.com/davidcastagnetoa/skills --skill torchserve

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs10
repo stars1
Last updatedMarch 10, 2026
Repositorydavidcastagnetoa/skills

What it does

Deploys TorchServe to serve PyTorch models (face recognition, liveness, anti-spoofing) with dynamic batching, model versioning, and Prometheus metrics.

Files

SKILL.mdMarkdownGitHub ↗

torchserve

Configura y despliega TorchServe como servidor de modelos PyTorch para servir los modelos de liveness detection (MiniFASNet), face recognition (ArcFace) y anti-spoofing del pipeline KYC. Proporciona batching dinámico, versionado de modelos y métricas de rendimiento integradas para monitoreo en producción.

When to use

Usa esta skill cuando necesites desplegar o configurar el servidor de inferencia PyTorch dentro del model_server_agent. Aplica cuando se requiera servir modelos ML del pipeline de verificación facial con soporte para batching, múltiples versiones simultáneas y endpoints de métricas.

Instructions

1. Instalar TorchServe y sus dependencias:

   pip install torchserve torch-model-archiver torch-workflow-archiver

2. Empaquetar cada modelo como un MAR (Model Archive) usando torch-model-archiver:

   torch-model-archiver --model-name arcface \
     --version 1.0 \
     --model-file models/arcface.py \
     --serialized-file weights/arcface_r100.pth \
     --handler handlers/face_recognition_handler.py \
     --export-path model_store/

3. Configurar el archivo config.properties con batching dinámico, número de workers y puertos:

   inference_address=http://0.0.0.0:8080
   management_address=http://0.0.0.0:8081
   metrics_address=http://0.0.0.0:8082
   job_queue_size=100
   batch_size=8
   max_batch_delay=200
   default_workers_per_model=2

4. Crear handlers personalizados para cada tipo de modelo (liveness, face_match, anti-spoofing) que implementen initialize(), preprocess(), inference() y postprocess().

5. Iniciar TorchServe con el model store y la configuración:

   torchserve --start --model-store model_store/ \
     --ts-config config.properties \
     --models arcface=arcface.mar liveness=minifasnet.mar

6. Registrar nuevas versiones de modelos en caliente mediante la Management API:

   curl -X POST "http://localhost:8081/models?url=arcface_v2.mar&model_name=arcface&initial_workers=2"

7. Configurar métricas de Prometheus para monitorear latencia de inferencia, throughput y errores por modelo:

   metrics_mode=prometheus
   metrics_format=prometheus

8. Implementar health checks en el endpoint /ping y validar que todos los modelos estén cargados antes de aceptar tráfico de verificación.

Notes

  • El batching dinámico es crítico para optimizar el throughput cuando múltiples verificaciones KYC llegan simultáneamente; ajustar batch_size y max_batch_delay según la carga esperada.
  • Cada modelo debe tener su propio handler para manejar correctamente el preprocesamiento específico (normalización facial, resize de documentos, etc.).
  • Monitorear el uso de memoria GPU constantemente ya que cargar múltiples modelos (ArcFace + MiniFASNet + anti-spoofing) puede exceder la VRAM disponible.

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.