AcademicDreamer
Multi-agent system for creating professional academic illustrations using a two-stage prompt compilation process.
Overview
AcademicDreamer transforms academic concepts into CVPR/NeurIPS-level scientific illustrations through:
- Visual Schema Generation - Analyzes paper content and selects appropriate layout strategy
- Style Compilation - Fuses visual schema with venue-specific style directives
- Image Generation - Produces high-fidelity illustrations via OpenRouter API
- Quality Review - Iterative review loop with configurable iterations
Installation
# Clone repository
git clone <repository-url>
cd academic-dreamer
# Install dependencies with uv
uv sync
# Copy environment template
cp .env.example .env
# Edit .env with your API key
Usage
JSON Input Schema
{
"idea": "The paper proposes a novel transformer architecture for image segmentation...",
"style": "CVPR 2024",
"target_type": "architecture_diagram",
"control": {
"max_iterations": 2,
"output_formats": ["png"],
"quality_threshold": 0.7
}
}
| Field | Type | Required | Description |
|---|---|---|---|
idea |
string | Yes | Academic concept/paper content |
style |
string | Yes | Venue (CVPR, ICLR, NeurIPS, Nature) or free-form style |
target_type |
string | No | infograph, architecture_diagram, flowchart, timeline |
control |
object | No | Control arguments |
CLI
# Basic usage
python -m academic_dreamer.cli --input request.json
# With overrides
python -m academic_dreamer.cli --input request.json --max-iterations 3 --output-formats png,pdf
# Specify output directory
python -m academic_dreamer.cli --input request.json --output-dir ./results
Python API
from academic_dreamer import generate_academic_illustration
result = await generate_academic_illustration(
idea="The paper proposes a novel transformer architecture...",
style="CVPR 2024",
target_type="architecture_diagram",
max_iterations=2,
output_formats=["png", "pdf"],
)
print(result["output_paths"])
Examples
See examples/ for detailed usage examples:
- CLI Example - Using AcademicDreamer from command line
- API Example - Using AcademicDreamer in a Python workflow
Project Structure
academic_dreamer/
├── agents/ # Multi-agent implementations
│ ├── visual_architect.py # Stage 1: Schema generation
│ ├── render_compiler.py # Stage 2: Prompt compilation
│ └── style_inference.py # LLM-based style inference
├── core/ # Core pipeline
│ ├── orchestrator.py # LangGraph workflow
│ ├── generation_pipeline.py # Image generation
│ ├── review_iteration.py # Quality review loop
│ ├── target_classifier.py # Auto-detect target type
│ └── output_formatter.py # PNG/PDF export
├── prompts/ # Prompt templates
│ ├── visual_schema.md
│ ├── render_compile.md
│ └── venues/ # Venue-specific styles
├── models/ # Data schemas
├── config/ # Configuration
├── cli.py # CLI entry point
├── main.py # API entry point
├── pyproject.toml
└── README.md
Control Arguments
| Argument | Default | Description |
|---|---|---|
max_iterations |
2 | Review iterations (0=skip) |
output_formats |
["png"] | Output formats |
quality_threshold |
0.7 | Quality gate (0.0-1.0) |
Supported Venues
- CVPR
- ICLR
- NeurIPS
- Nature
- Custom (LLM-inferred)
License
MIT
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
academic_dreamer-0.1.0.tar.gz
(25.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file academic_dreamer-0.1.0.tar.gz.
File metadata
- Download URL: academic_dreamer-0.1.0.tar.gz
- Upload date:
- Size: 25.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d3f6e2e8572807c528877bff1e235824796b3526190691fa7d95432e0d21e7ca
|
|
| MD5 |
1decfc5eab61b8b07e5ceecd2bef87c0
|
|
| BLAKE2b-256 |
20eeb6e22e2115692ef1e3da1ece563afc5a660f78958db8fbc1ad4bb64047cd
|
File details
Details for the file academic_dreamer-0.1.0-py3-none-any.whl.
File metadata
- Download URL: academic_dreamer-0.1.0-py3-none-any.whl
- Upload date:
- Size: 35.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
38f0f92593a19b45b6b34ce355d38614985aabe3cf0360f44ff1008e2791335f
|
|
| MD5 |
9add28c12039fca57ac7c49e52efb177
|
|
| BLAKE2b-256 |
0c82d30006e5ebe0b853ceee5fdae3c470e65c561882e9250aaea79a7e9bf1d3
|