-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathenv.example
More file actions
111 lines (94 loc) · 2.76 KB
/
Copy pathenv.example
File metadata and controls
111 lines (94 loc) · 2.76 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
# HR Matcher Configuration Example
# Copy this file to .env and update with your values
# Application Settings
APP_NAME="HR Matcher"
APP_VERSION="1.0.0"
ENVIRONMENT="development"
DEBUG=true
# Database Configuration
DB_POSTGRES_HOST="localhost"
DB_POSTGRES_PORT=5432
DB_POSTGRES_USER="postgres"
DB_POSTGRES_PASSWORD="your_password_here"
DB_POSTGRES_DATABASE="hr_matcher"
DB_POOL_SIZE=20
DB_MAX_OVERFLOW=10
# Cache Configuration
CACHE_PROVIDER="redis" # Options: redis, memory
CACHE_REDIS_HOST="localhost"
CACHE_REDIS_PORT=6379
CACHE_REDIS_DB=0
CACHE_REDIS_PASSWORD=""
CACHE_DEFAULT_TTL=3600
# Message Queue Configuration
MESSAGING_PROVIDER="kafka" # Options: kafka, memory
MESSAGING_KAFKA_BOOTSTRAP_SERVERS="localhost:9092"
MESSAGING_KAFKA_SECURITY_PROTOCOL="PLAINTEXT"
# Vector Store Configuration
VECTOR_STORE_PROVIDER="chroma"
VECTOR_STORE_PERSIST_DIR="./data/chroma"
VECTOR_STORE_COLLECTION="hr_matcher"
EMBEDDING_MODEL="all-MiniLM-L6-v2"
# LLM Configuration
LLM_PROVIDER="ollama" # Options: ollama, openai, anthropic
LLM_OLLAMA_BASE_URL="http://localhost:11434"
LLM_OLLAMA_MODEL="llama2"
LLM_TEMPERATURE=0.7
LLM_MAX_TOKENS=2000
LLM_TIMEOUT=30
# OpenAI Configuration (if using OpenAI)
# OPENAI_API_KEY="your_openai_api_key"
# OPENAI_MODEL="gpt-3.5-turbo"
# API Configuration
API_HOST="0.0.0.0"
API_PORT=8000
API_WORKERS=4
CORS_ORIGINS=["http://localhost:3000", "http://localhost:8080"]
API_DOCS_URL="/docs"
API_REDOC_URL="/redoc"
# Security
API_KEY_HEADER="X-API-Key"
API_KEYS=["your_api_key_1", "your_api_key_2"]
# Resilience Configuration
RESILIENCE_CIRCUIT_BREAKER_THRESHOLD=5
RESILIENCE_CIRCUIT_BREAKER_TIMEOUT=60.0
RESILIENCE_RATE_LIMIT_REQUESTS=100
RESILIENCE_RATE_LIMIT_WINDOW=60
RESILIENCE_RETRY_MAX_ATTEMPTS=3
# Logging Configuration
LOG_LEVEL="INFO" # Options: DEBUG, INFO, WARNING, ERROR
LOG_FORMAT="json" # Options: json, text
LOG_FILE="./logs/hr_matcher.log"
LOG_MAX_BYTES=10485760 # 10MB
LOG_BACKUP_COUNT=5
# Metrics Configuration
METRICS_ENABLED=true
METRICS_PROVIDER="prometheus" # Options: prometheus, console
PROMETHEUS_PORT=9090
PROMETHEUS_PATH="/metrics"
# External APIs
# LinkedIn OAuth (for official API)
# LINKEDIN_CLIENT_ID="your_linkedin_client_id"
# LINKEDIN_CLIENT_SECRET="your_linkedin_client_secret"
# LINKEDIN_REDIRECT_URI="http://localhost:8000/auth/linkedin/callback"
# Salary API
# SALARY_API_KEY="your_salary_api_key"
# SALARY_API_BASE_URL="https://api.salary.com"
# Matching Configuration
MATCH_SKILL_WEIGHT=0.40
MATCH_EXPERIENCE_WEIGHT=0.30
MATCH_EDUCATION_WEIGHT=0.20
MATCH_LOCATION_WEIGHT=0.10
MIN_MATCH_SCORE=0.5
HIGH_MATCH_THRESHOLD=0.8
USE_SEMANTIC_MATCHING=true
MAX_MATCHES_PER_SEARCH=100
# Feature Flags
ENABLE_MCP_SERVERS=true
ENABLE_LINKEDIN=true
ENABLE_SALARY_RESEARCH=true
ENABLE_ASYNC=true
# Paths
DATA_DIR="./data"
UPLOAD_DIR="./uploads"
TEMP_DIR="./temp"