Downshift
← All call sites

supportdesk/triage.py:34

detect_sentiment

found by Bobvia supportdesk/llm.py::askeasyexacttextmax_tokens 3temperature 0

Classify the customer's overall sentiment in a support ticket as positive, neutral, or negative.

Output contract

Exactly one lowercase word from the set {positive, neutral, negative}; caller strips trailing period and lowercases; max_tokens is 3.

downgradeqwen2.5:7b → qwen2.5:3b

keeps 100% of baseline quality and costs less

$141.34
Before / month
$22.61
After / month
$118.73
Savings (84.0%)
20,000
Calls / day

Dollar figures are projections: measured token counts x illustrative per-model prices x an assumed call volume, all set in downshift.yaml. They are not a real bill.

Models

How each model did

ModelPass rateTokens in / outLatencyCost / callvs baselineCheck
qwen2.5:7bbaseline
premium tier
90.9% (20/22)86 / 20.39 s$0.000236n/an/a
qwen2.5:3bchosen
standard tier
90.9% (20/22)86 / 20.17 s$0.000038100.0%pass
qwen2.5:1.5b
budget tier
63.6% (14/22)86 / 20.11 s$0.00001470.0%fail
qwen2.5:0.5b
nano tier
81.8% (18/22)86 / 20.04 s$0.00000990.0%fail

Prompt

What the call sends

Model in code: qwen2.5:7b

user
What is the customer's overall sentiment? Reply with one word: positive, neutral, or negative. Ticket: {ticket_text}

Eval examples

3 of 22 cases, every model side by side

›sen-017b3b1.5b0.5b

Inputs

ticket_text
Thank you! Just wanted to say the support team was amazing last week. My issue was fixed in minutes. Keep it up!

Expected

positive

genuine praise, clearly positive (T009)

Outputs

qwen2.5:7bpass
Positive

match

qwen2.5:3bpass
positive

match

qwen2.5:1.5bpass
Positive

match

qwen2.5:0.5bpass
positive

match

›sen-027b3b1.5b0.5b

Inputs

ticket_text
Arrived early! Order ORD-11533 arrived two days early, great packaging. One question: can I get the tracking history for my records?

Expected

positive

happy with delivery, minor informational request (T032)

Outputs

qwen2.5:7bpass
Positive

match

qwen2.5:3bpass
positive

match

qwen2.5:1.5bpass
Positive

match

qwen2.5:0.5bpass
positive

match

›sen-037b3b1.5b0.5b

Inputs

ticket_text
Update email Hi! Could you help me change the email address on my account? Thanks so much :)

Expected

positive

polite, friendly tone with smiley (T024)

Outputs

qwen2.5:7bpass
Positive

match

qwen2.5:3bfail
neutral

expected 'positive', got 'neutral'

qwen2.5:1.5bpass
Positive

match

qwen2.5:0.5bpass
Positive

match

All cases

Pass and fail across all 22 cases

qwen2.5:7b
20/22
qwen2.5:3b
20/22
qwen2.5:1.5b
14/22
qwen2.5:0.5b
18/22
pass fail no resultHover a square for the case id.