Implement AI-Based Fishing Catch Photo Moderation

Description:

Implement an automated photo moderation system for SeaChart using a lightweight local vision model via Ollama.

The system should analyse user-uploaded photos and determine whether they are related to fishing catches.

Requirements:

  • Use a lightweight vision model (Qwen3-VL 2B).
  • Automatically analyse uploaded photos.
  • Classify images into three categories:
    • Approved: Clearly shows a fishing catch (fish, crabs, lobsters, etc.).
    • Rejected: Unrelated content (scenery, boats, fishing gear, etc.).
    • Manual Review: Unclear or uncertain images.
  • Return structured JSON results with classification and reason.
  • Support multiple photos per submission.
  • Log moderation results for debugging and review.

Acceptance Criteria:

  • Fishing catch photos are correctly identified.
  • Unrelated photos are flagged or rejected.
  • Uncertain images are sent for manual review.
  • The moderation system runs locally without relying on paid external AI APIs.