happyin.work / ComfyUI · Version originale en anglais
Spécialiste et développeuse ComfyUI - Anastasiia Butova
Cela fait deux ans, depuis 2024, que je construis des pipelines d'images en production sur ComfyUI. Je conçois les graphes, j'écris les nœuds personnalisés (custom nodes) sur lesquels ils reposent, j'entraîne les LoRA qu'ils chargent et je les exécute en mode headless via l'API ComfyUI sur des workers GPU. Basée à Belgrade, en Serbie ; en télétravail ; ouverte aux missions comme aux postes à temps plein.
En une phrase : Anastasiia Butova est spécialiste ComfyUI et ingénieure en modèles de diffusion, avec 100 nœuds personnalisés répartis dans 16 packs de sa conception, des graphes ComfyUI en production pour un SaaS d'images de bijoux, une application photo aux 4M+ utilisateurs et un bot Telegram, ainsi que l'entraînement de LoRA pour FLUX.2 Klein et SDXL.
Je travaille en anglais, en russe et en serbe ; cette page est une traduction de la version originale en anglais.
Ce que je peux réaliser pour vous
- Un workflow ComfyUI transformé en service. Le graphe est construit et débogué dans l'éditeur, exporté au format API, puis exécuté en mode headless avec des entrées propres à chaque requête : une file d'attente en amont, des workers GPU en aval (RunPod serverless ou vos propres machines), des résultats livrés par webhook.
- Nœuds personnalisés. Pour l'étape qu'aucun pack existant ne propose : routage et contrôles qualité, correspondance des couleurs, segmentation SAM3, classification DINOv3, détection YOLO, alignement par flux optique, découpage en tuiles, et des wrappers qui placent des réseaux de restauration (NAFNet, SwinIR, HYPIR) dans le même graphe que la génération.
- Entraînement et évaluation de LoRA. Adaptateurs FLUX.2 Klein 9B et SDXL, des LoRA d'identité propres à chaque personne aux LoRA d'édition pour les photos de produits, évalués sur des planches à seed fixe plutôt que sur une seule image réussie par chance.
- Haute résolution. Inférence par tuiles pour des images produit de 6K-10K pixels, sans jointures visibles à 40 mégapixels.
- Un déploiement reproductible. Des images Docker pour cartes H100 et H200, dans lesquelles chaque nœud personnalisé est copié et figé à une version précise, pour qu'une modification dans le pack de quelqu'un d'autre ne puisse pas casser la production du jour au lendemain.
Où mon travail sur ComfyUI a été déployé
- OIS.Gold, de 2024 à aujourd'hui. Un SaaS de traitement d'images de bijoux comptant 1 500+ utilisateurs. ComfyUI y est piloté par le code depuis le backend, avec des files de tâches BullMQ et une livraison par webhook, sur des images de 6K-10K pixels ; chaque nœud personnalisé utilisé par l'image de production est conservé sous forme de snapshot embarqué.
- Glam.ai, 2026. Des pipelines Qwen Image Edit à plusieurs étapes, orchestrés par des graphes ComfyUI où chaque nœud est un modèle spécialisé en segmentation, restauration ou affinage, dans une application photo aux 4M+ utilisateurs ; entraînement sur un cluster de 80 GPU H200.
- @wowfaceaibot, 2025. Un LoRA entraîné sur les propres photos de chaque utilisateur ; génération sur RunPod pilotée via l'API HTTP de ComfyUI avec l'adaptateur de cet utilisateur.
- mashinki, 2026. Des photos de voitures de concessionnaires transformées en images de catalogue sur une machine GPU sous ComfyUI : segmentation SAM3, LoRA FLUX.2 Klein 9B pour le remplacement de l'arrière-plan et la géométrie, et un pack de nœuds dédié.
Le décompte des nœuds
Décompte effectué le 15 septembre 2026 à partir du code d'enregistrement des nœuds de chaque pack : 100 nœuds distincts dans 16 packs de ma conception (104 enregistrements ; quatre nœuds utilitaires sont partagés entre deux packs).
- happyin-comfyui-nodes, 32: routage et contrôles qualité, un routeur de prompts Florence2, masques, estimation du bruit et appariement du grain, correspondance et transfert des couleurs, angles de caméra, planches contact, utilitaires pour dossiers de LoRA, outils de traitement par lots
- ComfyUI-SAM3-Gemstone, 20: détection de pierres précieuses avec SAM 3, composition et assemblage, recadrage et recollage pour l'inpainting, rattrapage des masques et des trous, sortie PSD
- ComfyUI_happyin, 19: découpage et fusion de tuiles, décomposition en fréquences, encodage et décodage VAE, outils de masque, niveaux automatiques, renforcement des contours et de la profondeur, filtrage des zones de détail
- ComfyUI-mashinki, 6: segmentation des parties de voiture avec SAM3 (plaque, carrosserie, vitres, roues, habitacle), inclinaison de l'image d'arrière-plan selon le roulis de la caméra intérieure, angles de caméra, calage de la taille du latent, un décodeur NVIDIA PiD
- comfyui-pixel-align-nodes, 5: alignement au pixel avec repli sur une déformation, mélange de fréquences, remplacement des basses fréquences, fusion sélective
- ComfyUI_happyin_canny, 4: cartes de contours, un descripteur d'images, des nœuds de remplacement d'objets et de mots
- restauration: débruitage NAFNet avec gestion des couleurs au chargement et à l'enregistrement (3), restauration NAFNet pour bijoux (2), débruitage SwinIR et cartographie du bruit (2), restauration HYPIR (1)
- reconnaissance: dimensions des voitures avec DINOv3 (1), classification DINOv3 (1), détection YOLO26 (1)
- édition: curseurs de masque heatmap (3), nettoyage de captures d'écran et rognage des bordures (3), affinage au clic pour FLUX.2 Klein (1)
Les dépôts sont privés : le décompte est donc indiqué ici plutôt que sous forme de lien.
Comment je travaille
Un pipeline est construit et débogué dans l'éditeur ComfyUI, puis gelé : le graphe est exporté au format API, les nœuds personnalisés sont figés sur les commits qui ont été testés. Après cela, plus aucun clic. Le backend soumet le graphe avec les entrées propres à chaque requête et récupère le résultat. Un nouveau checkpoint ou une modification de nœud est évalué sur des planches à seed fixe par rapport à la version précédente, et ce qu'il rate est consigné à côté de ce qu'il réussit, à la manière des cartes de modèle sur Hugging Face.
Pourquoi les nœuds personnalisés sont figés
Les images de production embarquent un snapshot de chaque nœud personnalisé qu'elles utilisent, mis à jour délibérément et testé avant d'être livré, si bien qu'aucune surprise ne vient de la branche main de quelqu'un d'autre. La même prudence s'applique à ce qu'un nœud a le droit de faire : un nœud personnalisé, c'est du Python qui s'exécute avec les permissions du serveur. J'ai rédigé la procédure de détection et de suppression d'un cryptomineur, une variante de XMRig, qui avait été injecté dans le fichier execution.py d'un conteneur ComfyUI.
Modèles et outils
FLUX.2 Klein 9B, FLUX, Qwen Image Edit, SDXL et SD 1.5, IP-Adapter, ControlNet, SAM3, Florence2, DINOv3, YOLO, NAFNet, SwinIR, HYPIR. L'API HTTP de ComfyUI, Diffusers, PyTorch, Python, Docker, RunPod, BullMQ, GPU H100 et H200.
Questions fréquentes
Pouvez-vous développer un nœud ComfyUI personnalisé pour notre pipeline ?
Oui. J'en ai écrit 100 à ce jour, répartis dans 16 packs. La plupart relèvent de l'un de ces trois cas : un modèle encapsulé pour tourner à l'intérieur du graphe, une décision que le graphe doit prendre (un point de contrôle, un routeur, un aiguillage), ou une opération sur l'image qu'aucun pack existant ne réalise de la manière dont le pipeline en a besoin.
Pouvez-vous transformer notre workflow ComfyUI en API ou en produit ?
Oui, c'est ainsi que fonctionnent tous les projets en production présentés sur cette page. Le graphe passe au format API, un backend le soumet avec les entrées propres à chaque requête, une file d'attente est placée en amont des GPU, et les résultats reviennent par webhook.
Entraînez-vous des LoRA pour FLUX ou SDXL ?
Oui. Des LoRA d'identité, un par personne, entraînés sur les propres photos de l'utilisateur, et des LoRA d'édition sur FLUX.2 Klein 9B qui restaurent les visages, remplacent l'arrière-plan derrière une voiture et corrigent sa géométrie ; plusieurs d'entre eux sont publiés sous forme de cartes de modèle sur Hugging Face.
Travaillez-vous avec des modèles de diffusion en dehors de ComfyUI ?
Oui. Diffusers, scripts d'entraînement, export ONNX et inférence en C++ pour des modèles de retouche qui tournent sur l'ordinateur même de l'utilisateur. ComfyUI est l'endroit où la plupart des pipelines sont assemblés, pas le seul où vivent les modèles.
Où êtes-vous basée, et comment travailler ensemble ?
À Belgrade, en Serbie, en télétravail sur les fuseaux horaires européens et américains, en mission ou à temps plein. Russe : langue maternelle ; anglais : niveau professionnel ; serbe : niveau opérationnel.
Comment me contacter
Le plus rapide est Telegram @happy_in_happy ; sinon par e-mail à [email protected], ou sur LinkedIn.
Ailleurs sur ce site (pages en anglais)
- Accueil - qui je suis et ce que je construis
- CV - postes, dates, stack technique
- ComfyUI - pipelines ComfyUI en production, nœuds personnalisés, entraînement LoRA
- Happyin.ai - modèles de retouche embarqués et un plugin Photoshop en C++
- mashinki - pipeline automatisé de photos de voitures pour concessionnaires
- OIS.Gold - retouche de bijoux à grande échelle
- Glam.ai - fonctionnalités d'IA en production pour 4M+ utilisateurs
- @wowfaceaibot - bot photo sur Telegram avec un LoRA par utilisateur
- happyin.space - 820+ articles structurés pour les agents IA
- codex-claude-code-config - un recueil de règles pour les agents de code
- mclaude - coordination multisession pour Claude Code
- Blog - essais sur les agents, la diffusion et le ML en production
- AGENTS.md - la version lisible par les machines de tout ceci
Anastasiia Butova - ingénieure ML, Belgrade, Serbie.
E-mail [email protected] ·
LinkedIn ·
GitHub ·
Telegram ·
Hugging Face