Intent Classification Accuracy
Intențiile sunt fundamentul conversației. Dacă agentul nu înțelege ce vrea clientul, tot restul eșuează. Validation testing asigură acuratețe 95%+.
Intent Accuracy Table
| Intent | Test Samples | Accuracy | Most Confused With |
|---|---|---|---|
| book_appointment | 145 | 97.2% | reschedule |
| reschedule | 89 | 94.8% | cancel |
| cancel_appointment | 72 | 96.1% | reschedule |
| get_pricing | 134 | 98.5% | compare_plans |
| speak_to_human | 67 | 99.2% | — |
| complaint | 45 | 91.3% | feedback |
Confusion Matrix
Vizualizare erori de clasificare:
| book | resched | cancel | price | human | |
|---|---|---|---|---|---|
| book | 141 | 3 | 0 | 1 | 0 |
| resched | 2 | 84 | 3 | 0 | 0 |
| cancel | 0 | 2 | 69 | 1 | 0 |
| price | 0 | 0 | 0 | 132 | 2 |
| human | 0 | 0 | 0 | 0 | 67 |
Confidence Threshold Tuning
Low Threshold (0.5)
True Positives98%
False Positives12%
Mai multe răspunsuri, dar și mai multe greșeli
High Threshold (0.8)
True Positives89%
False Positives2%
Mai puține greșeli, dar mai multe „nu am înțeles"
Recommended: 0.7 threshold
Balanță optimă între acuratețe (95%+) și coverage (93%+).
Test Suite Example
// intent-validation.test.ts
describe('Intent Classification', () => {
test('booking intent variations', async () => {
const variations = [
"Vreau să fac o programare",
"As dori sa programez o vizita",
"Pot să vin mâine?",
"Am nevoie de o consultație"
];
for (const text of variations) {
const result = await classifyIntent(text);
expect(result.intent).toBe('book_appointment');
expect(result.confidence).toBeGreaterThan(0.7);
}
});
});