-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathquick_setup.py
More file actions
111 lines (92 loc) · 2.86 KB
/
quick_setup.py
File metadata and controls
111 lines (92 loc) · 2.86 KB
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#!/usr/bin/env python3
"""
Quick Setup Script for Email Spam Detection System
Run this first to ensure everything is properly configured
"""
import subprocess
import sys
import os
from pathlib import Path
def install_requirements():
"""Install all required packages."""
print("📦 Installing required packages...")
requirements = [
"transformers==4.30.2",
"torch==2.0.1",
"pandas==2.0.3",
"numpy==1.25.1",
"datasets==2.13.1",
"scikit-learn==1.3.0",
"flask==2.3.2",
"tqdm==4.65.0",
"accelerate>=0.20.1",
"requests==2.31.0"
]
for package in requirements:
try:
print(f"Installing {package}...")
subprocess.check_call([sys.executable, '-m', 'pip', 'install', package])
except subprocess.CalledProcessError as e:
print(f"❌ Failed to install {package}: {e}")
return False
print("✅ All packages installed successfully!")
return True
def create_requirements_file():
"""Create requirements.txt file."""
requirements_content = """transformers==4.30.2
torch==2.0.1
pandas==2.0.3
numpy==1.25.1
datasets==2.13.1
scikit-learn==1.3.0
flask==2.3.2
tqdm==4.65.0
accelerate>=0.20.1
requests==2.31.0
"""
with open('requirements.txt', 'w') as f:
f.write(requirements_content)
print("✅ requirements.txt created")
def check_files():
"""Check if all required files exist."""
required_files = [
'spam_detec.py',
'run_training.py',
'run_api.py',
'email_integration.py',
'email_processor.py'
]
missing_files = []
for file in required_files:
if not Path(file).exists():
missing_files.append(file)
if missing_files:
print(f"❌ Missing files: {', '.join(missing_files)}")
print("Please ensure all files are in the current directory")
return False
print("✅ All required files present")
return True
def main():
print("🚀 Email Spam Detection System - Quick Setup")
print("="*50)
# Check files
if not check_files():
return
# Create requirements file
create_requirements_file()
# Install packages
if not install_requirements():
print("❌ Setup failed during package installation")
return
print("\n🎉 Setup completed successfully!")
print("\nNext steps:")
print("1. Run: python master_startup.py")
print("2. Choose option 1 for full system startup")
print("3. Follow the interactive prompts")
print("\n📚 Quick Start Guide:")
print("• Full system: python master_startup.py")
print("• Training only: python run_training.py")
print("• API only: python run_api.py")
print("• Check emails: python email_integration.py")
if __name__ == "__main__":
main()