#!/usr/bin/env python3 """Eiffel diorama candidates with a CLEAN solid base (circle / square) so the splat doesn't reconstruct a ragged 'cut' edge.""" import pathlib import hf_call ROOT = "https://ideogram-ai-ideogram4.hf.space" OUT = pathlib.Path(__file__).parent / "images" BASE = ("An architectural scale-model diorama of the Eiffel Tower standing on the " "Champ de Mars, with tree-lined garden promenades, rows of trees and green " "lawns spreading around its base. The whole diorama sits on a solid thick " "{shape} display pedestal with a clean smooth {edge} edge and visible side " "thickness, the ENTIRE {shape} base fully visible and centered in the frame " "with margin around it. Isolated on a pure solid black background, gentle " "elevated three-quarter view, dramatic soft studio lighting, photorealistic, " "crisp fine detail, sharp focus, no people, no text, no watermark.") CANDIDATES = { "eiffel-circle": BASE.format(shape="circular", edge="round"), "eiffel-square": BASE.format(shape="square", edge="straight"), } for slug, prompt in CANDIDATES.items(): dest = OUT / f"{slug}.jpg" print(f"[gen ] {slug} ...", flush=True) data = hf_call.call(ROOT, "generate", [ prompt, "Quality ยท 48 steps", "Ideogram (remote)", 1024, 1024, 0, True, ]) hf_call.download(data[0], dest, space_root=ROOT) print(f"[ok ] {slug} -> {dest} ({dest.stat().st_size//1024} kB)", flush=True) print("DONE")