mlco2/ecologits
🌱 EcoLogits tracks the energy consumption and environmental footprint of using generative AI models through APIs.
EcoLogits – 생성형 AI 호출의 탄소 영향을 추정
무엇인가 – EcoLogits는 Python 라이브러리로, 주요 생성형 AI API(OpenAI, Anthropic, Cohere, Google‑GenAI, HuggingFace, Mistral AI 등)에 대한 추론 요청의 에너지 사용량과 온실가스 배출량을 측정합니다. 클라이언트 코드에 삽입해 평소와 같이 요청을 보내면 추정 kWh와 CO₂‑당량 값을 포함한 impacts 객체가 반환됩니다.
왜 중요한가 – 대형 언어 모델이 보편화되면서 계산 발자국이 커지고 있습니다. EcoLogits는 개발자에게 숨겨진 비용을 간단히 드러내어 팀이 보다 지속 가능한 선택을 하거나, 배출량을 보고하거나, 사용량을 상쇄할 수 있도록 돕습니다.
설치
pip install ecologits # 핵심 패키지
pip install ecologits[openai] # 특정 provider 지원 추가 (예: OpenAI)
지원되는 provider는 문서에 나와 있으며 anthropic, cohere, google-genai, huggingface-hub, mistralai, openai가 포함됩니다.
기본 사용법
from ecologits import EcoLogits
from openai import OpenAI
EcoLogits.init(providers=["openai"]) # OpenAI 호출 추적 활성화
client = OpenAI(api_key="<YOUR_KEY>")
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "Tell me a funny joke!"}]
)
print("Energy consumption:", response.impacts.energy.value.mean, "kWh")
print("GHG emissions:", response.impacts.gwp.value.mean, "kgCO2eq")
response.impacts 객체는 에너지(kWh)와 지구 온난화 잠재력(kg CO₂‑eq)의 평균(및 경우에 따라 분포) 추정치를 제공합니다.
주요 기능
- Provider‑agnostic: 선택적 extras를 통해 주요 LLM API 지원.
- 정량적 지표: 전력 사용량과 CO₂‑당량 배출량을 모두 반환.
- 경량 통합: 몇 줄의 코드만으로 추적 시작.
- 오픈소스·커뮤니티 주도: CodeCarbon 비영리 단체의 일환이며 MIT‑style MPL‑2.0 라이선스.
- 문서·도구: 전체 문서는 https://ecologits.ai에 있으며, Colab 노트북과 Discord 커뮤니티 지원 제공.
누가 사용하는가 – 연구원, 제품 팀, 지속 가능성 담당자 등 AI 서비스의 환경 비용을 감사해야 하는 사람들.
기여 – 문서에 기여 가이드와 개발 환경 설정이 제공됩니다(Contributing to EcoLogits 참고). 프로젝트는 기여를 환영하며 여러 스폰서가 지원합니다.
EcoLogits는 생성형 AI의 숨겨진 에너지 비용을 가시화하여 보다 책임감 있는 개발과 보고를 가능하게 합니다.