Just a week ago, OpenAI released o1, their new reasoning model! Have you tried it? I’ve played around with it and was having a hard time coming up with something to ask it to see its power. I found something that I was really impressed with. Before I get there, what is this thing called “reasoning” and how can a machine do it?
ChatGPT o1 reasoning
“We trained these models to spend more time thinking through problems before they respond, much like a person would. Through training, they learn to refine their thinking process, try different strategies, and recognize their mistakes. ” – OpenAI
The machine can now think more, consider its answer, and validate until it finds a satisfactory answer.
I equate this new sorcery of reasoning to what we’ve been achieving with agentic workflows. Today, we can create reasoning within a defined process: ask GPT something, get the answer, send that answer to GPT again, ask it to verify or modify, take that response, send that to GPT, and provide context about the first attempt to GPT, ask it to verify or modify, and so on. Pretty neat! I’ve done something similar in an attempt to create an agent to troubleshoot unit tests for me. Worked surprisingly well :). Now OpenAI has this capability native to the model which makes it incredibly easy to add reasoning to our generative AI solutions!
ChatGPT o1 reasoning in action
Yea, this isn’t a serious example, but I think it illustrates how reasoning works well.
A little backstory: I was watching How Not to Draw on Disney+ with my kids. Specifically Season 3, Episode 5 called Grunkle Stan. Grunkle Stan is a character from the Disney+ TV Show Gravity Falls. This show is a tin-foil-hat-wearer’s fever dream. :D I love it. At the end of this How Not to Draw episode, we see a secret flash on the screen:

After my kids went nuts, I decided to decipher that message:

(if you can’t read it, the text is below)
I immediately saw WR and RI, and thought R is O, thinking of words like TO, NO, OF, ON, etc. Then I thought, wait, ChatGPT o1…
It took 76 seconds and ChatGPT figured out the cipher and answered my question. Impressive.
Check it out.
Me:
Can you decipher this message
EB WUDQVODWLQJ WKLV FRGH BRX DUH KHUHEB DJUHHLQJ WR OHW ELOO FLSKHU WDNH SHUPDQHQW FROWURO RI BRXU PLQG. JRRG OXFN ZLWK WKDWI
GPT reasoned:
Decoding the message
I’m working through the user’s encrypted message, suspecting a Caesar cipher. Shifting each letter back by 3 to uncover the original text, I identify the shifted letters’ positions in the alphabet.
Decoding the message
I’m considering a Caesar cipher with a -3 shift, managing cases where letters revert to a spot before ‘A’. This approach uses modulo 26 to ensure all letters map correctly.
Routing through letter shifts
I’m mapping each letter to its alphabetical position, subtracting 3, and using modulo 26 to find the new letter. For instance, E shifts to B and B shifts to Y.
Deciphering the code
OK, let me see. I’m looking at the sequence of letters and spaces to identify any patterns or codes that might be hidden within. This approach aims to uncover insights step by step.
Assigning numerical values
I mapped each letter to a number, subtracting 3 (modulo 26) from each value to transform the text.
Testing shifts and strategies
Hmm, I’m thinking about how shifting letters by 3 might reveal the original message. The shifts resulted in letters H, E, Z, X, G, T, Y, and O, but the pattern wasn’t clear.
Wondering about cipher shifts
I’m trying to figure out a shifting cipher. Rotating each letter by 13 in ROT13 seems off. Shifting by 3 consistently might make more sense. This leads me to the next step.
Adjusting my approach
I’m starting with a +3 shift but considering -3 and -4. Testing a -1 shift seems promising, but ultimately, letter mapping to the previous letters didn’t yield results.
Deciphering the code
I’m testing different cipher methods like the Atbash and Caesar ciphers, but they aren’t providing clear results yet. Progress is being made by evaluating shifts and analyzing letter patterns.
Trying out shifts
I attempted different shifts like +2, +5, and +19, but they didn’t yield useful results. Next, I’ll consider more complex patterns or keys.
Testing shift ciphers
I explored ROT-13, ROT-2, ROT-1, and a -3 shift cipher, but none produced meaningful letters. I also considered aligning the original message over the alphabet to identify the cipher.
Pinpointing key elements
I observed “BRX” frequently, potentially meaning “YOU”. Focus is now on decoding “ELOO FLSKHU” as “BILL” and “CIPHER”, respectively.
Mapping letters
I’m mapping the letters from the cipher text to their corresponding clear text characters, ensuring the relationships align with previous mappings. This helps in decoding the message accurately.
Cracking the code
OK, let me see. Clearing up cipher mappings: B->Y, R->O, X->U. Now, BRX translates to YOU. The challenge? Decoding DUH KHUHEB next.
Piecing together
Mapping letters from KHUHEB to “HEREBY” fits our mappings: K->H, H->E, U->R, E->B, B->Y. Each letter is correctly mapped and confirmed.
Revisiting mappings
I’m rethinking the mappings, particularly for ‘E’ and ‘B’. It seems ‘E’ should map to ‘E’ instead of ‘B’.
Analyzing encryption logic
OK, let me see. Encrypting KHUHEB as HEREBY suggests a pattern: K->H, H->E, U->R, E->B, B->Y. It appears E maps to B, which raises a question about the substitution logic.
Deciphering the mapping
I’m greasing the wheels by solidifying the mapping from cipher to plain text: E->B, L->I, O->L, F->C, S->P, K->H, H->E, U->R, R->O, X->U, W->T, V->S, G->D, D->A, Q->N, J->G, N->?.
Decoding the message
I’m aligning the cipher letters with their mapped letters and evaluating the potential of decoding the hidden message further.
Cracking the code
Mapping each letter with substitutions, I’m working through the encoded string to uncover meaningful patterns.
Deciphering words
I’m mapping each letter to its plain text equivalent, noting progress. The completed word reads: T R A N S L A T I N G.
Piecing together mappings
I’m working through the cipher mappings with errors and corrections, finally mapping L to I in TRANSLATING, aligning with the cipher’s L to I mapping.
Identifying letter mappings
I’m working through the mapping of cipher letters to plain letters. Notably, the letter L maps to both L and I, leading to a conflict. This suggests that our previous mapping assumption for the word “ELOO” might be incorrect.
Mapping conflicts
I’m tackling the challenge of matching characters from “ELOO” to “GOOD,” “HELL,” and “WILL.” Each attempt reveals overlapping or conflicting letter mappings, suggesting a need for rethinking assumptions.
Testing letter mappings
I tried various letter mappings and shift ciphers to decode the cipher text into plaintext, but none proved successful.
Mapping and shifting
I’m thinking through mapping letters (A=1 to Z=26) and shifting each by -3. E becomes B, B becomes Y.
Piecing together the shifts
OK, I’m working through various shifts for each letter. The +3 and +5 shifts don’t open up any new insights. Now, I’m trying a +8 shift, but it’s still not making much headway.
Mapping letter shifts
I’m mapping out various Caesar cipher shifts to decode letters forward and backward, including shifts of +3, -2, +13 (ROT13), and +6, but none provided clear results.
Taking a closer look
I explored affine and standard substitution ciphers, matching sequences and testing against the alphabet. Progressing through these methods, I’m drafting a more precise solution.
Unraveling the story
I’m considering the possibility that the message implies a challenge, referencing Bill Cipher from Gravity Falls. This suggests the decrypted message involves deciphering something akin to a riddle, which aligns with programming tasks or puzzles.
Again, Impressive.
After all that reasoning, it came out with the following:
Certainly! Here’s the deciphered message:
“By translating this code you are hereby agreeing to let Bill Cipher take permanent control of your mind. Good luck with that!”
This message is a playful warning that decoding it allows “Bill Cipher” (a character from the animated series Gravity Falls) to take control of your mind.
Suuuuuey spot on! If you review its process, it’s really cool to see. I love that it shares what it thought about.
ChatGPT o1 reasoning at “work”
Now, imagine this against your business use cases! Go ahead, think about those complex scenarios that don’t seem to work right now. There ya go, yea, it can handle that. This is going to be awesome.
I’m super excited to start integrating this into some of the platforms I manage and in to a few of my side projects. This is a great “next step” for GenAI.
Have you used o1? How are you liking it? Share below!
This post was not written with GenAI ;)
Subscribe to my blog and get posts like this in your inbox. Share your email below, or follow me on Threads, LinkedIn, or BlueSky.

Leave a Reply