Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -15,21 +15,22 @@ CLASS_NAMES = ['bad', 'good', 'very_good']
|
|
| 15 |
# KHẮC PHỤC LỖI TƯƠNG THÍCH PHIÊN BẢN (KERAS 3 -> KERAS 2)
|
| 16 |
# =================================================================
|
| 17 |
|
| 18 |
-
# 1. Mock DTypePolicy (Xử lý lỗi: Unknown dtype policy
|
| 19 |
class MockDTypePolicy:
|
| 20 |
"""
|
| 21 |
Lớp giả lập để thay thế DTypePolicy của Keras 3.
|
| 22 |
Giúp tránh lỗi deserialization khi chạy trên môi trường cũ.
|
| 23 |
"""
|
| 24 |
def __init__(self, **kwargs):
|
| 25 |
-
|
|
|
|
| 26 |
|
| 27 |
@classmethod
|
| 28 |
def from_config(cls, config):
|
| 29 |
return cls(**config)
|
| 30 |
|
| 31 |
def get_config(self):
|
| 32 |
-
return {}
|
| 33 |
|
| 34 |
# 2. Xử lý InputLayer (Xử lý lỗi: batch_shape)
|
| 35 |
class FixedInputLayer(InputLayer):
|
|
@@ -47,9 +48,6 @@ def fix_augmentation_layer(LayerClass):
|
|
| 47 |
class FixedLayer(LayerClass):
|
| 48 |
def __init__(self, **kwargs):
|
| 49 |
# Danh sách các tham số gây lỗi tương thích giữa Keras 3 và 2
|
| 50 |
-
# 'value_range': Gây lỗi ở RandomContrast
|
| 51 |
-
# 'data_format': Gây lỗi ở RandomFlip
|
| 52 |
-
# 'dtype': Gây lỗi DTypePolicy
|
| 53 |
ignore_keys = ['data_format', 'dtype', 'value_range']
|
| 54 |
|
| 55 |
for key in ignore_keys:
|
|
|
|
| 15 |
# KHẮC PHỤC LỖI TƯƠNG THÍCH PHIÊN BẢN (KERAS 3 -> KERAS 2)
|
| 16 |
# =================================================================
|
| 17 |
|
| 18 |
+
# 1. Mock DTypePolicy (Xử lý lỗi: Unknown dtype policy & Attribute name)
|
| 19 |
class MockDTypePolicy:
|
| 20 |
"""
|
| 21 |
Lớp giả lập để thay thế DTypePolicy của Keras 3.
|
| 22 |
Giúp tránh lỗi deserialization khi chạy trên môi trường cũ.
|
| 23 |
"""
|
| 24 |
def __init__(self, **kwargs):
|
| 25 |
+
# SỬA LỖI: Thêm thuộc tính name để tránh AttributeError
|
| 26 |
+
self.name = kwargs.get("name", "float32")
|
| 27 |
|
| 28 |
@classmethod
|
| 29 |
def from_config(cls, config):
|
| 30 |
return cls(**config)
|
| 31 |
|
| 32 |
def get_config(self):
|
| 33 |
+
return {"name": self.name}
|
| 34 |
|
| 35 |
# 2. Xử lý InputLayer (Xử lý lỗi: batch_shape)
|
| 36 |
class FixedInputLayer(InputLayer):
|
|
|
|
| 48 |
class FixedLayer(LayerClass):
|
| 49 |
def __init__(self, **kwargs):
|
| 50 |
# Danh sách các tham số gây lỗi tương thích giữa Keras 3 và 2
|
|
|
|
|
|
|
|
|
|
| 51 |
ignore_keys = ['data_format', 'dtype', 'value_range']
|
| 52 |
|
| 53 |
for key in ignore_keys:
|