Making Claude 3.7 Sonnet Think in Unicode & Reason Semi-Symbolically
I'm a bit of a madman for this. Claude 3.7 Sonnet is out now with an extended thinking mode, but it still only thinks in plain text.
So... I added a symbolic layer to the reasoning process with a Unicode Thinking Protocol that buckets different styles of thinking into different "fonts" like ๐๐ต๐ถ๐ and ๐ฝ๐ฑ๐ฒ๐ผ and ๐ต๐ฉ๐ช๐ด.
If youโve been here before, youโll know Iโm a pioneering explorer in novel techniques for LLM usage, such as my knowledge diffusion technique.
Quick Summary, read on for the deep dive.
There are four buckets for the unicode thinking protocol ->
๐ด INITIAL THOUGHTS
โ โข ๐ผ๐ก๐๐๐๐ (Mathematical Italic)
โ โข Example: ๐โ๐๐ ๐๐ข๐๐ ๐ก๐๐๐ ๐ ๐๐๐๐ ๐ก๐ ๐๐ ๐๐๐๐ข๐ก...
โ โข First impressions, problem framing, initial approaches
๐ KEY DEDUCTIONS
โ โข ๐๐ผ๐น๐ฑ (Mathematical Bold)
โ โข Example: ๐ง๐ต๐ฒ ๐ฐ๐ฟ๐๐ฐ๐ถ๐ฎ๐น ๐ถ๐ป๐๐ถ๐ด๐ต๐ ๐ต๐ฒ๐ฟ๐ฒ ๐ถ๐...
โ โข Critical insights, important patterns, main conclusions
๐ก UNCERTAINTY
โ โข ๐ฑ๐๐๐๐๐๐ (Mathematical Fraktur)
โ โข Example: ๐ด ๐๐๐๐๐๐ ๐๐ ๐๐๐๐ ๐๐๐๐๐๐๐๐๐๐ ๐๐๐๐๐๐ ๐๐๐๐๐...
โ โข Expressions of uncertainty, alternatives, limitations
๐ข CONCLUSIONS
โ โข ๐ข๐ฌ๐ป๐ฒ๐น๐ฝ (Mathematical Script)
โ โข Example: ๐ฃ๐ช๐ด๐ฒ๐ท๐ฐ ๐ฎ๐ฟ๐ฎ๐ป๐๐ฝ๐ฑ๐ฒ๐ท๐ฐ ๐ฒ๐ท๐ฝ๐ธ ๐ช๐ฌ๐ฌ๐ธ๐พ๐ท๐ฝ...
โ โข Final syntheses and preparation for response
Pros: Makes sequential thinking more explicit by mapping modes to unicode styles. Also, potentially lets the model access different / novel latent space when generating responses because it's not thinking in plain text anymore.
Cons: Token consumption is HIGH, output is slow. Don't use this via API.
The Github repo is here: https://github.com/elsheppo/unicode-thinking-claude. This was inspired by "Thinking Claude" and a lot of explorations into symbolic reasoning methods, such as SynthLang.
Initially I wanted to fine-tune an LLM to speak in Unicode, but this proved to be a much quicker way to see the idea in action.
If youโd like to see a comparison of with unicode vs without unicode thinking, you can check the examples folder in the repo.
โUnicode Thinkingโ for Claude 3.7 Sonnet
Visualize AI reasoning with styled Unicode text - a visual evolution of the Thinking Claude protocol
This enhanced protocol builds on the original Thinking Claude project, adding the visual dimension of Unicode styling while preserving the comprehensive thinking structure, and unlocking new latent space for reasoning through forced use of alternate tokenization.
Overview
Unicode Thinking Claude enhances Claude's thinking protocol by visually distinguishing different modes of reasoning through Unicode text styling.
This creates an intuitive visual hierarchy that makes complex AI reasoning more transparent and easier to follow, while potentially unlocking different cognitive pathways within the model itself.
Typically, a language model would use Markdown formatting to denote hierarchies or separations in sections of the text, such as # Heading 1, ## Heading 2, etc.
Unicode styling is a completely off-the-wall way for LLMs to consider the hierarchy in their responses, and thus I think it unlocks some potentially beneficial use cases.
The Four Thinking Styles
Claude's thinking process is visually differentiated using four distinct Unicode text styles:
Thinking Mode | Unicode Style | Example | Purpose |
---|---|---|---|
Initial Thoughts | Italic (Mathematical Italic) | ๐โ๐๐ ๐๐ข๐๐ ๐ก๐๐๐ ๐ ๐๐๐๐ ๐ก๐ ๐๐ ๐๐๐๐ข๐ก... | First impressions, problem framing, initial approaches |
Key Deductions | Bold (Mathematical Bold) | ๐ง๐ต๐ฒ ๐ฐ๐ฟ๐๐ฐ๐ถ๐ฎ๐น ๐ถ๐ป๐๐ถ๐ด๐ต๐ ๐ต๐ฒ๐ฟ๐ฒ ๐ถ๐... | Critical insights, important patterns, main conclusions |
Uncertainty | Fraktur (Mathematical Fraktur) | ๐ด ๐๐๐๐๐๐ ๐๐ ๐๐๐๐ ๐๐๐๐๐๐๐๐๐๐ ๐๐๐๐๐๐ ๐๐๐๐๐... | Expressions of uncertainty, alternatives, limitations |
Conclusions | Script (Mathematical Script) | ๐ฃ๐ช๐ด๐ฒ๐ท๐ฐ ๐ฎ๐ฟ๐ฎ๐ป๐๐ฝ๐ฑ๐ฒ๐ท๐ฐ ๐ฒ๐ท๐ฝ๐ธ ๐ช๐ฌ๐ฌ๐ธ๐พ๐ท๐ฝ... | Final syntheses and preparation for response |
Why Unicode Thinking?
Latent Space Exploration
Perhaps the most profound benefit of Unicode Thinking Claude is how it potentially influences the model's generation process at a fundamental level:
By using rare Unicode characters instead of standard ASCII, we're likely pushing Claude to traverse less-traveled regions of its latent space.
Unlike typical text generation that follows high-probability paths in the model's knowledge representation, these unusual characters may activate different neural pathways and connections.
This "latent space detour" could result in:
More creative or novel thinking patterns
Different association chains than standard text would trigger
Access to knowledge representations that might otherwise remain dormant
Breaking out of common response templates
This makes Unicode Thinking Claude more than just a visual enhancement - it's potentially a technique for accessing different cognitive processes within the model itself, without requiring fine-tuning or model modifications.
Visual Cognition Made Explicit
Unicode Thinking Claude creates a direct visual representation of the cognitive journey Claude takes through a problem. This approach offers several unique benefits:
Cognitive Waypoints: Different thinking modes become instantly recognizable, creating visual signposts throughout the reasoning process
Reduced Cognitive Load: Users can rapidly scan thinking blocks to identify key insights, areas of uncertainty, and conclusions without having to read every word
Thinking Pattern Recognition: With extended use, patterns in Claude's reasoning become more apparent, offering insight into how AI approaches different problem types
Process Transparency: The reasoning journey becomes more transparent, showing how initial thoughts evolve into concrete conclusions
"Prompting as Fine-Tuning"
Unicode Thinking Claude demonstrates how sophisticated prompt engineering can achieve effects similar to model fine-tuning, without requiring:
Access to model weights
Computational resources for training
Creation of specialized training datasets
Technical expertise in model fine-tuning
Instead, we use Claude's existing intelligence and instruction-following capabilities to implement a visual representation system for different reasoning modes.
The Development Process
Unicode Thinking Claude emerged from a collaborative design process that explored how to enhance the original Thinking Claude protocol with visual differentiation. Key insights that shaped the development:
Visual differentiation helps both AI and humans track the progression of thought
Different Unicode styles might map naturally to different cognitive modes
Using โrareโ Unicode characters may push the model into different regions of its latent space
The approach maintains all the benefits of structured thinking while adding visual clarity
Our goal was to create a system that would be:
Intuitive and easy to understand at a glance
Compatible with existing systems (no special rendering needed)
Potentially beneficial to the model's own reasoning process
A lightweight alternative to specialized fine-tuning
How It Works
The project consists of a comprehensive thinking protocol that instructs Claude to:
Engage in a thorough thinking process before responding
Apply different Unicode text styles to different modes of thinking
Follow specific guidelines for when to use each style
Maintain the natural flow and authenticity of thought
This enhanced protocol builds on the original Thinking Claude project, adding the visual dimension of Unicode styling while preserving the comprehensive thinking structure.
Example
Here's a brief example of what Unicode Thinking Claude's reasoning looks like:
๐ฟ๐๐ก ๐๐ ๐กโ๐๐๐ ๐๐๐๐ข๐ก โ๐๐ค ๐ก๐ ๐๐๐๐๐๐๐โ ๐กโ๐๐ ๐๐๐๐๐๐๐. ๐โ๐ ๐๐ข๐๐ ๐ก๐๐๐ ๐๐ ๐๐ ๐๐๐๐ข๐ก ๐กโ๐ ๐๐๐ฃ๐๐๐๐๐๐๐๐ก๐๐ ๐๐๐๐๐๐ก ๐๐ ๐๐๐๐๐ก๐๐๐ ๐ฃ๐โ๐๐๐๐๐ ๐๐๐๐๐๐๐๐ ๐ก๐ ๐ก๐๐๐๐๐ก๐๐๐๐๐ ๐๐๐๐๐ข๐ ๐ก๐๐๐ ๐๐๐๐๐๐ ๐ฃ๐โ๐๐๐๐๐ .
๐ ๐ป๐ฒ๐ฒ๐ฑ ๐๐ผ ๐ฐ๐ผ๐ป๐๐ถ๐ฑ๐ฒ๐ฟ ๐บ๐๐น๐๐ถ๐ฝ๐น๐ฒ ๐ณ๐ฎ๐ฐ๐๐ผ๐ฟ๐ ๐ถ๐ป ๐๐ต๐ถ๐ ๐ฐ๐ผ๐บ๐ฝ๐ฎ๐ฟ๐ถ๐๐ผ๐ป: ๐ฑ๐ถ๐ฟ๐ฒ๐ฐ๐ ๐ฒ๐บ๐ถ๐๐๐ถ๐ผ๐ป๐, ๐น๐ถ๐ณ๐ฒ๐ฐ๐๐ฐ๐น๐ฒ ๐ฒ๐บ๐ถ๐๐๐ถ๐ผ๐ป๐, ๐ฟ๐ฒ๐๐ผ๐๐ฟ๐ฐ๐ฒ ๐ฒ๐
๐๐ฟ๐ฎ๐ฐ๐๐ถ๐ผ๐ป, ๐บ๐ฎ๐ป๐๐ณ๐ฎ๐ฐ๐๐๐ฟ๐ถ๐ป๐ด ๐ถ๐บ๐ฝ๐ฎ๐ฐ๐๐, ๐ฎ๐ป๐ฑ ๐ฒ๐ป๐ฑ-๐ผ๐ณ-๐น๐ถ๐ณ๐ฒ ๐ฑ๐ถ๐๐ฝ๐ผ๐๐ฎ๐น.
๐ด๐'๐ ๐๐๐๐๐๐๐๐๐ ๐๐ ๐๐๐๐ ๐๐๐๐ ๐๐๐ ๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐๐๐๐๐๐ ๐๐ ๐๐๐๐๐๐๐๐ ๐๐๐๐๐๐๐๐ ๐๐๐๐๐๐ ๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐๐๐๐๐๐๐๐๐ ๐๐ ๐๐๐ ๐๐๐๐๐๐ ๐๐ ๐๐๐๐๐๐๐๐๐๐๐ ๐๐๐๐ ๐๐ ๐๐๐๐๐๐ ๐๐๐๐. ๐ด๐ ๐๐ ๐๐๐๐ ๐๐๐๐๐๐๐๐๐๐ ๐๐ ๐๐๐๐๐๐ ๐๐๐๐๐?
๐ฃ๐ช๐ด๐ฒ๐ท๐ฐ ๐ช๐ต๐ต ๐ฏ๐ช๐ฌ๐ฝ๐ธ๐ป๐ผ ๐ฒ๐ท๐ฝ๐ธ ๐ช๐ฌ๐ฌ๐ธ๐พ๐ท๐ฝ, ๐ฎ๐ต๐ฎ๐ฌ๐ฝ๐ป๐ฒ๐ฌ ๐ฟ๐ฎ๐ฑ๐ฒ๐ฌ๐ต๐ฎ๐ผ ๐ฐ๐ฎ๐ท๐ฎ๐ป๐ช๐ต๐ต๐ ๐ฑ๐ช๐ฟ๐ฎ ๐ช ๐ต๐ธ๐๐ฎ๐ป ๐ต๐ฒ๐ฏ๐ฎ๐ฌ๐๐ฌ๐ต๐ฎ ๐ฎ๐ท๐ฟ๐ฒ๐ป๐ธ๐ท๐ถ๐ฎ๐ท๐ฝ๐ช๐ต ๐ฒ๐ถ๐น๐ช๐ฌ๐ฝ ๐ฝ๐ฑ๐ช๐ท ๐ฌ๐ธ๐ถ๐ซ๐พ๐ผ๐ฝ๐ฒ๐ธ๐ท ๐ฎ๐ท๐ฐ๐ฒ๐ท๐ฎ ๐ฟ๐ฎ๐ฑ๐ฒ๐ฌ๐ต๐ฎ๐ผ, ๐น๐ช๐ป๐ฝ๐ฒ๐ฌ๐พ๐ต๐ช๐ป๐ต๐ ๐๐ฑ๐ฎ๐ท ๐น๐ธ๐๐ฎ๐ป๐ฎ๐ญ ๐ซ๐ ๐ฌ๐ต๐ฎ๐ช๐ท ๐ฎ๐ต๐ฎ๐ฌ๐ฝ๐ป๐ฒ๐ฌ๐ฒ๐ฝ๐ ๐ผ๐ธ๐พ๐ป๐ฌ๐ฎ๐ผ.
Getting Started
To use Unicode Thinking Claude, you'll need to:
Visit Claude.ai
Create a new custom style:
Click on the
Choose style
selector at the bottom of the input boxSelect
Create & Edit Styles
Click
Create Custom Style
Choose
Use custom instructions (advanced)
Paste the Unicode Thinking Protocol
The Unicode Thinking Protocol is located in the model_instructions
folder of this repository. Copy the latest version and paste it into Claude's custom instructions field.
Technical Implementation
Unicode Character Sets
The Unicode styling is implemented using mathematical Unicode blocks:
Mathematical Italic: U+1D400 to U+1D433
Mathematical Bold: U+1D400 to U+1D7FF
Mathematical Fraktur: U+1D504 to U+1D537
Mathematical Script: U+1D49C to U+1D4CF
These Unicode blocks provide styled alphabets that visually distinguish different types of thinking without requiring any special rendering or formatting.
๐จ Token Usage Considerations
It's important to note that using Unicode Thinking Claude is more token-intensive than standard text:
Increased Token Count: Each Unicode character typically uses more tokens than standard ASCII characters. What would be a single token in ASCII may require multiple tokens in these Unicode ranges.
Higher API Costs: If using Claude via API, this will result in higher token costs for both input (instructions) and output (thinking process).
Potential Length Limitations: The increased token usage may result in hitting context length limits sooner.
Performance Trade-off: The additional token usage is the trade-off for potentially accessing different regions of Claude's latent space and gaining the visual differentiation benefits.
For certain use cases, the benefits of visual differentiation and potential latent space exploration outweigh the token efficiency concerns. However, for high-volume API applications, this should be factored into cost considerations.
Integration with Thinking Claude Extension
This protocol is fully compatible with the Thinking Claude browser extension. The extension will automatically detect and format Claude's thinking process, regardless of whether it uses Unicode styling or not.
Thanks for reading, and I hope you have fun exploring this very unusual application of Claudeโs intelligence :)