1 คะแนน โดย GN⁺ 4 시간 전 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • Krea 2 เป็นโมเดลภาพแบบ foundation สำหรับการสร้างภาพที่ให้ความสำคัญกับ การสำรวจเชิงสร้างสรรค์ มากกว่าค่าเริ่มต้นแบบ polished เพียงหนึ่งเดียว และเปิดเผยน้ำหนักโมเดลกับการอนุมานภายใต้ permissive license
  • กระบวนการฝึกดำเนินต่อเนื่องเป็น pretraining → midtraining → SFT → preference optimization → RL โดยการคัดสรรข้อมูล คำบรรยายภาพ การขยายพรอมป์ต์ และการอ้างอิงสไตล์จะค่อย ๆ ปรับแต่งการกระจายของผลลัพธ์เป็นลำดับ
  • สถาปัตยกรรมอิงกับตระกูล DiT ที่เรียบง่าย แล้วผสาน GQA, gated sigmoid attention, SwiGLU, Qwen 3 VL, Qwen Image VAE และ FLUX 2 VAE เพื่อสร้างสมดุลระหว่างเสถียรภาพกับประสิทธิภาพ
  • Krea 2 ติด top 10 ในหมวด text-to-image ของ Artificial Analysis leaderboard และอยู่อันดับ 2 ในบรรดาโมเดลจากแล็บอิสระ
  • เพื่อรองรับการฝึกขนาดใหญ่ ทีมได้สร้างระบบบนพื้นฐานของ PyTorch, FSDP2, tensor parallelism, Kubernetes, Virtual Kubelet, Weka และ PostgreSQL และกำลังพิจารณา MoE, sparse attention, native 2K–4K, NVFP4 และ Muon scaling เป็นขั้นถัดไป

โมเดลภาพ foundation ที่มุ่งสู่การสำรวจเชิงสร้างสรรค์

  • Krea 2 เป็นชุดโมเดลภาพแบบ foundation สำหรับการสร้างภาพ ที่มุ่งเน้น ความหลากหลายด้านสุนทรียะ และการควบคุมเชิงสร้างสรรค์ของผู้ใช้
  • เอกสารที่เผยแพร่มีให้ที่ Release page, Hugging Face weights/license, GitHub code/license, Krea Image tool
  • น้ำหนักโมเดลและการอนุมานเปิดเผยภายใต้ permissive license
  • Krea มองว่าโมเดลภาพที่อิง diffusion และ flow-matching ได้พัฒนาไปถึงภาพความละเอียดสูง, photorealism, โครงสร้างที่เสถียร, การเรนเดอร์ข้อความที่หนาแน่น, ความรู้เกี่ยวกับโลกที่กว้างขวาง และการทำตามพรอมป์ต์อย่างละเอียดแล้ว แต่หลายระบบยังคงลู่เข้าหาความงามพื้นฐานที่แคบ
  • แทนที่จะเพิ่มประสิทธิภาพให้กับ polished default เพียงแบบเดียว Krea 2 มุ่งเป็นสื่อเชิงกำเนิดที่เปิดให้สำรวจ สไตล์ อารมณ์ องค์ประกอบภาพ และทิศทางด้านภาพที่หลากหลาย
  • ติด top 10 ในหมวด text-to-image ของ Artificial Analysis leaderboard และอยู่อันดับ 2 ในบรรดาโมเดลจากแล็บอิสระ

กลยุทธ์การคัดสรรข้อมูลและการทำคำบรรยายภาพ

  • ทีม Krea สร้างโครงสร้างพื้นฐานข้อมูลขนาดใหญ่และเฟรมเวิร์กการฝึกแบบกระจายตั้งแต่ต้น เพื่อสร้างชุดข้อมูล pretraining ที่มีทั้ง broad world knowledge และ style coverage
  • ทีมมองว่า “data mix ที่ดี” ต้องการไม่ใช่แค่ภาพคุณภาพสูง แต่ยังต้องมี ความหลากหลาย และการครอบคลุมโดเมนที่กว้างด้วย
  • การกรองโดยอิง aesthetic score และ image quality assessment อาจสร้าง implicit bias ได้
    • motion blur หรือความนุ่มฟุ้งอาจเป็นการเลือกเชิงศิลปะโดยตั้งใจ แต่กลับถูกประเมินต่ำว่าเป็นภาพเบลอ
    • หากคำบรรยายอธิบายภาพได้อย่างแม่นยำ แม้แต่ภาพที่ไม่พึงประสงค์ก็อาจยังมีประโยชน์ต่อการฝึก downstream
  • ในชุดข้อมูล pretraining ทีมกรอง duplicated samples, แนวคิดที่ถูกแสดงซ้ำมากเกินไป, ตัวอย่างที่ VLM จับองค์ประกอบสำคัญไม่ได้, ตัวอย่างที่ก่อให้เกิด bias และ artifacts ที่ไม่พึงประสงค์, ตัวอย่างที่มีความซับซ้อนทางภาพสูงจนสร้างแบบจำลองได้ยากอย่างเสถียรในความละเอียดต่ำ และ AI-generated samples
  • Krea 2 pretraining mix ไม่ใช้ AI-generated images
    • synthetic data และ distillation อาจเป็นทางลัดในการได้มาซึ่งความสามารถ
    • ทีมมองว่าแม้ AI-generated images จะมีเพียงเล็กน้อย ก็อาจนำ bias เข้าสู่การกระจายผลลัพธ์ของโมเดล และแทบจะกำหนด upper bound ของคุณภาพโมเดลโดยพฤตินัย
    • เพื่อกรองสิ่งเหล่านี้ออก ทีมได้ออกแบบ classifiers ภายในองค์กร
  • คำบรรยายภาพถูกสร้างด้วยวิธีแบบหลายขั้นตอน
    • รัน OCR model กับภาพเป้าหมายเพื่อดึง visible text
    • ป้อนผลลัพธ์จาก OCR และ metadata ให้กับ captioning model เพื่อสร้าง enriched caption ที่รวมทั้งข้อความที่ดึงมาและ world knowledge
    • นำ long-form caption ที่มีบริบทสูงไปจัดโครงสร้างใหม่ด้วย LLM ที่ต้นทุนต่ำกว่า ให้มีความยาวและรูปแบบหลากหลาย เพื่อให้โมเดลได้สัมผัสกับ prompt style หลายแบบ
  • long prompts ให้ dense supervision จึงทำให้ลู่เข้าได้เร็วขึ้นและมี training loss ต่ำลง ขณะเดียวกันก็ยังคงให้โมเดลได้สัมผัสกับ short/medium prompts เพื่อรองรับการใช้งาน downstream

ข้อมูลการฝึกตามความละเอียดและ midtraining

  • ข้อมูล pretraining ผ่านขั้นของความละเอียด 256px, 512px, 1024px
    • จัดสรร FLOPs ส่วนใหญ่ให้กับช่วงความละเอียดต่ำเพื่อเรียนรู้ความสามารถหลักได้อย่างมีประสิทธิภาพ
    • หลังจากนั้นจึงเพิ่มความละเอียดเพื่อมอบความสามารถในการสร้างภาพที่มีความเที่ยงตรงสูง
    • pretraining ที่ความละเอียดต่ำใช้เพื่อเรียนรู้การจัดแนวข้อความ-ภาพขั้นพื้นฐานและโครงสร้าง
  • ชุดข้อมูลความละเอียดต่ำมีขนาดระดับ billions of images จึงพึ่งพา filters แบบ CPU-based ต้นทุนต่ำอย่างมาก
    • ลบภาพที่ไม่เหมาะสมออกด้วย broken-file, resolution, aspect-ratio filters
    • ลบภาพที่มี textures สุดขั้วและ noise patterns ด้วย Laplacian filters
    • ลดพื้นหลังสีเรียบและ border artifacts ด้วย RGB entropy, white/black pixel ratios, custom heuristics และ in-house classifiers
  • in-house classifier ถูกสร้างขึ้นโดยใช้ large VLM สร้าง system prompt สำหรับงาน filtering และสร้าง pseudo-labeled dataset จากนั้นจึงฝึก classifier ขนาดเล็กที่อิง DINOv3 หรือ SigLIP-2
    • ในช่วงความละเอียดต่ำ filtering model ที่ต้องใช้ GPU compute ถูกคงไว้ให้มีขนาดต่ำกว่า 1B parameters เพื่อประสิทธิภาพ
  • การ deduplication ที่ความละเอียดต่ำใช้ hash-based methods เป็นหลัก โดยผสาน md5, phash และ colorhash
    • phash แบบ 8x8 มาตรฐานไม่พิจารณาสี ทำให้อัตรา false-positive สูง
    • เพื่อให้ deduplication มีความทนทานมากขึ้น จึงผสาน phash แบบ 12x12 กับ colorhash
  • เมื่อความละเอียดในการฝึกสูงขึ้น ก็เริ่มนำ image-quality และ aesthetic filters มาใช้
    • quality score ใช้เพียงเพื่อลบภาพที่คุณภาพแย่มากเท่านั้น และไม่ใช้สำหรับการ oversampling ตาม score
    • ใช้ OCR-based image-complexity score และ text density เพื่อตัดภาพที่ยากต่อการถ่ายทอดข้อความและเนื้อหาอย่างมีความหมายในความละเอียดต่ำออก
  • มีการฝึก sparse autoencoder บน embeddings ของ SigLIP-2 เพื่อสร้าง SAE-based tagging system และนำไปใช้กรอง visual artifacts ที่ชัดเจนโดยไม่ต้องมี explicit classifier
  • midtraining ต่างจาก pretraining ตรงที่มีการเลือก image sources อย่างชัดเจน ซึ่งให้ทั้ง stylistic coverage ที่ดีใน visual domain เฉพาะและภาพคุณภาพสูง
    • pretraining เป็นกระบวนการแบบ bottom-up ที่เริ่มจาก general pool
    • midtraining คือการคัดสรรแบบ top-down ที่เลือก domains และ sources ก่อน
    • เป็นขั้นตอนที่เชื่อม general pretraining distribution กับ high-quality SFT distribution อย่างนุ่มนวล
  • เสริม world-knowledge coverage ด้วย semantic clustering และ retrieval-based strategies
    • ทำ hierarchical k-means clustering ด้วย FAISS
    • VLM ตรวจสอบภาพใกล้ cluster centroid เพื่อตั้งชื่อ cluster และ flag เมื่อจำเป็น
    • clusters ที่ถูก flag จะผ่าน human review เพื่อลบ cluster ที่คุณภาพต่ำหรือมีปัญหา
    • ภายใน leaf cluster ที่เหลือจะทำ semantic deduplication ด้วย SigLIP similarity
  • สำหรับ named entity coverage ใช้ Danker รัน PageRank บน English Wikipedia และคงบทความ 90% แรกตามลำดับ rank ไว้
    • ลบหัวข้อที่ไม่สามารถแทนภาพได้ออกด้วย metadata ของ Wikidata
    • จากนั้นทำ full-text search บน captions ทั้งชุดข้อมูลสำหรับแนวคิดที่เหลืออยู่ราว 5 million concepts
    • ตอน sampling จะให้ความสำคัญกับภาพจาก captions ที่กล่าวถึง concepts หายากก่อน

การเลือกสถาปัตยกรรมและการทำ ablation

  • Krea 2 ได้พัฒนาสถาปัตยกรรม diffusion transformer (DiT) ที่เรียบง่ายแต่ให้ประสิทธิภาพดี ผ่านการทำ ablation
  • การทำ architecture ablation ประเมินใน 4 หมวด ได้แก่ stability, performance, efficiency และ simplicity
    • stability พิจารณาการลดลงของ loss/gradient spike และเสถียรภาพระหว่างการฝึก
    • performance พิจารณาความเร็วในการลู่เข้า และการคงประสิทธิภาพไว้ได้หรือไม่ในความละเอียดสูงและ horizon ระยะยาว
    • efficiency พิจารณาว่าสามารถลด parameter count, FLOPs, memory และ communication ได้หรือไม่โดยไม่กระทบต่อคุณภาพ
    • simplicity ตรวจสอบว่าสามารถทำให้ model เรียบง่ายขึ้นได้หรือไม่โดยไม่ทำลายหมวดอื่น
  • การตัดสินใจด้านสถาปัตยกรรมหลายอย่างได้รับอิทธิพลจากแนวโน้มการยอมรับในฝั่ง LLM และมองว่า kernel กับ optimization ของ ecosystem ฝั่ง LLM สามารถนำมาใช้กับ diffusion model ได้เช่นกัน
  • ตัวเลือกหลักของสถาปัตยกรรมสุดท้ายมีดังนี้
    • Attention ใช้ GQA with gated sigmoid attention
    • MLP เปลี่ยนจาก GeLU MLP ไปเป็น layers แบบ SwiGLU ที่มี 4x expansion factor
    • Residual ยังคงใช้ standard residual
    • Text encoder ใช้ Qwen 3 VL
    • Modulation เปลี่ยนจาก per-block MLP modulation ไปเป็น light modulation with bias
    • Autoencoder ใช้ Qwen Image VAE และ FLUX 2 VAE
    • Block design ใช้ single stream transformer block
    • Norm ใช้ zero-center RMSNorm และ QKNorm
    • Positional encoding ยังคงใช้ 3D Axial RoPE
  • GQA ปรับปรุง computational efficiency โดยทำให้ประสิทธิภาพลดลงเพียงเล็กน้อย
    • MLA แสดง gain เล็กน้อยเหนือ GQA แต่ไม่ได้ถูกนำมาใช้เพราะมี additional computational overhead
    • gated sigmoid attention ไม่ได้ให้ performance gain มากนัก แต่แสดง dynamics ที่เสถียรกว่าใน loss และ gradient-norm curves
  • ระหว่าง single-stream, dual-stream และ hybrid-stream design ไม่มีความต่างด้าน performance มากนัก โดย hybrid-stream ดีกว่าเล็กน้อย แต่เลือกใช้ single-stream blocks เพื่อความเรียบง่าย
  • per-block MLP modulation ของ MMDiT อาจคิดเป็น 20–30% ของ total parameter count ดังนั้น Krea 2 จึงแทนที่ส่วนนี้ด้วย per-block tunable bias term
  • ในการทดลอง timestep conditioning นั้น ที่ 256px พบว่า timestep tokens จำนวน 4–16 ตัวเพียงพอสำหรับใช้แทน AdaLN แต่ที่ 512px และ 1024px ประสิทธิภาพแย่กว่า AdaLN baseline
  • positional encoding สุดท้ายคือ 3D axial RoPE ที่จัดสรร head dimensions ให้กับ frame, height และ width
    • RoPE indices ของ text tokens ถูกตั้งเป็นศูนย์
    • partial RoPE ให้ผล zero-shot inference ที่ดีเมื่อ scale จาก 256px ไป 512px แต่หลังการฝึกที่ความละเอียดสูงแล้ว ประสิทธิภาพสุดท้ายต่ำกว่า baseline
  • autoencoder เริ่มจากใช้ FLUX.1-dev autoencoder เป็น baseline แล้วเปรียบเทียบกับ Qwen Image VAE, DC-AE, FLUX 2 VAE และ internal autoencoder
    • มองว่า DC-AE มี hard upper limit ต่อความสามารถในการถ่ายทอดรายละเอียดระดับ fine detail เนื่องจาก reconstruction error
    • Qwen Image VAE และ FLUX 2 VAE รักษา excellent reconstruction quality เอาไว้ได้ ขณะที่ latent space ให้การลู่เข้าที่เร็วกว่าอย่างมาก
    • โมเดลช่วงแรกใช้ Qwen Image autoencoder และสำหรับโมเดลขนาดใหญ่ขึ้นได้เลือกใช้ FLUX 2 VAE
  • text encoder เปรียบเทียบ T5-XXL, T5Gemma, umT5, Qwen 2.5 VL และ Qwen 3 VL และสุดท้ายเลือกใช้ Qwen 3 VL เป็น text encoder
    • VLM ให้ input space ที่ richer ซึ่งรวมทั้ง text และ image พร้อมด้วย multilingual generalization ที่แข็งแกร่งกว่า
    • ไม่ได้ใช้เฉพาะ last layer ของ VLM feature แต่เพิ่ม shallow attention layer เพื่อ aggregate hidden features จากทุก layer
    • เพิ่ม lightweight bidirectional transformer layers บน token axis เพื่อลด autoregressive bias

ไปป์ไลน์การฝึก, การเพิ่มประสิทธิภาพตามความชอบ, RL

  • training pipeline เป็นโครงสร้างแบบหลายขั้นตอนที่ได้แรงบันดาลใจจาก modern LLM training pipeline
  • pretraining สร้างความสามารถพื้นฐาน เช่น text-image alignment, text rendering, stylistic coverage และ structural consistency
    • final model ฝึกด้วย standard rectified-flow loss และ v-parameterization
    • ใน epoch แรกของสเตจ 256px ใช้ iREPA เพื่อเร่ง early stage convergence อย่างมาก แล้วจึงนำออก
    • ในสเตจ 256px และ 512px พบว่า 8-bit training ให้ training speed gain 15–20% เมื่อเทียบกับ bf16 baseline
    • ตั้งแต่ 1024px ไปจนถึง final RL stage ใช้ standard bf16 training
  • ใน high-resolution pretraining การปรับ resolution-dependent timeshift schedule มีความสำคัญ
    • ทั้ง training และ inference ใช้ shifted logit-normal sampling schedule
    • เมื่อ resolution สูงขึ้น จะค่อย ๆ เพิ่ม shift
    • การ sweep ใช้กับ training shift เท่านั้น และคง inference shift schedule ไว้เป็นค่าคงที่
  • ระหว่าง pretraining ใช้ warmup-stable-decay learning-rate schedule และใช้ PMA
    • PMA ให้ประสิทธิภาพใกล้เคียงกับ EMA แต่หลีกเลี่ยง memory overhead ที่สูงของ EMA
  • optimizer ใช้ AdamW เป็น primary optimizer ตลอดทั้ง pipeline
    • Muon ลู่เข้าได้เร็วกว่า AdamW ใน initial steps แต่ในช่วงที่ยาวกว่ากลับให้ประสิทธิภาพต่ำกว่าและมีปัญหาด้าน stability
    • เมื่อตัด first and last linear layers ของ MMDiT ออกจาก Muon parameters และเพิ่ม Nesterov momentum ก็สามารถเอาชนะ AdamW baseline ได้อย่างสม่ำเสมอทั้งที่ความละเอียดต่ำและสูง
    • ใน pretraining run ล่าสุดยังไม่ได้นำ Muon มาใช้เพราะข้อจำกัดด้านเวลา และมีแผนจะนำมาใช้ใน pretraining cycle ถัดไป
  • ในสเตจ SFT มีการคัดชุดเล็กเฉพาะของภาพที่มีความสวยงามสูง
    • จุดประสงค์คือทำให้ model มี bias ไปในทิศทางที่พึงประสงค์ด้านสุนทรียะมากขึ้น
    • ช่วยแก้ปัญหา high-saturation และ texture issues ที่พบบ่อยใน earlier checkpoints ได้เป็นพิเศษ
    • หลังจากฝึก domain-specific SFT checkpoints แล้ว จึงสร้าง generalist SFT checkpoint ด้วย model merging
  • preference optimization เป็นขั้นตอนแรกของ post-training stack และประกอบด้วยไปป์ไลน์สองขั้นตอน
    • ขั้นตอนที่ 1 ทำ initial refinement ด้วย large-scale synthetic preference-pair generation pipeline
    • preference pairs ส่วนใหญ่มีอย่างน้อยหนึ่ง on-policy sample
    • ขั้นตอนที่ 2 เป็น calibration stage ที่ใช้เฉพาะ human annotations
    • human annotations ถูกรวบรวมโดยบุคลากรภายในที่คุ้นเคยกับ strengths, weaknesses และ quirks ของ model
  • ใน PO พบว่า policy divergence เป็นปรากฏการณ์ที่เกิดขึ้นบ่อย
    • วิธีตระกูล DPO กระตุ้นให้เพิ่ม margin ระหว่าง preferred sample likelihood กับ dispreferred sample likelihood
    • ในหลาย preference-dataset mixtures พบปรากฏการณ์ที่โมเดลทำ objective สำเร็จด้วยการลด generation likelihood ของทั้งสอง sample แต่ลดด้วยอัตราที่ต่างกัน
    • divergence ทำให้โมเดลห่างออกจาก general pretraining distribution และในช่วงท้ายของการฝึกจะแสดงออกเป็น high-frequency artifacts
    • เพื่อบรรเทาปัญหานี้ จึงออกแบบ DPO variant ที่ชื่อ STPO
  • RL เป็นสเตจสุดท้ายของ training pipeline
    • ใช้ multi-reward GRPO-style method
    • reward models ประกอบด้วย general aesthetic model, prompt-following reward, text-rendering reward และ artifact and structure reward
    • general aesthetic model ได้มาจากการ finetuning open-source VLM ด้วย preference data ที่เก็บใน PO stage
  • prompt-specific rubric reward จะแยก prompt ออกเป็น verifiable requirements และประเมินว่า generated image ตรงตามข้อกำหนดเหล่านั้นหรือไม่
    • ทำให้ prompt following ไม่ถูกลดทอนเหลือเพียง generic image quality แต่บังคับให้ตอบสนองต่อ fine-grained prompt constraints
  • เพื่อให้ structural artifacts ลดลง มีการฝึก dedicated artifact reward model
    • ข้อผิดพลาดอย่างนิ้วเกิน แขนขาผิดรูป หรือข้อความบิดเบี้ยว มนุษย์มองเห็นได้ชัดเจน แต่ general-purpose VLM judges มักพลาด
  • ตลอด RL stage ทั้งหมด ฝึกโดยไม่ใช้ CFG
    • ช่วยปรับปรุง conditional model distribution ได้อย่างรวดเร็ว ทำให้ no-CFG samples ในช่วงต้นการฝึกเข้าใกล้ guided samples มากขึ้นมาก
    • ในเวลา inference ยังสามารถเปิดใช้ CFG ต่อไปได้ในฐานะ control knob เพิ่มเติม
  • หลัง RL stage มี optional timestep-distillation stage
    • มีการพิจารณา DMD, DMD2, Decoupled DMD, piFlow และ APT แต่เลือกใช้ Trajectory Distribution Matching(TDM)
    • TDM ใช้ DMD ครอบคลุมทุก timesteps เพื่อทำ distribution matching ในระดับ trajectory

การขยายพรอมป์ต์และการอ้างอิงสไตล์

  • ระหว่างการฝึก โมเดลใช้แคปชันที่มีรายละเอียดมากเพื่ออธิบายรายละเอียดเชิงภาพที่หนาแน่นของภาพ แต่ข้อมูลนำเข้าจริงจากผู้ใช้มักสั้น คลุมเครือ และมีรูปแบบการเขียนที่หลากหลาย
  • prompt expander จะแปลง user prompt ที่เรียบง่ายหรือไม่เพียงพอให้เป็นทิศทางภาพที่สมบูรณ์ยิ่งขึ้น โดยไม่เขียนทับเจตนาของผู้ใช้
    • ฝึกด้วยไปป์ไลน์ SFT และ RL แบบ 2 ขั้นบน open-source LLM เดิม
    • เป้าหมายไม่ได้มีแค่การปรับปรุงคุณภาพภาพ แต่ยังรวมถึง creative variation และ controllable exploration
  • ข้อมูล SFT ถูกสร้างขึ้นโดยสร้าง “user captions” แบบ synthetic จาก long captions
    • synthetic user captions คือพรอมป์ต์แบบสั้น เป็นกันเอง และกึ่งเชิงสั่งการ ซึ่งตั้งใจละรายละเอียดเชิงภาพจำนวนมากของ target caption ออกไป
    • สร้าง paired data ในรูปแบบ user prompt ที่กำหนดไม่ครบ → expanded model-friendly caption
    • เพื่อคงความสามารถด้าน reasoning จึงสร้าง synthetic thinking traces ด้วย
  • มีการใช้ targeted distribution shaping ในปริมาณเล็กน้อยด้วย
    • ทำ oversample กับ imagery ที่มีรายละเอียดเชิงภาพสูงและมีความเป็นศิลปะ
    • สำหรับพรอมป์ต์ที่ควรถูกขยายเป็นคำอธิบายแบบ photorealistic จะเพิ่ม photographic-medium bias แบบ lightweight
    • เป้าหมายไม่ใช่การบังคับใช้ house style แต่คือการครอบคลุมทั้ง imagery แบบสื่ออารมณ์และกำกับศิลป์ได้ชัดเจน รวมถึงคำขอ photorealistic ที่ตรงไปตรงมา
  • RL ของ prompt expander มีเป้าหมายเพื่อสร้าง expansions ที่ปรับปรุงคุณภาพภาพพร้อมคงเจตนาของผู้ใช้ไว้ โดยไม่ยึดติดกับการเลียนแบบ target caption
    • ฝึกด้วย GDPO และ multi-reward objective
    • image-level rewards วัดคุณภาพและความพึงพอใจของผลลัพธ์ที่สร้างขึ้น
    • prompt-level verifiable rewards ตรวจสอบว่า expansion ยังซื่อสัตย์ต่อคำขอเดิมหรือไม่
    • การตรวจสอบด้าน safety และ constraint ถูกใช้เป็น gate ของ reward โดยรวม
  • หนึ่งใน failure mode ของ prompt expander คือ diversity collapse
    • เมื่อ image rewards มีอิทธิพลเหนือกว่า โมเดลอาจเรียนรู้ house style เดียวที่ปลอดภัยและให้รางวัลสูง
    • มีการเพิ่ม DINOv3 embedding diversity score บน prompt groups เพื่อให้รางวัลกับความหลากหลายเชิงภาพภายในกลุ่ม ควบคู่กับคุณภาพและ alignment
    • หากต้องการรักษา variation ไว้ จำเป็นต้องเปิดใช้ diversity reward ตลอดการฝึก
  • ระบบ style-reference ถูกสร้างบน base model
    • ผู้ใช้สามารถสร้างภาพด้วยข้อความ พร้อมใช้ reference images หนึ่งภาพหรือมากกว่าเพื่อกำกับสไตล์ของผลลัพธ์
    • เป้าหมายการออกแบบคือการผสมความหมายของหลายสไตล์อย่างลื่นไหล การควบคุมความแรงของ style reference แต่ละตัวได้อย่างต่อเนื่อง และการยึดตามสไตล์ซับซ้อนในระดับ state-of-the-art
    • หนึ่งใน failure mode ที่พบบ่อยคือเนื้อหาและตัวแบบของภาพสไตล์รั่วไหลเข้าไปในภาพสุดท้าย
    • ได้คิดค้น self-supervised technique สำหรับฝึกโมดูล style-reference และหลังจากนั้นจึงปรับ alignment ของผลลัพธ์เพิ่มเติมด้วยขั้น preference-optimization

โครงสร้างพื้นฐานและการปฏิบัติการสำหรับการฝึกแบบกระจาย

  • เฟรมเวิร์กการฝึกแบบกระจายของ Krea ถูกสร้างขึ้นใหม่ตั้งแต่ต้นบนพื้นฐานของ PyTorch และใช้ฟีเจอร์เนทีฟของ torch ที่ขับเคลื่อนโดย abstraction DTensor และโปรเจกต์ torchtitan เป็นหลัก
    • งานรัน pretraining และ post-training ส่วนใหญ่ใช้ทั้ง FSDP2 และ tensor parallelism สไตล์ Megatron-LM ร่วมกัน
    • ในคอนฟิกที่ขนาด TP มากกว่า 2 จะเปิดใช้ async-TP ด้วยแฟลก torch.compile เพื่อให้ได้การเร่งความเร็วระดับปานกลางเมื่อเทียบกับ naive TP
    • พารามิเตอร์ของ autoencoder จะถูกทำซ้ำไว้บนทุกอุปกรณ์ ส่วน text encoder และ MMDiT backbone หลักเท่านั้นที่ถูก shard
    • ใช้ NVLinkSharp สำหรับการเชื่อมต่อภายในโหนด และ InfiniBand สำหรับการเชื่อมต่อระหว่างโหนด
  • เพื่อเพิ่มประสิทธิภาพการฝึก จึงใช้โมเดลที่กว้างขึ้นเล็กน้อยและมี hidden dimension ใหญ่กว่า
    • เมื่อ hidden size ใหญ่ขึ้น ความหนาแน่นการคำนวณของแต่ละเลเยอร์จะสูงขึ้น ทำให้ง่ายต่อการซ่อน latency ด้วย FSDP2 prefetching
    • การลดจำนวนเลเยอร์ช่วยลดจำนวนปฏิบัติการ all-gather และ reduce-scatter
    • การเปลี่ยนแปลงนี้ช่วยลดข้อผิดพลาดที่เกี่ยวข้องกับ NCCL ลงอย่างมากตลอดงานรัน pretraining
    • ขนาดเมทริกซ์คูณที่ใหญ่ขึ้นช่วยชดเชย overhead ของ quantization/dequantization ในการฝึกแบบ 8-bit
  • ศูนย์กลางของกลยุทธ์การปรับแต่งคือ torch.compile
    • สำหรับ attention จะใช้เคอร์เนล cuDNN รุ่นล่าสุดเป็นค่าเริ่มต้น และใช้ FlexAttention หรือ FlashAttention 3 ตามความจำเป็น
    • ที่ความละเอียดต่ำจะใช้ selective activation checkpointing
    • ที่ความละเอียดสูง activation จะเริ่มกินหน่วยความจำเป็นหลัก จึงใช้ full activation checkpointing
  • ฟอร์แมตพื้นฐานสำหรับการโหลดข้อมูลคือ Parquet
    • แต่ละ row จะเก็บการอ้างอิงรูปภาพ ขนาด crop/resize, caption และ metadata อื่น ๆ
    • ในงานรันขนาดใหญ่ จะ shuffle และจัดแพ็ก row ล่วงหน้าเพื่อโหลดแบตช์ภาพที่มี aspect ratio เดียวกัน
    • การแพ็กช่วยให้สามารถเข้ารหัส latent ได้ด้วย autoencoder pass เดียว
  • ในการฝึกแบบกระจายขนาดใหญ่ ความล้มเหลวของ GPU เพียงตัวเดียวหรือ straggler อาจทำให้งานรันทั้งหมดหยุดลงได้
    • ในระดับของ Krea วิธีที่เพียงพอคือเพิ่มประสิทธิภาพ MTBF และ MTTR ผ่านการทำ checkpoint ที่รวดเร็วและถี่ พร้อมทั้งปรับปรุง startup time
  • งานวิจัยถูกรันบน Kubernetes คลัสเตอร์เดียวที่ใช้ GPU ร่วมกับ production inference
    • ระบบถูกออกแบบให้สามารถยึด GPU pool ทั้งหมดได้เมื่อมีความจำเป็นด้านงานวิจัย
    • เมื่อ GPU ทั้งหมดในคลัสเตอร์ถูกจัดสรรให้กับงานฝึก inference workload ของ Krea จะถูกย้ายไปที่อื่นโดยอัตโนมัติ
    • ระบบจัดการ traffic failover เพื่อคง responsiveness ของ production แม้ไม่มี GPU ในเครื่องเหลืออยู่
  • Kueue เป็นองค์ประกอบสำคัญของการจัดตาราง workload
    • Kueue มอบระบบ priority แบบ 2 ชั้นที่ผสาน Workload priority และ Kubernetes Pod priority
    • ทำให้สามารถทำ gang-scheduling ที่จำเป็นสำหรับ multi-node training ได้
    • primitive ด้าน queueing อย่าง “borrowing”, “lending” และ “reclamation” ช่วยให้ใช้ทรัพยากรได้สูงสุด
  • ใช้ Virtual Kubelet สำหรับองค์ประกอบที่ใช้ scale inference ไปยังที่อื่นเมื่อ GPU ทั้งหมดถูกจัดสรรให้กับงานวิจัย
    • เมื่อ pod ถูก schedule ไปยัง virtual Kubernetes node โค้ดของ Krea จะเปลี่ยน pod specification ให้อยู่ในรูปแบบที่เข้ากันได้กับ target provider
    • หากเกิด provider-side failure ระบบจะ reconcile สถานะทั้งสองฝั่ง
    • การกู้คืนถูกมอบหมายให้ Kubernetes และระบบจะตรวจจับ failure แล้วส่งต่อให้ Kubernetes
  • observability เป็นด้านที่ได้บทเรียนมากที่สุดในการทำ pretraining ขนาดใหญ่
    • หากไม่มี subsystem metric ที่เกี่ยวข้องกับ GPU, PCIe, NVLink และ InfiniBand ก็แทบเป็นไปไม่ได้ที่จะฝึกที่สเกลนี้
    • metric ถูกเก็บผ่านการผสมกันของ DCGM และ custom DaemonSet
    • เมื่อ GPU เกิน 75–78°C จะเริ่มเกิด throttling และ throughput โดยรวมจะลดลง ส่งผลให้ความไม่เสถียรของการฝึกเพิ่มขึ้น
    • DCGM_FI_PROF_PIPE_TENSOR_ACTIVE เป็นตัวบ่งชี้ที่ต้องการใช้มากที่สุดในการตัดสินว่าการฝึกทำงานตามที่คาดไว้หรือไม่
    • metric ของ InfiniBand มีความสำคัญต่อการวินิจฉัย fabric instability, link flapping, packet error, congestion, symbol error และ throughput disparity
  • การสเกลจำนวน GPU เป็นเรื่องยาก
    • งานรันที่ใช้ต่ำกว่า 128 GPU มีความเสถียรมาก และมักรันได้หลายวันโดยไม่มีปัญหา
    • เมื่อเพิ่มจำนวน GPU งานรันก็เริ่ม crash บ่อยขึ้นมาก
    • ที่สเกลใหญ่มาก ไม่สามารถทำงานรันใด ๆ ให้เกิน 24 ชั่วโมงได้สำเร็จเลย
    • crash จำนวนมากไม่มีสาเหตุที่ชัดเจน และปรากฏเป็นลักษณะอย่าง NCCL timeout ทั้งที่ metric ทั้งหมดดู healthy
  • หนึ่งในความผิดพลาดครั้งใหญ่ช่วงแรกคือการเลือกใช้ Ceph และต่อมาจึงเปลี่ยนไปใช้ Weka
    • ปัญหาเกี่ยวกับ filesystem และ downtime ลดลงอย่างมาก และประสิทธิภาพก็ดีขึ้นในระดับใกล้เคียงกัน
    • Weka เป็นองค์ประกอบสำคัญที่ทำให้สามารถทำ aggressive checkpointing ระหว่างการฝึก Krea 2 ได้
    • checkpoint ใช้เวลาเพียงประมาณ 30 วินาที ทำให้เสียเวลาไปกับ checkpointing น้อย

คลังข้อมูลและคิวงาน

  • เพื่อการรวบรวมและคัดสรรข้อมูลของ K2 ได้สร้างระบบคลังข้อมูลและคิวแบบกำหนดเองที่มี PostgreSQL server cluster เป็นศูนย์กลาง
  • แต่ละ Krea tablet server เรียกว่า “krablet”
    • krablet แต่ละตัวประกอบด้วย Postgres instance ที่เก็บ data shard หนึ่งชุด และ “funnel” server deployment ที่ทำ batch/queue การ mutation แบบอะซิงโครนัสเพื่อลด lock contention
  • การอ่านทั้งหมดถูกพร็อกซีผ่าน “RPC” server deployment ขนาดใหญ่
    • RPC server เข้ามาแทนที่ traditional connection pooler อย่าง PgBouncer
    • RPC server แต่ละตัวจะคง connection pool สำหรับทุก shard ของฐานข้อมูล
  • ระบบ krablet ขยายได้ถึง 208TB สำหรับ metadata เพียงอย่างเดียว และสามารถประมวลผล UPSERT transaction ที่มีการแย่งกันใช้งานได้หลายหมื่นครั้งต่อวินาที
    • ทำหน้าที่เป็น single source of truth สำหรับข้อมูลงานวิจัยทั้งหมด
    • ทำให้ stream-processing layer สามารถกลายเป็นชั้นเดียวกับ data layer ได้
  • workflow การประมวลผลงานทั่วไปคือการใช้ Postgres table เสมือนเป็นคิว
    • OCR worker จะค้นหา row ที่มี contains_text IS NULL แล้วนำไปประมวลผล
    • embed worker จะประมวลผล row ที่มี embedding_path IS NULL และ contains_text = FALSE
    • ใช้ FOR UPDATE SKIP LOCKED เพื่อ claim row และอัปเดตคอลัมน์ตระกูล last_tried_at
  • โมเดลคิวนี้มีพฤติกรรมการ retry ต่างจาก Kafka หรือ Ray
    • เมื่อเกิด failure จะไม่ทิ้ง row หรือส่งไปยัง dead-letter queue
    • แม้ row ที่ประมวลผลล้มเหลวก็จะถูก retry ที่ท้ายคิวได้ด้วย atomic update ของ last_tried_at
    • ยังช่วยป้องกัน head-of-line blocking ด้วย
  • จำนวน worker ปรับแบบไดนามิกได้
    • งานประมวลผลถูก deploy บน Kubernetes และสามารถ scale up/down ได้ตามต้องการโดยไม่ต้องทำ data resharding
    • งานหนึ่งสามารถรันด้วย worker 1 ตัวหรือ 1000 ตัวก็ได้
    • ใช้ Prometheus scaling metric เพื่อ autoscale แต่ละส่วนของ pipeline ตามปริมาณงานที่พร้อมให้ประมวลผล
  • เพื่อความสะดวกของนักวิจัย มีระบบชื่อ “pluck”
    • ให้ global map API ที่เหมาะกับการเขียนใน notebook
    • t.map จะคืน handle ที่ผู้ใช้สามารถ attach เพื่อดู live progress ได้
    • UDF จะถูก pickle ด้วย cloudpickle และไปรันบน remote worker
  • สำหรับงานวิจัยรุ่นถัดไป กำลังสร้างระบบตัวสืบทอดที่ยังคงใช้ semantics ของคิวแบบ krablet และ FOR UPDATE SKIP LOCKED แต่เก็บข้อมูลเป็น LSM tree บน object storage

ทิศทางในอนาคต

  • ใน Krea 2 เลือกใช้สถาปัตยกรรมและ optimizer ที่ค่อนข้างอนุรักษนิยม โดยให้ความสำคัญกับความเสถียรและความเร็วในการทำ iteration
  • ในรอบ pretraining ถัดไป มีแผนจะนำ modern LLM transformer design มาใช้กับ diffusion transformer
    • แนวทางที่กำลังพิจารณามีทั้ง MoE, native 2K–4K resolution scale ผ่าน sparse attention, NVFP4 pretraining และ Muon scaling
    • มองว่า model ปัจจุบันยัง undertrained และการเทรนที่ยาวนานขึ้นน่าจะช่วยได้
  • ปัจจุบัน training pipeline ของ Krea 2 จบที่ขั้น multi-reward RL
    • Krea ได้ยืนยันแล้วภายในโดยใช้งาน expert ภายในว่า OPD และ MOPD เป็น distillation method ที่มีประสิทธิภาพสำหรับ diffusion model
    • หวังว่าจะได้แบ่งปันผลลัพธ์เพิ่มเติมในเร็ว ๆ นี้
  • production diffusion model ต้องการโครงสร้างที่ซับซ้อนซึ่งประกอบด้วยหลาย model ที่พึ่งพากัน
    • การเสิร์ฟ latent diffusion model โดยทั่วไปต้องมี autoencoder, diffusion transformer, text encoder และ prompt-expansion model
    • ทั้งนี้ขึ้นอยู่กับ stack ว่าอาจมี module เพิ่มเติมอย่าง style-reference model หรือ upscaler
    • การดูแลหลาย component ที่ต้องเทรนแยกกันแต่มีความพึ่งพากัน ทำให้การประสานงานของทีมวิจัยเป็นเรื่องยาก
  • Krea วางแผนจะทำให้สถาปัตยกรรมเรียบง่ายขึ้น และรวมหลาย component ไว้ใต้ model เดียวในรอบ pretraining ถัดไป
  • Krea 2 มุ่งเน้นหลักไปที่การสร้างภาพเพื่อการสำรวจเชิงสร้างสรรค์ และในอนาคตต้องการขยาย capability ไปสู่ robust editing, image reference และ native 2K/4K generation
  • มองว่าการ prompting ด้วยภาษาธรรมชาติเพียงอย่างเดียวแบบดั้งเดิมนั้นไม่เพียงพออีกต่อไปสำหรับรองรับขอบเขตคำขอทั้งหมดของผู้ใช้
    • พบ prompting style ที่หลากหลายใน prompt ของผู้ใช้ เช่น natural language, tag, detailed JSON, bounding box, instruction, visual guideline และ Markdown
    • แม้ prompt expansion จะช่วยแก้ได้บางส่วน แต่ก็เห็นว่า model ควรเข้าใจ prompt เหล่านี้ได้โดยกำเนิดด้วย ซึ่งควรเป็นความสามารถหลัก

1 ความคิดเห็น

 
GN⁺ 4 시간 전
ความเห็นจาก Hacker News
  • มีการเปิดเผยน้ำหนักของ โมเดลข้อความสู่ภาพ รุ่นใหม่ล่าสุด พร้อมเผยแพร่บทความที่ลงลึกถึงกระบวนการฝึกค่อนข้างมาก
    มีการใส่รายละเอียดส่วนที่ปกติไม่ค่อยเขียนกันมากนัก เช่น การฝึกจริงและโครงสร้างพื้นฐานด้านข้อมูล เลยคิดว่าน่าจะมีเนื้อหาที่คนสนใจด้านนี้อยากอ่าน

    • ประทับใจที่เป็นรายงานเชิงเทคนิคขนาดใหญ่เกี่ยวกับ โมเดลสร้างภาพแบบเปิดน้ำหนัก
      ในฐานะคนที่ติดตามวงการนี้มาต่อเนื่อง การได้อ่านการทดลองและความพยายามเบื้องหลังผลิตภัณฑ์สุดท้ายนั้นน่าสนใจมาก และถ้าปล่อยเครื่องมือสำหรับ fine-tuning บางส่วนให้ชุมชนได้ลองด้วย ก็น่าจะช่วยผลักดันศักยภาพของโมเดลได้มากขึ้น
    • สงสัยว่า Krea จัดการกับคอนเทนต์อย่าง สื่อลามกหรือภาพสยดสยอง อย่างไร
      รู้สึกอึดอัดกับแนวโน้มที่โมเดลหลัก ๆ ตัดคอนเทนต์ประเภทนี้ออกอย่างหนักด้วยเหตุผลด้านความปลอดภัย แม้ในกรณีที่ถูกกฎหมายก็ตาม
    • พอมองตั้งแต่ Ideogram4, Flux2, Qwen-Image, ZiT จนถึง Krea ก็เห็นได้ว่าฝั่ง เปิดน้ำหนัก มีความเคลื่อนไหวเชิงบวกมากขึ้น
      เดิมที Flux.1 Krea อยู่บนเว็บเบนช์มาร์ก GenAI Showdown ของผมมาตั้งแต่เดือนกรกฎาคมปีที่แล้ว ซึ่งในวงการนี้มันให้ความรู้สึกเหมือนผ่านมานานมากแล้ว อยากลองทดสอบโมเดลใหม่นี้แบบจริงจังเหมือนกัน
  • ผมคือ Diego Rodriguez ผู้ร่วมก่อตั้งและ CTO ของ Krea ครั้งนี้เราเปิดทั้งน้ำหนักโมเดลและ รายงานเชิงเทคนิคที่อัดแน่นพอสมควร เมื่อเทียบกับมาตรฐานของอุตสาหกรรมในปัจจุบัน
    ในรายงานมีรายละเอียดเรื่องการคิวเรต/ใส่คำบรรยายข้อมูล สถาปัตยกรรมโมเดล การฝึกภายหลัง การวางท่อ reinforcement learning การขยายพรอมป์ต์ การอ้างอิงสไตล์ และโครงสร้างพื้นฐาน
    น้ำหนักแบ่งเป็นสองแบบ: Krea 2 Turbo เป็นโมเดลที่กลั่นการชี้นำและ timestep เพื่อให้ inference เร็วขึ้น ส่วน Krea 2 RAW เป็นโมเดลที่ออกแบบมาโดยคำนึงถึงการแฮ็กและ fine-tuning
    ผมคิดว่าชุมชน open LLM ทำได้ดีมากในเรื่องการเปิดโมเดลหลายขนาดและหลายช่วงของ pipeline การฝึก และครั้งนี้เราก็ปล่อยทั้ง checkpoint ช่วงฝึกกลางทางและช่วงหลังการฝึกด้วย ซึ่งเป็นเรื่องที่พบได้ไม่บ่อยในฝั่งภาพและมัลติมีเดีย จึงค่อนข้างภูมิใจกับจุดนี้
    ตามเกณฑ์เบนช์มาร์กข้อความสู่ภาพของ Artificial Analysis คุณภาพของภาพอยู่ในระดับใกล้เคียง Nano Banana: https://artificialanalysis.ai/image/leaderboard/text-to-imag...
    ยังมาพร้อมไลเซนส์ที่ค่อนข้างผ่อนปรนสำหรับบุคคลทั่วไปและธุรกิจขนาดเล็ก
    แนะนำการปล่อย OSS: https://www.krea.ai/krea-2-open-source / โมเดลบน Huggingface: https://www.krea.ai/krea-2/huggingface / ที่เก็บ GitHub: https://www.krea.ai/krea-2/github / Reddit AMA: https://www.reddit.com/r/StableDiffusion/comments/1udnm0a/we... / รายงานเชิงเทคนิค: https://www.krea.ai/blog/krea-2-technical-report

  • ผลออกมาแล้ว และต้องบอกว่าน่าประทับใจมาก โดยเฉพาะเมื่อคิดว่า โมเดล Turbo เร็วขนาดนั้นที่ 8 สเต็ป
    ในบรรดาโมเดลที่โฮสต์เองแบบโลคัลได้ มีแค่ Ideogram 4 เท่านั้นที่ทำได้ดีกว่า แต่ฝั่งนั้นช้ากว่ามาก ระดับนาทีกับวินาทีเลย
    มันยังพังกับ “ตัวฆ่าโมเดล” ประจำอย่างดาวเก้าแฉก Count Rugen หรือโลกแบนที่มีคนเยอะเกินไป แต่โดยรวมแล้วทำผลงานเกินขนาดตัว ได้คะแนนสูงสุดในกลุ่มโมเดลที่โฮสต์เองแบบโลคัลได้ และในภาพรวมก็อยู่ถัดจาก Ideogram 4 โดยผ่าน 6 จาก 15 การทดสอบ
    ลิงก์ GenAI ที่เทียบเฉพาะโมเดลโฮสต์เองแบบโลคัลได้: https://genai-showdown.specr.net/?models=fd,hd,kd,qi,f2d,zt,...

    • เพิ่งเคยได้ยินว่ามี ตัวฆ่าโมเดล สำหรับโมเดลข้อความสู่ภาพด้วย ฟังแล้วขำดี
      น่าสนใจที่วิธีทดสอบพาไปถึงหัวข้อที่เฉพาะเจาะจงประหลาด ๆ แบบนี้ได้
  • เป็นเรื่องดีที่มีโมเดลเปิดน้ำหนักเพิ่มขึ้น และก็ชอบบทความที่ลงลึกแบบนี้มาก
    ชอบแนวทางที่พยายาม รักษา manifold ให้กว้าง เพื่อสร้างได้หลายสไตล์ด้วย แบบนี้น่าจะดีกว่าการจูนให้ตรงกับพรีเซ็ตสไตล์ไม่กี่แบบเท่านั้น
    แต่ Nano Banana 2 หรือ Images 2.0 ซึ่งเป็นโมเดลจัดองค์ประกอบภาพต่อภาพ/เชิงเอเจนต์ระดับสูงก็ออกมาทรงพลังมากแล้ว เลยให้ความรู้สึกเหมือนกำลัง “ไปรบในสงครามครั้งก่อน” อยู่เหมือนกัน
    ค่อนข้างสงสัยว่าวิธีใส่ Qwen 3 VL แบบไขว้จะเข้าใกล้ภาพต่อภาพระดับนั้นได้จริงหรือไม่ และภาพต่อภาพที่แข็งแรงมีความสำคัญมากในแง่ของการแก้ไข การปรับแต่ง ความคงเส้นคงวาของตัวละคร และการทำให้สิ่งที่ตอนนี้ใช้กับการถ่ายโอนสไตล์เป็นเรื่องทั่วไปมากขึ้น ส่วนการถ่ายโอนสไตล์ก็ดูอธิบายไว้ไม่มากพอ
    การไปให้ถึงระดับนั้นคงไม่ง่าย แต่ผมคิดว่าสมรภูมิถัดไปของโมเดลภาพอยู่ตรงนี้แน่ ๆ Ideogram ดูเหมือนกำลังสะสมความสามารถไปทางนั้น แต่ฝั่งเปิดน้ำหนักยังแทบไม่เห็นมากนัก

    • เข้าใจความกังขา แต่ภายในองค์กรเราใช้โมเดลนี้มากกว่า Nano Banana ในหลายกรณี เช่น งานแนว moodboard และการที่มัน ถูกกว่า NBP 4 เท่า ก็ช่วยได้มาก
      เวิร์กโฟลว์เชิงเอเจนต์เข้ากันได้กับ Krea 2 อยู่แล้ว เลยไม่ค่อยเข้าใจว่าหมายถึงส่วนไหน ถ้าหมายถึงโมเดลสำหรับการแก้ไข แบบนั้นเราก็กำลังทำอยู่
      ในเบนช์มาร์กข้อความสู่ภาพก็อยู่ในระดับใกล้เคียงกัน และดูได้จากลิงก์ Artificial Analysis ที่ผมแปะไว้ในคอมเมนต์ด้านบน
      คุณไม่สามารถฝึก Nano Banana หรือ ChatGPT ใหม่ให้เข้าใจแบรนด์ของลูกค้าได้ และนี่แหละคือข้อร้องเรียนที่ลูกค้าของเราพูดถึงอยู่เรื่อย ๆ แถมเพราะเป็นโอเพนซอร์ส การเทียบแบบ 1:1 จึงไม่ง่ายนัก
    • โมเดลนี้ก็รองรับ ภาพต่อภาพ เช่นกัน เลยไม่แน่ใจว่าปัญหาของ Qwen 3 VL คืออะไร
      ส่วนที่บอกว่าการถ่ายโอนสไตล์ไม่ได้อธิบายไว้ก็ยังฟังดูคลุมเครือ เพราะในหน้าเพจมีคำว่า “reference” อยู่ 11 ครั้ง และพออ่านจริงก็พบว่าพูดถึงเรื่องนี้ไว้ค่อนข้างมาก
  • ขอบคุณที่ Krea เปิดให้ดาวน์โหลดค่าน้ำหนักของโมเดลได้ แต่ถ้ามีเงื่อนไขแบบนี้ในไลเซนส์ ก็ไม่ใช่ โอเพนซอร์ส: https://huggingface.co/krea/Krea-2-Raw/blob/main/LICENSE.pdf
    อนุญาตให้ใช้งานเชิงพาณิชย์ได้เฉพาะกรณีที่รายได้ต่อปีรวมทั้งบริษัทในช่วง 12 เดือนล่าสุดต่ำกว่า 1 ล้านดอลลาร์ และถ้าเกินกว่านั้นต้องมีไลเซนส์องค์กรแยกต่างหาก
    อีกทั้งห้ามนำโมเดล Krea, งานดัดแปลง, หรือผลลัพธ์ไปใช้โดยฝ่าฝืนกฎหมาย สัญญา หรือ policy การใช้งานที่อนุญาต และเมื่อนำไปแจกจ่าย ต้องมี ตัวกรองคอนเทนต์ ที่สมเหตุสมผลเพื่อใช้ตรวจจับ ป้องกัน และบรรเทาการสร้างคอนเทนต์ต้องห้าม เป็นอันตราย หรือผิดกฎหมาย
    ต้องปฏิบัติตาม policy การใช้งานที่อนุญาตด้วย และในหน้าของ policy https://www.krea.ai/krea-2-use-policy ก็มีข้อกำหนดห้ามหลบเลี่ยงมาตรการความปลอดภัย ข้อจำกัดการใช้งาน ตัวกรองคอนเทนต์ การระบุที่มา หรือวอเตอร์มาร์กที่ Krea หรือผู้แจกจ่ายติดตั้งไว้

  • ดูเหมือนว่า Turbo จะมี เวอร์ชันแปลงเป็น GGUF ออกมาแล้ว: https://huggingface.co/Abiray/Krea-2-Turbo-GGUF

  • มีรายการที่น่าสนใจในหน้ารับสมัครงาน
    สำหรับคนที่รู้ว่า Mellanox สมัยก่อนเป็นที่แบบไหน อาจจะถูกจริต: https://jobs.ashbyhq.com/krea/ebe94024-eef6-4306-a019-10072a...

  • เป็นโมเดลที่ดี แต่ค่อนข้างเสียดายนิดหน่อยที่ใช้ Qwen VAE

    • ถ้าอยากดันด้านความสมจริงให้สุด Krea 2 Large บนเว็บไซต์และ API เทรนด้วย FLUX 2 VAE
      หลังจากลองใช้ทั้งคู่แล้ว ผมมองว่า Flux VAE เหนือกว่าเล็กน้อยในเรื่องการเรียนรู้เท็กซ์เจอร์แบบสมจริง แต่ก็ไม่ได้ต่างกันมากอย่างที่คิด Qwen VAE เองก็ทำได้ดีมากโดยรวมในการทดลองแบบคุมโทน และเด่นในการเรียนรู้การสร้างสไตล์ที่หลากหลาย
    • ก็มีคนบอกว่าถ้าใช้ wan2.1 VAE แทน ปัญหานี้จะหายไป
      แต่ยังไม่มีเวลาลองด้วยตัวเอง
  • ตั้งตารอที่จะได้ลองใช้ Krea 2 อยู่ ผมใช้ Z-Image Turbo ทุกวัน และมันเข้ามาแทนการสมัครสต็อกโฟโต้สำหรับงานภาพสมจริงกับภาพประกอบไปแล้ว
    เลยสงสัยว่าค่าเทรนน่าจะอยู่ที่เท่าไร

    • กาแฟน่าจะใช้ไปเยอะแน่ ๆ
      ประเมินค่าเทรนแบบจริงจังค่อนข้างยาก เพราะเราใช้ Kubernetes cluster แบบแชร์ที่รันทั้งงาน inference และงานวิจัยพร้อมกัน
  • สงสัยว่าถ้าจะ self-host โมเดลแบบนี้ เขาใช้อะไรกัน
    เคยลอง ollama กับ open-webui แล้ว แต่ไม่รองรับการสร้างภาพเลย

    • ยังไม่ได้ลองกับโมเดลนี้ แต่ ComfyUI น่าจะรองรับแน่นอน และถ้าคุ้นเคยแล้ว อินเทอร์เฟซก็ถือว่าโอเค
      ถ้าติดขัด ตอนเริ่มต้นก็ใช้วิธีก๊อปปี้แล้ววาง workflow มาก่อนได้
    • Koboldcpp รองรับการสร้างภาพ แต่การรองรับ Krea2 คงต้องรอรีลีสถัดไป
      https://github.com/LostRuins/koboldcpp