3 poin oleh GN⁺ 2024-10-15 | 1 komentar | Bagikan ke WhatsApp
  • Kecepatan eksekusi FLUX di Replicate meningkat drastis, dan kode optimasinya juga dibuka sehingga implementasinya bisa diperiksa serta diperluas secara kustom
  • Berdasarkan pengukuran end-to-end, FLUX.1 [schnell] turun hingga 0,29 detik untuk 512x512·4 steps dan 0,72 detik untuk 1024x1024·4 steps
  • Peningkatan kecepatan ini merupakan hasil gabungan dari optimasi berbasis flux-fp8-api, torch.compile, kernel attention CuDNN yang lebih cepat pada Torch nightly, serta HTTP API sinkron yang baru
  • Kuantisasi pada flux-fp8-api sedikit mengubah output, tetapi dampaknya pada kualitas kecil, dan bisa dimatikan dengan go_fast=false bila perlu
  • Replicate membuka peningkatan FLUX mereka dan sedang berkolaborasi dengan AI Compiler Study Group serta para peneliti untuk membuat FLUX open source yang cepat

Kecepatan eksekusi FLUX dan demo publik

  • Eksekusi model FLUX di Replicate kini lebih cepat, dan implementasi optimasinya dirilis sebagai open source
  • Kecepatan end-to-end yang diukur dari wilayah barat AS menggunakan klien Python adalah sebagai berikut
  • Demo FLUX.1 [schnell] tersedia dengan metode input real-time, dan seluruh aplikasi beserta source code juga bisa dilihat

Metode optimasi dan kontrol kualitas

  • Banyak model di Replicate dikontribusikan oleh komunitas, tetapi model FLUX dipelihara bekerja sama dengan Black Forest Labs
  • Dua jenis pekerjaan diterapkan untuk peningkatan kecepatan
    • Memulai dari flux-fp8-api buatan Alex Redden, lalu menggunakan torch.compile dan kernel attention CuDNN yang lebih cepat dari build Torch nightly
    • Menambahkan HTTP API sinkron baru dari Replicate agar semua model gambar bisa berjalan lebih cepat
  • Kuantisasi pada flux-fp8-api sedikit mengubah output model, tetapi dampaknya pada kualitas kecil
    • Tersedia alat untuk membandingkan output ribuan prompt pada FLUX.1 [schnell] dan FLUX.1 [dev], dan hasil perbandingannya bisa dilihat langsung
    • Optimasi tersebut dapat dinonaktifkan dengan mengatur input go_fast ke false
  • Karena sering kali tidak jelas apakah penyedia model menerapkan optimasi yang memengaruhi kualitas, Replicate membuka metode optimasinya dan memungkinkan pengguna untuk mematikannya

Kode open source dan jalur pemanfaatan

1 komentar

 
GN⁺ 2024-10-15
Komentar Hacker News
  • Model teks-ke-gambar terasa tidak efisien. Saya penasaran apakah mungkin, dan lebih baik, memecahnya menjadi tahapan seperti teks→graf adegan→gambar yang tersegmentasi secara semantik→gambar final
    Tiap tahap bisa dilatih secara terpisah dan dibuat modular, dan sepertinya gambar akan lebih mudah diedit daripada mengganti semuanya dengan output prompt baru. Dengan begitu, pembuatan seperti "objek x berada di sebelah objek y, dan di atasnya ada tulisan foo" akan jauh lebih mudah, sementara gaya artistik atau tingkat realisme bisa diserahkan ke model rendering final yang terpisah dari kepatuhan terhadap prompt
    Rasanya mirip dengan video2video atau model img2img per frame untuk meningkatkan output video game
    https://www.theverge.com/2021/5/12/22432945/intel-gta-v-real...
    https://www.reddit.com/r/aivideo/comments/1fx6zdr/gta_iv_wit...

    • Secara umum, sudah berkali-kali terlihat bahwa pendekatan seperti ini terus gagal pada model berbasis jaringan saraf
      Jika kita bisa melatih jaringan saraf yang mengubah a→b dan jaringan saraf yang mengubah b→c, biasanya kombinasi itu bisa diganti dengan jaringan saraf yang lebih sederhana yang langsung mengubah a→c. Ini masuk akal, karena mungkin ada informasi yang hilang saat mengubah a menjadi b. Satu jaringan saraf memastikan informasi relevan dari a yang dibutuhkan untuk membuat c diteruskan ke lapisan yang lebih tinggi
    • Saya rasa ini pada dasarnya sama dengan pendekatan yang lama gagal di bidang seperti pengenalan gambar, sampai akhirnya diselesaikan dengan memaksakan matriks yang lebih besar dan lebih dalam
      Cara mengekstrak fitur dan bernalar seperti manusia terdengar masuk akal, tetapi pada akhirnya tampaknya lebih mudah memperluas pattern matching yang dilakukan komputer secara murni
    • Saya berharap seni AI bergerak ke pendekatan modular. Misalnya menghasilkan karakter, latar, gaya, dan gerakan kamera masing-masing pada tahap terpisah
      Menjelaskan semuanya sekaligus lalu berharap hasilnya sesuai keinginan itu tidak masuk akal
    • Model difusi pada dasarnya melakukan hal itu. Hanya saja tidak ada batas yang jelas antara "graf adegan" dan "gambar utuh"
      Ia mulai dari noise lalu secara bertahap menambahkan lebih banyak detail
    • Ada asumsi keliru di sini bahwa gambar adalah kumpulan objek. Gambar belum tentu seperti itu
      Saya ingin foto bulu halus persik berwarna hijau kebiruan yang membeku
  • Lisensi nonkomersial bukan open source. Sebab jika pemegang hak cipta asli berhenti melakukan pemeliharaan, orang lain tidak bisa melanjutkannya, atau harus bekerja seperti budak gratis
    Inti open source ada pada apa yang mungkin dilakukan ketika penulis asli berhenti mengerjakannya. Open source memberi siapa pun lisensi untuk melanjutkan pengembangan, dan itu tentu mencakup kemampuan untuk menerima bayaran. Jika aspek ini tidak ada, jangan menyebutnya open source
    Hanya FLUX.1 [schnell] yang open source (Apache2), sedangkan FLUX.1 [dev] memakai lisensi nonkomersial

    • Ada OpenFLUX.1, hasil fine-tuning model FLUX.1-schnell dan penghilangan distilasinya. OpenFLUX.1 berlisensi Apache 2.0
      https://huggingface.co/ostris/OpenFLUX.1/
    • Bukankah open source berarti source-nya terlihat dan bisa diperiksa? Saya tidak tahu ada aplikasi closed source yang memungkinkan source-nya dilihat
  • Kalau ingin mencoba FLUX.schnell dengan mudah, cukup masukkan prompt ke URL Pollinations
    https://pollinations.ai/p/a_donkey_holding_a_sign_with_flux_...
    https://pollinations.ai/p/a_donkey_holding_a_sign_with_flux_...
    https://pollinations.ai/p/Minimalist%20and%20conceptual%20ar...
    Kecepatannya benar-benar mengejutkan. Dengan hanya tiga GPU L40S, kami menghasilkan 8000 gambar untuk pengguna setiap 30 menit. Sebagai catatan, saya orang Pollinations

    • Ungkapan "hanya" di sini terdengar cukup mahal bagi kebanyakan orang
  • Pekerjaan yang paling saya suka dengan Flux adalah membuat gambar berlatar belakang putih untuk Substack. Teks yang mengikutinya bagus, dan lewat artwork juga bisa menyampaikan sesuatu secara visual
    [1]https://substackcdn.com/image/fetch/w_1456,c_limit,f_webp,q_...

    • Menurut saya contoh itu memperlihatkan dengan jelas mengapa para seniman marah. LLM secara terang-terangan meniru gaya khas seniman tertentu, dan akibatnya seniman itu kehilangan pekerjaan berbayar
      Saya tidak tahu apakah saya punya posisi yang tegas soal ini. Teknologi akan terus bergerak maju. Tapi tetap saja ini menarik
    • Bisa bagikan prompt-nya?
  • Flux adalah kandidat terdepan di antara sistem generasi yang di-host secara lokal dalam hal kepatuhan terhadap prompt, tetapi shallow depth of field yang muncul di mana-mana sangat sulit dihilangkan sampai menjengkelkan

    • Sepertinya dioptimalkan untuk gambar artistik?
  • Saya baru saja membatalkan langganan Midjourney. Untuk pekerjaan yang ingin saya lakukan, rasanya terlalu tertinggal
    Saya juga sempat lama mempertimbangkan untuk memakai Replicate dan Ideogram

    • Belakangan saya juga bertanya-tanya apakah nilainya masih melampaui sekadar rasa kagum. Penasaran apakah Anda beralih ke alat lain, atau memang tidak lagi melihat nilai dari alat-alat seperti itu
    • Midjourney punya nuansa khasnya sendiri dan lemah di tangan, kaki, serta huruf, jadi saya tidak pernah memakainya
      Belum sampai setahun sejak kejatuhan Emad, tapi sudah ada model open source lokal yang lebih baik—ini gila. Ini menunjukkan betapa dangkal moat perusahaan-perusahaan seperti ini, dan berkat mereka membakar uang dalam jumlah besar, kitalah yang diuntungkan
  • Ada yang tahu FLUX 1.1 dilatih dengan apa? Saya membuat hampir 100 gambar dengan prompt dua kata “nama file kamera + kata sederhana” di model pro, dan semuanya tampak seperti foto dari ponsel seseorang
    Kalau tidak ada teks, levelnya sampai-sampai saya tidak akan terpikir bahwa itu gambar AI. Kadang terlihat seperti foto yang terpotong, dan banyak muncul foto makanan, meja makan berantakan, serta apartemen
    Apakah mereka mengeruk postingan Facebook publik, Snapchat, Vkontakte? Apakah mereka membeli gambar pribadi dari OneDrive atau Dropbox? Kalau kata keduanya saya isi nama perempuan, filter NSFW hampir selalu aktif. Jadi saya menduga ada cukup banyak gambar yang bersifat pribadi di set pelatihannya
    Silakan lihat sendiri. Hati-hati musik putar otomatis
    people: https://vm.tiktok.com/ZGdeXEhMg/
    food and stuff: https://vm.tiktok.com/ZGdeXEBDK/
    signs: https://vm.tiktok.com/ZGdeXoAgy/
    [edit] Melihat gambar-gambar seperti ini membuat tidak nyaman, seolah sedang melihat foto pribadi seseorang. Prompt seperti “IMG00012.JPG forbid” tidak punya informasi pengarah yang cukup untuk menjelaskan gambar seperti ini, jadi semuanya pasti berasal dari data pelatihan
    Saya tidak percaya bahwa FLUX 1.1 pro memakai set pelatihan yang secara fundamental berbeda dari model-model publik sebelumnya. Hanya saja, mungkin model ini lebih rentan terhadap generasi seperti ini
    Rasanya benar-benar aneh. Jadi, saya bertanya lagi: apakah ada informasi tentang data pelatihan yang digunakan untuk model-model ini?

    • Ini bukan hanya flux; hal yang sama bisa dilakukan pada model lain, termasuk Stable Diffusion
      Dua posting Reddit di bawah ini sedikit membahas konvensi nama file ini
      DSC_0001-9999.JPG - default Nikon
      DSCF0001-9999.JPG - default Fujifilm
      IMG_0001-9999.JPG - gambar umum
      P0001-9999.JPG - default Panasonic
      CIMG0001-9999.JPG - default Casio
      PICT0001-9999.JPG - default Sony
      Photo_0001-9999.JPG - foto Android
      VID_0001-9999.mp4 - video umum
      Selain itu, saya juga membuat versi nama file software 3D. Semuanya sudah diuji, dan hanya sebagian yang efektif
      Autodesk Filmbox (FBX): my_model0001-9999.fbx
      Stereolithography (STL): Model0001-9999.stl
      3ds Max: 3ds_Scene0001-9999.max
      Cinema 4D: Project0001-9999.c4d
      Maya (ASCII): Animation0001-9999.ma
      SketchUp: SketchUp0001-9999.skp
      [1]: https://www.reddit.com/r/StableDiffusion/comments/1fxkt3p/co...
      [2]: https://www.reddit.com/r/StableDiffusion/comments/1fxdm1n/i_...
    • Menurut saya sangat kecil kemungkinan penyebabnya adalah dataset pelatihan mentah. Saya justru mengalami masalah sebaliknya. Token “background” memasukkan blur yang kuat ke seluruh gambar hampir terlepas dari bagaimana token itu dipakai dalam prompt, tetapi menariknya interpretasi prompt menjadi jauh lebih baik
      Bersama koreksi yang kuat terhadap teks, kemungkinan besar mereka melakukan banyak tuning yang membuat model lebih menyukai gambar khas flux
      Apa pun proses yang mereka ikuti, hasilnya adalah model yang menjadi terlalu sensitif sampai-sampai istilah tertentu saja bisa berpengaruh lebih kuat daripada LoRA
      Foto-foto yang ditunjukkan tidak terlalu mencolok dalam konteks keseluruhan. Tidak butuh banyak usaha untuk keluar dari format gambar default dan mendapatkan hasil yang hiperrealistis. Secara pribadi, saya melihatnya bukan karena mereka mencoba menyembunyikan hiperrealisme, melainkan lebih karena mereka ingin menyetel default ke jenis gambar yang diinginkan orang
    • Saya juga mengalami hal yang sama, dan itu benar-benar aneh. Awalnya hasilnya bagus, lalu setelah itu rusak
      Saya tidak tahu kenapa semua komentar kritis tentang Flux selalu kena downvote atau flag, dan itu cukup aneh
  • Mereka mengklaim kualitasnya mirip sambil menunjuk ke halaman perbandingan, tetapi pertama-tama sangat jelas detailnya jauh lebih sedikit. Yang lebih buruk adalah contoh “tampilan depan 3/4 dari Corvette 2017 kuning yang berbelok di tikungan jalan pegunungan dengan pemandangan lembah hijau pada hari berawan”
    Model asli menampilkan bagian depan, sedangkan versi cepat menampilkan bagian belakang Corvette. Itu gambar yang sama sekali berbeda. Bukan mirip, melainkan jelas berbeda
    https://flux-quality-comparison.vercel.app/

  • Setiap kali thread model Meta muncul, selalu ada banyak koreksi bahwa itu bukan open source sungguhan
    Kalau begitu, FLUX juga harus dibuat jelas. Di antara model yang dirilis, satu-satunya yang open source adalah FLUX schnell, dan karena didistilasi dari model proprietary, model ini jauh lebih sulit ditangani
    Ironisnya, dari sudut pandang praktis, model Llama milik Meta memiliki lisensi yang jauh lebih permisif, dan juga sangat mudah di-fine-tune dengan framework open source milik Meta sendiri maupun berbagai tool pihak ketiga. Sebaliknya, FLUX schnell tidak demikian
    Menurut saya komunitas open source harus memusatkan tenaga di sekitar OpenFLUX atau proyek serupa yang mencoba memperbaiki batasan artifisial pada Schnell: https://huggingface.co/ostris/OpenFLUX.1

  • Mereka mengatakan “kami menambahkan API HTTP sinkron baru yang membuat semua model gambar di Replicate jauh lebih cepat”, tapi kenapa kalau sinkron jadi lebih cepat? Saya klik dan masuk untuk melihatnya
    https://replicate.com/changelog/2024-10-09-synchronous-api
    “Sekarang pustaka klien dan API membuat eksekusi model jauh lebih cepat, terutama saat file dikembalikan”
    …terima kasih sih?
    Saya cuma berbagi rasa frustrasi sebagai developer. Kalau ingin mudah diingat dan kami menjadi pendukungnya, saya harap mereka menjelaskannya sedikit lebih baik

    • Alasannya benar-benar dijelaskan di paragraf kedua. Alih-alih mengembalikan URL yang mengharuskan permintaan kedua untuk menerima data file, responsnya mengembalikan data file yang sebenarnya
    • Betul. Bagian ini memang belum jelas. Saya sudah menambahkan satu paragraf lagi yang menjelaskan apa yang sebelumnya harus dilakukan