Pujan-Dev commited on
Commit
9b781c6
·
1 Parent(s): c8f4e3f

Add real forged classifier routes and configuration for document forgery detection

Browse files
Files changed (3) hide show
  1. app.py +2 -0
  2. config.py +8 -0
  3. features/__init__.py +5 -0
app.py CHANGED
@@ -12,6 +12,7 @@ from slowapi.util import get_remote_address
12
  from config import ACCESS_RATE
13
  from features.image_classifier.routes import router as image_classifier_router
14
  from features.image_edit_detector.routes import router as image_edit_detector_router
 
15
  from features.nepali_text_classifier.routes import (
16
  router as nepali_text_classifier_router,
17
  )
@@ -50,6 +51,7 @@ app.include_router(text_classifier_router, prefix="/text", tags=["English Text C
50
  app.include_router(nepali_text_classifier_router, prefix="/NP", tags=["Nepali Text Classifier"])
51
  app.include_router(image_classifier_router, prefix="/AI-image", tags=["AI Image Classifier"])
52
  app.include_router(image_edit_detector_router, prefix="/detect", tags=["Image Edit Detection"])
 
53
 
54
 
55
  @app.get("/", tags=["System"])
 
12
  from config import ACCESS_RATE
13
  from features.image_classifier.routes import router as image_classifier_router
14
  from features.image_edit_detector.routes import router as image_edit_detector_router
15
+ from features.real_forged_classifier.routes import router as real_forged_classifier_router
16
  from features.nepali_text_classifier.routes import (
17
  router as nepali_text_classifier_router,
18
  )
 
51
  app.include_router(nepali_text_classifier_router, prefix="/NP", tags=["Nepali Text Classifier"])
52
  app.include_router(image_classifier_router, prefix="/AI-image", tags=["AI Image Classifier"])
53
  app.include_router(image_edit_detector_router, prefix="/detect", tags=["Image Edit Detection"])
54
+ app.include_router(real_forged_classifier_router, prefix="/real-forged", tags=["Real/Forged Image Classifier"])
55
 
56
 
57
  @app.get("/", tags=["System"])
config.py CHANGED
@@ -25,6 +25,14 @@ class Config:
25
 
26
  REAL_FORGED_MODEL_REPO_ID = os.getenv("REAL_FORGED_MODEL_REPO_ID", "rhnsa/real_forged_classifier")
27
  REAL_FORGED_MODEL_FILENAME = os.getenv("REAL_FORGED_MODEL_FILENAME", "fft_cnn_model_78.pth")
 
 
 
 
 
 
 
 
28
 
29
  RAG_CHROMA_HOST = os.getenv("CHROMA_HOST", "localhost")
30
  RAG_CHROMA_PORT = int(os.getenv("CHROMA_PORT", "8000"))
 
25
 
26
  REAL_FORGED_MODEL_REPO_ID = os.getenv("REAL_FORGED_MODEL_REPO_ID", "rhnsa/real_forged_classifier")
27
  REAL_FORGED_MODEL_FILENAME = os.getenv("REAL_FORGED_MODEL_FILENAME", "fft_cnn_model_78.pth")
28
+ REAL_FORGED_MODEL_LOCAL_PATH = os.getenv("REAL_FORGED_MODEL_LOCAL_PATH", "Model/real_forged/fft_cnn_model_78.pth")
29
+ DOCUMENT_FORGERY_MODEL_PATH = os.getenv(
30
+ "DOCUMENT_FORGERY_MODEL_PATH",
31
+ "features/Model/document_forgery/ela_cnn_model.pth",
32
+ )
33
+ # Decision thresholds for document forgery detector (probabilities in 0..1)
34
+ DOCUMENT_FORGERY_POSSIBLE_LOW = float(os.getenv("DOCUMENT_FORGERY_POSSIBLE_LOW", "0.40"))
35
+ DOCUMENT_FORGERY_FORGED_LOW = float(os.getenv("DOCUMENT_FORGERY_FORGED_LOW", "0.55"))
36
 
37
  RAG_CHROMA_HOST = os.getenv("CHROMA_HOST", "localhost")
38
  RAG_CHROMA_PORT = int(os.getenv("CHROMA_PORT", "8000"))
features/__init__.py ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ """Top-level features package for the aiapi project."""
2
+
3
+ __all__ = [
4
+ # Subpackages are dynamically discovered; keep this minimal.
5
+ ]