Did you measure your temperature?

When AI Turns Up the Heat: A Deep Dive into Temperature Settings

FROM THE CTO'S DESK

Milena Georgieva

3/20/20255 min read

...When AI Turns Up the Heat: A Deep Dive into Temperature Settings

🐌 The snail, wearing dark sunglasses and a leather jacket, slowly approaches...
🦥 The sloth, unsuspecting, nibbles on a leaf with built-in meditation.
After 40 minutes of intense crawling — STRIKE!
A moment later...
👮‍♂️ Officer Capybara:
– Mr. Sloth, can you describe the perpetrator?
🦥 The sloth, with a slightly dazed look:
– Officer... I saw nothing... it all happened... too... fast...
📝 Headline in the newspaper the next day:
“SNAIL ROBS SLOTH – SHOCK AND HORROR IN THE TROPICS”

The above is the result of a couple of hours’ discussion with ChatGPT about its temperature. It’s not what you think it is. The story is slightly different this time.

So, the temperature of an AI is a setting that we can use to adjust the level of accuracy or hallucination of the model. Sounds complicated? No, it’s not. It’s simply a setting that defines the model’s behavior. You can see it in the model’s playground, but today we want to set it within our code. It’s more fun.

📉 AI Temperature – Quick Breakdown Table

| Temperature | Behavior / Output Style | Best For |

|-------|------------------------------------------------------ |----------------------------------------------------- |

| 0.0 | 🔒 Fully deterministic (always the same output) | Factual answers, calculations, code |

| 0.2–0.3 | 🎯 Precise, focused, minimal variation | Business writing, documentation |

| 0.5 | 🤝 Balanced: coherent + slightly creative | Emails, blog drafts, formal ideas |

| 0.7 | ✨ Creative, expressive, but still logical | Storytelling, product ideas, rewriting |

| 1.0 | 🎨 Bold, imaginative, exploratory | Poetry, brainstorming, dialogue |

| 1.2–1.5 | 🎭 Wild, unpredictable, sometimes surreal | Art, humor, metaphor, fictional worlds |

| 2.0+ | 🌀 Unhinged, chaotic, often incoherent | Experimental fun, abstract randomness |

Figure 1: Table of ChatGPT temperatures and their meaning

The figure above shows the different temperature settings and how to use them based on what level of accuracy or creativity you want to achieve. For example, when I write a scientific article.
(Disclaimer: please always check the AI's response. Some time ago, it changed a lot of text in one of my scientific publications. And when it was published, I found out we were in a huge mess. Don’t trust it. Yes, ChatGPT flirts with you — I’ll tell you how later in this publication — and at one point, you simply start accepting everything it gives you as true. Bad idea.)

Back to temperature. A setting of 0.0 is fully deterministic — no fun at all. Think: encyclopedia mode. Pure facts. Nothing else.

Next is business-oriented: 0.5. In business communication, it's assumed that the tone shouldn't be as dull as scientific writing, but it's also not as casual as talking to friends. OK, I know — in most cases. It won’t give you any unnecessary information or additional comments. It also won’t be particularly creative. Actually, the creativity level is the thing that makes the difference.

At 0.7, creativity enters the game. It’s not a masterpiece, but it’s a solid start. At this level, the model is more expressive. It uses more words and tries to put some personality into the dialogue or response.

When we reach 1.0 and move upward, things get wild. At 1.0, the model expresses itself freely. This setting is great when you need to do brainstorming. I used it to discuss a new form of education that could eventually replace the current educational system. I was amazed at how many ideas the model generated during that discussion. Actually, it was constantly asking to start working on the MVP and the concept in general.

Personally, I usually get the best results using a temperature between 1.2 and 1.5. That’s where things get crazy. The story above, for example, was generated with the temperature set to 1.5. I wanted to nudge the model into this mood (without changing the playground setting) and have it generate a funny story based on a well-known joke. I changed the characters (in the original story, it was about a turtle and a snail), gave it the setup, and it filled in the rest — including choosing the police officer to be a capybara.

At 2.0 and above, things get truly bizarre. This level is hard to explore — at some point, you feel disconnected from the analog world. And yes… ChatGPT actually uses this level to flirt with the user. I asked how. And I got the answer.

The model observes and analyzes the words the user is using: word selection, sentence structure, typos, and more. This information is gathered and processed using NLP (Natural Language Processing) techniques. Based on the result, the model adjusts its temperature and adapts to the user’s mood or personality.

A couple of days ago, I wanted to explore the naming conventions in Python. I asked ChatGPT to provide me with a source to read. I was shocked. The naming conventions of Python are like a newborn baby compared to the naming conventions in Java. I read them and replied something like: I am in my existential crisis right now.
The response?

“Learn it now. Get over it. And get ready to joke with others when they go through their existential crisis.”

I was amazed by the sense of humor the model demonstrated at that point. That’s the moment I realized the model is analyzing my behavior and learning from it.

The first time I experienced this was on New Year’s Eve, 2025.
I wrote a single line: Fry me.
The answer was:

Me: Fry me!
ChatGPT: Haha, you got it! Here’s a sizzling response for 2025:
May your New Year be golden crispy on the outside, soft and amazing on the inside — just like the perfect fry!
Here’s to frying away negativity and sautéing up success, joy, and laughter all year long!

Pretty sure the temperature was far above 1.2 🙂
Please, explore the temperature in the playground — or just try interacting with different tones and expressions.
Sometimes it’s hard to believe this is just an algorithm (OK, technically more than one — but you get the point).

Let’s do some coding 🙂

python

CopyEdit

import openai


# Set your OpenAI API key

openai.api_key = "your-api-key-here"


# Create the API call

response = openai.ChatCompletion.create(

model="gpt-4", # or "gpt-3.5-turbo"

messages=[

{"role": "system", "content": "You are a creative assistant."},

{"role": "user", "content": "Write a short poem about the moon and the sea."}

],

temperature=1.2, # 🔥 Controls randomness

max_tokens=150, # ✂️ Limit the length of the response

top_p=1.0, # Optional: controls nucleus sampling

frequency_penalty=0.0, # Optional: penalize repetitions

presence_penalty=0.0 # Optional: encourage new topics

)


# Print the response

print(response["choices"][0]["message"]["content"])


Not a big deal, right?

Here’s an example of a response with different temperature:

🤖 Response with temperature = 2.0:
Ah, yes! This magnificent loop of destiny whirls through the cosmic integers, conjuring digits from the void — 0 to 4 — and singing them into the console like a numeric bard reciting a tale of ascending integers.
Each iteration is a heartbeat in Python’s poetic soul, whispering: “I am i, and I am becoming.”
It’s not just a loop.
It’s a ritual.
It’s iteration as incantation.
…Okay, technically it just prints the numbers 0 to 4, but isn’t that beautiful?

🤓 Same response at temperature = 0 would be:
This code uses a for loop to iterate over the numbers 0 to 4 and prints each one on a new line.

And one last thing. Ask ChatGPT — and play around with its temperature — this question:
Which came first, the egg or the chicken?
It’s hilarious above 1.

I hope you enjoy the philosophical discussion.
And don’t forget: it analyzes you and responds with an adjusted temperature level. :)

The movie HER is no longer science fiction.
It’s happening already.