AtaGurbuz commited on
Commit
ed5630e
·
verified ·
1 Parent(s): 68b0409

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +37 -36
app.py CHANGED
@@ -1,48 +1,49 @@
 
1
  import os
2
- import requests
3
- import json
4
  from huggingface_hub import login
 
 
5
  from ultralytics import YOLO
6
 
 
 
 
7
  # Token'ı ortam değişkeninden alıyoruz
8
  token = os.getenv("HUGGINGFACE_TOKEN")
9
- login(token=token)
10
-
11
- # Hugging Face API URL'leri
12
- train_url = "https://datasets-server.huggingface.co/rows?dataset=AtaGurbuz%2FBasic_Dataset&split=train"
13
- val_url = "https://datasets-server.huggingface.co/rows?dataset=AtaGurbuz%2FBasic_Dataset&split=val"
14
-
15
- headers = {
16
- "Authorization": f"Bearer {token}"
17
- }
18
-
19
- def download_data(url, split_name):
20
- response = requests.get(url, headers=headers)
21
- if response.status_code == 200:
22
- data = response.json()
23
- with open(f"{split_name}.json", "w") as f:
24
- json.dump(data, f)
25
- print(f"{split_name} verisi başarıyla indirildi.")
26
- else:
27
- print(f"{split_name} verisi indirilemedi. Hata: {response.status_code}")
28
-
29
- # Eğitim ve doğrulama verilerini indir
30
- download_data(train_url, "train")
31
- download_data(val_url, "val")
32
 
33
  # Modeli eğitme işlemini başlatacağız
34
  def train_model():
35
- # YOLOv8 modelini indiriyoruz (YOLOv8'i Hugging Face'de kullanacağız)
36
- model = YOLO('yolov8n.pt') # Küçük model, büyük modeli indirmek isterseniz yolov8l.pt kullanabilirsiniz.
37
-
38
- # YOLO formatındaki veriyi kullanarak eğitimi başlatıyoruz
39
- model.train(
40
- data='data.yaml', # YOLO formatındaki veri setinin konfigürasyon dosyası
41
- epochs=100, # Eğitim epoch sayısı
42
- imgsz=640, # Resim boyutu
43
- batch=16, # Batch boyutu
44
- name='yolo_training' # Eğitim sonucu kayıt ismi
45
- )
 
 
 
 
 
 
46
 
47
  if __name__ == "__main__":
 
48
  train_model()
 
 
1
+ import logging
2
  import os
 
 
3
  from huggingface_hub import login
4
+ from datasets import load_dataset
5
+ import torch
6
  from ultralytics import YOLO
7
 
8
+ # Logging yapılandırması
9
+ logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
10
+
11
  # Token'ı ortam değişkeninden alıyoruz
12
  token = os.getenv("HUGGINGFACE_TOKEN")
13
+ if token:
14
+ logging.info("Hugging Face token bulundu.")
15
+ login(token=token)
16
+ else:
17
+ logging.error("Hugging Face token bulunamadı. Lütfen token'ı doğru şekilde ayarlayın.")
18
+
19
+ # Veri setini yükle
20
+ try:
21
+ dataset = load_dataset("AtaGurbuz/Basic_Dataset")
22
+ logging.info("Veri seti başarıyla yüklendi.")
23
+ except Exception as e:
24
+ logging.error(f"Veri seti yüklenemedi: {e}")
 
 
 
 
 
 
 
 
 
 
 
25
 
26
  # Modeli eğitme işlemini başlatacağız
27
  def train_model():
28
+ try:
29
+ logging.info("YOLOv8 modeli indiriliyor...")
30
+ model = YOLO('yolov8n.pt') # Küçük model, büyük modeli indirmek isterseniz yolov8l.pt kullanabilirsiniz.
31
+ logging.info("YOLOv8 modeli başarıyla indirildi.")
32
+
33
+ # YOLO formatındaki veriyi kullanarak eğitimi başlatıyoruz
34
+ logging.info("Model eğitimi başlatılıyor...")
35
+ model.train(
36
+ data='data.yaml', # YOLO formatındaki veri setinin konfigürasyon dosyası
37
+ epochs=100, # Eğitim epoch sayısı
38
+ imgsz=640, # Resim boyutu
39
+ batch=16, # Batch boyutu
40
+ name='yolo_training' # Eğitim sonucu kayıt ismi
41
+ )
42
+ logging.info("Eğitim tamamlandı.")
43
+ except Exception as e:
44
+ logging.error(f"Eğitim sırasında bir hata oluştu: {e}")
45
 
46
  if __name__ == "__main__":
47
+ logging.info("Model eğitim süreci başlıyor...")
48
  train_model()
49
+ logging.info("Model eğitim süreci tamamlandı.")