Inspiration
I thought that the work done in Cooperate Or Collapse () was pretty interesting. In it, they tasked LLMs with playing cooperative games and found that they often fell into the classic "Tragedy of the Commons". I thought that it would be interesting to extend their work by: 1.) Allowing for more generalized types of games to be played 2.) Allowing for varying topologies 3.) Allowing for more robust sets of prompt framings to be used
What it does
It essentially has 2 main functions 1.) Run full simulations of two agents playing a 2x2 matrix game. 2.) Gather activations across various different game types & framings. Then training probes to classify the game type (i.e. Prisoners Dilemma, Hawk Dove, etc)
How we built it
I used langchain, huggingface transformers, and created a simple gymnasium environment. I created the logic for passing messages, performing the actiongs, etc
Challenges we ran into
Mostly challenges with LangChain documentation & interoperability with HuggingFace Transformers
Accomplishments that we're proud of
I think this was in general a fun project to work on. I got to learn about activation probing, working with GPUs to run language models locally, and read some fun related papers
What's next for GAIMs
In terms of the environment itself, the main capabilities that I would like to be able to add include 1.) More dynamic prompt generation. Right now, this just uses precrafted prompts. I'd like to be able to 2.) Allow for multi-agent situations instead of just 2 player games 3.) Allow for negotiation & cooperative type games
In terms of experiments, I'd like to experiment with varying the underlying agents (i.e. OSS 20b vs ChatGPT/Claude/Gemini) Also I'd like to experiment with varying the topology for communication in multi-agent settings
Built With
- huggingface
- langchain
Log in or sign up for Devpost to join the conversation.