| |
| """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") |
|
|