- Python 83.5%
- HTML 11.2%
- Dockerfile 2.7%
- CSS 2.3%
- Shell 0.3%
| ai_model@c5660eff07 | ||
| discord-bot | ||
| IA | ||
| tests | ||
| web | ||
| .dockerignore | ||
| .env | ||
| .gitignore | ||
| .gitmodules | ||
| .python-version | ||
| docker-compose.yml | ||
| README.md | ||
| setup.sh | ||
Botochtone
Botochtone est un robot (ou bot) discord ayant pour but de filtrer les messages sur les serveurs et de supprimer le cyberharcèlement.
Lancement
Tout d'abord exécutez le script setup.sh pour cloner le sous-module afin d'avoir le modèle d'IA. Ce script ne fonctionne que si vous avez cloné le dépot au préalable, si le code provient d'un tarball, il faudra alors supprimer le dossier ai_model et cloner le dépot associé dans ce dossier (git clone https://forge.piair.dev/UQAC/IA.git ai_model).
Pour lancer uniquement un élément, voir le README.md présent dans le dossier de l'élément; par exemple pour lancer le bot individuellement, lire le fichier discord-bot/README.md.
Il n'existe qu'une seule façon de lancer tous les éléments d'une traite.
Docker
À noter que votre installation de Docker peut requérir un accès administrateur à la machine, vous devez alors soit être dans le groupe docker soit rajouter sudo devant la commande. Cette note est valable pour toutes les commandes Docker.
Clonez le dépôt et allez dedans.
git clone https://forge.piair.dev/UQAC/Botochtone.git && cd Botochtone
Créez le fichier d'environnement à partir du fichier d'exemple et modifiez-le.
cp .env{.example,} && vim .env
Faire de même dans chaque dossier demandant un fichier d'environnement. Par exemple dans le dossier discord-bot, copiez le fichier .env.example dans le fichier .env et modifiez-le pour y mettre le token de votre bot discord.
Afin de démarrer le container utilisez la commande :
docker compose up
L'ajout de l'option -d à la fin de la commande permet de se détacher du container une fois ce-dernier lancé.
En mode détaché, le container s'arrête via la commande :
docker compose down
Si vous souhaitez relancer les éléments après des modifications, il faut reconstruire le container avec l'option --build. Par exemple :
docker compose up -d --build
Caution
Il est apparu qu'une erreur pouvait survenir lors de la création des images :
target api: failed to solve: process "/bin/sh -c uv sync --frozen --no-dev" did not complete successfully: exit code: 2Il semblerait qu'exécuter la commande de build plusieurs fois permette de passer outre l'erreur et compiler correctement. Le nombre d'exécutions nécessaires est inconnu.
Accès
Une fois les containers lancés, une page web sera accessible à l'URL http://localhost:8081, l'api permettant au bot l'interaction avec l'IA à l'URL http://localhost:8000 et enfin, l'interface IA à l'URL http://localhost:8080