# RenderParcel — Céramique, trois intentions de lumière

Version du dossier : **1.0.0**. Workflow original pour reconstruire un essai créatif sur une autre machine.

**Ce qui est livré :** un JSON d’interface ComfyUI 0.4, 15 nœuds intégrés, trois branches de lumière, un manifeste exact du modèle et des sources logicielles, un validateur hors ligne et une feuille de comparaison vierge.

**Ce qui a été contrôlé :** syntaxe JSON, schéma officiel UI 0.4, structure des nœuds, types de connexions, graphe sans cycle, paramètres concordants et défauts introduits volontairement. **ComfyUI n’a pas été lancé ; aucune image n’a été générée, aucun besoin VRAM ni temps de génération n’a été mesuré.** L’import dans une interface ComfyUI et l’exécution sur votre environnement restent à contrôler. Le dossier ne contient aucun poids.

## 1. Vérifier le dossier sans ComfyUI

Décompressez l’archive et ouvrez un terminal dans `comfyui-v1`. Avec Python 3.10 ou plus récent :

```console
python validate_workflow.py
```

Le validateur n’utilise que la bibliothèque standard, ne contacte aucun serveur et ne lance aucun calcul IA. Le résultat attendu pour le dossier intact contient `ok: true`, `nodes: 15`, `links: 25`, `checkpoint_verified: false`, `comfyui_executed: false` et `image_generated: false`. Un échec renvoie un code de sortie 1 et une explication. Ce validateur contrôle le profil précis de ce dossier, pas tout workflow ComfyUI possible.

## 2. Réunir les dépendances sur la machine de destination

Le graphe a été construit à partir des définitions de **ComfyUI 0.37.0**, commit `73c9bad4d21e7addbe1d13bc92eee0f1431b017d`. Les dépendances de cette version désignent **comfyui-frontend-package 1.52.7**, commit frontend `1a7a6b82514874545dc5e8203d0bd2188c2d9b18`. Ce sont des références documentaires exactes, pas un environnement installé et exécuté dans cette livraison. Une version plus récente peut importer le format ; cette possibilité ne vaut pas validation de son comportement.

Utilisez l’[installation officielle adaptée à votre système](https://docs.comfy.org/installation/manual_install). Ne remplacez pas à l’aveugle votre installation de production. Relevez vos versions réellement utilisées dans `environnement-a-remplir.json`, notamment Python, PyTorch, le pilote, la précision et les options de lancement. Aucun Python/PyTorch de génération n’est présenté comme testé ici.

Le seul modèle requis est **Stable Diffusion XL Base 1.0** de Stability AI :

- dépôt : `stabilityai/stable-diffusion-xl-base-1.0` ;
- révision : `462165984030d82259a11f4367a4eed129e94a7b` ;
- fichier : `sd_xl_base_1.0.safetensors` ;
- taille de référence : `6938078334` octets, sans rapport direct avec le pic VRAM ;
- SHA-256 de référence : `31e35c80fc4829d14f90153f4c74cd59c90b779f6afe05a74cd6120b893f7e5b` ;
- emplacement prévu : `ComfyUI/models/checkpoints/sd_xl_base_1.0.safetensors`.

Consultez le [fichier de l’éditeur à la révision fixée](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/blob/462165984030d82259a11f4367a4eed129e94a7b/sd_xl_base_1.0.safetensors) et sa [licence CreativeML Open RAIL++-M](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/blob/462165984030d82259a11f4367a4eed129e94a7b/LICENSE.md) avant de l’obtenir séparément. Le dossier n’effectue aucun téléchargement. L’empreinte provient des métadonnées LFS de l’éditeur ; elle n’a pas été recalculée sur les poids dans cette livraison.

Pour comparer le fichier que vous possédez déjà, sans le charger en mémoire GPU :

```console
python validate_workflow.py --checkpoint "D:/modeles/sd_xl_base_1.0.safetensors"
```

Cette option lit le fichier pour vérifier sa taille et son empreinte. Elle peut prendre du temps selon le stockage. Une empreinte correcte n’est pas une preuve d’exécution réussie. Aucun refiner, LoRA, ControlNet, image d’entrée ou nœud personnalisé n’est requis par ce graphe.

## 3. Importer et lire les trois branches

Ouvrez une installation ComfyUI préparée, puis importez `workflow-ui.json` dans l’interface, par ouverture du workflow ou glisser-déposer du JSON sur le canevas. **N’envoyez pas ce fichier au point d’entrée API `/prompt` : il décrit l’interface, pas le payload d’exécution API.**

Vérifiez le choix du checkpoint dans le nœud 1. Si le fichier a été placé dans un sous-dossier, sélectionnez son chemin réel et conservez cette modification dans votre copie du manifeste. Si le menu ne le propose pas, contrôlez d’abord son emplacement et les chemins supplémentaires de votre installation, puis actualisez les modèles ou redémarrez suivant la procédure de votre version.

Les branches A, B et C reprennent le même objet fictif : un vase ivoire mat sur un socle bleu cobalt, avec une zone libre prévue pour un titre ajouté ensuite dans un logiciel de mise en page. Les prompts sont en anglais pour cet exemple SDXL ; le dossier explique leur rôle en français. Seule la dernière phrase du prompt positif varie : frontale douce, latérale gauche, contre-jour.

Les trois KSampler utilisent `24092026`, contrôle après génération `fixed`, 24 pas, CFG 6.5, `euler`, `normal`, denoise 1. Le latent commun est de 1024 × 1024 pixels avec un lot de 1. Ces nombres définissent l’exercice ; ils ne sont ni un réglage optimal universel ni une mesure de performance. La recette ne pilote pas trois GPU et n’assemble pas un triptyque en une seule image.

## 4. Exécuter et juger votre résultat

Lancez une exécution lorsque les dépendances sont disponibles. Chaque branche doit atteindre son nœud SaveImage. Les préfixes sont `RenderParcel/ceramique-v1/a_frontale`, `b_laterale` et `c_contrejour` dans le répertoire de sortie de ComfyUI ; ComfyUI ajoute ses compteurs de fichiers. Trois branches ne garantissent pas une exécution simultanée.

Ouvrez les trois PNG. Remplissez `comparaison.csv` : bord lisible, matière lisible, place pour le titre, déformation, variante retenue et commentaire. Les cellules sont volontairement vides. La lumière peut aussi changer la silhouette ou la composition : un seed commun ne verrouille pas un objet réel. Pour une représentation fidèle d’un produit, ce dossier text-to-image est seulement une étude de direction, pas un procédé de reproduction contrôlée.

La validation sur votre machine est terminée lorsque les fichiers existent, s’ouvrent, ont les dimensions prévues et répondent à vos critères. Relevez l’environnement, exportez le JSON utilisé et gardez une image témoin produite par votre exécution. N’inventez pas une durée ou une VRAM si vous ne l’avez pas mesurée.

## 5. Reconstruire, modifier, transmettre

`reconstruction.md` détaille chaque connexion et l’ordre des widgets. Pour modifier le cas, dupliquez le dossier, changez une variable à la fois et mettez à jour le manifeste. Le validateur du profil v1 peut refuser une extension volontaire : cela ne prouve pas qu’elle est invalide pour ComfyUI, seulement qu’elle sort du dossier contrôlé.

Conservez le JSON indépendamment des PNG. Les métadonnées incorporées peuvent être retirées par une conversion ou un partage. Archivez aussi votre manifeste complété, la comparaison et les sorties sélectionnées. Les bibliothèques, poids et pilotes restent des dépendances distinctes.

## Sources techniques

- [Format UI ComfyUI 0.4](https://docs.comfy.org/specs/workflow_json_0.4).
- [Nœuds intégrés, source ComfyUI 0.37.0](https://github.com/Comfy-Org/ComfyUI/blob/73c9bad4d21e7addbe1d13bc92eee0f1431b017d/nodes.py).
- [Dépendances de cette version](https://github.com/Comfy-Org/ComfyUI/blob/73c9bad4d21e7addbe1d13bc92eee0f1431b017d/requirements.txt).
- [Emplacement des modèles](https://docs.comfy.org/basic-concepts/models).
- [SDXL dans ComfyUI, exemples de l’auteur](https://comfyanonymous.github.io/ComfyUI_examples/sdxl/).
- [Limites de reproductibilité PyTorch](https://docs.pytorch.org/docs/2.14/notes/randomness.html).

Les ressources originales du dossier relèvent de `LICENSE.md`. Les logiciels et le modèle gardent leurs licences propres. Aucun fichier de compte, paiement, identité, cookie ou secret n’est nécessaire à ce projet.

## Compatibilité des sorties v1

Les nouvelles images utilisent le préfixe `RenderParcel/ceramique-v1/`. Aucun dossier de sortie déjà présent n'est déplacé ou supprimé. Les identifiants des quinze nœuds, les liens et les réglages restent identiques.

Le validateur accepte aussi le préfixe historique `Prismora/ceramique-v1/`, avec les mêmes noms de variantes. Il peut ainsi lire un workflow v1 antérieur avec le manifeste actuel ; il n'accepte pas un nom de variante différent. Les images déjà produites conservent leur chemin d'origine.
