-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy path.env.example
More file actions
177 lines (155 loc) · 5.98 KB
/
.env.example
File metadata and controls
177 lines (155 loc) · 5.98 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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# ==================== Authentication ====================
AUTH_SIGNIN_URL=http://localhost:4535/auth/signin
AUTH_USERNAME=your_email@example.com
AUTH_PASSWORD=your_password_here
AUTH_TOKEN_REFRESH_INTERVAL_HOURS=20
# ==================== OCR ====================
OCR_ENDPOINT_URL=https://your-ocr-endpoint.com
OCR_TIMEOUT_SECONDS=900
# ==================== Scheduler ====================
SCHEDULER_TOKEN_REFRESH_CHECK_INTERVAL_MINUTES=60
EMAIL_FETCH_SCHEDULER_TOKEN_REFRESH_CHECK_INTERVAL_MINUTES=60
# ==================== Logging ====================
LOG_LEVEL=INFO
MAX_RETRY_ATTEMPTS=3
RETRY_DELAY_SECONDS=5
# ==================== Storage ====================
STORAGE_TYPE=local
LOCAL_STORAGE_ENABLED=true
LOCAL_STORAGE_BASE_PATH=./data/storage/stored_documents/
LOCAL_STORAGE_CREATE_DATE_FOLDERS=true
LOCAL_STORAGE_PRESERVE_ORIGINAL_NAME=true
S3_STORAGE_ENABLED=false
S3_AWS_ACCESS_KEY_ID=your_aws_access_key_id
S3_AWS_SECRET_ACCESS_KEY=your_aws_secret_access_key
S3_AWS_REGION=us-east-1
S3_BUCKET_NAME=your_bucket_name
S3_BUCKET_PREFIX=input-pdfs/
S3_CREATE_DATE_FOLDERS=true
S3_STORAGE_CLASS=STANDARD
S3_ENABLE_VERSIONING=false
S3_SERVER_SIDE_ENCRYPTION=AES256
S3_ACL=private
SAVE_ORIGINAL_PDF=true
INCLUDE_METADATA=true
CLEANUP_AFTER_STORAGE=false
# ==================== Google Gemini ====================
GEMINI_API_KEY=your_gemini_api_key_here
GEMINI_MODEL=gemini-2.0-flash
GEMINI_TIMEOUT_SECONDS=60
GEMINI_MAX_RETRIES=3
GEMINI_RETRY_DELAY_SECONDS=2
GEMINI_MAX_TOKENS=8192
GEMINI_TEMPERATURE=0
# ==================== Chunking ====================
CHUNKING_ENABLED=true
CHUNK_SIZE=6000
CHUNK_OVERLAP=500
# ==================== Manual Splitting ====================
MANUAL_SPLITTING_ENABLED=true
MANUAL_SPLITTING_THRESHOLD_CHARACTERS=7000
MANUAL_SPLITTING_MAX_ROWS_PER_CHUNK=10
# ==================== PostgreSQL Database Configuration ====================
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_DATABASE=your_db_name
POSTGRES_USER=your_db_user
POSTGRES_PASSWORD=your_db_password
# ==================== Security ====================
JWT_SECRET_KEY=your_jwt_secret_key
JWT_ALGORITHM=HS256
ACCESS_TOKEN_EXPIRE_MINUTES=1440
PASSWORD_RESET_TOKEN_EXPIRE_HOURS=24
ENCRYPTION_KEY=your_encryption_key
# ==================== API Key Encryption ====================
API_KEY_ENCRYPTION_KEY=your_api_key_encryption_key
# ==================== Email ====================
EMAIL_HOST=smtp-relay.brevo.com
EMAIL_PORT=587
EMAIL_USERNAME=your_email_username
EMAIL_PASSWORD=your_email_password
EMAIL_FROM_EMAIL=your_from_email@example.com
EMAIL_FROM_NAME=GdoczAI
EMAIL_USE_TLS=true
EMAIL_RESET_PASSWORD_URL=https://your-app.com/auth/reset_password
# ==================== Email Notifications ====================
EMAIL_NOTIFICATIONS_ENABLED=true
EMAIL_NOTIFICATIONS_SMTP_HOST=smtp-relay.brevo.com
EMAIL_NOTIFICATIONS_SMTP_PORT=587
EMAIL_NOTIFICATIONS_SMTP_USERNAME=your_email_username
EMAIL_NOTIFICATIONS_SMTP_PASSWORD=your_email_password
EMAIL_NOTIFICATIONS_FROM_EMAIL=your_from_email@example.com
EMAIL_NOTIFICATIONS_FROM_NAME=OCR Pipeline Alert System
EMAIL_NOTIFICATIONS_USE_TLS=true
EMAIL_NOTIFICATIONS_DEVELOPER_RECIPIENTS=dev1@example.com,dev2@example.com
EMAIL_NOTIFICATIONS_CLIENT_RECIPIENTS=client@example.com
EMAIL_NOTIFICATIONS_ALERT_COOLDOWN_MINUTES=30
# ==================== File Tracking ====================
FILE_TRACKING_BACKUP_PROCESSED_FILES=true
FILE_TRACKING_CLEANUP_TEMP_FILES=true
FILE_TRACKING_MAX_FILE_AGE_DAYS=30
# ==================== Logging ====================
LOGGING_LEVEL=INFO
LOGGING_LOG_FILE=./logs/pipeline.log
LOGGING_MAX_LOG_SIZE_MB=100
LOGGING_BACKUP_COUNT=5
LOGGING_CONSOLE_OUTPUT=true
# ==================== Error Handling ====================
ERROR_HANDLING_MAX_FILE_RETRIES=3
ERROR_HANDLING_RETRY_DELAY_MINUTES=10
ERROR_HANDLING_CONTINUE_ON_ERROR=true
ERROR_HANDLING_SAVE_FAILED_FILES_LIST=true
ERROR_HANDLING_FAILED_FILES_LOG=./logs/failed_files.log
# ==================== Performance ====================
PERFORMANCE_CHUNK_SIZE_BYTES=8192
PERFORMANCE_CONNECTION_POOL_SIZE=10
PERFORMANCE_ENABLE_COMPRESSION=true
PERFORMANCE_PREFETCH_FILES=true
# ==================== OLMOCR Deepinfra ====================
OLMOCR_DEEPINFRA_API_KEY=your_olmocr_api_key
OLMOCR_DEEPINFRA_MODEL=allenai/olmOCR-2-7B-1025
OLMOCR_DEEPINFRA_TIMEOUT=600
OLMOCR_DEEPINFRA_MAX_TOKENS=8192
# ==================== QwenOCR Deepinfra ====================
QWENOCR_DEEPINFRA_API_KEY=your_qwenocr_api_key
QWENOCR_DEEPINFRA_MODEL=Qwen/Qwen3-VL-235B-A22B-Instruct
QWENOCR_DEEPINFRA_TIMEOUT=600
QWENOCR_DEEPINFRA_MAX_TOKENS=8192
# ==================== Chandra Datalab ====================
CHANDRA_DATALAB_API_KEY=your_chandra_api_key
CHANDRA_DATALAB_OUTPUT_FORMAT=html
CHANDRA_DATALAB_MODE=accurate
CHANDRA_DATALAB_TIMEOUT=600
CHANDRA_DATALAB_POLL_INTERVAL=3
CHANDRA_DATALAB_MAX_RETRIES=2
# ==================== Benz Validation ====================
BENZ_VALIDATION_ENABLED=true
BENZ_VALIDATION_EMAIL_NOTIFICATIONS_ENABLED=true
BENZ_VALIDATION_EMAIL_NOTIFICATIONS_SMTP_SERVER=smtp-relay.brevo.com
BENZ_VALIDATION_EMAIL_NOTIFICATIONS_SMTP_PORT=587
BENZ_VALIDATION_EMAIL_NOTIFICATIONS_SENDER_EMAIL=your_sender_email@example.com
BENZ_VALIDATION_EMAIL_NOTIFICATIONS_RECIPIENT_EMAIL=your_recipient_email@example.com
BENZ_VALIDATION_EMAIL_NOTIFICATIONS_SMTP_USERNAME=your_email_username
BENZ_VALIDATION_EMAIL_NOTIFICATIONS_SMTP_PASSWORD=your_email_password
# ==================== Gemini (Override) ====================
GEMINI_OVERRIDE_API_KEY=your_gemini_override_api_key
GEMINI_OVERRIDE_MODEL=gemini-2.0-flash
GEMINI_OVERRIDE_TIMEOUT_SECONDS=60
GEMINI_OVERRIDE_MAX_RETRIES=3
GEMINI_OVERRIDE_RETRY_DELAY_SECONDS=2
GEMINI_OVERRIDE_TEMPERATURE=0.1
GEMINI_OVERRIDE_MAX_TOKENS=8192
GEMINI_2_0_FLASH_TEMPERATURE=0.1
GEMINI_2_0_FLASH_MAX_TOKENS=8192
GEMINI_2_0_FLASH_TIMEOUT_SECONDS=60
GEMINI_2_5_FLASH_TEMPERATURE=0.1
GEMINI_2_5_FLASH_MAX_TOKENS=65536
GEMINI_2_5_FLASH_TIMEOUT_SECONDS=90
# ==================== Qwen ====================
QWEN_API_KEY=your_qwen_api_key
QWEN_MODEL=Qwen/Qwen2.5-7B-Instruct
QWEN_TIMEOUT=600
QWEN_TEMPERATURE=0.1
QWEN_MAX_TOKENS=8192
QWEN_MAX_RETRIES=3
QWEN_RETRY_DELAY_SECONDS=2