A lightweight, end‑to‑end creative pipeline that transforms a simple text prompt into a fully generated visual moodboard.
Built with Groq Llama 3.1, HuggingFace SDXL, and a modular agent‑style architecture.
This project is intentionally designed so it can later evolve into a general creative agent (stories, branding kits, design briefs, concept exploration, etc.).
This system takes a user prompt and produces:
- Concept Extraction — Identify the key creative themes
- Image Generation — Produce SDXL images for each concept
- Evaluation — Score how well the images match the concepts
- UI Output — Display the final moodboard in a clean Streamlit interface
The architecture is modular, extensible, and ready for future expansion.
creative-agent/
│
├── agent/
│ ├── pipeline.py # Main orchestration logic
│ ├── evaluator.py # LLM-based scoring
│ └── memory.py # (optional future expansion)
│
├── tools/
│ ├── intent_parser.py # Extracts creative concepts
│ └── image_generator.py # Wraps SDXL generation
│
├── models/
│ ├── text_model.py # Groq Llama 3.1 client
│ └── image_model.py # HuggingFace SDXL client
│
├── ui/
│ └── app.py # Streamlit interface
│
└── README.md
Each component is isolated and replaceable — making the system easy to extend.
- Groq Llama 3.1 8B Instant — fast concept extraction + evaluation
- HuggingFace SDXL (Router API) — high‑quality image generation
- Streamlit — simple, interactive UI
- Python 3.12
- dotenv — environment variable management
git clone https://github.com/<your-username>/creative-agent.git
cd creative-agentpython -m venv .venv
.\.venv\Scripts\activatepip install -r requirements.txtCreate a .env file:
GROQ_API_KEY=your_key_here
HF_TOKEN=your_key_here
From the project root:
streamlit run ui/app.py- Extracts 5 creative concepts from any prompt
- Generates SDXL images for each concept
- Scores image–concept alignment using LLM evaluation
- Displays a clean, scrollable moodboard
- Fully modular — ready to expand into a general creative agent
- Add multi‑mode creative workflows (story, branding, design brief, etc.)
- Add a router model for automatic task classification
- Add memory + iterative refinement
- Add Flux.1 or SD3 as optional image backends
- Add async generation for speed
Built by Rahmat Abrar Mohammed — Fullstack & AI Engineer.
Focused on agentic systems, creative tooling, and high‑impact product engineering.