AI-verktyg 101
Flux av Black Forest Labs: The Next Leap in Text-to-Image Models. Ăr det bĂ€ttre Ă€n Midjourney?

Schwarzwald Labs, teamet bakom den banbrytande Stable Diffusion-modellen, har slĂ€ppt Flux â en svit av toppmoderna modeller som lovar att omdefiniera funktionerna hos AI-genererade bilder. Men representerar Flux verkligen ett steg framĂ„t pĂ„ omrĂ„det, och hur stĂ„r sig det till branschledare som Midjourney? LĂ„t oss dyka djupt in i Flux-vĂ€rlden och utforska dess potential att omforma framtiden för AI-genererad konst och media.
Black Forest Labs födelse
Black Forest Labs Àr inte bara Ànnu en AI-startup; det Àr ett kraftpaket av talang med erfarenhet av att utveckla grundlÀggande generativa AI-modeller. Teamet inkluderar skaparna av VQGAN, Latent Diffusion och Stable Diffusion-familjen av modeller som har tagit AI-konstvÀrlden med storm.
Med en framgĂ„ngsrik Series Seed-finansieringsrunda av 31 miljoner dollar ledd av Andreessen Horowitz och stöd frĂ„n anmĂ€rkningsvĂ€rda Ă€ngelinvesterare har Black Forest Labs placerat sig i framkanten av generativ AI-forskning. Deras uppdrag Ă€r tydligt: ââatt utveckla och utveckla toppmoderna generativa djupinlĂ€rningsmodeller för media som bilder och videor, samtidigt som de tĂ€njer pĂ„ grĂ€nserna för kreativitet, effektivitet och mĂ„ngfald.
Vi presenterar Flux Model Family
Black Forest Labs har introducerat FLUX.1-sviten med text-till-bild-modeller, designade för att sÀtta nya riktmÀrken för bilddetaljer, snabb efterlevnad, stilmÄngfald och scenkomplexitet. Flux-familjen bestÄr av tre varianter, var och en skrÀddarsydd för olika anvÀndningsfall och tillgÀnglighetsnivÄer:
- FLUX.1 [pro]: Flaggskeppsmodellen som erbjuder högsta prestanda i bildgenerering med överlÀgsen snabbföljning, visuell kvalitet, bilddetaljer och mÄngfald av utskrifter. TillgÀnglig via ett API, Àr det positionerat som premiumalternativet för professionellt och företagsbruk.
- FLUX.1 [dev]: En öppen vikt, vÀgledningsdestillerad modell för icke-kommersiella applikationer. Den Àr utformad för att uppnÄ liknande kvalitet och snabba vidhÀftningsförmÄga som proversionen samtidigt som den Àr mer effektiv.
- FLUX.1 [schnell]: Den snabbaste modellen i sviten, optimerad för lokal utveckling och personligt bruk. Det Àr öppet tillgÀngligt under en Apache 2.0-licens, vilket gör det tillgÀngligt för ett brett utbud av applikationer och experiment.
Jag kommer att ge nÄgra unika och kreativa snabba exempel som visar upp FLUX.1:s möjligheter. Dessa uppmaningar kommer att belysa modellens styrkor nÀr det gÀller att hantera text, komplexa kompositioner och utmanande element som hÀnder.
- KonstnÀrlig stil blandas med text: "Skapa ett portrÀtt av Vincent van Gogh i hans signaturstil, men ersÀtt hans skÀgg med virvlande penseldrag som bildar orden "StjÀrnklar natt" i kursiv."
- Dynamisk actionscen med textintegration: "En superhjÀlte som spricker genom en serietidningssida. Actionlinjerna och ljudeffekterna ska bilda hjÀltens namn "FLUX FORCE" i fet, dynamisk typografi."
- Surrealistiskt koncept med exakt objektplacering: "NĂ€rbild av en söt katt med bruna och vita fĂ€rger under fönstersolljus. Skarpt fokus pĂ„ ögonstruktur och fĂ€rg. Naturlig belysning för att fĂ„nga autentisk ögonglans och djup.â
Dessa uppmaningar Àr utformade för att utmana FLUX.1:s möjligheter inom textÄtergivning, komplex scenkomposition och detaljerad objektskapande, samtidigt som de visar upp dess potential för kreativ och unik bildgenerering.
Tekniska innovationer bakom Flux
I hjÀrtat av Flux imponerande kapacitet ligger en rad tekniska innovationer som skiljer den frÄn sina föregÄngare och samtida:
Transformatordrivna flödesmodeller i stor skala
Alla offentliga FLUX.1-modeller Àr byggda pÄ en hybridarkitektur som kombinerar multimodala och parallella diffusionstransformatorblock, skalade till imponerande 12 miljarder parametrar. Detta representerar ett betydande steg i modellstorlek och komplexitet jÀmfört med mÄnga befintliga text-till-bild-modeller.
Fluxmodellerna förbÀttrar tidigare toppmoderna diffusionsmodeller genom att införliva flödesmatchning, en generell och konceptuellt enkel metod för att trÀna generativa modeller. Flödesmatchning ger ett mer flexibelt ramverk för generativ modellering, dÀr diffusionsmodeller Àr ett specialfall inom detta bredare tillvÀgagÄngssÀtt.
För att förbÀttra modellens prestanda och hÄrdvarueffektivitet har Black Forest Labs integrerade roterande positionsinbÀddningar och parallella uppmÀrksamhetslager. Dessa tekniker möjliggör bÀttre hantering av rumsliga relationer i bilder och effektivare bearbetning av storskalig data.
Arkitektoniska innovationer
LÄt oss bryta ner nÄgra av de viktigaste arkitektoniska elementen som bidrar till Flux prestanda:
- Hybrid arkitektur: Genom att kombinera multimodala och parallella diffusionstransformatorblock kan Flux effektivt bearbeta bÄde textuell och visuell information, vilket leder till bÀttre anpassning mellan uppmaningar och genererade bilder.
- Flödesmatchning: Detta tillvÀgagÄngssÀtt möjliggör mer flexibel och effektiv trÀning av generativa modeller. Det ger ett enhetligt ramverk som omfattar diffusionsmodeller och andra generativa tekniker, vilket kan leda till mer robust och mÄngsidig bildgenerering.
- Roterande positionsinbÀddningar: Dessa inbÀddningar hjÀlper modellen att bÀttre förstÄ och bibehÄlla rumsliga relationer i bilder, vilket Àr avgörande för att generera sammanhÀngande och detaljerat visuellt innehÄll.
- Parallella uppmÀrksamhetsskikt: Denna teknik möjliggör effektivare bearbetning av uppmÀrksamhetsmekanismer, som Àr avgörande för att förstÄ sambanden mellan olika element i bÄde textuppmaningar och genererade bilder.
- Skalning till 12B parametrar: Modellens stora storlek gör att den kan fÄnga och syntetisera mer komplexa mönster och relationer, vilket kan leda till högre kvalitet och mer mÄngsidiga resultat.
Benchmarking Flux: En ny standard i bildsyntes
Black Forest Labs hÀvdar att FLUX.1 sÀtter nya standarder inom bildsyntes och övertrÀffar populÀra modeller som t.ex. midjourney v6.0, DALL·E 3 (HD) och SD3-Ultra i flera viktiga aspekter:
- Visuell kvalitet: Flux syftar till att producera bilder med högre kvalitet, mer realistiska detaljer och bÀttre övergripande estetisk tilltalande.
- Snabb Följer: Modellen Àr utformad för att följa de givna textuppmaningarna bÀttre och generera bilder som mer exakt Äterspeglar anvÀndarens avsikter.
- Storlek/Aspekt Variabilitet: Flux stöder en mÀngd olika bildförhÄllanden och upplösningar, frÄn 0.1 till 2.0 megapixlar, vilket ger flexibilitet för olika anvÀndningsfall.
- Typografi: Modellen visar förbÀttrade möjligheter att generera och rendera text i bilder, en vanlig utmaning för mÄnga text-till-bild-modeller.
- UtgÄngsmÄngfald: Flux Àr speciellt finjusterat för att bevara hela produktionens mÄngfald frÄn förtrÀning, vilket erbjuder ett bredare utbud av kreativa möjligheter.
Flux vs. Midjourney: En jÀmförande analys
LĂ„t oss nu ta upp den brĂ€nnande frĂ„gan: Ăr Flux bĂ€ttre Ă€n midjourney? För att svara pĂ„ detta mĂ„ste vi övervĂ€ga flera faktorer:
Bildkvalitet och estetik
BÄde Flux och Midjourney Àr kÀnda för att producera högkvalitativa, visuellt fantastiska bilder. Midjourney har prisats för sin konstnÀrliga stil och förmÄga att skapa bilder med en distinkt estetisk dragningskraft. Flux, med sin avancerade arkitektur och större parameterantal, strÀvar efter att matcha eller övertrÀffa denna kvalitetsnivÄ.
Tidiga exempel frÄn Flux visar imponerande detaljer, realistiska texturer och ett starkt grepp om ljus och komposition. Konstens subjektiva karaktÀr gör det dock svÄrt att definitivt hÀvda överlÀgsenhet pÄ detta omrÄde. AnvÀndare kan upptÀcka att varje modell har sina styrkor i olika stilar eller typer av bilder.
Snabb efterlevnad
Ett omrÄde dÀr Flux potentiellt kanter ut midjourney Àr i omedelbar anslutning. Black Forest Labs har betonat sitt fokus pÄ att förbÀttra modellens förmÄga att korrekt tolka och utföra pÄ givna uppmaningar. Detta kan resultera i genererade bilder som bÀttre matchar anvÀndarens avsikter, sÀrskilt för komplexa eller nyanserade förfrÄgningar.
midjourney har ibland kritiserats för att ta sig kreativa friheter med uppmaningar, vilket kan leda till vackra men ovÀntade resultat. Flux tillvÀgagÄngssÀtt kan erbjuda mer exakt kontroll över den genererade uteffekten.
Hastighet och effektivitet
Med introduktionen av FLUX.1 [schnell] siktar Black Forest Labs pÄ en av Midjourneys viktigaste fördelar: hastighet. Midjourney Àr kÀnt för sina snabba generationstider, vilket har gjort det populÀrt för iterativa kreativa processer. Om Flux kan matcha eller överstiga denna hastighet med bibehÄllen kvalitet, kan det vara ett betydande försÀljningsargument.
TillgÀnglighet och anvÀndarvÀnlighet
Midjourney har blivit populÀr bland annat pÄ grund av dess anvÀndarvÀnliga grÀnssnitt och integration med Discord. Flux, som Àr nyare, kan behöva tid för att utveckla liknande tillgÀngliga grÀnssnitt. Men den öppna kÀllkodskaraktÀren hos FLUX.1 [schnell] och [dev] modeller kan leda till ett brett utbud av community-utvecklade verktyg och integrationer, som potentiellt övertrÀffar Midjourney nÀr det gÀller flexibilitet och anpassningsmöjligheter.
Tekniska förmÄgor
Flux avancerade arkitektur och större modellstorlek tyder pÄ att den kan ha mer rÄ kapacitet nÀr det gÀller att förstÄ komplexa uppmaningar och generera intrikata detaljer. Flödesmatchningsmetoden och hybridarkitekturen skulle kunna göra det möjligt för Flux att hantera ett bredare utbud av uppgifter och generera mer olika utdata.
Etiska övervÀganden och partiskhet
BÄde Flux och Midjourney stÄr inför utmaningen att ta itu med etiska problem i AI-genererade bilder, sÄsom partiskhet, felaktig information och upphovsrÀttsfrÄgor. Black Forest Labs betoning pÄ transparens och deras engagemang för att göra modeller allmÀnt tillgÀngliga kan potentiellt leda till mer robust gemenskapstillsyn och snabbare förbÀttringar inom dessa omrÄden.
Kodimplementering och implementering
AnvÀnda Flux med diffusorer
Flux-modeller kan enkelt integreras i befintliga arbetsflöden med hjÀlp av Kramar ansiktsspridare bibliotek. HÀr Àr en steg-för-steg-guide för hur du anvÀnder FLUX.1 [dev] eller FLUX.1 [schnell] med diffusorer:
- Installera eller uppgradera först Diffusers-biblioteket:
!pip install git+https://github.com/huggingface/diffusers.git
- Sedan kan du anvÀnda
FluxPipeline
för att köra modellen:
import torch from diffusers import FluxPipeline # Load the model pipe = FluxPipeline.from_pretrained("black-forest-labs/FLUX.1-dev", torch_dtype=torch.bfloat16) # Enable CPU offloading to save VRAM (optional) pipe.enable_model_cpu_offload() # Generate an image prompt = "A cat holding a sign that says hello world" image = pipe( prompt, height=1024, width=1024, guidance_scale=3.5, output_type="pil", num_inference_steps=50, max_sequence_length=512, generator=torch.Generator("cpu").manual_seed(0) ).images[0] # Save the generated image image.save("flux-dev.png")
Det hÀr kodavsnittet visar hur man laddar FLUX.1 [dev]-modellen, genererar en bild frÄn en textprompt och sparar resultatet.
Installera Flux som ett API med LitServe
För dem som vill distribuera Flux som en skalbar API-tjÀnst, ger Black Forest Labs ett exempel med LitServe, en högpresterande inferensmotor. HÀr Àr en sammanfattning av distributionsprocessen:
Definiera modellservern:
from io import BytesIO from fastapi import Response import torch import time import litserve as ls from optimum.quanto import freeze, qfloat8, quantize from diffusers import FlowMatchEulerDiscreteScheduler, AutoencoderKL from diffusers.models.transformers.transformer_flux import FluxTransformer2DModel from diffusers.pipelines.flux.pipeline_flux import FluxPipeline from transformers import CLIPTextModel, CLIPTokenizer, T5EncoderModel, T5TokenizerFast class FluxLitAPI(ls.LitAPI): def setup(self, device): # Load model components scheduler = FlowMatchEulerDiscreteScheduler.from_pretrained("black-forest-labs/FLUX.1-schnell", subfolder="scheduler") text_encoder = CLIPTextModel.from_pretrained("openai/clip-vit-large-patch14", torch_dtype=torch.bfloat16) tokenizer = CLIPTokenizer.from_pretrained("openai/clip-vit-large-patch14", torch_dtype=torch.bfloat16) text_encoder_2 = T5EncoderModel.from_pretrained("black-forest-labs/FLUX.1-schnell", subfolder="text_encoder_2", torch_dtype=torch.bfloat16) tokenizer_2 = T5TokenizerFast.from_pretrained("black-forest-labs/FLUX.1-schnell", subfolder="tokenizer_2", torch_dtype=torch.bfloat16) vae = AutoencoderKL.from_pretrained("black-forest-labs/FLUX.1-schnell", subfolder="vae", torch_dtype=torch.bfloat16) transformer = FluxTransformer2DModel.from_pretrained("black-forest-labs/FLUX.1-schnell", subfolder="transformer", torch_dtype=torch.bfloat16) # Quantize to 8-bit to fit on an L4 GPU quantize(transformer, weights=qfloat8) freeze(transformer) quantize(text_encoder_2, weights=qfloat8) freeze(text_encoder_2) # Initialize the Flux pipeline self.pipe = FluxPipeline( scheduler=scheduler, text_encoder=text_encoder, tokenizer=tokenizer, text_encoder_2=None, tokenizer_2=tokenizer_2, vae=vae, transformer=None, ) self.pipe.text_encoder_2 = text_encoder_2 self.pipe.transformer = transformer self.pipe.enable_model_cpu_offload() def decode_request(self, request): return request["prompt"] def predict(self, prompt): image = self.pipe( prompt=prompt, width=1024, height=1024, num_inference_steps=4, generator=torch.Generator().manual_seed(int(time.time())), guidance_scale=3.5, ).images[0] return image def encode_response(self, image): buffered = BytesIO() image.save(buffered, format="PNG") return Response(content=buffered.getvalue(), headers={"Content-Type": "image/png"}) # Start the server if __name__ == "__main__": api = FluxLitAPI() server = ls.LitServer(api, timeout=False) server.run(port=8000)
Den hÀr koden stÀller in ett LitServe API för Flux, inklusive modellladdning, förfrÄgningshantering, bildgenerering och svarskodning.
Starta servern:
</pre> python server.py <pre>
AnvÀnd modellens API:
Du kan testa API:et med ett enkelt klientskript:
import requests import json url = "http://localhost:8000/predict" prompt = "a robot sitting in a chair painting a picture on an easel of a futuristic cityscape, pop art" response = requests.post(url, json={"prompt": prompt}) with open("generated_image.png", "wb") as f: f.write(response.content) print("Image generated and saved as generated_image.png")
Huvudfunktioner i distributionen
- Serverlös arkitektur: Den LitServe installationen möjliggör skalbar, serverlös distribution som kan skalas till noll nÀr den inte anvÀnds.
- Privat API: Du kan distribuera Flux som ett privat API pÄ din egen infrastruktur.
- Multi-GPU Support: Installationen Àr utformad för att fungera effektivt över flera GPU:er.
- kvantisering: Koden visar hur man kvantiserar modellen till 8-bitars precision, vilket gör att den kan köras pÄ mindre kraftfull hÄrdvara som NVIDIA L4 GPU:er.
- CPU-avlastning: Den
enable_model_cpu_offload()
Metoden anvÀnds för att spara GPU-minne genom att ladda delar av modellen till CPU nÀr den inte anvÀnds.
Praktiska tillÀmpningar av Flux
MÄngsidigheten och kraften hos Flux öppnar upp ett brett utbud av potentiella tillÀmpningar inom olika branscher:
- Kreativa industrier: Grafiska designers, illustratörer och konstnÀrer kan anvÀnda Flux för att snabbt skapa konceptkonst, moodboards och visuella inspirationer.
- Marknadsföring och reklam: Marknadsförare kan skapa anpassade bilder för kampanjer, innehÄll i sociala medier och produktmodeller med oövertrÀffad hastighet och kvalitet.
- spelutveckling: Speldesigners kan anvÀnda Flux för att snabbt prototypera miljöer, karaktÀrer och tillgÄngar, vilket effektiviserar förproduktionsprocessen.
- Arkitektur och inredning: Arkitekter och designers kan generera realistiska visualiseringar av utrymmen och strukturer baserat pÄ textbeskrivningar.
- Utbildning: LÀrare kan skapa anpassade visuella hjÀlpmedel och illustrationer för att förbÀttra lÀromedel och göra komplexa koncept mer tillgÀngliga.
- Film och animation: Storyboardartister och animatörer kan anvÀnda Flux för att snabbt visualisera scener och karaktÀrer, vilket pÄskyndar förvisualiseringsprocessen.
Framtiden för flöde och text-till-bild-generering
Black Forest Labs har gjort det klart att Flux bara Àr början pÄ deras ambitioner inom det generativa AI-utrymmet. De har tillkÀnnagav planer att utveckla konkurrenskraftiga generativa text-till-video-system som lovar exakta skapande och redigeringsmöjligheter med hög upplösning och oövertrÀffad hastighet.
Denna fÀrdplan antyder att Flux inte bara Àr en fristÄende produkt utan en del av ett bredare ekosystem av generativa AI-verktyg. NÀr tekniken utvecklas kan vi förvÀnta oss att se:
- FörbÀttrad integration: Sömlösa arbetsflöden mellan generering av text-till-bild och text-till-video, vilket möjliggör mer komplext och dynamiskt innehÄllsskapande.
- FörbÀttrad anpassning: Mer finkornig kontroll över genererat innehÄll, möjligen genom avancerad prompt ingenjörsteknik eller intuitiva anvÀndargrÀnssnitt.
- Generation i realtid: Eftersom modeller som FLUX.1 [schnell] fortsÀtter att förbÀttras, kan vi se funktioner för bildgenerering i realtid som kan revolutionera skapande av levande innehÄll och interaktiva medier.
- Cross-modal Generation: FörmÄgan att generera och manipulera innehÄll över flera modaliteter (text, bild, video, ljud) pÄ ett sammanhÀngande och integrerat sÀtt.
- Etisk AI-utveckling: Fortsatt fokus pÄ att utveckla AI-modeller som inte bara Àr kraftfulla utan ocksÄ ansvarsfulla och etiskt sunda.
Slutsats: Ăr Flux bĂ€ttre Ă€n Midjourney?
FrÄgan om Flux Àr "bÀttre" Àn Midjourney Àr inte lÀtt att besvara med ett enkelt ja eller nej. BÄda modellerna representerar spjutspetsen inom text-till-bild-generering, var och en med sina egna styrkor och unika egenskaper.
Flux, med sin avancerade arkitektur och betoning pÄ snabb efterlevnad, kan erbjuda mer exakt kontroll och potentiellt högre kvalitet i vissa scenarier. Dess öppen kÀllkodsvarianter ger ocksÄ möjligheter till anpassning och integration som kan vara mycket vÀrdefulla för utvecklare och forskare.
midjourney, Ä andra sidan, har en bevisad meritlista, en stor och aktiv anvÀndarbas och en distinkt konstnÀrlig stil som mÄnga anvÀndare har kommit att Àlska. Dess integration med Discord och anvÀndarvÀnliga grÀnssnitt har gjort den mycket tillgÀnglig för kreativa pÄ alla tekniska nivÄer.
I slutÀndan kan den "bÀttre" modellen bero pÄ det specifika anvÀndningsfallet, personliga preferenser och de utvecklande funktionerna hos varje plattform. Vad som Àr tydligt Àr att Flux representerar ett betydande steg framÄt inom omrÄdet generativ AI, introducerar innovativa tekniker och tÀnjer pÄ grÀnserna för vad som Àr möjligt i text-till-bild-syntes.