-
Notifications
You must be signed in to change notification settings - Fork 2
Description
To help whoever works on this project next, I am including everything relevant that I have written in my notes.
Notes
- Setup for on Apple silicon Mac using Miniforge
25.1.1-0:cat <<EOF >env.yaml name: cicero dependencies: - python==3.7.* EOF conda env create --file env.yaml --platform osx-64 conda activate cicero pip install -r requirements-lock.txt
Possible future tasks
-
Add to Cicero:
Take turn only if there are possible moves -
Prevent Cicero from sending more advice without a change to the game state
-
Add rollout advice from Cicero to use in commentary
-
Replace direct usage of
Game.messagesto prevent accidental leakage -
Follow up in
#diplomacyabout how to reproduce these issues-
Cicero slows down after retreat phase (demo has 2 hour turns, i.e., we were manually incrementing turns). Restarting Cicero fixed this.
For problem 1: Ok, I got it! Game id: debug_demo2 on server:
REDACTED. The reproduce situation is as following:I used two units of France to move into Italy's VEN, and then it gets into retreat phase for retreating Italy's unit in VEN. I clicked disband on Italy's unit, but I didn't click the ready button. After waiting for 5min, I clicked the ready button. At this moment, I noticed the error of "mismatched phases". After entering the next phase, Cicero advisor on France keeps weird actions and errors.
More details could be found in the log file: 2025_08_25_23_00_15.txt in instance cicero_instance 2 of 4 . The command that I used to run Cicero Advisor was:
bash run_cicero.sh latest advisor --host REDACTED --port 8432 --game_id debug_demo2 --human_powers FRANCE --advice_levels 'MESSAGE|OPPONENT_MOVE|MOVEExtra problem: I am having a hard time to reproduce the problem 1 somehow, I will try again. But I found an error when I tired to use Cicero to join as Russia advisor at the beginning of the game: debug_demo. Restart the Cicero removes the error with the same command. The command is exactly same as the above one. You can find the log file: 2025_08_25_22_04_02.txt in instance: cicero_instance 2 of 4 .
-
If Cicero thinks there should be a truce it stops giving advice (just sends 'draw' in text). Maybe there is a classifier to decide on truce? Or a flag? Could be an easy way to tell it not to do this.
For problem 2: I manually created a balanced situation between France and Russia in game_id : debug_demo on server:
REDACTED. Kindly join the game using Cicero Advisors with the following command for example, and you would see the Cicero showing like "France voted for draw."bash run_cicero.sh latest advisor --host REDACTED --port 8432 --game_id debug_demo --human_powers RUSSIA --advice_levels 'MESSAGE|MOVE'I have a possible solution, but it doesn't work properly
-
-
Work on patches