Deep Learning Academy · Lektion

TorchScript och torch.compile

Frys och accelerera en modell för servering

Lektion 1 av 413 steg

TorchScript och torch.compile är en gratis lektion i Deep Learning Academy på CoddyKit. Detta är lektion 1 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Deep Learning Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Deep Learning Academy innehåller totalt 4 lektioner.

Varför produktion kräver en fryst modell

Er träningskod är flexibel Python, men servrar vill ha något snabbt och stabilt. TorchScript fryser modellen till ett portabelt och optimerat format. 🚀

Vad TorchScript faktiskt är

TorchScript är en serialiserbar och optimerbar delmängd av Python som körs utan en Python-tolk, så att modellen kan distribueras till C++-servrar och mobila enheter.

Tracing: registrera en faktisk körning

Tracing kör modellen med ett exempelindata och registrerar varje operation den utför, vilket fångar den väg som datan faktiskt tog.

import torch
traced = torch.jit.trace(model, example_input)

Tracing missar kontrollflöden

Eftersom tracing bara följer en körning ignorerar den i tysthet if-satser och loopar som beror på datan. Dessa grenar försvinner helt enkelt.

Scripting: läs logiken

Scripting kompilerar koden direkt och bevarar varje loop och villkor. Använd det när kontrollflödet beror på indatavärdena.

scripted = torch.jit.script(model)

Spara och läs in var som helst

En scriptad eller tracad modell sparas i en enda fristående fil som Ni kan läsa in på vilken dator som helst, utan att den ursprungliga klassdefinitionen krävs.

scripted.save('model.pt')
loaded = torch.jit.load('model.pt')

Möt torch.compile

Det moderna alternativet är torch.compile, som snabbar upp modellen med en enda rad samtidigt som koden förblir vanlig Python.

model = torch.compile(model)

Så snabbar torch.compile upp körningen

Under huven slår torch.compile ihop många små operationer till färre optimerade kärnor, vilket minskar overhead och ökar genomströmningen på GPU.

Det första anropet är långsamt

Det första framåtpasset efter torch.compile är långsamt eftersom kompileringen sker i bakgrunden. Alla efterföljande anrop körs mycket snabbare. ⏳

Ställ alltid in eval-läge först

Innan Ni använder tracing, scripting eller kompilering för inferens ska Ni anropa model.eval(), så att dropout och batchnormalisering fungerar korrekt vid inferens.

model.eval()
traced = torch.jit.trace(model, x)

Vilket alternativ bör Ni välja?

Välj TorchScript när Ni behöver en distributionsfil som inte kräver Python, och torch.compile när Ni vill ha en snabb hastighetsökning i Python.

Snabbkontroll

En metod fångar endast den väg som ett exempel tar. Vilken är det?

Sammanfattning: frys och accelerera

Ni har lärt Er att frysa en modell med TorchScript via tracing eller scripting, spara den var som helst och accelerera inferensen i Python med torch.compile. 🎉

Gratis att börja

Lär dig Python med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
30
Lektioner
120

Vanliga frågor

Är lektionen ”TorchScript och torch.compile” gratis?

Ja – hela texten till ”TorchScript och torch.compile” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Deep Learning Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i Deep Learning Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”TorchScript och torch.compile”?

Frys och accelerera en modell för servering Ni övar på Deep Learning Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Deep Learning Academy?

Du behöver inga förkunskaper. Utbildningen i Deep Learning Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 4.

Hur lång tid tar lektionen ”TorchScript och torch.compile”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Deep Learning Academy-lektionen?

Ja. Varje Deep Learning Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. TorchScript och torch.compile
  2. Exportera till ONNX
  3. Kvantisering för mindre och snabbare modeller
  4. Servera med FastAPI
← Tillbaka till Deep Learning Academy