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] # 特定プロバイダー(例: OpenAI)用のサポートを追加
サポートされているプロバイダーはドキュメントに記載されており、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)の平均(および場合によっては分布)推定値を提供します。
主な機能
- プロバイダー非依存:オプションの extras により主要な LLM API をサポート。
- 定量的指標:電力使用量と CO₂‑当量排出量の両方を返す。
- 軽量統合:数行のコードでトラッキング開始。
- オープンソース&コミュニティ主導:CodeCarbon の非営利組織の一部、MIT‑style MPL‑2.0 ライセンス。
- ドキュメントとツール:完全なドキュメントは https://ecologits.ai、Colab ノートブック、Discord コミュニティでサポート。
利用者 – 研究者、プロダクトチーム、サステナビリティ担当者など、AI サービスの環境コストを監査する必要がある人々。
コントリビューション – ドキュメントに貢献ガイドと開発環境設定が記載されています(Contributing to EcoLogits を参照)。プロジェクトは貢献を歓迎し、複数のスポンサーに支えられています。
EcoLogits は生成系 AI の隠れたエネルギーコストを可視化し、より責任ある開発と報告を可能にします。