Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/genai-impact/ecologits
https://github.com/genai-impact/ecologits
Last synced: 20 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/genai-impact/ecologits
- Owner: genai-impact
- License: mpl-2.0
- Created: 2024-02-02T16:25:32.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-04-17T18:10:09.000Z (3 months ago)
- Last Synced: 2024-04-17T18:43:14.672Z (3 months ago)
- Language: Python
- Size: 291 KB
- Stars: 6
- Watchers: 8
- Forks: 1
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Lists
- open-sustainable-technology - EcoLogits - Tracks the energy consumption and environmental impacts of using generative AI models through APIs. (Consumption / Computation and Communication)
- awesome-green-ai - EcoLogits - black?style=flat&logo=linux) ![Mac](https://img.shields.io/badge/Mac-black?style=flat&logo=apple) ![Win](https://img.shields.io/badge/Win-black?style=flat&logo=windows) ![GPU](https://img.shields.io/badge/GPU-black?style=flat&logo=nvidia) (🛠 Tools / Code-Based Tools)
README
![]()
🌱 **EcoLogits** tracks the energy consumption and environmental impacts of using generative AI models through APIs.
[![PyPI version](https://img.shields.io/pypi/v/ecologits?color=00bf63)](https://pypi.org/project/ecologits/)
[![Python version](https://img.shields.io/pypi/pyversions/ecologits)](https://pypi.org/project/ecologits/)
[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/drive/1VxrpJ5xuWZKQLsSN12kdqUqkppHRct3G?usp=sharing)**Documentation: [ecologits.ai](https://ecologits.ai/)**
## ⚙️ Installation
```shell
pip install ecologits
```For integration with a specific provider, use `pip install ecologits[openai]`. We are currently supporting the following providers: `anthropic`, `cohere`, `huggingface-hub`, `mistralai` and `openai`. See the full [list of providers](https://ecologits.ai/providers/).
## 🚀 Usage
```python
from ecologits import EcoLogits
from openai import OpenAI# Initialize EcoLogits
EcoLogits.init()client = OpenAI(api_key="")
response = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=[
{"role": "user", "content": "Tell me a funny joke!"}
]
)# Get estimated environmental impacts of the inference
print(f"Energy consumption: {response.impacts.energy.value} kWh")
print(f"GHG emissions: {response.impacts.gwp.value} kgCO2eq")
```See package documentation on [EcoLogits](https://ecologits.ai/)
## 💪 Contributing
### Requirements
Have [poetry](https://python-poetry.org/docs/#installation) installed on your system.
Easy install using a virtualenv:
Create a venv:
```shell
python3 -m venv .venv
source .venv/bin/activate
```Install poetry:
```shell
pip install poetry
```### Install project
```shell
poetry install --all-extras --with dev,docs
```### Run tests
```shell
poetry run pytest
```### Run pre-commit hooks locally
[Install pre-commit](https://pre-commit.com/)
```shell
pre-commit run --all-files
```