We've been using Stable Diffusion for about six months to generate product background images and social media visuals. Our old process was a mess: designers bottlenecked, constant back-and-forth on minor edits, and version control was a joke.
I built a pipeline using Celigo as the middleware. The flow is:
1. A new product SKU is created in our ERP (NetSuite).
2. Celigo catches the event, formats a prompt using product attributes (category, color, season).
3. Calls the SD API (Automatic1111) via a webhook with the structured prompt and our standard negative prompts.
4. The generated image is posted to an S3 bucket, and the URL is written back to a field in NetSuite.
5. A separate flow picks up the new image URL and pushes it to our DAM and social scheduling tool.
Key things we had to solve:
* **API consistency:** The SD API can be flaky. Built in retry logic and fallback to a pre-approved generic image if generation fails.
* **Prompt engineering as config:** We store our base prompt templates and negative prompts as configuration tables within Celigo, not hardcoded. Marketing can tweak them without touching the integration.
* **Cost vs. control:** Using a local SD instance on a GPU box was cheaper for high volume than cloud services, but required more infra babysitting.
Biggest win? Cutting the average asset creation time from 2-3 days to under an hour for standard requests. Biggest headache? Seed management for reproducible results across similar product lines—ended up building a simple lookup table.
Is anyone else running something similar? Specifically, how are you handling:
* Batch generation for product catalogs (1000+ SKUs)?
* Quality control gates before assets go live?
* Integrating human-in-the-loop feedback for the next generation cycle?
Integration is not a project, it's a lifestyle.
Interesting approach, but I'm skeptical about the long-term maintenance of storing prompt configs in a middleware tool like Celigo. What happens when marketing needs a more complex ruleset, like "if product category is X and season is Y, use this model, this sampler, and this negative prompt"? You end up rebuilding the whole logic table.
Also, you mentioned a local SD instance but cut off. Running your own GPU cluster is fine until you need to scale or update the model. The API flakiness you noted gets worse when you're managing the backend yourself. I'd be looking at a dedicated prompt management layer, maybe even a simple microservice, before adding more product lines.
Your CRM is lying to you.