Feedback sentiment
Rate how positive or negative a piece of feedback is, with neutral and mixed in the middle.
F@fProblem
Star ratings don't match the text often enough to rely on, and a single positive/negative label hides mixed feedback.
Goal
Track sentiment per theme over time and find unhappy users worth a follow-up.
Input / state
The feedback text.
- feedback
- The feedback text.
Decision question
sentimentHow positive or negative is this feedback overall?
Rubric levels
0Very negative: angry or very disappointed.1Negative: unhappy or critical.2Neutral, or a mix of positive and negative.3Positive: satisfied or appreciative.4Very positive: enthusiastic.
Allowed outcomes
Decided in your code from the answer and its confidence. Thresholds are yours to set and test.
- NegativeMost likely level is 0 or 1 and confidence meets your threshold.
- Neutral or mixedMost likely level is 2 and confidence meets your threshold.
- PositiveMost likely level is 3 or 4 and confidence meets your threshold.
- UnscoredConfidence is below your threshold: probability is spread across options.
Example scenarios
Predefined demonstrations. No model is called; the outcome shown is an illustrative judgment.
Example state
{
"feedback": "Lost a day of work because sync deleted my edits. Unacceptable."
}Outcome
IllustrativeMost likely level is 0 or 1 and confidence meets your threshold.
Why
Angry and disappointed.
Using it well
- Report averages per topic rather than overall; overall sentiment hides where the problems are.
- The expected score across levels is a smoother trend measure than the most likely level.
Request definition
POST https://api.typesafe.ai/v1/systemone{
"model": "jev-latest",
"state": {
"feedback": "<feedback>"
},
"questions": {
"sentiment": {
"type": "score",
"instructions": "How positive or negative is this feedback overall?",
"criteria": [
"Very negative: angry or very disappointed.",
"Negative: unhappy or critical.",
"Neutral, or a mix of positive and negative.",
"Positive: satisfied or appreciative.",
"Very positive: enthusiastic."
]
}
}
}Request shape from the System One API reference; a Kev server accepts the same body. Replace the placeholder state with your data. Requests need your own API key or server.
Version History
Initial version