# Character sampling through the current Nova/Qwen bridges The dashboard's `#combined-sampling` section compares two original adult anime characters, starting from each model. This is one snapshot of the latest saved EMA exports when requested: forward 90,000 and reverse 78,000 additional updates in the growing16x run. It does not backfill previous checkpoints or select weights using the character results. Both trainers and the prompt producer continue running. The astronomer is explicitly forty and the explorer forty-five. Their exact prompts and seeds are disjoint from all 4,096 declared training prompts. They are new development examples, not reserved final-test examples. The protocol is `configs/bridge-nova-qwen21-character-sampling-20260921.json`. Each example uses 512px output and 24 shared Euler denoising steps, with shift 3.0, Nova CFG 4.0 and Qwen guidance 1.0. The three displayed columns are: 1. All 24 steps in the starting model, on the same shared noise grid. 2. Learned bridge switching: either 12 steps then 12 in the other model, or 6 in the starting model, 12 in the other, and 6 back in the starting model. 3. The identical switching policy using the full decoder/encoder reference. At a switch, `sample_image_flow` extracts the current predicted clean latent and noise residual, translates only the clean estimate through the ordinary bridge forward pass, permutes the equal-dimensional noise coordinates, and recombines them at the receiving step's noise level. No pixel computation is used inside the learned crossing. Full codecs are used only for the explicitly labeled reference crossing and for displaying final images. Prompt conditioning uses each model's pinned native encoder. All policies within a starting-model row use the same prompt, seed, shared grid and denoising-step budget. Nova applies classifier-free guidance with two neural forward passes per step; Qwen uses one. Reports record these counts separately. This is not a comparison at equal wall time or each model's native scheduler. Seeds do not imply identical images across the two starting latent spaces. Every learned switching trajectory is run twice and required to produce the same latent tensor without changing global RNG state. The first result is always displayed; repetition never selects an output. Final-image LPIPS is measured against the matching full-codec trajectory and the single-model control. These measure differences, not aesthetic quality or a particle advantage. The shared-single baseline is not separately repeated. Pinned copies and run metadata are under `artifacts/runs/bridge-nova-qwen21-character-sampling-20260921`. The renderer validates the compact export's learned-weight checksum and codec identities. The pinned file SHA-256 values are: - Forward: `415f089ce058387390ff54a43b4f8ef7778fe71c9b44d3a3fb6870a22d136802`. - Reverse: `2e4ccc0c08c8711862175d714612a939cd53c715f5b24dc4ebf36c47aad8782b`. Reproduction with a new output directory (this snapshots whatever latest EMA is saved at execution time): ```bash CUDA_VISIBLE_DEVICES=1 \ PYTHONPATH=.venv/qwen21-deps:artifacts/vendor/diffusers-qwen21/src \ .venv/bin/python -u -m scripts.render_image_bridge_characters \ --protocol configs/bridge-nova-qwen21-character-sampling-20260921.json \ --training-config configs/bridge-nova-qwen21-growing16x-20260921.json \ --run-root artifacts/runs/bridge-nova-qwen21-growing16x-20260921 \ --out artifacts/runs/bridge-nova-qwen21-character-sampling-replay \ --gallery-root artifacts/runs/bridge-repeatability-20260920 \ --gpu-memory-fraction 0.5 ``` For exact replay, supply a run root whose `movable/forward/last.safetensors` and `movable/reverse/last.safetensors` are the preserved forward/reverse snapshot copies above. The source models, prompt protocol, numerical stack and GPU must also match. Completed rows publish atomically into the dedicated section; incomplete rows and reserved test outputs are not shown. ## Measured snapshot All four character/start-model examples completed, producing 20 final images. Every one of the eight learned switching trajectories repeated bitwise exactly and preserved both global RNG states. End-to-end wall time including model loading and all repeats/reference trajectories was **728.64 seconds**; peak GPU memory reserved by the renderer was **21.81 GiB**. This is a shared-machine measurement, not a standalone inference benchmark. The renderer exited and released its GPU memory; both trainers and the data producer remained running. Final-image LPIPS between learned and matching full-codec switching: | Character | Starting model | Halfway handoff | Switch and return | | --- | --- | ---: | ---: | | Astronomer | Nova | 0.111305 | 0.282204 | | Astronomer | Qwen | 0.175431 | 0.227266 | | Explorer | Nova | 0.064773 | 0.131294 | | Explorer | Qwen | 0.080121 | 0.173237 | The inspected Nova-starting astronomer round trip retains the main character, glasses, chart, telescope and night setting. It differs from the reference in face, hair, clothing and telescope details. Reference switching also changes the single-model result substantially; these comparisons isolate the additional learned-bridge differences without treating the single-model image as the uniquely correct style. Two characters do not establish broad generalization. Verification: 33 CPU tests cover split exclusion, immutable checkpoint capture, both switch directions and budget boundaries, sampler noise/RNG behavior, image publication and existing dashboards. JavaScript syntax and whitespace checks passed. The live browser check verified all 20 image URLs, content hashes and 512px dimensions, and all eight character/start/policy selector combinations. There were no JavaScript errors or mobile horizontal overflow. The inspected Qwen-starting explorer round trip also preserves the character, cloak, crystal and ruins, with localized differences from the full-codec reference. Browser and image verification artifacts are under `artifacts/verification/nova-qwen21-character-sampling-20260921`.