Spaces:
Running
Running
| import sys | |
| import os | |
| # Add project root to path | |
| sys.path.insert(0, os.path.dirname(os.getcwd())) # Assumes running from syscred/ | |
| try: | |
| from syscred.verification_system import CredibilityVerificationSystem | |
| except ImportError: | |
| # Just in case of path issues | |
| sys.path.append(os.getcwd()) | |
| from verification_system import CredibilityVerificationSystem | |
| def test_nlp_fallbacks(): | |
| print("=== Testing NLP Hybrid Fallbacks ===") | |
| # Initialize without loading standard ML (to test our new hybrid logic) | |
| # Note: verification_system uses HAS_ML flag, but we want to test specific methods | |
| syscred = CredibilityVerificationSystem(load_ml_models=False) | |
| # Test 1: Coherence | |
| print("\n[Test 1] Coherence") | |
| coherent_text = "The quick brown fox jumps over the lazy dog. The dog was not amused. It barked loudly." | |
| incoherent_text = "The quick brown fox. Banana republic creates clouds. Jump over the moon." | |
| score1 = syscred._calculate_coherence(coherent_text) | |
| score2 = syscred._calculate_coherence(incoherent_text) | |
| print(f" Coherent Text Score: {score1}") | |
| print(f" Incoherent Text Score: {score2}") | |
| if score1 > score2: | |
| print(" ✓ Coherence logic working (Metric discriminates)") | |
| else: | |
| print(" ! Coherence scores inconclusive (Might be heuristic limitations)") | |
| # Test 2: Bias | |
| print("\n[Test 2] Bias") | |
| neutral_text = "The government announced a new policy today regarding taxation." | |
| biased_text = "The corrupt regime stands accused of treason against the people by radical idiots." | |
| res1 = syscred._analyze_bias(neutral_text) | |
| res2 = syscred._analyze_bias(biased_text) | |
| print(f" Neutral: {res1['label']} (Score: {res1['score']:.2f})") | |
| print(f" Biased: {res2['label']} (Score: {res2['score']:.2f})") | |
| print(f" Method Used: {res1.get('method', 'Unknown')}") | |
| if res2['score'] > res1['score']: | |
| print(" ✓ Bias detection working") | |
| else: | |
| print(" ! Bias detection inconclusive") | |
| if __name__ == "__main__": | |
| test_nlp_fallbacks() | |