anakib1 / MangoTruth

Open source infrastructure for AI plagiarism detection
4 stars 0 forks source link

MangoTruth

CI Pipeline

Purpose:

MangoTruth is an open srouce AI detection system focused on:

Contribution

New model

When adding new model, check out our training guidelines!

Ecosystem

Repository consists of:

Supported models:

Name Paper val F1 val AUC Neptune URL
GLTR link TBD TBD TBD
Ghostbuster link 0.981 0.971 link
Perplexity baseline - 0.662 0.5 link

Installation from source

To set up installation on your environment follow these steps:

Running as container

Docker compose setup

Execute the following command from the project directory

 docker volume create storage
 docker-compose up --build -d

1) The front-end is accessible from http://localhost:7860/ 2) The back-end is accessible from http://localhost:8080/ or http://core:8080/

Docker setup

Configuration

Generally, all variables mentioned here follow uppercase naming with "_" as delimiter for env variable and camelcase for .yml config files. Example:

Specifing SERVER_PORT=8080 in env is equivalent to specifying in corresponding config location.

server:
  port: 8080

Core

Config is resolved by path ./core/config/config-development.yml. TODO: Add option to override location.

Variable Usage Default
server.port port of server on which core listens 8080
compute.host host of RabbitMQ 127.0.0.1
compute.username credentials for RabbitMQ guest
compute.password credentials for RabbitMQ guest
storage.databaseName credentials for PostgreSQL mango-db
storage.userName credentials for PostgreSQL mango-user
storage.password credentials for PostgreSQL password
storage.hostName credentials for PostgreSQL postgres

Frontend

Variable Usage Default
server.url url of server on which compute listens http://localhost:8080
gradio.server.name URL on which frontend listens 127.0.0.1
gradio.server.port port on which frontend listens 7860

Compute

Variable Usage Default
rabbitmq.port port of server on which core listens 8080
rabbitmq.host host of RabbitMQ 127.0.0.1
rabbitmq.username credentials for RabbitMQ guest
rabbitmq.password credentials for RabbitMQ guest

Documentation

API endpoints are available in core/docs/swagger.json file.

To generate docs for core endpoints run the following command:

cd core 
swag init -g ./cmd/server/main.go --output ./docs