Vad gör seedet i Stable Diffusion?

Av Uppdaterad 3 min läsning

Seedet är ett heltal som initierar slumpbruset som varje generering startar från. Med samma seed, prompt, modell, inställningar och programvara ger Stable Diffusion samma bild; byt seed och du får en annan komposition för samma prompt. I Automatic1111 och på den här webbplatsen betyder -1 ett slumpmässigt seed.

Varför seedet spelar roll

Diffusion startar från brus, och varje bild är en deterministisk funktion av det bruset plus dina inställningar. Seedet är receptet för bruset. Det gör det till det bästa verktyget för att lära sig: fixera seedet, ändra en sak, jämför. Det är metoden bakom vår jämförelse av konstnärsstilar: 1 731 konstnärer, fyra fasta prompts och ett fast seed per prompt. Bara konstnärsnamnet ändras, så skillnaderna du ser är konstnärens effekt och inget annat.

Så använder du seedet

  1. Generera med seed -1 tills en komposition du gillar dyker upp.
  2. Läs av seedet i bildinformationen (Automatic1111 skriver det i PNG-metadatan och under bilden) och klistra in det i seed-fältet.
  3. Förfina nu prompten eller den negativa prompten ord för ord: kompositionen brukar hålla, detaljerna flyttar sig.
  4. Med en icke-ancestral sampler (Euler, DDIM, DPM++ 2M) ger samma seed fortfarande en snarlik bild när du ändrar steg eller CFG, vilket gör att du kan jämföra inställningar rättvist. Ancestrala samplers som Euler a lägger till nytt brus i varje steg och driver iväg.

Promptexemplen på den här webbplatsen anger seedet för nästan varje bild, så att du kan utgå från ett känt resultat.

Vad som bryter reproducerbarheten

  • En annan modell eller ett annat LoRA: bruset är detsamma men avbrusaren är det inte, så bilden ändras: lite med ett lätt LoRA, helt med en annan modell.
  • En annan bildstorlek: brustensorn får en annan form, så bilden blir en helt annan även med samma seed.
  • Ett annat grafikkort eller en annan programversion: små flyttalsskillnader kan flytta detaljer; mellan olika GPU-tillverkare genererar Automatic1111 till och med olika brus, om inte slumpkällan är satt till CPU.
  • Automatic1111 har extra inställningar som ändrar resultatet, till exempel variation seed, Clip skip och Eta noise seed delta; håll dem identiska för exakta upprepningar.

Variationer kring ett seed

Automatic1111 har ett variation seed och ett reglage för variation strength: på 0,1 till 0,3 får du syskon till bilden, samma pose och palett med små förändringar, användbart för att välja de bästa händerna eller ansiktet. En X/Y/Z plot med seeds på ena axeln och ett promptord på den andra ger ett jämförelserutnät i en enda körning.

Andra vanliga frågor

Är ett större seed bättre?

Nej. Seedet är en etikett för ett brusmönster, inte en kvalitetsinställning; 7 och 4 294 967 295 är lika bra. Det enda som spelar roll är att det går att upprepa.

Kan jag få samma bild på en annan webbplats med samma seed?

Bara om webbplatsen använder samma modell, storlek, sampler, steg, CFG och programvara. Mellan två Automatic1111-installationer stämmer det oftast; mellan olika tjänster nästan aldrig.

Varför ger samma seed en annan bild i verktygen på den här webbplatsen?

De publika verktygen lägger på sin egen negativa prompt, detalj-LoRAs, steg och sampler på varje förfrågan, och inpainting skalar om din bild till 1024 px, så resultatet skiljer sig från det din lokala installation ger. Inom webbplatsen är samma förfrågan med samma seed reproducerbar.