File size: 2,171 Bytes
d613ffd | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | #!/usr/bin/env python3
"""
Test: Validation System für User-Korrektionen
"""
import sys
sys.path.insert(0, '.')
from wikipedia_fallback_learner import WikipediaFallbackLearner
print("="*70)
print("TEST: Correction Validation System")
print("="*70)
learner = WikipediaFallbackLearner()
test_cases = [
{
'name': '✅ Gute Korrektion',
'query': 'Wer hat die Glühbirne erfunden?',
'correction': 'Thomas Alva Edison hat die praktische Glühbirne 1879 erfunden'
},
{
'name': '❌ Zu kurz',
'query': 'Wer hat die Glühbirne erfunden?',
'correction': 'Edison'
},
{
'name': '❌ Passt nicht zum Thema',
'query': 'Wer hat die Glühbirne erfunden?',
'correction': 'Das Wetter ist heute schön und warm'
},
{
'name': '⚠️ Schwach verwandt',
'query': 'Wer hat die Glühbirne erfunden?',
'correction': 'Dies ist eine Frage über Erfinder'
},
{
'name': '✅ Wikipedia-validierbar',
'query': 'Was ist Berlin?',
'correction': 'Berlin ist die Hauptstadt und bevölkerungsreichste Stadt Deutschland'
},
]
for i, test in enumerate(test_cases, 1):
print(f"\n[Test {i}] {test['name']}")
print(f" Query: {test['query']}")
print(f" Correction: {test['correction'][:60]}...")
result = learner.validate_correction(test['query'], test['correction'])
print(f"\n Result:")
print(f" Valid: {result['is_valid']}")
print(f" Score: {result['score']:.0%}")
print(f" Reason: {result['reason']}")
if result['suggestions']:
print(f" Tip: {result['suggestions']}")
if result['issues']:
print(f" Issues: {', '.join(result['issues'])}")
print("\n" + "="*70)
print("✅ Validation System funktoniert!")
print("="*70)
print("\nWie es funktioniert:")
print("1. User gibt Korrektur ein")
print("2. System validiert die Antwort")
print("3. Wenn gut → speichern und lernen")
print("4. Wenn schlecht → ablehnen mit Tipp")
print("5. User sieht Rückmeldung und kann verbessern")
|