Event modifs and README update
This commit is contained in:
47
README.md
47
README.md
@@ -1,17 +1,21 @@
|
||||
# Wyvern&Castle
|
||||
|
||||
## Sujet et tache
|
||||
Ceci est un projet de **modèle MCP** ([Model Context Protocol](https://modelcontextprotocol.io/docs/getting-started/intro)) pour le cours de **Natural Language Programming** de l'année 2025-2026.
|
||||
|
||||
L'objectif du projet a été de concevoir une **version simplifié du jeu Donjon & Dragon** avec un LLM capable de générer des parties et des scénarios qui n'ont de limite que votre imagination (et celles du LLM aussi!).
|
||||
Le projet contient un serveur (`server.py`) qui intéragit avec notre API de jeu (`game.py`).
|
||||
Le projet contient un serveur (`server.py`) qui intéragit avec notre API de jeu (`game.py`) via un système d'outils (MCP tooling) asynchrone afin de pouvoir enchainer les outils sans trop de délais d'interruption pour les appels long.
|
||||
|
||||

|
||||
|
||||
|
||||
## Initialisation du projet
|
||||
Pour lancer une partie de notre jeu, nous vous conseillons d'installer **[Claude Desktop](https://claude.com/fr-fr/download)** (disponible sur Windows
|
||||
et Mac) qui va servir de LLM. Nous n'avons pas essayé mais il serait aussi possible d'utiliser la **version Desktop de ChatGPT**
|
||||
## Installation des dépendances
|
||||
Pour lancer une partie de notre jeu, il faudra installer **l'utilitaire python `UV`** qui est similaire à `pip` ainsi qu'une **application qui contient un LLM** de bureau.
|
||||
|
||||
1. Installer l'utilitaire python UV :
|
||||
Nous vous conseillons d'installer **[Claude Desktop](https://claude.com/fr-fr/download)** (disponible sur Windows
|
||||
et Mac) qui va servir de LLM de base. Nous n'avons pas essayé pour ce projet mais il serait aussi possible d'utiliser la **version Desktop de ChatGPT**.
|
||||
|
||||
**1. Installation de UV :**
|
||||
```bash
|
||||
# Mac/Linux
|
||||
curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
@@ -19,27 +23,30 @@ curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
|
||||
```
|
||||
|
||||
2. Initialiser le dossier pour l'installation
|
||||
**2. Initialiser le dossier pour l'installation**
|
||||
Creer un dossier et cloner le projet :
|
||||
```bash
|
||||
mkdir wyvern_castle
|
||||
cd wyvern_castle
|
||||
git clone "https://gitea.galaxynoliro.fr/KuMiShi/Wyvern-Castle.git"
|
||||
```
|
||||
3. Creation de l'environnement virtuel
|
||||
**3. Creation de l'environnement virtuel**
|
||||
```bash
|
||||
# Cela est nécessaire afin de pouvoir télécharger les librairies du projet
|
||||
uv venv
|
||||
```
|
||||
Mac/Linux
|
||||
```bash
|
||||
# Activation du venv
|
||||
source .venv/bin/activate
|
||||
```
|
||||
Windows
|
||||
```Powershell
|
||||
# Activation du venv
|
||||
.\.venv\Scripts\activate
|
||||
```
|
||||
|
||||
4. Installation des dependances/requirements
|
||||
**4. Installation des dependances/requirements python**
|
||||
```bash
|
||||
# Synchronise l'environnement virtuel du dossier avec les dependances du projet
|
||||
uv pip sync pyproject.toml
|
||||
@@ -50,9 +57,13 @@ uv pip compile --upgrade pyproject.toml -o uv.lock
|
||||
uv pip sync uv.lock
|
||||
```
|
||||
|
||||
5. Changement de la config de Claude Desktop
|
||||
Modifier le fichier `claude_desktop_config.json`
|
||||
**5. Configuration de Claude Desktop**
|
||||
Il faut d'abord se rendre dans les **Paramètres > Développeur** en cliquant sur l'icône du profil en bas à gauche de la fenêtre.
|
||||
<div align="center">
|
||||
<img src="images/parameter_claude.PNG"/>
|
||||
</div>
|
||||
|
||||
Une fois dans la partie dev, il faut rajouter la configuration suivante en modifier le fichier `claude_desktop_config.json` par le json ci-dessous:
|
||||
```json
|
||||
{
|
||||
"mcpServers": {
|
||||
@@ -68,10 +79,24 @@ Modifier le fichier `claude_desktop_config.json`
|
||||
}
|
||||
}
|
||||
```
|
||||
Si la configuration a bien été effectuée, vous devriez voir le tag `running` à côté du modèle. Autrement, il faudra sûrement **redémarrer l'application**. Si jamais ca ne fonctionne toujours pas, vous pouvez
|
||||
aller **regarder les logs** ("journaux") pour diagnostiquer l'erreur.
|
||||
|
||||
## Utilisation
|
||||
Le projet est assez simple d'utilisation car une fois le serveur lancé, il vous suffit d'écrire des prompts à l'aide de votre application Desktop de LLM. Il est aussi possible d'avoir accès à une aide de génération de prompt intégrée.
|
||||
<div align="center">
|
||||
<img src="images/create_player.gif"/>
|
||||
</div>
|
||||
|
||||
Une fois les configurations terminées et que notre modèle tourne bien en local, vous pouvez vous rendre dans **Discussion** et verifier dans l'icône **(+) -> Connecteurs** que votre modèle wyvern_castle est bien coché:
|
||||
|
||||
<div align="center">
|
||||
<img src="images/connector.png"/>
|
||||
</div>
|
||||
|
||||
Si cela est bien coché, alors il ne vous reste plus qu'à écrire votre prompt et laisser l'IA utilise nos outils MCP:
|
||||
<div align="center">
|
||||
<img src="images/game_party_state.gif"/>
|
||||
</div>
|
||||
|
||||
## Documentation
|
||||
### Tools / Outils
|
||||
|
||||
Reference in New Issue
Block a user