Files
qwen-image/architecture2.svg
mike cfb2e45f1f aa
2026-06-21 04:21:32 +02:00

93 lines
3.3 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="800" height="600" xmlns="http://www.w3.org/2000/svg">
<style>
.component {
fill: #e6f3ff;
stroke: #003366;
stroke-width: 2;
rx: 10;
ry: 10;
}
.label {
font-family: Arial, sans-serif;
font-size: 14px;
font-weight: bold;
text-anchor: middle;
}
.sublabel {
font-family: Arial, sans-serif;
font-size: 12px;
text-anchor: middle;
}
.connection {
stroke: #003366;
stroke-width: 2;
marker-end: url(#arrowhead);
}
</style>
<!-- Arrowhead definition -->
<defs>
<marker id="arrowhead" markerWidth="10" markerHeight="7"
refX="0" refY="3.5" orient="auto">
<polygon points="0 0, 10 3.5, 0 7" fill="#003366"/>
</marker>
</defs>
<!-- FastAPI Edit Agent -->
<rect x="50" y="200" width="200" height="150" class="component"/>
<text x="150" y="220" class="label">FastAPI Edit Agent</text>
<text x="150" y="240" class="sublabel">Service: comfyui-api</text>
<text x="150" y="260" class="sublabel">Port: 8500</text>
<text x="150" y="280" class="sublabel">HTTP API Endpoint</text>
<!-- ComfyUI Backend Agent -->
<rect x="550" y="200" width="200" height="150" class="component"/>
<text x="650" y="220" class="label">ComfyUI Backend</text>
<text x="650" y="240" class="sublabel">Service: comfyui-backend</text>
<text x="650" y="260" class="sublabel">Port: 8188</text>
<text x="650" y="280" class="sublabel">Qwen Model Execution</text>
<!-- Client -->
<rect x="300" y="50" width="200" height="80" class="component"/>
<text x="400" y="70" class="label">Client</text>
<text x="400" y="90" class="sublabel">Image + Prompt Request</text>
<!-- Connection: Client to API -->
<line x1="400" y1="130" x2="150" y2="200" class="connection"/>
<!-- Connection: API to ComfyUI -->
<line x1="250" y1="275" x2="550" y2="275" class="connection"/>
<!-- Model Components inside ComfyUI -->
<rect x="570" y="370" width="160" height="100" class="component"/>
<text x="650" y="390" class="label">Qwen Model</text>
<text x="650" y="410" class="sublabel">Q8 GGUF (Qwen-Rapid-NSFW-v23)</text>
<!-- Text Encoder -->
<rect x="570" y="480" width="160" height="60" class="component"/>
<text x="650" y="500" class="label">Text Encoder</text>
<text x="650" y="520" class="sublabel">qwen_2.5_vl_7b_fp8_scaled.safetensors</text>
<!-- VAE Decoder -->
<rect x="570" y="550" width="160" height="60" class="component"/>
<text x="650" y="570" class="label">VAE Decoder</text>
<text x="650" y="590" class="sublabel">qwen_image_vae.safetensors</text>
<!-- Workflow -->
<rect x="350" y="370" width="120" height="80" class="component"/>
<text x="410" y="390" class="label">Workflow</text>
<text x="410" y="410" class="sublabel">workflow_qwen_edit.json</text>
<!-- Connection: API to Workflow -->
<line x1="250" y1="300" x2="410" y2="450" class="connection"/>
<!-- Connection: Workflow to Model -->
<line x1="470" y1="410" x2="570" y2="420" class="connection"/>
<!-- Connection: Model to VAE -->
<line x1="730" y1="420" x2="730" y2="560" class="connection"/>
<!-- Connection: VAE to Output -->
<line x1="730" y1="610" x2="150" y2="350" class="connection"/>
</svg>