Podstawy AI

Mierzenie i redukcja śladu węglowego AI przy użyciu CodeCarbon

mm
Dodaj Unite.AI do preferowanych źródeł w Google

Obciążenia AI zużywają energię elektryczną, a emisje gazów cieplarnianych związane z tą energią zależą od miejsca i czasu, w którym odbywa się obliczenia. CodeCarbon to narzędzie open-source, które szacuje emisje operacyjne, łącząc szacunki zużycia energii przez obciążenie z intensywnością węglową energii elektrycznej.

Szacunek jest użyteczny, gdy jego granice i niepewność są wyraźnie określone. Nie obejmuje automatycznie produkcji sprzętu, budowy centrów danych, sieci, przechowywania ani skutków ubocznych wdrażania modelu.

Kluczowe wnioski

  • Zużycie energii i emisje dwutlenku węgla są powiązane, ale nie są identyczne; intensywność węglowa sieci zmienia się w zależności od regionu i czasu.
  • CodeCarbon szacuje zużycie energii przez CPU, GPU i pamięć, a następnie stosuje czynniki emisji zależne od lokalizacji.
  • Wykorzystanie sprzętu, czas trwania uruchomienia, narzut centrum danych oraz źródło pomiaru wpływają na dokładność.
  • Praktycznym celem jest porównywalne raportowanie i redukcja, a nie fałszywa precyzja.
Measuring and Reducing AI’s Carbon Footprint with CodeCarbon diagram showing workload, power telemetry, energy, grid intensity, co₂e estimate, reduce + report
Określ granice i niepewność; używaj szacunków do porównywania i redukcji.

Energia, moc i intensywność węglowa

Moc to tempo zużycia energii, zwykle mierzone w watach. Energia gromadzi się w czasie, najczęściej w kilowatogodzinach. Operacyjny ekwiwalent dwutlenku węgla szacuje się, mnożąc zużycie energii przez współczynnik emisji, np. gramy CO₂e na kilowatogodzinę.

To samo zadanie może generować różne emisje w zależności od tego, czy jest uruchamiane w czystszej sieci lub w czasie o niższej emisji węgla. Szybszy akcelerator może zużywać większą moc chwilową, ale mniej energii całkowitej, jeśli zakończy pracę znacznie szybciej.

Co mierzy CodeCarbon

CodeCarbon obserwuje lub szacuje zużycie energii przez komponenty obliczeniowe i rejestruje metadane, takie jak czas trwania i lokalizacja. Gdy sprzęt udostępnia bezpośrednie dane telemetryczne o mocy, szacunki mogą być bardziej precyzyjne; w przeciwnym razie narzędzie korzysta z modeli sprzętu i założeń dotyczących wykorzystania.

Tryb online może korzystać z lokalnie uwzględnionej intensywności węglowej, natomiast ustawienia offline opierają się na skonfigurowanych współczynnikach. Wynik jest szacunkiem, którego metodę, wersję oprogramowania i konfigurację należy zachować wraz z eksperymentem.

Wybierz granicę raportowania

Granica na poziomie uruchomienia może obejmować jedno zadanie treningowe. Granica projektowa może zawierać poszukiwanie hiperparametrów, nieudane uruchomienia, przetwarzanie wstępne i wnioskowanie. Granica usługowa może obejmować sieci, przechowywanie i ciągłe wdrażanie.

Współczynnik efektywności zużycia energii w centrum danych (PUE) uwzględnia narzut obiektu ponad sprzęt IT. Emisje wbudowane wynikające z produkcji i budowy wymagają danych o cyklu życia, których zwykle nie dostarcza monitor czasu działania. Raporty powinny podawać wykluczenia zamiast łączyć nieporównywalne sumy.

Redukuj przed kompensacją

Zacznij od wartości obciążenia: usuń zbędne eksperymenty, stosuj wczesne zatrzymywanie, ponownie używaj punktów kontrolnych i wybieraj wydajne baseline’y. Popraw wykorzystanie, grupuj odpowiednio i dopasuj rozmiar modelu do zadania. Transfer learning może pozwolić uniknąć trenowania od zera.

Planuj elastyczną pracę w regionach lub porach o niższej emisji węgla, o ile jest to zgodne z prawem i praktyczne operacyjnie. Kompresuj modele i wybieraj wydajny sprzęt serwisowy; edge AI może zmniejszyć transfer danych, ale może także powielać niewykorzystany sprzęt, dlatego należy mierzyć cały system.

Raportuj niepewność i porównuj uczciwie

Opublikuj informacje o sprzęcie, lokalizacji, czasie działania, zużyciu energii, czynniku emisji, liczbie uruchomień oraz o tym, czy wartość jest zmierzona czy szacowana. Oddziel obliczenia eksploracyjne od ostatecznego uruchomienia treningowego. Unikaj podawania wielu miejsc po przecinku, gdy założenia dominują precyzję.

Porównuj systemy przy tej samej jakości zadania i granicach. Model o niskim zużyciu energii, który nie spełnia zadania, nie jest wydajny, podczas gdy niewielki przyrost dokładności może nie uzasadniać dużego wzrostu zasobów. Emisja węgla jest jednym z czynników wpływu, obok kosztu, zużycia wody, cyklu życia sprzętu i korzyści społecznych.

Co szacuje CodeCarbon

CodeCarbon szacuje zużycie energii i emisje dwutlenku węgla związane z obliczeniami. W zależności od środowiska i dostępnej telemetryki może odczytywać zużycie CPU, GPU, RAM lub całego systemu, integrować energię w czasie i mnożyć ją przez szacowaną intensywność węglową dla regionu energetycznego. Wyniki są szacunkami kształtowanymi przez zakres sprzętu, interwał próbkowania, przypisanie procesu, modele mocy, lokalizację i dane sieciowe. Powinny zawierać jednostki, wersję, metodologię i niepewność, a nie być podawane jako dokładne pomiary fizyczne.

Emisje operacyjne pochodzą z zużycia energii elektrycznej podczas treningu i wnioskowania; emisje wbudowane wynikają z produkcji, transportu i utylizacji sprzętu i zazwyczaj nie są uwzględniane przez monitor czasu działania. Współdzielone serwery komplikują alokację, a instancje w chmurze mogą udostępniać ograniczoną telemetrię. Średnia intensywność sieci różni się od marginalnej i zmienia się w czasie. Umowy na odnawialne źródła i kompensacje są narzędziami księgowymi, a nie dowodem, że obciążenie nie generowało emisji. Wyraźnie określ granice przed porównywaniem uruchomień lub dostawców.

Projektowanie znaczącego eksperymentu pomiarowego

Śledź zadanie, model, dane, sprzęt, region, czas trwania, wykorzystanie, energię, szacowaną emisję węgla, jakość oraz liczbę udanych wyników. Efekty rozgrzewki i pamięci podręcznej mogą zniekształcać krótkie uruchomienia, dlatego powtarzaj pomiary pod kontrolowanym obciążeniem. Porównuj modele przy równej jakości i celach usługowych, a nie przy jednym epoku treningu czy liczbie tokenów. Uwzględnij przygotowanie danych, poszukiwanie hiperparametrów, nieudane eksperymenty, nieaktywne zasoby i powtarzające się wnioskowanie, gdy mają znaczenie. Mniejszy ślad treningowy może zostać przytłoczony przez intensywne serwowanie.

Użyj narzędzia, aby znaleźć dźwignie inżynieryjne: ogranicz niepotrzebne uruchomienia, stosuj wczesne zatrzymywanie, dopasowuj rozmiar akceleratorów, popraw wykorzystanie i grupowanie, wybieraj wydajne modele, kwantyzuj lub destyluj, buforuj wyniki, planuj elastyczną pracę w okresach lub regionach o niższej emisji węgla oraz wycofaj nieaktywne zasoby. Każda optymalizacja musi zachować wymaganą dokładność, opóźnienie, bezpieczeństwo i niezawodność. Przenoszenie obliczeń bez uwzględnienia transferu danych lub ograniczeń regionalnych może jedynie przenieść, a nie zmniejszyć wpływ.

Raportowanie i zarządzanie

Opublikuj metodologię, wersję oprogramowania, sprzęt, założenia geograficzne, metrykę jakości oraz niepewność wraz z szacunkiem. Unikaj porównywania organizacji, które używają różnych granic. Ustal budżety i przeglądaj duże eksperymenty przed ich uruchomieniem, ale nie nagradzaj zespołów za ukrywanie obliczeń poza mierzonymi środowiskami. Zabezpiecz metadane eksperymentu i unikaj rejestrowania prywatnych zapytań lub danych. CodeCarbon uwidacnia koszt środowiskowy i umożliwia porównania w ramach dyscyplinowanej metody; nie może zapewnić pełnej oceny cyklu życia ani zastąpić niezależnie zweryfikowanego rozliczania energii i emisji węgla.

Przykładowe zastosowanie: porównanie dwóch uruchomień treningu modelu

Zespół trenuje ten sam model obrazowy na dwóch typach akceleratorów, używając CodeCarbon z identycznymi danymi, celem jakości, logiką batch i regułą zatrzymania. Rejestruje wersję narzędzia, sprzęt, region, częstotliwość próbkowania, wykorzystanie, czas trwania, energię, źródło intensywności węglowej oraz niepewność. Porównanie obejmuje nieudane próby i przetwarzanie wstępne, podczas gdy emisje wbudowane sprzętu są wyraźnie wyłączone z szacunku czasu działania. Wyniki są normalizowane na trening spełniający wymogi jakości.

Bardziej wydajna konfiguracja jest następnie testowana pod kątem opóźnienia wnioskowania, niezawodności i dokładności końcowej. Inżynierowie redukują czas bezczynności i uruchomienia hiperparametrów, usprawniają grupowanie oraz planują elastyczną pracę tam, gdzie intensywność sieci jest niższa, bez przenoszenia regulowanych danych. Raport publikuje założenia i unika twierdzenia o zerowym wpływie dzięki umowom na odnawialne źródła. Szacunek staje się sygnałem budżetu i projektowania, a nie odznaką marketingową. Powtarzane pomiary sprawdzają, czy optymalizacja zmniejszyła całkowite obciążenie w cyklu życia, a nie jedynie jedną widoczną sesję.

Dowody wdrożeniowe i gotowość operacyjna

Decyzja produkcyjna wymaga więcej niż udanego demonstracji. Zdefiniuj docelowych użytkowników, środowisko operacyjne, dane wejściowe, wyjściowe, zależności, właściciela oraz konsekwencje każdego istotnego błędu. Ustal powtarzalną bazę odniesienia i wersjonowany zestaw oceny przed strojeniem. Testuj typowe przypadki, warunki brzegowe, nieprawidłowe lub brakujące dane, zmianę rozkładu, awarię zależności, niewłaściwe użycie oraz grupy lub środowiska najczęściej niedostatecznie obsługiwane. Mierz jakość zadania wraz z kalibracją lub niepewnością, opóźnieniem, przepustowością, kosztami zasobów, dostępnością, prywatnością i bezpieczeństwem. Rejestruj każdą transformację i próg, aby niezależny recenzent mógł odtworzyć wynik i odróżnić dowód od atrakcyjnego prototypu.

Przed uruchomieniem przydziel odpowiedzialność za wydanie, wyjątki, zmiany, przywrócenie i wycofanie. Stosuj etapowe wdrażanie, zachowaj bezpieczną alternatywę i weryfikuj monitorowanie przy celowo wprowadzonych awariach. Telemetria operacyjna powinna ujawniać jakość danych wejściowych, zachowanie wyjścia, wersję modelu lub reguły, stan zależności, interwencje ludzkie oraz potwierdzone wyniki, nie gromadząc niepotrzebnych wrażliwych danych. Określ progi alarmowe i właściciela reakcji, a następnie przeglądaj dowody z rzeczywistego świata po wdrożeniu, zamiast zakładać, że offline’owa wydajność będzie trwała. Przeglądaj ponownie, gdy zmienią się źródła danych, użytkownicy, modele, dostawcy, polityki, sprzęt lub cele. Utrzymany system wymaga także udokumentowanego odzyskiwania, nauki z incydentów, procedur usuwania i przechowywania oraz wyraźnego momentu, w którym powinien zostać wyłączony lub zastąpiony.

Najczęściej zadawane pytania

Czy CodeCarbon bezpośrednio mierzy CO₂ pochodzące z komputera?

Nie. Szacuje emisje na podstawie zużycia energii i intensywności węglowej energii elektrycznej; komputery nie emitują bezpośrednio gazów cieplarnianych sieci.

Czy przetwarzanie w chmurze zawsze ma niższą emisję węgla?

Nie. Wyniki zależą od efektywności sprzętu, wykorzystania, narzutu centrum danych, miksu sieci, regionu, czasu i transferu danych.

Podstawowe źródła

Blogger i programista ze specjalnościami w Machine Learning i Deep Learning tematy. Daniel liczy, że pomoże innym wykorzystać moc sztucznej inteligencji dla dobra społecznego.