Spaces:
Running
Running
Update README.md (#1)
Browse files- Update README.md (101d3962248e9a4c53cb42ab46492599351ee10b)
README.md
CHANGED
@@ -8,5 +8,72 @@ pinned: false
|
|
8 |
license: other
|
9 |
short_description: final submission
|
10 |
---
|
|
|
|
|
11 |
|
12 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8 |
license: other
|
9 |
short_description: final submission
|
10 |
---
|
11 |
+
# MistralAI_GameJam2025
|
12 |
+
This repo hosts Team'7 project for the Mistral AI Game Jam 2025. Thanks to Mistral, Huggingface, Scaleway and ElevenLabs for providing the ressources!
|
13 |
|
14 |
+
## Game Description
|
15 |
+
|
16 |
+
TODO
|
17 |
+
|
18 |
+
## Architecture
|
19 |
+
![Architecture Diagram](readme_assets/mermaid-diagram-2025-01-25-105038.svg)
|
20 |
+
|
21 |
+
## How to Build the Front-End
|
22 |
+
|
23 |
+
This project contains three main components, the Python LLM middleware (using Django), Web interface (using Vite React), and Unity 6 game project.
|
24 |
+
|
25 |
+
To build the front-end code, you must follow the following steps:
|
26 |
+
|
27 |
+
1. Build the game
|
28 |
+
|
29 |
+
Open the `./unity` folder through Unity Hub with Unity 6. Then, switch the build target to `Web`.
|
30 |
+
|
31 |
+
2. Prepare the build folder
|
32 |
+
|
33 |
+
When building the game, you'll be asked to choose the name and path of the output folder. Make sure you set that as `gamejamproj`, or all the contents of the `Build` folder has that name.
|
34 |
+
|
35 |
+
Next, rename the `Build` folder to `build` (only for consistency. You can change the build path and name in `./app/src/config`).
|
36 |
+
|
37 |
+
3. Build the Web UI
|
38 |
+
|
39 |
+
Move the `build` folder to the `.app/public` folder.
|
40 |
+
Go to the `./app` folder, and run `yarn` to install the dependencies, and `yarn build` to build everything. The build output should be stored in the `./app/dist` folder.
|
41 |
+
|
42 |
+
4. Move the Unity build to the web UI
|
43 |
+
|
44 |
+
Make sure the `build` folder that contains the Unity WebGL binaries are in the same path as the `index.html` file in the `dist` folder.
|
45 |
+
|
46 |
+
5. Run the page
|
47 |
+
|
48 |
+
You can deploy the page or run the `index.html` through a local HTML server. Note that due to WASM policy, you cannot just double-click the `.html` file and load it in your browser to play the game.
|
49 |
+
|
50 |
+
|
51 |
+
## Backend
|
52 |
+
|
53 |
+
# Personality-Based Decision Workflow
|
54 |
+
![Personalities workflow ](readme_assets/personalities_workflow.svg)
|
55 |
+
This flowchart illustrates the decision-making process for an AI personality-based word-guessing game. It visually represents how the AI determines its behavior and output based on its assigned personality trait.
|
56 |
+
|
57 |
+
## Workflow Overview
|
58 |
+
|
59 |
+
1. **Start Node**: The process begins by parsing the `BASE_PROMPT` and inserting relevant context.
|
60 |
+
2. **Personality Decision**: The workflow checks the assigned personality trait (`sensitive_to_compliments`, `rebellious`, `stubborn`, `lazy`, `normal`, or `overthinker`), which determines how the AI interprets advice and makes guesses.
|
61 |
+
- **Sensitive to Compliments**: Trusts advice only when it includes compliments.
|
62 |
+
- **Rebellious**: Challenges or twists user advice, often defying direct suggestions.
|
63 |
+
- **Stubborn**: Prefers to stick with previous guesses unless provided overwhelming evidence.
|
64 |
+
- **Lazy**: Takes minimal effort, often choosing random or obvious guesses.
|
65 |
+
- **Normal**: Processes advice straightforwardly and logically.
|
66 |
+
- **Overthinker**: Analyzes hints from multiple angles, often second-guessing decisions.
|
67 |
+
3. **Making Guesses**: Based on the selected personality, rules and context are applied to propose guesses.
|
68 |
+
4. **Satisfaction Rating**: The AI evaluates the advice, assigning a satisfaction rating (`0`, `1`, or `2`) based on its helpfulness or relevance.
|
69 |
+
5. **Output Assembly**: A JSON object is created, containing the guesses, satisfaction rating, and reasoning.
|
70 |
+
6. **End Node**: The process completes with the assembled output.
|
71 |
+
|
72 |
+
## Visual Key
|
73 |
+
|
74 |
+
- **Purple (Decision Nodes)**: Indicate points where a decision is made (e.g., personality check, satisfaction rating).
|
75 |
+
- **Pink (Personality Nodes)**: Represent personality-specific rules and behavior.
|
76 |
+
- **Blue (Process Nodes)**: Represent operational steps, such as parsing prompts and proposing guesses.
|
77 |
+
- **Green (Start)** and **Red (End)**: Highlight the start and end of the workflow.
|
78 |
+
|
79 |
+
This structured workflow ensures that each personality behaves uniquely, adding diversity to AI interactions. The color-coded nodes make the chart easy to follow and visually intuitive.
|