gyf-gpu / README.md
GetYourFit's picture
Upload folder using huggingface_hub
bdd0a45 verified
|
Raw
History Blame Contribute Delete
1.82 kB

A newer version of the Gradio SDK is available: 6.20.0

Upgrade
metadata
title: GYF GPU Lane
emoji: πŸ‘—
colorFrom: indigo
colorTo: pink
sdk: gradio
app_file: app.py
pinned: false

GYF GPU serving lane (HF ZeroGPU)

Free-tier GPU lane for GetYourFit (engineering-doctrine D7). Serves the fashion encoder's GPU embedding as a small JSON API the local GYF stack calls through perception.remote.RemoteEncoder. Only the forward pass runs here β€” retrieval scoring, ranking, and the M2 bake-off stay on the caller's CPU.

API

api_name input output
/embed_images model_id: str, images_b64: list[str] (base64 PNG) {"embeddings": [[...]], "dim": int}
/embed_texts model_id: str, texts: list[str] {"embeddings": [[...]], "dim": int}
/estimate_skin_tone image_b64: str (base64 PNG) {"skin_tone": "mstN", "undertone": str, "field_confidence": {...}, "model_version": str}
/estimate_body image_b64: str (base64 PNG) {"measurements": {...}, "region_quality": {...}, "model_confidence": float, "model_version": str}

Embeddings are L2-normalized; only Apache-2.0 encoder models in ALLOWED_MODELS are served (keep in sync with models.registry.json). /estimate_body runs BiRefNet (MIT silhouette) + RTMW (Apache-2.0 whole-body keypoints) and returns height-normalized torso widths anchored to the shoulder/hip landmarks β€” the bodyshape measurement geometry is vendored from ml/usermodel/body/measurements.py (keep in sync). Both photo lanes abstain (unknown / model_confidence: 0) when no plausible subject is found.

Deploy

See docs/deploy/gpu-lane.md in the main repo for the full picture β€” the free Colab path, the local path, and deploying this folder as a remote serving lane (HF ZeroGPU / RunPod / Modal) behind GYF_ENCODER_REMOTE_URL.