Update app.py
Browse files
app.py
CHANGED
@@ -106,6 +106,33 @@ st.write("🚀 Detect Fake News, Deepfake Images, and Videos using AI")
|
|
106 |
# Load Models
|
107 |
fake_news_detector = pipeline("text-classification", model="microsoft/deberta-v3-base")
|
108 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
109 |
# Load Deepfake Detection Models
|
110 |
base_model_image = Xception(weights="imagenet", include_top=False)
|
111 |
base_model_image.trainable = False # Freeze base layers
|
|
|
106 |
# Load Models
|
107 |
fake_news_detector = pipeline("text-classification", model="microsoft/deberta-v3-base")
|
108 |
|
109 |
+
@st.cache_resource
|
110 |
+
def load_fake_news_model():
|
111 |
+
return pipeline("text-classification", model="microsoft/deberta-v3-base")
|
112 |
+
|
113 |
+
@st.cache_resource
|
114 |
+
def load_deepfake_models():
|
115 |
+
base_model_image = Xception(weights="imagenet", include_top=False)
|
116 |
+
base_model_image.trainable = False
|
117 |
+
x = GlobalAveragePooling2D()(base_model_image.output)
|
118 |
+
x = Dense(1024, activation="relu")(x)
|
119 |
+
x = Dense(1, activation="sigmoid")(x)
|
120 |
+
deepfake_image_model = Model(inputs=base_model_image.input, outputs=x)
|
121 |
+
|
122 |
+
base_model_video = EfficientNetB7(weights="imagenet", include_top=False)
|
123 |
+
base_model_video.trainable = False
|
124 |
+
x = GlobalAveragePooling2D()(base_model_video.output)
|
125 |
+
x = Dense(1024, activation="relu")(x)
|
126 |
+
x = Dense(1, activation="sigmoid")(x)
|
127 |
+
deepfake_video_model = Model(inputs=base_model_video.input, outputs=x)
|
128 |
+
|
129 |
+
return deepfake_image_model, deepfake_video_model
|
130 |
+
|
131 |
+
# Load models once in cache
|
132 |
+
fake_news_detector = load_fake_news_model()
|
133 |
+
deepfake_image_model, deepfake_video_model = load_deepfake_models()
|
134 |
+
|
135 |
+
|
136 |
# Load Deepfake Detection Models
|
137 |
base_model_image = Xception(weights="imagenet", include_top=False)
|
138 |
base_model_image.trainable = False # Freeze base layers
|