Phota Enhance
The zero-prompt photo facelift
- image
- subject_1
- subject_2
- IMAGE
Enhance, no prompt required
PhotaEnhance is the laziest node in the pack and it knows it. Feed it an image and it sends it off to be auto-enhanced - sharper, cleaner, better color - and hands back the result. No prompt, no settings beyond how many outputs you want. It's the "quick polish" move: instead of assembling a local restoration chain (denoise, upscale, sharpen, rebalance), you get one opaque step that costs a small metered amount and needs zero VRAM.
How it works
The node base64-encodes your image, POSTs it to Phota's /enhance endpoint, and decodes the returned images back into an IMAGE tensor. Like the rest of the pack it runs async, so a generation that takes half a minute doesn't freeze the rest of your graph.
One mechanical detail worth knowing: it enhances the first image in the input batch - if you feed it five frames, only the first is sent up, though num_outputs can give you up to four enhanced variants of it. If you're batching, batch on the output side, not the input.
The optional profile wiring is the genuinely useful part. Connect a profile via profile_id or the subject_1/subject_2 typed sockets and the API preserves that subject's identity while it enhances - which makes this the natural tool for restoring old photos of a known person, or batch-polishing a shoot without the faces drifting. That's the same identity-preservation machinery the rest of the pack uses, applied to a job that would otherwise silently mangle faces.
The inputs
- image - the IMAGE tensor to enhance.
- num_outputs - 1–4 results, so you can pick the best variant.
Optional: profile_id, subject_1/subject_2 for identity preservation, and api_key. Output is a single IMAGE socket for PreviewImage or a Save node.
Install, key, and when not to use it
Same pack, same setup: search Phota API Nodes in ComfyUI Manager or
cd ComfyUI/custom_nodes
git clone https://github.com/photalabs/comfyui-phota
then restart. Dependency-free beyond requests, no GPU. Key from platform.photalabs.com, and keep it in PHOTA_API_KEY or phota.ini rather than the widget so it doesn't ride along in shared workflows.
When should you not reach for it? When you want control. There's no prompt, no strength slider, no way to steer what "enhance" means - it's a black box with a per-image price tag. If you need a specific restoration look, a local chain of upscaler + color nodes will give you the levers and only cost electricity. But for "this photo looks flat and I want it fixed in one step," this is the one you click. That, and it's the cheapest way to test whether the whole hosted-Phota idea suits your workflow without writing a single prompt.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| num_outputs | INT | 11–4 | — |
| profile_idopt | STRING | Profile ID(s) for identity preservation — connect a Phota Profile Selector or paste IDs, comma-separated for multiple subjects. The typed subject_1/subject_2 sockets take precedence for placeholder positions. | |
| api_keyopt | STRING | Leave empty (recommended) to use the PHOTA_API_KEY environment variable or phota.ini. A key typed here is saved inside the workflow — do not share such workflows. | |
| subject_1opt | PHOTA_PROFILE | Typed profile reference; fills [[profile1]] (and joins [[profile]]). | |
| subject_2opt | PHOTA_PROFILE | Typed profile reference; fills [[profile2]] (and joins [[profile]]). |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |