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 notebook 與 Discord 社群支援。
使用者 – 研究人員、產品團隊與永續主管,需要稽核 AI 服務的環境成本。
貢獻 – 文件中提供貢獻指南與開發環境設定(見 Contributing to EcoLogits)。歡迎各界貢獻,且已有多家贊助商支持。
EcoLogits 讓生成式 AI 隱藏的能源成本可見,促進更負責任的開發與報告。