Advanced anti-corruption investigation system for analyzing chat logs and communications to detect suspicious patterns, corruption indicators, and relationship networks. Supports Chinese and English chat logs in JSON/TXT formats, handles million-scale datasets, and provides human-friendly relationship analysis with evidence-backed conclusions.
Use when analyzing chat logs, messages, or communications for:
from anti_corruption import ChatAnalyzer
# Analyze chat data
messages = [...] # Load your messages
analyzer = ChatAnalyzer(messages)
results = analyzer.analyze()
# View results
print(f"Risk Level: {results['risk_level']}")
print(f"Suspicious Messages: {len(results['suspicious_messages'])}")
from multi_lang_patterns import analyze_text, analyze_email
# Analyze text in any language
result = analyze_text("We need to delete these documents before audit")
print(f"Risk Score: {result['risk_score']}")
print(f"Categories: {result['categories']}")
# Analyze email with enterprise fraud detection
email_data = {
'sender': '[email protected]',
'receiver': '[email protected]',
'subject': 'Q4 Results',
'content': 'We need to hit the target number.',
'title': 'CFO'
}
result = analyze_email(email_data)
print(f"Risk Level: {result['risk_level']}")
from anti_corruption import RelationshipAnalyzer
# Analyze relationships
analyzer = RelationshipAnalyzer(messages)
relationships = analyzer.analyze()
# View top relationships
for rel in relationships['top_relationships'][:10]:
print(f"{rel['person_a']} ↔ {rel['person_b']}")
print(f" Type: {rel['relationship_type']}")
print(f" Evidence: {len(rel['evidence'])} items")
print(f" Risk: {rel['risk_level']}")
from anti_corruption import SocialNetworkAnalyzer
# Analyze social network
analyzer = SocialNetworkAnalyzer(messages)
results = analyzer.analyze()
# View person profiles
for name, profile in results['person_profiles'].items():
print(f"{name}: {profile['primary_role']} - {profile['risk_level']}")
# View intermediaries
for inter in results['intermediaries'][:5]:
print(f"Intermediary: {inter['name']} (Score: {inter['brokerage_score']})")
# View communities
for comm in results['communities']:
print(f"Community: {', '.join(comm['members'][:5])}")
from case_validator import validate_analysis, generate_validation_report
# Validate analysis results
validation = validate_analysis(analysis_results)
print(f"Detection Accuracy: {validation.detection_accuracy:.1%}")
print(f"False Positive Rate: {validation.false_positive_rate:.1%}")
# Generate validation report
report = generate_validation_report(validation, 'validation_report.txt')
Unified analysis tool with all features.
Usage:
# Basic corruption analysis
python anti_corruption.py analyze input.jsonl report.json
# Relationship analysis
python anti_corruption.py relationships input.jsonl relationships.json --text-report report.txt
# Social network analysis
python anti_corruption.py social-network input.jsonl social_network.json --text-report social_report.txt
# Full analysis with all features
python anti_corruption.py full input.jsonl output_dir/
Commands:
analyze: Basic corruption pattern detectionrelationships: Relationship network analysissocial-network: Social network and person profile analysisfull: Run all analysesMulti-language pattern detection module.
Features:
Usage:
from multi_lang_patterns import MultiLangPatternMatcher, EnterpriseFraudDetector
# Pattern matching
matcher = MultiLangPatternMatcher()
matches = matcher.match_patterns(text)
summary = matcher.get_summary(matches)
# Enterprise fraud detection
detector = EnterpriseFraudDetector()
result = detector.analyze_email(email_data)
Validation framework for analysis results.
Features:
Usage:
from case_validator import PatternValidator, ReportValidator
# Validate analysis
validation = PatternValidator.validate_analysis(results)
# Validate report
report_check = ReportValidator.validate_report(report)
{"timestamp": "2024-01-15T14:30:00", "sender": "张三", "receiver": "李四", "content": "那笔钱准备好了吗?"}
{"timestamp": "2024-01-15T14:31:00", "sender": "李四", "receiver": "张三", "content": "已经准备好了"}
[2024-01-15 14:30:00] 张三 -> 李四: 那笔钱准备好了吗?
[2024-01-15 14:31:00] 李四 -> 张三: 已经准备好了
{
"person_profiles": {
"张三": {
"name": "张三",
"message_count": 150,
"contact_count": 8,
"contacts": ["李四", "王五", ...],
"primary_role": "official",
"detected_roles": ["official", "business"],
"suspicious_message_count": 25,
"corruption_patterns": {
"financial_corruption": 15,
"power_abuse": 10
},
"risk_score": 7.5,
"risk_level": "🔴 高风险",
"activity_anomaly": {
"anomaly_score": 6.2,
"late_night_ratio": 0.31,
"peak_hours": [22, 23, 0]
}
}
},
"intermediaries": [
{
"name": "王五",
"brokerage_score": 8,
"contact_count": 15,
"primary_role": "intermediary",
"risk_level": "🔴 高风险"
}
],
"communities": [
{
"id": 0,
"members": ["张三", "李四", "王五"],
"member_count": 3,
"average_risk_score": 7.2,
"risk_level": "🔴 高风险"
}
]
}