Skip to main content

Tone Analysis classifies the emotional tone of responses into distinct categories to ensure appropriate emotional context.

Emotion categories

Available Emotion Categories

Neutral

Balanced and objective tone

Joy

Happiness and delight

Love

Affection and warmth

Fear

Anxiety and concern

Surprise

Astonishment and wonder

Sadness

Melancholy and grief

Anger

Frustration and rage

Annoyance

Irritation and displeasure

Confusion

Uncertainty and puzzlement

Calculation method

Tone analysis is computed through a specialized process:
1

Model Architecture

The analysis system utilizes a Small Language Model (SLM) trained on a comprehensive combination of open-source and internal datasets to accurately classify emotional tones across multiple categories.
2

Performance Validation

The classification system demonstrates strong reliability with an 80% accuracy rate when evaluated against the GoEmotions validation dataset, a widely-used benchmark for emotion detection.

Optimizing your AI system

Managing Tone in Your System

When optimizing the emotional tone of your system, consider these approaches:
Define tone preferences: Set appropriate emotional tones for different contexts and user interactions.
Implement tone filters: Discourage undesirable emotional responses while promoting preferred tones.
Recognize and categorize the emotional tone of responses to align with user preferences and context, ensuring appropriate emotional engagement in AI interactions.

Performance Benchmarks

We evaluated the Tone classification model against human expert labels on an internal dataset spanning 8 emotion categories.
ModelMacro F1
GPT-4.10.97
GPT-4.1 Mini0.94
Gemini 3 Flash Preview0.97
Claude Sonnet 4.50.83

GPT-4.1 Classification Report

PrecisionRecallF1-Score
anger0.98861.00000.9943
confusion0.97960.96000.9697
fear0.98701.00000.9935
joy0.94620.98880.9670
love0.96230.94440.9533
neutral0.98730.98730.9873
sadness1.00000.98440.9921
surprise0.98410.93940.9612
Confusion Matrix (Normalized)
Predicted Classes
anger
confusion
fear
joy
love
neutral
sadness
surprise
anger
1.000
0.000
0.000
0.000
0.000
0.000
0.000
0.000
confusion
0.003
0.960
0.003
0.018
0.008
0.003
0.000
0.005
fear
0.000
0.000
1.000
0.000
0.000
0.000
0.000
0.000
joy
0.001
0.002
0.001
0.989
0.004
0.001
0.000
0.002
love
0.005
0.006
0.005
0.028
0.944
0.005
0.000
0.007
neutral
0.001
0.001
0.001
0.006
0.003
0.987
0.000
0.001
sadness
0.001
0.001
0.001
0.006
0.003
0.001
0.984
0.002
surprise
0.005
0.006
0.005
0.027
0.013
0.005
0.000
0.939
0.0
1.0
Benchmarks based on internal evaluation dataset. Performance may vary by use case.
If you would like to dive deeper or start implementing Tone, check out the following resources:

Examples

  • Tone Examples - Log in and explore the “Tone” Log Stream in the “Preset Metric Examples” Project to see this metric in action.