diff --git a/.gitattributes b/.gitattributes index 34679d056b7a8aa2d1346baca0553e8a96b0cade..38c2d397d8afd769ff00571c28a096ba52d19f61 100644 --- a/.gitattributes +++ b/.gitattributes @@ -222,3 +222,15 @@ compare/img/case18/turbo9.webp filter=lfs diff=lfs merge=lfs -text compare/img/case19/turbo9.webp filter=lfs diff=lfs merge=lfs -text compare/img/case20/turbo9.webp filter=lfs diff=lfs merge=lfs -text compare/img/case21/turbo9.webp filter=lfs diff=lfs merge=lfs -text +compare/img/case22/turbo9.webp filter=lfs diff=lfs merge=lfs -text +compare/img/case23/turbo9.webp filter=lfs diff=lfs merge=lfs -text +compare/img/case24/turbo9.webp filter=lfs diff=lfs merge=lfs -text +compare/img/case25/turbo9.webp filter=lfs diff=lfs merge=lfs -text +compare/img/en_1/turbo9.webp filter=lfs diff=lfs merge=lfs -text +compare/img/en_2/turbo9.webp filter=lfs diff=lfs merge=lfs -text +compare/img/en_3/turbo9.webp filter=lfs diff=lfs merge=lfs -text +compare/img/en_3/turbo9_t.webp filter=lfs diff=lfs merge=lfs -text +compare/img/en_4/turbo9.webp filter=lfs diff=lfs merge=lfs -text +compare/img/en_4/turbo9_t.webp filter=lfs diff=lfs merge=lfs -text +compare/img/zh_1/turbo9.webp filter=lfs diff=lfs merge=lfs -text +compare/img/zh_7/turbo9.webp filter=lfs diff=lfs merge=lfs -text diff --git a/compare.py b/compare.py index df0b277c3c4c5a36ef4f0b53f4e220ec66473af0..1114820bd855ef1361dd955ad811f5d4bdab6518 100644 --- a/compare.py +++ b/compare.py @@ -1,5 +1,5 @@ """The demo's Comparison tab: 32 of the 37 examples of the official Qwen/Qwen-Image-2.1 Space, rendered with viggle-turbo -v0.2.1 in 6 steps (and in 8 steps on the 5 dense-text examples) and with the base model in 40 steps. Both get the same +v0.3 in 6 steps and in 9 steps (7 turbo steps + 2 base-model steps) and with the base model in 40 steps. Both get the same prompt, input images and seed 42, with prompt enhancement off. No GPU: everything is pre-rendered. compare/ (WebP images + cases.json) is written by release/build_compare_space.py, and upload_space.sh builds it into the Space.""" import json @@ -18,20 +18,19 @@ KINDS = { "Editing": lambda case: len(case["inputs"]) > 0, "Multi-image editing": lambda case: len(case["inputs"]) > 1, "Text-to-image": lambda case: not case["inputs"], - "Dense text (+8 steps)": lambda case: "turbo8" in case, + "Dense text": lambda case: case["dense"], } def best_turbo(case): - """The turbo render an example opens on: 8 steps where it has one (the dense-text examples), else 6.""" - return "turbo8" if "turbo8" in case else "turbo" + """The turbo render an example opens on: 9 steps on the dense-text examples, else 6.""" + return "turbo9" if case["dense"] else "turbo" def arms(case): """(menu label, key) for every render of an example; the render time is in the label.""" menu = [(f"viggle-turbo · 6 steps · {case['turbo_s']:.1f} s", "turbo")] - if "turbo8" in case: - menu.append((f"viggle-turbo · 8 steps · {case['turbo8_s']:.1f} s", "turbo8")) + menu.append((f"viggle-turbo · 9 steps (7 + 2 base) · {case['turbo9_s']:.1f} s", "turbo9")) menu.append((f"Qwen-Image-2.1 base · 40 steps · {case['base_s']:.1f} s", "base")) if case["reference"]: menu.append(("Qwen API reference (bundled with Qwen's Space)", "reference")) @@ -70,9 +69,9 @@ def render(): "[Qwen/Qwen-Image-2.1 Space](https://huggingface.co/spaces/Qwen/Qwen-Image-2.1). Both models get the same prompt, " "input images and seed, with prompt enhancement off, one sample each and no seed picking. " f"At **{speedup:.1f}× less time** the turbo is very competitive with the base model; the clearest gaps are " - "small, dense text (8 steps narrows it) and complicated edits, where the base is still ahead. " - "Pick an example on the left, then drag the slider. The 5 dense-text examples open on the 8-step turbo (6 steps is in " - "the menu), and the menus also offer Qwen's own API reference where the Space ships one.\n\n" + "small, dense text (9 steps often narrows it) and complicated edits, where the base is still ahead. " + "Pick an example on the left, then drag the slider. The 5 dense-text examples open on the 9-step turbo, the others on " + "6 steps (both are in every menu), and the menus also offer Qwen's own API reference where the Space ships one.\n\n" f"Median time, editing: **{median(edits, 'turbo_s'):.1f} s vs {median(edits, 'base_s'):.1f} s** · " f"text-to-image (~4 MP): **{median(t2is, 'turbo_s'):.1f} s vs {median(t2is, 'base_s'):.1f} s** · " f"all {len(CASES)} examples: **{speedup:.1f}× faster** (one NVIDIA B200, one pipeline call each)" @@ -97,13 +96,11 @@ def render(): interactive=False, show_copy_button=True, scale=2) with gr.Accordion("How these were made", open=False): gr.Markdown( - "- **Turbo:** Qwen-Image-2.1 + the viggle-turbo v0.2.1 LoRA (rank 256), 6 steps on sigmas " + "- **Turbo:** Qwen-Image-2.1 + the viggle-turbo v0.3 LoRA (rank 256), 6 steps on sigmas " "`[1, 0.9375, 0.875, 0.75, 0.5, 0.25]`, no classifier-free guidance, exactly as the Generate tab runs it.\n" - "- **Turbo, 8 steps** (the 5 dense-text examples): sigmas `[1, 0.9375, 0.875, 0.75, 0.625, 0.5, 0.25, 0.125]`. " - "At 6 steps small Latin text can print twice, like a double exposure (decided in the 0.75 → 0.5 step), and small " - "Chinese strokes can get colour blotches (the last 0.25 → 0 step); each added sigma splits one of the two. In our " - "OCR tests 8 steps raise word recall from 0.71 to 0.83 on the academic infographic's caption (16 seeds) and from " - "0.76 to 0.90 on the architecture board's Chinese labels (4 seeds); the base model scores 0.95 on both.\n" + "- **Turbo, 9 steps:** the Generate tab's 9-step setting: 7 turbo steps, then the LoRA is switched off and the base " + "model takes the last two. Finer detail than 6 steps and small text right more often; about 1.4–1.5× the time of " + "6 steps.\n" "- **Base:** Qwen-Image-2.1, 40 steps, default scheduler, `true_cfg_scale=1.0` (the pipeline default).\n" "- **Both:** diffusers `QwenImage21Pipeline` in bf16, seed 42. Input images are encoded at 1024² pixels; the output keeps " "the aspect ratio of Qwen's reference at 2048² pixels for text-to-image and 1536² for editing, in multiples of 32.\n" @@ -118,7 +115,7 @@ def render(): ) def show(case_id, left_key, right_key, fixed="left"): - """Keeps the chosen pair when the new example has it (turbo8 and reference are per-example), else turbo vs base. + """Keeps the chosen pair when the new example has it (reference is per-example), else turbo vs base. If both menus land on the same render, the one the user just changed (`fixed`) wins and the other moves off it.""" case = BY_ID[case_id] keys = [key for _, key in arms(case)] @@ -134,7 +131,7 @@ def render(): def pick(ids, left_key, right_key, evt: gr.SelectData): """A new example keeps the chosen pair, except that a turbo menu moves to that example's best turbo render.""" case = BY_ID[ids[evt.index]] - turbo = lambda key: best_turbo(case) if key in ("turbo", "turbo8") else key # noqa: E731 + turbo = lambda key: best_turbo(case) if key in ("turbo", "turbo9") else key # noqa: E731 return show(case["id"], turbo(left_key), turbo(right_key)) def filter_cases(name): diff --git a/compare/img/case22/turbo.webp b/compare/img/case22/turbo.webp index 54b2a8b4e752ceae161140a928f436e7f16f94bb..4fa045dd40c8c68d5f7136a1381db404fad3578b 100644 --- a/compare/img/case22/turbo.webp +++ b/compare/img/case22/turbo.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0d6c50648a51139797b6b167764a7895df1e88479d23e35f95edf73458dcdbfd -size 651356 +oid sha256:bbea23a86c56728149276f606568709c32d5ed164ea0f64f1968f388f6537bdd +size 615490 diff --git a/compare/img/case22/turbo9.webp b/compare/img/case22/turbo9.webp new file mode 100644 index 0000000000000000000000000000000000000000..eb110c2bec99deef7d7ec44f25e126b09f59c632 --- /dev/null +++ b/compare/img/case22/turbo9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dfae1fd83c0952b8858c110d8d520e8272210bb06687c004f06639aa209c7355 +size 621032 diff --git a/compare/img/case22/turbo9_t.webp b/compare/img/case22/turbo9_t.webp new file mode 100644 index 0000000000000000000000000000000000000000..e031cf7dec1dd24ecd4bd12357e6fdefb8f4e072 Binary files /dev/null and b/compare/img/case22/turbo9_t.webp differ diff --git a/compare/img/case22/turbo_t.webp b/compare/img/case22/turbo_t.webp index d7b506dbdaa0d7fc9623751930d36ec1ea211c57..fd5f74934e459be3097a5ea14a759adc43bd7b38 100644 Binary files a/compare/img/case22/turbo_t.webp and b/compare/img/case22/turbo_t.webp differ diff --git a/compare/img/case23/turbo.webp b/compare/img/case23/turbo.webp index 7b6202cf6bf2897730a4655cc801c5051e0d1e55..9e5c674792c7a23d9fc19d5e9f5569107512aeae 100644 --- a/compare/img/case23/turbo.webp +++ b/compare/img/case23/turbo.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c64077ac77c678fe4889c493f4efedf71deef00a15c9eb77c810448374aedd26 -size 385060 +oid sha256:cf11fe2007c742344d16d6366993bbd723708b1d4011db4b8e838b66207c4d11 +size 360034 diff --git a/compare/img/case23/turbo9.webp b/compare/img/case23/turbo9.webp new file mode 100644 index 0000000000000000000000000000000000000000..21db519617801ac58f084c9f7f3903ebdf5dbf3e --- /dev/null +++ b/compare/img/case23/turbo9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5205cf5680f3d21d1a94125c86f6c12d0b52dbc98675b66f7771b01f2dbbe6c +size 351302 diff --git a/compare/img/case23/turbo9_t.webp b/compare/img/case23/turbo9_t.webp new file mode 100644 index 0000000000000000000000000000000000000000..cb2210fad802b4a919e6ff9f6d6d87457a7d542b Binary files /dev/null and b/compare/img/case23/turbo9_t.webp differ diff --git a/compare/img/case23/turbo_t.webp b/compare/img/case23/turbo_t.webp index aa4cf8149be812e4907d04e10aa3b526cabe6713..e726b8266642626247f9ee7849ea9e0368db0782 100644 Binary files a/compare/img/case23/turbo_t.webp and b/compare/img/case23/turbo_t.webp differ diff --git a/compare/img/case24/turbo.webp b/compare/img/case24/turbo.webp index aa2cf020f728e8d40f5de9c8648550c1e98669ec..b0c07ea6983971f87f41e24738130078b1c07094 100644 --- a/compare/img/case24/turbo.webp +++ b/compare/img/case24/turbo.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5c4f015bfe2e9faa3ba80bb030cfcf10c7f66bec0b5b05434951730dff5b53e7 -size 645836 +oid sha256:def01ccf3f2eacd0fd00c7bb7475b38d8b790b1262e97844eb76b5f52f2d35cd +size 631054 diff --git a/compare/img/case24/turbo9.webp b/compare/img/case24/turbo9.webp new file mode 100644 index 0000000000000000000000000000000000000000..fcb91eccd6a6cbe1b4eb5057a8104112dcf63e15 --- /dev/null +++ b/compare/img/case24/turbo9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0905b82831797a68a996a310ff318b79d08c0d88e370d398a4e094f1eac9be59 +size 608854 diff --git a/compare/img/case24/turbo9_t.webp b/compare/img/case24/turbo9_t.webp new file mode 100644 index 0000000000000000000000000000000000000000..343fa826cabdba43985cb836ae1ae572b3baaa12 Binary files /dev/null and b/compare/img/case24/turbo9_t.webp differ diff --git a/compare/img/case24/turbo_t.webp b/compare/img/case24/turbo_t.webp index b3fdc721f3b93e29f31f235736a0a2aed41dfa14..d932e86412f3fa5cc8bfcf6015fd82837f2a3dae 100644 Binary files a/compare/img/case24/turbo_t.webp and b/compare/img/case24/turbo_t.webp differ diff --git a/compare/img/case25/turbo.webp b/compare/img/case25/turbo.webp index dbeb0d1c8f4a67948badf6020b778251e205d3ee..2551d1dfcfade8879e7144b961eec3a9a42e4220 100644 --- a/compare/img/case25/turbo.webp +++ b/compare/img/case25/turbo.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1056995848f8ded4794a11d81740e267f408f94189b872eb265658e4aeec308c -size 479616 +oid sha256:f92f8de646216d5c4b903982b6d584eb4e1c0d5afc6c19ef9a949f9d682280f7 +size 451296 diff --git a/compare/img/case25/turbo9.webp b/compare/img/case25/turbo9.webp new file mode 100644 index 0000000000000000000000000000000000000000..13b54d50d6b04e06b8470d61a1a16bee8299df50 --- /dev/null +++ b/compare/img/case25/turbo9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83cb6a468501b5103cbea508b664d0739d98b69a56511652b17219b6d49c6377 +size 443472 diff --git a/compare/img/case25/turbo9_t.webp b/compare/img/case25/turbo9_t.webp new file mode 100644 index 0000000000000000000000000000000000000000..05a1615833d7ffda0307c8573114f0007fc3de47 Binary files /dev/null and b/compare/img/case25/turbo9_t.webp differ diff --git a/compare/img/case25/turbo_t.webp b/compare/img/case25/turbo_t.webp index 20eb5f9314a58f3707b0aec1b66641cfbb854c37..b0debf0934919a07eacca65d26f323650e71b9d3 100644 Binary files a/compare/img/case25/turbo_t.webp and b/compare/img/case25/turbo_t.webp differ diff --git a/compare/img/en_1/turbo.webp b/compare/img/en_1/turbo.webp index 3901563c9eb9687ed65499d5567063fabae29807..4bcca96d16ff9914631f3709a0ec0f230cd4a4dc 100644 --- a/compare/img/en_1/turbo.webp +++ b/compare/img/en_1/turbo.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7040d3c57b5134e9ea4a02f3a8f93cf0c9d4695e897d868bb177c602899c51fb -size 1484996 +oid sha256:4b9638846e3fda46442bbcb616fae129e4e6bf3c30e71c8bbdcefb403140a463 +size 1404140 diff --git a/compare/img/en_1/turbo9.webp b/compare/img/en_1/turbo9.webp new file mode 100644 index 0000000000000000000000000000000000000000..31c1d42209631548ee93cb1aa9c5a47e59e546db --- /dev/null +++ b/compare/img/en_1/turbo9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f98b84919da96b1e754139591e8a8fbd6a2b877824a6fe8b5254f3b2403ef3f +size 1355466 diff --git a/compare/img/en_1/turbo9_t.webp b/compare/img/en_1/turbo9_t.webp new file mode 100644 index 0000000000000000000000000000000000000000..c1ef6a2e9733beee393c1a96b7fb4d2c6c1f7d70 Binary files /dev/null and b/compare/img/en_1/turbo9_t.webp differ diff --git a/compare/img/en_1/turbo_t.webp b/compare/img/en_1/turbo_t.webp index cfe12507201aa3d2b63829ebd1b9dc937f72cc7b..a63c994525a728bd931752c742fb691040fa8614 100644 Binary files a/compare/img/en_1/turbo_t.webp and b/compare/img/en_1/turbo_t.webp differ diff --git a/compare/img/en_2/turbo.webp b/compare/img/en_2/turbo.webp index a63d4d2463f77a4b3d8d6b5a5322fc621b5c74b7..92dc980a9df5956d1fe0ea882c2c5f300557d2a9 100644 --- a/compare/img/en_2/turbo.webp +++ b/compare/img/en_2/turbo.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9060352daffa6e6b1d74d55e8c0cd652d5238b82f725a17d76be2033d0f24e7d -size 1195048 +oid sha256:ad1af8e2a0b07d673775f91543a68e24b1066a7c23ea416691c9feabeecb8df3 +size 1060640 diff --git a/compare/img/en_2/turbo9.webp b/compare/img/en_2/turbo9.webp new file mode 100644 index 0000000000000000000000000000000000000000..76157deb33f3993f096c3eb16867211348c710cd --- /dev/null +++ b/compare/img/en_2/turbo9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72a75cee1889b2ad04c46925fcb657f12c1cfd07c1c04edee9ea06faafa467b0 +size 991918 diff --git a/compare/img/en_2/turbo9_t.webp b/compare/img/en_2/turbo9_t.webp new file mode 100644 index 0000000000000000000000000000000000000000..b900d6d67fc7f18429c15522b6994b72268a7c0b Binary files /dev/null and b/compare/img/en_2/turbo9_t.webp differ diff --git a/compare/img/en_2/turbo_t.webp b/compare/img/en_2/turbo_t.webp index 8ad905533f0f596e18047706aa0ddb25d0972e59..f2c5614b1a92d704cb8d102cc786d68ac08e447a 100644 Binary files a/compare/img/en_2/turbo_t.webp and b/compare/img/en_2/turbo_t.webp differ diff --git a/compare/img/en_3/turbo.webp b/compare/img/en_3/turbo.webp index 8769816e6d45be92bd517b0bc5f7cd20b3269121..8b7bca537b9885fe740d7c917acfe78fc1540b3c 100644 --- a/compare/img/en_3/turbo.webp +++ b/compare/img/en_3/turbo.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bae7daaf8048238f8bebefcdc208f2cbd65a8ebddc1ce9d2a40e20e3fe17abb2 -size 1203122 +oid sha256:35279e95e1a43b3591e4d47245130ab695401a97b60681fea399987e49c04de1 +size 1116636 diff --git a/compare/img/en_3/turbo9.webp b/compare/img/en_3/turbo9.webp new file mode 100644 index 0000000000000000000000000000000000000000..18b031c1ecc965544b429e5563b527aca9263dd7 --- /dev/null +++ b/compare/img/en_3/turbo9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:736c3f7e019ee5b4be4f6a9f709518d52c872dec42359a913b1fddd57432814a +size 1081970 diff --git a/compare/img/en_3/turbo9_t.webp b/compare/img/en_3/turbo9_t.webp new file mode 100644 index 0000000000000000000000000000000000000000..746200dcaaf8e780980af89b88a37c3f6ae3f4d4 --- /dev/null +++ b/compare/img/en_3/turbo9_t.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74caafdf76244fa167e34697ffd002446996d2cf7c3ba3f73004781a07cd6da4 +size 122056 diff --git a/compare/img/en_3/turbo_t.webp b/compare/img/en_3/turbo_t.webp index e6f08705698c2013aa46c23e7ed615e1b01b01d4..ccb92c1e93652b5a594fc4cc3e68a583f21979e6 100644 --- a/compare/img/en_3/turbo_t.webp +++ b/compare/img/en_3/turbo_t.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b4f9bd2e559cfa124e7ff86c4ceb73a2d3e7a886425b320def48735eab62a8d4 -size 141036 +oid sha256:d9fbe18ed6ed0157671ddc29e9d98a738fed1a9a50f8190f84e42a6ab5bbfbab +size 123064 diff --git a/compare/img/en_4/turbo.webp b/compare/img/en_4/turbo.webp index 7e1cba38fa760c7b745c71477af0b7d82c4fb001..2933b0a3bc3f1fcf89e202f2d0f9f01039653b0e 100644 --- a/compare/img/en_4/turbo.webp +++ b/compare/img/en_4/turbo.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ad50eec075a10cdc559ba2621f24f8ecdc37a6b0972955949c3fbddb713a6b9f -size 1299024 +oid sha256:10c79cfd7e1f6ad6ad329b7f398c6828b3378715a695e8f8a22417851d9c9460 +size 1218410 diff --git a/compare/img/en_4/turbo9.webp b/compare/img/en_4/turbo9.webp new file mode 100644 index 0000000000000000000000000000000000000000..41d3e4829fe9e09f6770997c6e5f4fe2b71c2b48 --- /dev/null +++ b/compare/img/en_4/turbo9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0aaafde6b3a841d64d0a940893d7ef17f50858d1ce0705fbd19b76101be62a15 +size 1216410 diff --git a/compare/img/en_4/turbo9_t.webp b/compare/img/en_4/turbo9_t.webp new file mode 100644 index 0000000000000000000000000000000000000000..b8e9909c980dbe43c29f42a3a3a40c7824563985 --- /dev/null +++ b/compare/img/en_4/turbo9_t.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac754f05fa504602420d0e21368292d0b10dc7539da973e7d5e4d3c2d65733a7 +size 115318 diff --git a/compare/img/en_4/turbo_t.webp b/compare/img/en_4/turbo_t.webp index 48b2f7d9d0f8ad17a0a8e10276953fd77a47f8f3..e43b214264f6edc5ffea0efd0683c13501f8fe71 100644 --- a/compare/img/en_4/turbo_t.webp +++ b/compare/img/en_4/turbo_t.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ef94a7816c25420c0051690bf8de7f94e9f16c52476ed022d4d7bf27e3e6f0b1 -size 134406 +oid sha256:72e1524dac734aee9f8b17afde2420dbd7984b15981a9c5f28c4b40d8d366508 +size 106220 diff --git a/compare/img/zh_1/turbo.webp b/compare/img/zh_1/turbo.webp index efda989c387f71e515be35e7d6ec20aba0332460..44f3ee854130cd750aa8eed1a1db081907a070ba 100644 --- a/compare/img/zh_1/turbo.webp +++ b/compare/img/zh_1/turbo.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:13032a8edad7ae263080323ad288dc5dfaff560988ef6fa74523635d640ab2b8 -size 1107144 +oid sha256:31764522bd339d25273a32ce9b953cbaea6d6aff8823e36347377511c4df4563 +size 1019030 diff --git a/compare/img/zh_1/turbo9.webp b/compare/img/zh_1/turbo9.webp new file mode 100644 index 0000000000000000000000000000000000000000..769f3e98e9c859018453e8b9975ca3cafc8aea0e --- /dev/null +++ b/compare/img/zh_1/turbo9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7983cbe46734bdb8893b8dafa0c88efc3c7eb4630d9a9f1120b62b7e52be48ac +size 976886 diff --git a/compare/img/zh_1/turbo9_t.webp b/compare/img/zh_1/turbo9_t.webp new file mode 100644 index 0000000000000000000000000000000000000000..3cc955b28ffcdf51c6583747bfeb3f4277165d32 Binary files /dev/null and b/compare/img/zh_1/turbo9_t.webp differ diff --git a/compare/img/zh_1/turbo_t.webp b/compare/img/zh_1/turbo_t.webp index 59e426bda3b52a8a6ffe9ccea198bf23794c0172..6eaf647a8b09787bc73b924af676342a1746101a 100644 --- a/compare/img/zh_1/turbo_t.webp +++ b/compare/img/zh_1/turbo_t.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f5d051b9de0abe2b9dad2fb48d9f6138c38a27b33e86121cc5eb8394a670adfc -size 113456 +oid sha256:23c9f6c9b5ba9354a8c70990bbebb17aa3dabe0ae7f0c7b88012c0e523f71d79 +size 95144 diff --git a/compare/img/zh_7/turbo.webp b/compare/img/zh_7/turbo.webp index 5452ad929cc9695617c28f1a5033af25c4e1cc17..b59e3c068d7339b86a71163591ffe1e9721f1f20 100644 --- a/compare/img/zh_7/turbo.webp +++ b/compare/img/zh_7/turbo.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6b5617e581af1de2cb5a4336e650cd5c6554989ef9460a5ed8f38239b932beea -size 1636606 +oid sha256:eb4ff9fbd20b2c02003b19fd6286a827be5425b376832dce604358cd692c532a +size 1555154 diff --git a/compare/img/zh_7/turbo9.webp b/compare/img/zh_7/turbo9.webp new file mode 100644 index 0000000000000000000000000000000000000000..26c84d7414f55ecdee30723d692eae385780b47d --- /dev/null +++ b/compare/img/zh_7/turbo9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25369b94652f5c6640f93105cad4f98ff1437446f4279efb1b7462097af95001 +size 1541340 diff --git a/compare/img/zh_7/turbo9_t.webp b/compare/img/zh_7/turbo9_t.webp new file mode 100644 index 0000000000000000000000000000000000000000..d4ed95ddc44c302cabe618696250c5b14a7758ea Binary files /dev/null and b/compare/img/zh_7/turbo9_t.webp differ diff --git a/compare/img/zh_7/turbo_t.webp b/compare/img/zh_7/turbo_t.webp index 4ca5ca3eb6d861588b0d5bb00147adad747779ce..cbc969a33c283712bcf29519873f803fa3b19eaf 100644 --- a/compare/img/zh_7/turbo_t.webp +++ b/compare/img/zh_7/turbo_t.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2d622ea77be9582fcb4febc423540a49492657e99ae8e5b02d9a42340acab9ef -size 105940 +oid sha256:b4f22f507ece731d90e077b7664453e4caea173494de0174aa5eed7920463c96 +size 85622 diff --git a/examples/edit_3ref_klein.png b/examples/edit_3ref_klein.png index fb4ae658603b591cd8ae3dd5afe3335d6a833c26..643d219f1a344ff0e7ed0a4e6174205464445af4 100644 --- a/examples/edit_3ref_klein.png +++ b/examples/edit_3ref_klein.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:69eed69031bad070ec2d03c97fb8cc8ff8668f262c16ac492fa734d796f0d8be -size 1692552 +oid sha256:8b0f6f4a30204d78cfde29459153b080eb5a29cc453d8807444bf92eb6506f72 +size 1676030 diff --git a/examples/manifest.json b/examples/manifest.json index d3199f4e28d737eec596e044ca282d2ecece5710..abfd5a9e667f241a76d6eade26577649e26a8f09 100644 --- a/examples/manifest.json +++ b/examples/manifest.json @@ -7,7 +7,7 @@ null ], "result": "qwen_storyboard.png", - "info": "Pre-rendered example · seed `42` · 2048×1152 · 6 steps · v0.2.1 LoRA r256 · prompt sent as written (enhancement off)", + "info": "Pre-rendered example · seed `42` · 2048×1152 · 6 steps · v0.3 LoRA r256 · prompt sent as written (enhancement off)", "used_prompt": "生成一张无缝的分镜插画,**现代真实偶像剧风格**(电影感写实摄影,柔和自然光与暖色调,浅景深虚化,韩系都市偶像剧质感,画面精致高级)。\n\n【版面(必须严格遵守)】\n- 恰好 6 个分镜格,**等宽**,排成**单独一横排(1 行 6 列)**;不是网格、不是两行,绝不要把任何一格再拆成上下两块。\n- 每格都是**竖长条矩形**(高明显大于宽,近似 9:16 竖条)。\n- 从左到右依次编号 1、2、3、4、5、6,每格左上角一个圆形数字徽标;**每个数字只出现一次,不重复、不跳号、不缺号。**\n- **每一格里都必须画出角色本人**在做该格的动作,角色占该格画面主体、完整清晰(半身或全身,约占该格高度 2/3 以上);**严禁出现只有背景、没有人物的空格。**\n- 6 格之间画风、光影氛围、人物一致。输出为一张扁平整图,6 格并排合并,不要输出多张分离文件。\n\n【角色】以输入参考图(含面部特写与正/侧/背三视全身立绘)为角色设计基准:现代年轻女性,棕色波浪长发带空气刘海,妆容清透,穿粉色方领修身长袖针织上衣、棕色灯芯绒过膝半裙配棕色皮带、棕色皮质机车靴。每一格里都是同一个人——面容、发型、服饰、身材比例保持一致,只改变姿势、表情、动作与所处场景;参考图仅定义外观,不要照搬其站姿。把角色自然地融入各自的真实场景中,透视比例正确、光影贴合。\n\n【逐格场景与内容】\n第1格:清晨阳光洒入的现代简约公寓,女孩站在落地窗边,双手捧着马克杯,望向窗外的城市天际线,神情恬静。\n第2格:白天繁华的都市街道人行道,两旁是时尚店铺橱窗和梧桐树,女孩背着单肩包边走边微微回头,浅浅微笑。\n第3格:文艺清新的咖啡馆靠窗卡座,女孩坐着低头看手机,嘴角带笑,窗外光线柔和,桌上放着一杯拿铁。\n第4格:暖色调的独立书店书架走廊,女孩踮脚从书架上抽出一本书,侧脸专注,光线温柔。\n第5格:傍晚金色晚霞下的城市人行天桥,女孩倚着栏杆回眸,背景是虚化的车流与高楼,暖光洒在脸上。\n第6格:夜晚霓虹灯光的街角,女孩仰头微笑看向前方,暖黄路灯与散景光斑环绕,都市夜景氛围。", "steps": 6, "size_label": "16:9 · 2048×1152 (1536² area)", @@ -22,7 +22,7 @@ null ], "result": "qwen_rgba_bride.png", - "info": "Pre-rendered example · seed `42` · 1664×2496 · 6 steps · v0.2.1 LoRA r256 · prompt sent as written (enhancement off)", + "info": "Pre-rendered example · seed `42` · 1664×2496 · 6 steps · v0.3 LoRA r256 · prompt sent as written (enhancement off)", "used_prompt": "这是一张带有透明度的RGBA格式图像,呈现一位身着华丽婚纱的动漫风格女性角色。画面中无任何可识别的文字信息。角色为年轻女性,拥有白皙肌肤、红润脸颊与明亮红色眼眸,面带温柔微笑,表情甜美而幸福。她头戴精致银色皇冠与白色蕾丝头纱,金色长发自然垂落肩头,发丝柔顺且富有光泽。身穿多层荷叶边设计的粉白渐变抹胸婚纱,裙摆蓬松飘逸,层次丰富,材质轻盈如花瓣般展开;胸前手持一束由白色玫瑰与绿色叶片组成的捧花,花束饱满,绿叶点缀其间,增添清新感。双腿修长,穿着透明薄纱质感的过膝袜与饰有玫瑰图案的白色高跟鞋,姿态优雅站立,双手轻握捧花置于腹前。整体构图为全身正面视角,色彩柔和梦幻,以粉、白、绿为主色调,光影细腻,具有典型的日系二次元插画美学风格,适用于游戏立绘、视觉小说或数字艺术收藏等场景。 该图像具有alpha通道,背景是透明的。", "steps": 6, "size_label": "2:3 · 1664×2496 (2048² area)", @@ -37,7 +37,7 @@ null ], "result": "t2i_style_file.png", - "info": "Pre-rendered example · seed `42` · 2720×1536 · 6 steps · v0.2.1 LoRA r256 · prompt sent as written (enhancement off)", + "info": "Pre-rendered example · seed `42` · 2720×1536 · 6 steps · v0.3 LoRA r256 · prompt sent as written (enhancement off)", "used_prompt": "An elegant fashion-magazine style infographic, landscape 16:9: a character style file for an original fictional heroine named Mira Solenne. Warm ivory paper background with a faint watercolor texture, thin champagne-gold hairlines dividing the panels, generous white space, refined high-contrast serif headings and small clean sans-serif labels. Palette: midnight navy, pearl white, silver grey, dusty lilac and champagne gold.\n\nTop banner: a large serif title \"MOONLIGHT SILK\" on the left with a short gold rule beneath it, and on the right in small letter-spaced caps \"VOL.05 · STYLE FILE\".\n\nCenter column (the largest area): a full-body watercolor and ink fashion illustration of Mira Solenne, a young woman with a sleek silver-lilac bob, in a flowing midnight-navy silk slip dress under a cropped pearl-white jacket, silver strappy heels, standing in a graceful pose, a soft lilac watercolor wash and a pale crescent moon behind her. Below her feet, her name in a small italic serif: \"Mira Solenne\".\n\nLeft column, top: a panel headed \"PROFILE\" with four lines: \"Style: Modern Romantic\", \"Height: 172 cm\", \"Colors: Navy & Pearl\", \"Mood: Calm & Dreamy\".\nLeft column, bottom: a panel headed \"DETAILS\" with four small line-art icons in a 2×2 grid, captioned \"Pearl Earrings\", \"Silk Scarf\", \"Moon Clutch\", \"Silver Heels\".\n\nRight column, top: a panel headed \"PALETTE\" with a row of six round color swatches captioned \"Midnight\", \"Pearl\", \"Silver\", \"Lilac\", \"Gold\", \"Ink\".\nRight column, middle: a panel headed \"STYLE RADAR\" with a pentagon radar chart filled in translucent lilac, five axes labeled \"Elegance 92%\", \"Romance 88%\", \"Comfort 76%\", \"Minimal 70%\", \"Edge 64%\".\nRight column, bottom: a panel headed \"3 LOOKS\" with three small watercolor sketches of her: in a navy gown captioned \"Gala Night\", in a white trench coat captioned \"City Walk\", in a lilac dress and straw hat captioned \"Sunday Brunch\".\n\nBottom strip across the full width: five rounded outline keyword chips with gold borders, \"Satin\", \"Moonlit\", \"Soft Tailoring\", \"Quiet Luxury\", \"Night Garden\".", "steps": 6, "size_label": "16:9 · 2720×1536 (2048² area)", @@ -52,7 +52,7 @@ null ], "result": "qwen_poster.png", - "info": "Pre-rendered example · seed `42` · 1664×2496 · 6 steps · v0.2.1 LoRA r256 · prompt sent as written (enhancement off)", + "info": "Pre-rendered example · seed `42` · 1664×2496 · 6 steps · v0.3 LoRA r256 · prompt sent as written (enhancement off)", "used_prompt": "Design a refined travel poster for a fictional night train. Render the headline exactly as \"THE MIDNIGHT EXPRESS\" and the subtitle \"A journey under the stars\". A silver train curves through dark blue mountains beneath a crescent moon. Art Deco geometry, ivory and gold lettering, clear typographic hierarchy, generous margins, print-ready composition.", "steps": 6, "size_label": "2:3 · 1664×2496 (2048² area)", @@ -67,7 +67,7 @@ "bird.webp" ], "result": "edit_3ref_klein.png", - "info": "Pre-rendered example · seed `42` · 928×1152 · 6 steps · v0.2.1 LoRA r256 · prompt enhanced", + "info": "Pre-rendered example · seed `42` · 928×1152 · 6 steps · v0.3 LoRA r256 · prompt enhanced", "used_prompt": "Compose a scene where the person from , standing beside the vintage brown car, is gently petting the fluffy cat from that is perched on a stone windowsill with green shutters, while the bird from , with a red crown and long beak, stands next to them, all under warm cinematic lighting with a shallow depth of field focusing on the trio, keeping the background and subjects' identities from the input images unchanged.", "steps": 6, "size_label": "Auto · match the last reference (1024² area)", @@ -82,7 +82,7 @@ null ], "result": "qwen_mask_edit.png", - "info": "Pre-rendered example · seed `42` · 1248×1888 · 6 steps · v0.2.1 LoRA r256 · prompt sent as written (enhancement off)", + "info": "Pre-rendered example · seed `42` · 1248×1888 · 6 steps · v0.3 LoRA r256 · prompt sent as written (enhancement off)", "used_prompt": "图中画圈标注的地方需要补上一名骑坐姿态的西部牛仔男子。他头戴棕色宽檐牛仔帽,蓄着浓密的络腮胡,脸侧向画面左方;上身穿棕色帆布夹克,里面搭配深蓝色牛仔衬衫,颈间系着浅棕色围巾;下身穿着带流苏的棕色皮质护腿,脚穿皮靴踩进马镫,一只手搭在鞍部附近,整体呈现自然的骑乘状态。", "steps": 6, "size_label": "2:3 · 1248×1888 (1536² area)", @@ -97,7 +97,7 @@ null ], "result": "t2i_launch.png", - "info": "Pre-rendered example · seed `3` · 2496×1664 · 8 steps · v0.2.1 LoRA r256 · prompt sent as written (enhancement off)", + "info": "Pre-rendered example · seed `3` · 2496×1664 · 8 steps · v0.3 LoRA r256 · prompt sent as written (enhancement off)", "used_prompt": "Create a premium, minimalist launch graphic for an AI image model, designed for a Twitter/X announcement.\n\nAspect ratio: 16:9.\nStyle: elegant, high-end, modern AI product launch visual. Clean Apple / NVIDIA / premium creative-software aesthetic. Dark, cinematic, sophisticated, not flashy or cluttered.\n\nBACKGROUND\n- Deep black to charcoal gradient background.\n- Very subtle blue and violet ambient glow.\n- Soft cinematic lighting, slight glossy reflections near the bottom.\n- Large areas of negative space.\n- No unnecessary particles, grids, icons, decorative UI, or busy textures.\n\nTOP-LEFT TYPOGRAPHY\n\nMain title:\n“Qwen-Image-2.1 ❤️ Viggle Turbo”\n\n- Large bold geometric sans-serif.\n- Clean Swiss-style typography.\n- Bright soft-white text.\n- Red heart between the two model names.\n- Precise kerning and professional spacing.\n- Keep the title on one line.\n- Position around 4–5% from the left and 8–10% from the top.\n\nDirectly underneath, smaller subtitle:\n“DMD-distilled · Generate & Edit”\n\n- Thin or regular sans-serif.\n- Around 30–35% of the main title font size.\n- Soft light-gray / off-white.\n- Generous letter spacing.\n- Minimal and understated.\n\nCENTER HERO MESSAGE\n\nLarge dominant typography:\n\n“6-step”\n“generation”\n\non two lines.\n\n- “6-step” should be extremely large.\n- “generation” slightly smaller but still bold.\n- Heavy geometric sans-serif.\n- White / very subtle cool-white gradient.\n- Tight line spacing.\n- Perfectly clean typography.\n- Position slightly above the vertical center.\n- The text should be the strongest visual element in the design.\n- No exaggerated 3D text, extrusion, chrome effects, or heavy shadows.\n- Only a very subtle soft glow.\n\nVISUAL ELEMENT\n\nCreate a single elegant curved ribbon of generated images flowing across the lower half of the composition.\n\nThe ribbon should:\n- Start from the lower-left foreground.\n- Curve smoothly toward the center-right.\n- Continue upward toward the upper-right background.\n- Feel like a sophisticated cinematic film strip or flowing image-generation sequence.\n- Use approximately 5–7 image panels only.\n- Avoid a dense collage.\n\nEach panel:\n- Rounded rectangle.\n- Thin subtle border.\n- Premium glossy display appearance.\n- Slight perspective distortion following the curve.\n- Gradually decrease in size toward the background.\n- Use realistic generated landscape photography:\n • alpine lake\n • mountain valley\n • waterfall\n • dramatic mountain peaks\n • coastal sunset\n- Rich but natural colors.\n- Foreground panels sharp, distant panels progressively softer / slightly blurred.\n- Strong depth-of-field.\n\nThe ribbon itself should have an extremely subtle luminous edge:\n- cyan / electric blue on the left\n- transitioning gently toward violet / magenta on the right\n\nKeep the glow restrained and premium.\nDo not make it look like cyberpunk neon.\n\nLIGHTING\n\nAdd one very thin horizontal blue-to-violet light flare passing subtly behind the “6-step” text.\n\nUse soft reflected blue/violet light underneath the image ribbon.\n\nLighting should feel cinematic and expensive, not game-like.\n\nBOTTOM-RIGHT\n\nSmall footer:\n“Generate with viggle-turbo”\n\n- Small clean sans-serif.\n- White / light gray.\n- Bottom-right aligned.\n- Approximately 5% from the right and 6–8% from the bottom.\n- Lots of breathing room.\n- Do not make it prominent.\n\nOVERALL COMPOSITION\n\nThe visual hierarchy should clearly be:\n\n1. “6-step generation”\n2. “Qwen-Image-2.1 ❤️ Viggle Turbo”\n3. flowing generated-image ribbon\n4. “DMD-distilled · Generate & Edit”\n5. small “Generate with viggle-turbo.” footer\n\nThe graphic should immediately communicate:\nfast generation, image generation, premium AI model, six-step inference.\n\nOverall aesthetic:\nminimal, elegant, expensive, technically sophisticated, cinematic, polished, restrained, premium AI launch campaign.\n\nAvoid:\n- excessive neon\n- cyberpunk look\n- too many thumbnails\n- busy collage layouts\n- random icons\n- fake UI elements\n- gradients inside every object\n- excessive lens flares\n- heavy shadows\n- 3D metallic typography\n- cartoon imagery\n- excessive text\n- logos other than the specified text\n- watermark\n- spelling errors\n- distorted letters\n- duplicated text", "steps": 8, "size_label": "3:2 · 2496×1664 (2048² area)", @@ -112,7 +112,7 @@ null ], "result": "qwen_perfume.png", - "info": "Pre-rendered example · seed `42` · 2496×1664 · 6 steps · v0.2.1 LoRA r256 · prompt sent as written (enhancement off)", + "info": "Pre-rendered example · seed `42` · 2496×1664 · 6 steps · v0.3 LoRA r256 · prompt sent as written (enhancement off)", "used_prompt": "Photograph a translucent emerald perfume bottle on pale limestone beside a shallow pool. Rippling sunlight reflects through the glass onto the stone. A single olive branch frames the upper left corner. Luxury product photography, realistic refraction, crisp bottle edges, soft shadows, uncluttered composition, no logo or text.", "steps": 6, "size_label": "3:2 · 2496×1664 (2048² area)", diff --git a/examples/qwen_mask_edit.png b/examples/qwen_mask_edit.png index 02764d1d162288fc29cd9dd736cf4ffe13d19763..39ed1b3233ddc7c43e278630644e651d08f5c0a9 100644 --- a/examples/qwen_mask_edit.png +++ b/examples/qwen_mask_edit.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b891a2346ade6f0f7e6a156bb6e2061a6a2a5d575d83e6b7d63593173abbba98 -size 3934264 +oid sha256:29d2e68b2f7702381d060b3b2d2ed63926bd33c30f6352b9732c885a47c8392d +size 3880345 diff --git a/examples/qwen_perfume.png b/examples/qwen_perfume.png index 8982fc74b6ab47090e9879eed1acf2507df48fb3..42cc1c71d8bf6a2c7c58f68b6f059efcac7d2e3b 100644 --- a/examples/qwen_perfume.png +++ b/examples/qwen_perfume.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:45c396fca8d2385d45faa7a366d2f9ca53dd0bd84af66712595d9064686a63ac -size 7492377 +oid sha256:19622eaa3816fa3e1c0eebcb4a2db0a654160d49faf711185e20f9a367b2db1d +size 7247546 diff --git a/examples/qwen_poster.png b/examples/qwen_poster.png index 822bfb903649cfef8bc42cdab2c077910bb2eb7a..cc6847cc6303128b9a5190c8cfc28e4a018e0e3b 100644 --- a/examples/qwen_poster.png +++ b/examples/qwen_poster.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5cecdadb435bf131325448ec3a4e8a976d9b532bf501f751bca88dfc617c3a5e -size 6949670 +oid sha256:eb3aed2cb9d8b61278eecaac33d4944900d13022bc5301aa77c609e7a914d3e1 +size 6611293 diff --git a/examples/qwen_rgba_bride.png b/examples/qwen_rgba_bride.png index 2404bd472cefd75861fc8628964b9ef4592816aa..59efe7075bc418e2dd6f6d62a0f121fed4f50417 100644 --- a/examples/qwen_rgba_bride.png +++ b/examples/qwen_rgba_bride.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ad29974f0cd8f75ab4840c9b2aa353a1ef84adf66dc412c6c85870957808e483 -size 3761506 +oid sha256:7522b38112e668e041b9836805c76741e067737b8a0b253ae316866d52e1958f +size 4821940 diff --git a/examples/qwen_storyboard.png b/examples/qwen_storyboard.png index 702611019a1fb0e570ab8a2201a444c2c9ae3588..cd35edf483d18328eaa891d93438a9c3ef5a081a 100644 --- a/examples/qwen_storyboard.png +++ b/examples/qwen_storyboard.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4a80c642a429ac78d81134c251be8bf7c5afe113bfc7b2a6042d2f2577aa25ed -size 3853005 +oid sha256:a66d713abfa77da0a3697f731cd50dede559402cb1b7abd7f9b39769c074f992 +size 3729787 diff --git a/examples/t2i_launch.png b/examples/t2i_launch.png index 91af2180971779a62cd69710fb1f746e456b74cb..9002eb7757cc81ce9d2b2cd737fd3512294cd671 100644 --- a/examples/t2i_launch.png +++ b/examples/t2i_launch.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:94246a34802366a17bfd7991f7583ab9efa1784f6181f0ecc14403916b50be01 -size 5147410 +oid sha256:ce45b749de0aaf21f773567643a844d8a1682620a34ad1844571d6c4532952eb +size 5016394 diff --git a/examples/t2i_style_file.png b/examples/t2i_style_file.png index 2c66d1e10194da562b4ab79b6a4b1479c416eeb6..ade6f6c290b99e95270a018bb1ad5f58b366f61e 100644 --- a/examples/t2i_style_file.png +++ b/examples/t2i_style_file.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b9f11af7402ef9fe5641d72d441e9d8296dbd765a02dc08afebe9233d265ec53 -size 5565713 +oid sha256:38072a55ee09888246e32677c217d7b176b6c5bf29febdd317ae0dbc4d8f1f83 +size 5284314