
Flux.1 ãçéã«ïŒãWaveSpeed ã§é«éçæïŒãç»è³ªã¯ã©ããªãïŒ

ã¯ããã«
ããã«ã¡ã¯ãããŸãŸ / Easygoing ã§ãã
ä»åã¯ãç»åçæã®é«éåæè¡ãWaveSpeed ãæ€èšŒããŸãã
WaveSpeed ã£ãŠäœïŒ
WaveSpeed ã¯ã2025.1.8 ã«å ¬éããã ç»åçæãåçã«é«éå ããæè¡ã§ãã
WaveSpeed 㯠ComfyUI ã®ã«ã¹ã¿ã ããŒãã®åœ¢ã§æäŸãããŠããŠãComfyUI ã§ã®ã¿å©çšããããšãã§ããŸãã
ç»åçæAI ã® Flux.1 / SD 3.5 / SDXL ã§å©çšã§ããã»ããåç»çæAI ã® HunyuanVideo ãš LTXV ã«ã察å¿ããŠããŸãã
WaveSpeed ã®ä»çµã¿
WaveSpeed ã¯æ¬¡ã®ïŒã€ã®ä»çµã¿ã§é«éåãå®çŸããŠããŸãã
Dynamic Caching (First Block Cache)
Enhanced torch.compile
ãã®ãã¡ãDynamic Caching (First Block Cache) ã¯Â ã«ã¹ã¿ã ããŒããïŒã€Â ã€ã³ã¹ããŒã«ããã ãã§æè»œã«å°å ¥ã§ããã®ã§ãä»åã¯ãã®Â Dynamic Caching ã«ã€ããŠæ€èšŒããŠã¿ãŸãã
Dynamic Caching ã¯ã©ã®ããã«åãïŒ
Dynamic Caching ã®ä»çµã¿ã¯é£ããã®ã§ããœãŒã¹ã³ãŒãã ChatGPT ã«èªãã§ããã解説ããŠããããŸãããã
Dynamic Cache ãšã¯
æšè«ã®äžéçµæããã£ãã·ã¥ïŒäžæä¿åïŒããåå©çšããããšã§ãèšç®æéãççž®ããä»çµã¿ã§ãã
ä»çµã¿
1åç®ã®æšè«ã§èšç®ãããçµæãä¿åããŸãã
2åç®ä»¥éãåãæ¡ä»¶äžã§ãã£ãã·ã¥ãããçµæãåå©çšããŠèšç®ãã¹ãããããŸãã
广
èšç®æéãå€§å¹ ã«ççž®ã§ããŸãã
åãããã³ãããèšå®ã§ã®è€æ°åã®æšè«ã«ç¹ã«æå¹ã§ãã
çšé
é«éåãå¿ èŠãªå Žåããç¹°ãè¿ãæšè«ãå¹çåãããå Žåã«é©ããŠããŸãã
ãŸãšãããšãæŒç®ã®çµæãååãšããŸãå€ãããªããšäºæ³ããããšããååã®çµæããã®ãŸãŸäœ¿ã£ãŠæŒç®ãã¹ããã ããæè¡ã«ãªããŸãã

RDTïŒResidual Diff ThresholdïŒããã¢ïŒ
Dynamic Caching ã䜿ã£ãŠãã©ããããã®èª€å·®ãŸã§æŒç®ãã¹ãããããã®ããæ±ºããã®ããRDTïŒResidual Diff ThresholdïŒã§ãã
RDTïŒResidual Diff ThresholdïŒïŒãæ®å·®å·®åã®éŸå€ã
Residual: æ®å·®ïŒæšè«ãèšç®çµæã«ãããŠãå®éã®å€ãšäºæž¬å€ããã£ãã·ã¥å€ãšã®èª€å·®ïŒ
Diff: å·®åïŒ2ã€ã®å€ã®éãïŒ
Threshold: éŸå€ïŒç¹å®ã®æ¡ä»¶ã倿ããããã®å¢çå€ïŒ
RDT ã 0.1 ã®ãšã㯠10% ã®èª€å·®ãŸã§æŒç®ãã¹ããã ããRDT ã 1.0 ã®ãšãã¯å šãŠã®æŒç®ãã¹ããã ããŸãã
ããã§ã¯ããããã RDT ãšçææéã®é¢ä¿ã«ã€ããŠèŠãŠãããŸãã
Dynamic Cache ã§ããã ãæ©ããªãïŒ
ãŸãæåã«ãæ€èšŒçµæã®ã°ã©ããã瀺ãããŸãã

ã°ã©ãã®äžã®æ°å㯠RDT ã衚ããŠããŸãã
ã°ã©ãã®æšªè»žãå®éã®ç»åã«çæã«ããã£ãæéã§ãRDT ãé«ãèšå®ããŠå·Šã«è¡ãã»ã©çææé㯠åçã«é«éå ããŠããŸãã
äžæ¹ã§ãã°ã©ãã®çžŠè»žã¯ãªãªãžãã«ç»åãšã®é¡äŒŒåºŠã MAE ãš SSIM ã§è¡šããŠããŠãäžã«è¡ãã»ã©Â ãªãªãžãã«ããé¢ããŠç»è³ªãäœäžÂ ããŠããããšã瀺ããŠãŸãã
MAE ãš SSIM ã«ã€ããŠã¯ãã¡ã
ã°ã©ãã¯å šäœãšããŠå·ŠåŽãäžãã£ãã°ã©ãã«ãªã£ãŠããŠãé床ãéããªãã»ã©ç»è³ªãäœäž ããŠããããšãåãããŸãã
å®éã®ç»åã§æ¯èŒïŒ
ããã§ã¯ãå®éã®ç»åãæ¯èŒããŠã¿ãŸãã
ãŸãããã£ãã·ã¥ãå©çšããã«çæãããªãªãžãã«ã®ã€ã©ã¹ãã¯ãã¡ãã§ãã
çææ¡ä»¶
euler
normal
30 steps

ãã®ç»åãããšã«ããã£ãã·ã¥ãå©çšãããšã€ã©ã¹ããã©ããããå£åãããæ¯èŒããŸãã
次ãã瀺ãå³åŽã®é»ãç»åã¯ããªãªãžãã«ãšæ¯èŒãããšãã®ã«ã©ãŒã®å·®åãããã«ãªããŸãã
RDT: 0.04

RDT ã 0.04 ã«èšå®ããã€ã©ã¹ãã§ããå·®åãããã§ã¯å šäœçã«çްããªéãããããå°ãå£åãå§ãŸã£ãŠããŸãã
RDT: 0.06

RDT ã 0.06 ã«èšå®ããã€ã©ã¹ãã§ããå ã»ã©ãšæ¯ã¹ãŠããå°ãå£åãé²ãã§ããŸãã
RDT: 0.08

RDT ã 0.08 ã«èšå®ããã€ã©ã¹ãã§ãããªãªãžãã«ãšæ¯ã¹ããšã€ã©ã¹ãå šäœã«ããªãå£åãåºãŠããŸãã
æåã®å°é¢ã®æåãããªãçç¥ãããŠããŠãããã«é æ¯ãèŠããšå šäœçã«ãŒãããããŠããŠãå šäœçãªãã€ãºã®é€å»ãè¶³ããŠããªãÂ ç¶æ ã§ãã
ä»åã®ã€ã©ã¹ãã¯çž®å°ããŠæ²èŒããŠããã®ã§å°ããããã«ããã§ããããªãªãžãã«ã®è§£å床ïŒ1440 x 1440ïŒã§èŠããšãããéããããããªããŠããŸãã
RDT: 0.16

RDT ã 0.16 ã«èšå®ããã€ã©ã¹ãã§ããå šäœçã«ããã«ãŒãããŠããŠãæšè«ãè¶³ãã ãŸã æªå®æã®ã€ã©ã¹ã ã§ãã
枬å®çµæïŒ
ããã§ã¯ã枬å®çµæãã°ã©ããšè¡šã§èŠãŠã¿ãŸãã


å ã®ã€ã©ã¹ããšæ¯èŒãããšããäžã€ã®ç®å®ãšã㊠SSIM ã®é¡äŒŒåºŠã 95% ãåããšæ¯èŒããã°éããåããã¬ãã«ã85% ãåããšæããã«å£åãèªèã§ããã¬ãã«ã«ãªããŸãã
çæããã€ã©ã¹ãã«ããããŸãããå€ãã®å Žåå£åã蚱容ã§ããã®ã¯ãSSIM ã 90% 以äžãä¿ãããŠãã RDT 0.06 ããããŸã§ã ãšæããŸãã
Dynamic Caching ã®ä»ã®èšå®é ç®ïŒ
ä»åå©çšãã Dynamic Cashing ã® Apply First Block Cache ããŒãã«ã¯ãRDT ã®ä»ã«ãèšå®é ç®ããããŸãã

start
ãã£ãã·ã¥ã®é©çšãéå§ããã¿ã€ãã³ã°ãèšå®
end
ãã£ãã·ã¥ã®é©çšãçµäºããã¿ã€ãã³ã°ãèšå®
max_consecutive_cache_hits
ãã£ãã·ã¥ã®é£ç¶äœ¿çšåæ°ãå¶é
ããã©ã«ã㯠-1 ã§ç¡å¶é
å ã»ã©ã® RDT ãããã£ãã·ã¥ã®é©çšã®å€æããªãŒãã§ä»»ããŠããã®ã«å¯ŸããŠããããã®èšå®é ç®ã¯ ããã¥ã¢ã«ã§ã®ä»å ¥ ã«åœãããŸãã
ChatGPT ã®ãªã¹ã¹ã¡ã®èšå®å€
ãã¡ãã®èšå®ãå 容ãé£ããã®ã§ãChatGPT ã«ãªã¹ã¹ã¡ã®èšå®å€ãæããŠããããŸãããã
ChatGPT ã®ãªã¹ã¹ã¡ã®èšå®å€
start = 0.2
end = 0.8
max_consecutive_cache_hits = 5
ããã§ã¯ããã®å€ãå ¥åããŠå床枬å®ããŠã¿ãŸãã
RDT: 0.04

ãŸã㯠RDT 0.04 ã§ããå ã»ã©ã® start = 0, end = 1 ã®èšå®ãšæ¯ã¹ãŠç»åã®çæã«æéãããã£ãŠããŸããããããªãªãžãã«ã«è¿ãã€ã©ã¹ãã«ãªã£ãŠããŸãã
RDT: 0.08

å ã»ã©ã¯ãæãããªå£åãèªãããã RDT: 0.08 ã§ãã
ä»å㯠MAE, SSIM ãšãã« 97% 以äžä¿ãããŠããŠãå ã»ã©ãšæ¯ã¹ããšÂ å£åã¯ããŸãæ°ã«ãªããªã ã¬ãã«ã§ãã
RDT: 0.16

å ã»ã©ã¯ãã€ã©ã¹ããæªå®æã ã£ã RDT 0.16 ã§ãã
ãã¡ãã MAEã»SSIM ãšãã« 90% å°åŸå ãä¿ãããŠããŠãã€ã©ã¹ããšããŠäœ¿çšã§ããã¬ãã«ã«ãªã£ãŠããŸãã
RDT: 1.0

RDT ãæå€§å€ã® 1.0 ã«èšå®ããŠãããã¥ã¢ã«ã®èšå®ä»¥å€ã¯å šãŠã¹ããã ããŠã¿ãŸãã
ãã®èšå®ã§ã¯ãå š 30 step ã®ãã¡ã1ïœ6, 12, 18, 24ïœ30 step ã§å®éã®æšè«ãè¡ãããã®ä»ã¯ãã£ãã·ã¥ãå©çšããŠçç¥ããŠããŸãã
ãããååã® step ãçç¥ããŠãããã æèŠæéãåå ã«ãªããŸãããMAE, SSIM ãšãã« 95% 以äžãç¶æÂ ããããšãã§ããŠããŸãã
枬å®çµæ
ããã§ã¯å®éã®æž¬å®çµæã§ããæåã«æž¬å®ãã start = 0, end = 1 ã®ã°ã©ããšäžŠã¹ãŠç€ºããŸãã



äž¡è ãæ¯ã¹ããšãChatGPT ãªã¹ã¹ã¡ã®Â start = 0.2, end = 0.8, max_consecutive_cache_hits = 5 ã®èšå®ã«ããæ¹ããé床ãšç²ŸåºŠã®ãã©ã³ã¹ãè¯ã ãªã£ãŠããããšãåãããŸãã

éããªããã©é£ããïŒ
Dynamic Caching (First Block Cache) ã¯ã確ãã«ç»åã®çæã¯éããªããŸãããåãæ±ããããªãé£ããæ©èœã§ãã
ç¹ã«ãããã©ã«ãã®èšå®ã§ RDT ã®ã¿ãé«ã ãããšãç»è³ªã¯å€§ããå£å ããŠããŸããŸãã
ä»åã¯ãstart = 0.2, end = 0.8, max_consecutive_cache_hits = 5 ãå©çšããŠãããªãã®é床ãšç²ŸåºŠã®ãã©ã³ã¹ã«ãªããŸããããããã¯ãŸã ãã¹ããªã»ããã£ã³ã°ã§ã¯ç¡ããšæããŸãã

æé©ãªèšå®ã¯ Flux.1 / SD 3.5 / SDXL ã®åã¢ãŒããã¯ãã£ã§å€ãããšæããŸãããããã«ã«ã¹ã¿ã ã¢ãã«ã«ãã£ãŠãéã£ãŠãããšæããŸãã
Dynamic Caching ã¯æ°ããçºæ³ããçãŸããç»æçãªæè¡ã§ããã䜿ãããªãã«ã¯ãŸã ãŸã ãããã ããŠããŠã®èç© ãå¿ èŠã«ãªãã§ãããã
ãŸãšãïŒDynamic Caching ã¯é£ãã
Dynamic Caching ã䜿ããšãç»è³ªã¯çžå¿ã«äœäžãã
ãã¹ããªã»ããã£ã³ã°ã§ãç»è³ªã®äœäžãæããããå¯èœæ§ããã
äœãæå®ããªããããstart = 0.2, end = 0.8, max_consecutive_cache_hits = 5 ã«èšå®ããæ¹ãè¯ã
ä»åã¯ãããªãé£ããæ€èšŒã§ããã
å人çã«ã¯ãFlux.1 㯠V-prediction ã®æ¡çšãªã© é床é¢ã§ã®æé©åãæ¢ã«ãããŠããŠããããäžåãç»æçãªé«éåã®å®çŸã¯ããªããªãé£ããã®ã§ã¯ãªãããšäºæ³ããŠããŸãã

ç»åçæAI ã¯ãŸã ãŸã 黿æã®ãããä»åã玹ä»ãã WaveSpeed ã®ãããªÂ æ°ããæè¡ ãæ¬¡ã ãšçãŸããŠããŸãã
æ°ããçºèŠã«èº«è¿ã«è§Šããããšãã§ããã®ã¯ãç»åçæAI ã®å€§ããªæ¥œãã¿ã®äžã€ã§ãããããããæ°æè¡ãåºããšãã¯ç¬èªã®æ€èšŒãããŠãããããšæããŸãã
æåŸãŸã§ãèªã¿ããã ãããããšãããããŸãïŒ
åèèšäº
WaveSpeed ã«ã€ããŠãGJL ãããæ¥æ¬èªã§ãã¡æ©ã玹ä»ãããŠããŸãã
ä»åã¯è§Šããªãã£ã Enhanced torch.compile ã®èšå®æ¹æ³ã解説ãããŠããã®ã§ãWaveSpeed ããæ·±ãç¥ãããæ¹ã¯å¿ èŠã§ãã
ãŸããshiba*2 ããã Sampler ãš Scheduler ã®å®è·µçãªæ¯èŒããããŠããŸãã
WaveSpeed ã䜿ãäžã§ãéåžžã«åèã«ãªããŸãã