ASesYusuf1 commited on
Commit
8e0d7ea
·
verified ·
1 Parent(s): be32e81

Update processing.py

Browse files
Files changed (1) hide show
  1. processing.py +0 -98
processing.py CHANGED
@@ -29,7 +29,6 @@ import locale
29
  import re
30
  import psutil
31
  import concurrent.futures
32
- from tqdm import tqdm
33
  from google.oauth2.credentials import Credentials
34
  import tempfile
35
  from urllib.parse import urlparse, quote
@@ -115,103 +114,6 @@ def extract_model_name_from_checkpoint(checkpoint_path):
115
  print(f"Original checkpoint path: {checkpoint_path}, extracted model_name: {model_name}")
116
  return model_name.strip()
117
 
118
- Hata mesajlarını inceledim ve sorun, run_command_and_process_files fonksiyonunda logging modülünün tanımlı olmaması nedeniyle ortaya çıkıyor. Bu, NameError: name 'logging' is not defined hatasına neden oluyor. Ayrıca, önceki konuşmalarımızda tqdm'yi kaldırarak time modülüyle %1'lik artışlarla (örneğin %23, %24, %25) ilerleme takibi yapmayı hedeflediğimiz için, bu entegrasyonu da tutarlı bir şekilde uygulayacağız. Aşağıda, hatayı çözmek ve istenen ilerleme takibini sağlamak için adım adım çözüm sunuyorum.
119
-
120
- Hata Analizi
121
- Hata Detayları:
122
- Birincil Hata: logging.info çağrısı, logging modülünün run_command_and_process_files fonksiyonunda tanımlı olmaması nedeniyle NameError üretiyor (satır 128, processing.py).
123
- İkincil Hata: Hata işleme bloğunda (except bloğu, satır 315), yine logging.error çağrısı aynı NameError'ü tetikliyor.
124
- Dosya ve Konum: Hata, /home/user/app/processing.py içinde run_command_and_process_files fonksiyonunda meydana geliyor.
125
- Bağlam: process_audio fonksiyonu, run_command_and_process_files üzerinden bir ses dosyasını işlerken bu hatayla karşılaşıyor.
126
- Olası Nedenler:
127
- logging modülü, processing.py dosyasında içe aktarılmamış.
128
- Önceki kod düzenlemelerinde logging import'u atlanmış veya yanlışlıkla silinmiş.
129
- run_command_and_process_files fonksiyonu, bağımsız bir modül olarak çalıştırıldığında bağımlılıkları eksik olabilir.
130
- Hedefler:
131
- NameError hatasını çözmek için logging modülünü processing.py dosyasına ekleyeceğiz.
132
- run_command_and_process_files fonksiyonunu, tqdm'yi tamamen kaldırarak ve time modülüyle %1'lik ilerleme güncellemeleriyle Gradio arayüzüne uyumlu hale getireceğiz.
133
- process_audio ve ilgili fonksiyonların hata yönetimini güçlendireceğiz.
134
- ZeroGPU (Hugging Face Spaces) ortamında uyumluluğu koruyacağız.
135
- Çözüm
136
- 1. logging Modülünü Ekleme
137
- NameError'ü çözmek için processing.py dosyasına logging modülünü içe aktaracağız ve loglama ayarlarını yapılandıracağız. Ayrıca, log dosyasının (utils.log) doğru çalıştığından emin olacağız.
138
-
139
- python
140
-
141
- Collapse
142
-
143
- Wrap
144
-
145
- Run
146
-
147
- Copy
148
- import logging
149
-
150
- # Loglama ayarları
151
- logging.basicConfig(
152
- level=logging.DEBUG,
153
- filename='utils.log',
154
- filemode='a',
155
- format='%(asctime)s - %(levelname)s - %(message)s'
156
- )
157
- Bu kodu processing.py dosyasının en üstüne ekleyeceğiz.
158
-
159
- 2. run_command_and_process_files Fonksiyonunu Güncelleme
160
- run_command_and_process_files fonksiyonunu, logging hatasını düzelterek, tqdm'yi kaldırarak ve time modülüyle %1'lik ilerleme takibi ekleyerek güncelliyoruz. Ayrıca, hata yönetimini güçlendirelim ve Gradio arayüzüyle uyumluluğu sağlayalım.
161
-
162
- Aşağıda, güncellenmiş run_command_and_process_files fonksiyonu:
163
-
164
- python
165
-
166
- Collapse
167
-
168
- Wrap
169
-
170
- Run
171
-
172
- Copy
173
- import subprocess
174
- import shutil
175
- import time
176
- import glob
177
- import os
178
- import librosa
179
- import soundfile as sf
180
- import sys
181
- import traceback
182
- import logging
183
-
184
- # Loglama ayarları
185
- logging.basicConfig(
186
- level=logging.DEBUG,
187
- filename='utils.log',
188
- filemode='a',
189
- format='%(asctime)s - %(levelname)s - %(message)s'
190
- )
191
-
192
- from assets.i18n.i18n import I18nAuto
193
- i18n = I18nAuto()
194
-
195
- def extract_model_name_from_checkpoint(checkpoint_path):
196
- """Checkpoint dosya adından model adını çıkarır."""
197
- return os.path.splitext(os.path.basename(checkpoint_path))[0]
198
-
199
- def sanitize_filename(filename):
200
- """Dosya adını güvenli hale getirir."""
201
- return "".join(c if c.isalnum() or c in "._-" else "-" for c in filename)
202
-
203
- def update_progress_html(progress_label, progress_percent):
204
- """Gradio arayüzü için ilerleme çubuğu HTML'si oluşturur."""
205
- progress_percent = min(max(round(progress_percent), 0), 100) # %1 hassasiyet
206
- return f"""
207
- <div id="custom-progress" style="margin-top: 10px;">
208
- <div style="font-size: 1rem; color: #C0C0C0; margin-bottom: 5px;" id="progress-label">{progress_label}</div>
209
- <div style="width: 100%; background-color: #444; border-radius: 5px; overflow: hidden;">
210
- <div id="progress-bar" style="width: {progress_percent}%; height: 20px; background-color: #6e8efb; transition: width 0.3s; max-width: 100%;"></div>
211
- </div>
212
- </div>
213
- """
214
-
215
  def run_command_and_process_files(
216
  model_type,
217
  config_path,
 
29
  import re
30
  import psutil
31
  import concurrent.futures
 
32
  from google.oauth2.credentials import Credentials
33
  import tempfile
34
  from urllib.parse import urlparse, quote
 
114
  print(f"Original checkpoint path: {checkpoint_path}, extracted model_name: {model_name}")
115
  return model_name.strip()
116
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
117
  def run_command_and_process_files(
118
  model_type,
119
  config_path,