# Diffthinker Multimodal Reasoning

> Apply diffusion models as native generative agents for vision-centric reasoning tasks (sequential planning, constraint satisfaction, spatial configuration) instead of text-based LLM chains. Achieves 3x+ improvements over GPT-5 and Gemini-3 on visual reasoning. Use when image-to-image generation better captures the reasoning constraints than text-based problem decomposition.

- Skill: `adu2021/diffthinker-multimodal-reasoning` (Agent Skill)
- Install (CLI): `npx skillmds@latest add adu2021/diffthinker-multimodal-reasoning`
- Raw SKILL.md: https://api.skillmd.com/api/skills/adu2021/diffthinker-multimodal-reasoning/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- License: MIT
- Author: adu2021 (https://skillmd.com/u/adu2021)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/adu2021/diffthinker-multimodal-reasoning

---


## When to Use This Skill

- Sequential visual planning problems (step-by-step manipulation, assembly tasks)
- Combinatorial optimization with spatial constraints
- Constraint satisfaction problems visualizable as images
- Spatial configuration and layout reasoning tasks
- Problems where intermediate visual representations clarify the solution path

## When NOT to Use This Skill

- Pure text reasoning tasks without visual grounding
- Tasks requiring guaranteed deterministic outputs
- Very large-scale problems (diffusion inference is iterative, not one-shot)
- Applications requiring real-time processing (<100ms latency)

## Core Innovation

Traditional multimodal reasoning chains knowledge as text: LLMs decompose visual problems into linguistic steps, then reason through them sequentially. DiffThinker inverts this:

**Instead of:** Image → Extract facts → Reason in text → Generate image
**DiffThinker does:** Image → Condition diffusion → Iteratively refine visual plan → Extract answer

This treats reasoning itself as an image-generation process where:
- **Conditioning**: Problem constraints come from the input image
- **Iteration**: Diffusion steps progressively refine the solution
- **Extraction**: The final image encodes the answer (trajectories, configurations, etc.)

## Why Diffusion for Reasoning?

Diffusion models possess three properties that benefit multimodal reasoning:

1. **Native parallelism**: Multiple solution aspects evolve simultaneously (vs. sequential token generation)
2. **Iterative refinement**: Solutions improve gradually with feedback from intermediate states
3. **Controllability**: Fine-grained control over output structure via conditioning mechanisms

## Architecture Pattern

```python
# DiffThinker reasoning loop structure
class DiffusionReasoningAgent:
    def __init__(self, vision_encoder, diffusion_model, solution_decoder):
        self.encoder = vision_encoder  # Extract semantic features from input image
        self.diffusion = diffusion_model  # Generative reasoning in image space
        self.decoder = solution_decoder  # Extract actionable output from final image

    def solve(self, input_image, problem_type, num_steps=50):
        """Iterative reasoning via diffusion"""
        # Encode problem constraints from input image
        problem_context = self.encoder(input_image)

        # Initialize random noise (unconstrained solution space)
        x_t = torch.randn_like(input_image)

        # Diffusion loop: iteratively refine solution
        for step in range(num_steps):
            # Condition on problem and previous solution state
            denoised = self.diffusion.denoise_step(
                x_t,
                context=problem_context,
                step=step,
                guidance_scale=7.5  # Strength of problem constraint
            )
            # Mix with previous for smooth refinement
            x_t = self.diffusion.reverse_step(denoised, x_t, step)

        # Extract solution from final image
        solution = self.decoder(x_t, problem_type)
        return solution
```

## Application Examples

**Sequential Planning** (e.g., Rearrange objects from start to goal):
- Input: Current scene image + goal image
- Output: Series of intermediate configurations showing manipulation steps
- Diffusion iteratively computes feasible transition paths

**Constraint Satisfaction** (e.g., Packing, layout problems):
- Input: Items to pack + container boundaries
- Output: Valid packing arrangement satisfying all constraints
- Diffusion naturally enforces geometric feasibility

**Spatial Reasoning** (e.g., 3D object arrangement):
- Input: Objects + spatial relationships
- Output: Valid 3D configuration image showing depth and occlusion
- Diffusion captures 3D consistency that text reasoning misses

## Training Workflow

1. **Data Collection**: Gather (problem image, solution image) pairs for your domain
2. **Encoder Training**: Learn to extract semantic constraints from problem images
3. **Diffusion Training**: Train generative model to denoise solution images conditioned on constraints
4. **Decoder Training**: Learn to extract structured output from solution images
5. **End-to-end Fine-tuning**: Joint optimization for task-specific performance

## Performance Comparison

Empirical results from paper on visual reasoning benchmarks:

| Task | DiffThinker | GPT-5 | Gemini-3-Flash | Improvement |
|------|---|---|---|---|
| Sequential Planning | 94.2% | 30% | 45% | +314% |
| Combinatorial Opt. | 87.5% | 28% | 38% | +212% |
| Constraint Satisfaction | 91.8% | 25% | 42% | +267% |

(Note: Metric definitions specific to paper; improvements relative to these benchmarks)

## Trade-offs vs. Text-Based Reasoning

| Aspect | Diffusion | Text-LLM |
|--------|---|---|
| Latency | 50-500ms (iterative) | 100-2000ms (token generation) |
| Determinism | Stochastic | Deterministic with temperature |
| Spatial reasoning | Native geometric constraints | Learned from language |
| Interpretability | Visual solution path | Linguistic explanation |
| Scalability | Fixed image resolution | Unbounded sequence length |

## Implementation Considerations

- **Resolution choice**: Higher resolution = better spatial detail but slower inference
- **Guidance strength**: Balance between constraint satisfaction (high) and solution diversity (low)
- **Diffusion steps**: 30-100 typically sufficient; more = better quality but slower
- **Conditioning mechanism**: ControlNet-style spatial conditioning often needed for spatial tasks

## References

- Original paper: https://arxiv.org/abs/2512.24165
- Related: ControlNet, Spatial Transformer Networks, Visual Question Answering
- Baseline comparisons: GPT-5, Gemini-3-Flash, Qwen3-VL-32B (fine-tuned)

