Playing Codenames with chatGPT?


How do we identify automatable tasks when generative AI capabilities are so young, and the world of work is so established? This question probably does not cross my mind often enough. Every time it does, I am amazed at the results. Take the other night, for example.

I was playing the game Codenames with my kids. The game involves weaving connections between seemingly unrelated words, creating a mental jigsaw puzzle that sparks moments of shared understanding, strategy, and highly nuanced communication. It struck me that ChatGPT, with its vast language model and vision capabilities, could be a perfect tool to automate the tasks in this game.

I first prompted “Do you know the game ‘code names’ ? If so i want you to help me come up with some hints for it.”

ChatGPT: Yes, I'm familiar with the game "Codenames"! It's a team-based word game where players try to guess all of their team's words on the board before the other team does, based on one-word clues given by their spymaster. The clues can only be one word, but they can point to multiple words on the board that the team needs to guess. The goal is to avoid words that belong to the opposing team, neutral words, and especially the assassin word, which would immediately end the game if guessed.

Let's create some hints! Please provide me with a list of words that you're trying to link with a clue, and I'll help you come up with some hints.

Next, I let her know what side we were and gave her the task I wanted her to perform, using this prompt: “I’m going to upload 2 images of the game. The first is the red and blue key card. I am the blue team and have to come up with hints that will map to the cards in the blue spaces. I need words that will not relate to the red spaces.
First i’ll load the key card. Next i’ll load a picture of the word cards so you can see where they’re arranged on the table.”

ChatGPT: Great, I'm ready to help you come up with some hints. Please go ahead and upload the images when you're ready.
ChatGPT: I've got the key card image. Please upload the picture of the word cards as well, so I can see their arrangement and give you the best possible hints.
ChatGPT: Got it! Now I'll cross-reference the key card with the word cards and come up with some hints for the blue team. I'll be careful to avoid words that could be associated with the red team's cards. Let's get started.

Looking at the layout and the key card, here are a few clues you might consider giving:

Clue: "Summit" for 2 cards
Connects to: ALPS, OLYMPUS

Clue: "Heavenly" for 2 cards
Connects to: ANGEL, OLYMPUS

Clue: "Mythical" for 2 cards
Connects to: ANGEL, DWARF

Clue: "Citrus" for 2 cards
Connects to: ORANGE, LEMON

Remember to carefully consider the words your clue could possibly relate to on the board to avoid accidentally directing your team to a word belonging to the red team or the assassin word. Good luck with your game!

This is an impressive start. It clearly understands the key card – to – word card mapping, and knows which team its on. There was one mistake though, in it’s reference to the word card containing “Lemon”. There is no “lemon”. A hallucination? I’m not so sure. This made me realize just how complex this task is. If I’d asked a software engineer to write a program – without using language models or generative ai – the task would have been very complicated. In this game, chatGPT has basically had to ‘write’ its own program to track the thousands of word associations possible in this one round. Mixing the word “lemon” in made me realize it’s probably mapped from the word lemon, added citrus as a possible hint, then “mixed up” the direction it was going and create “lemon”. That’s a very forgivable and impressive mistake for programming logic create on-the-fly. I pushed for some words that might capture more cards: “Can you think of some hints that would toe to more than two cards?”

ChatGPT: Certainly! Crafting a hint that ties together more than two cards without leading to the other team's words or the assassin can be tricky, but let's try:

Clue: "Travel" for 3 cards
Connects to: ALPS, PILOT, PLANE

Clue: "Geography" for 3 cards
Connects to: ALPS, AZTEC, ORANGE (if you consider 'Orange' as a location in France or a reference to 'Orange County')

Clue: "Mythology" for 3 cards
Connects to: ANGEL, DWARF, OLYMPUS (hoping 'Dwarf' gets associated with Norse mythology)

It's important to assess the risks, as more connections increase the chance of misinterpretation. Keep in mind the associations your team may make. If they have shared knowledge or previous clues have established a pattern, this can also inform your decision.

This is impressive because the task is very complex. After conducting optical character recognition on the cards, mapping them using the key card, and then understanding the rules, things get complicated. Each word must be analyzed for multiple possible meanings or contexts, and then each opposing teams’ words must also be mapped, and chatGPT must then calculate what the shortest path is between that puzzle of meanings to identify something a human is most likely to connect. On each hint, it explained the reasoning for the connection between less obviously-connected words. Overlaid with all of this is the challenge of avoiding the assassin card as well. It made one error here with the word “Aztec” which belonged to the other team.

More exploration is needed. As played in this round of the game, humans were able to outperform chatGPT, but with some additional prompt engineering, a description of players’ education and backgrounds, and some more feedback this opens intriguing possibilities. With some work, it looks like a GPT could be built to augment many of the “Spymaster’s” job tasks.

Recent Posts