🍌 Banana|普通五视图并发(5输出)
Five angles, five concurrent calls, one node — the listing-photo workhorse
- image_1
- image_2
- image_3
- image_4
- image_5
- image_6
- image_7
- image_8
- image_9
- image_10
- view_1_image
- view_2_image
- view_3_image
- view_4_image
- view_5_image
- images
- info
- mp4url
The "🍌 Banana|普通五视图并发(5输出)" node is the three-view node's bigger sibling, and the math is exactly what the name says: five prompts, five concurrent API calls, five IMAGE outputs, one run. It's for when front/side/back isn't enough coverage - a product listing that wants a full orbit of a garment or object.
This is a rare case where the extra views aren't filler. The five slots are view_1 through view_5, and their defaults walk a real 360-ish sequence: front, left 45°, side (90°), rear 45°, back. That's the coverage a fashion listing actually uses - the angled shots are the ones that show drape and thickness, which dead-on views flatten out. If you've ever built a product-photography workflow locally, this is the shot list you'd end up writing yourself, minus the hours of prompt iteration (for the API-vs-local tradeoffs - cost, data leaving the machine, the closed backend - the KB's external-api-nodes essay is the short version).
How it works
One node, five independent prompt boxes, five parallel requests to the Hrio backend with the same reference images, model, image_size, and aspect_ratio. Same engine as the three-view node, just multiplied. The reference slots (image_1…image_10) are reused across all five requests, so consistency between angles comes from the backend doing the same subject with the same references - you're not hand-aligning anything.
The generate_scope dropdown here has six options: generate all five, or regenerate only view 1 through 5 individually. That's the part to remember. The other four views come back from the node's last successful run - cached, not re-billed. On a metered API where each view is a separate paid call, regenerating just the one bad angle instead of the whole set is where this node pays for itself.
Inputs and outputs
api_key- the vendor key; blank falls back to the pack'sconfig.ini.view_1_prompt…view_5_prompt- your text per angle. The defaults are solid Chinese e-commerce phrasing; they encode "pure white background, single subject, no collage, no watermark," which is the style the backend is tuned for.model- Banano (default), Banano Pro, or Gemini 3.5 Flash - display names for backend endpoints.image_size(2K default) /aspect_ratio(Auto default) - shared across all five.
Outputs: view_1_image through view_5_image, a combined images batch, plus info (STRING) and mp4url (STRING, empty here - that's for the video nodes).
One technical wrinkle worth knowing: this node class went through several renames in the pack's history (the current one is HrioBananaNormalFiveViewConcurrentNode), and the loader still hunts for legacy class names so old workflows keep loading. If you see it in the menu under the five-view display name, you're on the current build.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/moki-flank/Hrio-Commerce
or search Hrio-Commerce in ComfyUI Manager and restart. Dependencies are light (requests, numpy, pillow; torch comes with ComfyUI). Nothing to download - it's an API pack, so the only "model file" you need is the vendor's API key, in the node or in config.ini's [banana] section.
Common issues
- Five retries stack up. There's no retry toggle on this node (that's the template node's feature), but a flaky backend will still make five concurrent requests feel slow. Check the
infostring if outputs go missing. - Key failure = error image. No key, and the node hands you a red error picture as output rather than a clean exception.
- It's proprietary and phones home. Closed-source pack, credential-holding, network-calling by design. Inspect it before you run it, and know your product images go to the vendor's server.
- Stale nodes after updates. Delete old Banana nodes and hard-refresh (Ctrl+F5) if behavior goes weird after a pack update.
Want fewer angles with simpler prompts? The three-view node. Want the guided templates? The panel node.
Inputs (21)
| Name | Type | Default | Description |
|---|---|---|---|
| api_key | STRING | 填入 API Key;留空时尝试读取 config.ini 的 api_key | |
| view_1_prompt | STRING | 视图1 / 正面图:主体正对镜头,完整展示正面轮廓、结构、材质、图案和关键识别细节。纯白背景,单个主体。 | 五视图第 1 张提示词。 |
| view_2_prompt | STRING | 视图2 / 左侧45度图:主体左前 45 度角展示,既能看到正面主要特征,也能看到侧面厚度、层次和遮挡关系。纯白背景,单个主体。 | 五视图第 2 张提示词。 |
| view_3_prompt | STRING | 视图3 / 侧面图:主体严格 90 度侧向展示,清晰展示厚度、侧边轮廓、侧面结构、层次关系和真实遮挡。纯白背景,单个主体。 | 五视图第 3 张提示词。 |
| view_4_prompt | STRING | 视图4 / 后侧45度图:主体后侧 45 度角展示,既能看到背面结构,也能看到侧面厚度、转折、后部层次和遮挡关系。纯白背景,单个主体。 | 五视图第 4 张提示词。 |
| view_5_prompt | STRING | 视图5 / 背面图:主体背对镜头,完整展示背面轮廓、背部结构、背面图案、后部细节和关键识别特征。纯白背景,单个主体。 | 五视图第 5 张提示词。 |
| model | COMBO | Banano | 图片模型;五视图会并发请求五次 |
| image_size | COMBO | 2K | 五张图使用同一尺寸 |
| aspect_ratio | COMBO | Auto | 五张图使用同一宽高比 |
| generate_scope | COMBO | 全部并发生成 | 可全部并发生成,也可只重新生成某一个视图;其他视图会使用本节点上一次成功缓存结果。下拉值与三视图节点保持一致,前端重抽桥接不会再报【没有该值】。 |
| automation_payloadopt | STRING | 自动化 JSON。前端默认隐藏,只在点击节点上的自动化折叠按钮后显示;后台仍会序列化并参与运行。 | |
| image_1opt | IMAGE | 参考图 1;同一批上传图会复用到五个并发请求 | |
| image_2opt | IMAGE | 参考图 2;同一批上传图会复用到五个并发请求 | |
| image_3opt | IMAGE | 参考图 3;同一批上传图会复用到五个并发请求 | |
| image_4opt | IMAGE | 参考图 4;同一批上传图会复用到五个并发请求 | |
| image_5opt | IMAGE | 参考图 5;同一批上传图会复用到五个并发请求 | |
| image_6opt | IMAGE | 参考图 6;同一批上传图会复用到五个并发请求 | |
| image_7opt | IMAGE | 参考图 7;同一批上传图会复用到五个并发请求 | |
| image_8opt | IMAGE | 参考图 8;同一批上传图会复用到五个并发请求 | |
| image_9opt | IMAGE | 参考图 9;同一批上传图会复用到五个并发请求 | |
| image_10opt | IMAGE | 参考图 10;同一批上传图会复用到五个并发请求 |
Outputs (8)
| Name | Type | Description |
|---|---|---|
| view_1_image | IMAGE | — |
| view_2_image | IMAGE | — |
| view_3_image | IMAGE | — |
| view_4_image | IMAGE | — |
| view_5_image | IMAGE | — |
| images | IMAGE | — |
| info | STRING | — |
| mp4url | STRING | — |