-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
185 lines (139 loc) · 5.74 KB
/
.env.example
File metadata and controls
185 lines (139 loc) · 5.74 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
178
179
180
181
182
183
184
185
# Echo Mind Backend Environment Variables
# Phase 1.1: Backend Architecture Setup
# Copy this file to .env and fill in your actual API keys
# =============================================================================
# REQUIRED API KEYS
# =============================================================================
# Deepgram API Key for Speech-to-Text
# Get your API key from: https://console.deepgram.com/
DEEPGRAM_API_KEY=your_deepgram_api_key_here
# OpenAI API Key for LLM processing
# Get your API key from: https://platform.openai.com/api-keys
OPENAI_API_KEY=your_openai_api_key_here
# ElevenLabs API Key for Text-to-Speech
# Get your API key from: https://elevenlabs.io/
ELEVENLABS_API_KEY=your_elevenlabs_api_key_here
# HeyGen API Key for Avatar Video Generation
# Get your API key from: https://app.heygen.com/
HEYGEN_API_KEY=your_heygen_api_key_here
# Brave Search API Key for Web Search
# Get your API key from: https://api.search.brave.com/
BRAVE_API_KEY=your_brave_api_key_here
# =============================================================================
# SERVER CONFIGURATION
# =============================================================================
# Server host and port
HOST=0.0.0.0
PORT=8000
# Number of worker processes (for production)
WORKERS=1
# Environment (development, staging, production)
ENVIRONMENT=development
# =============================================================================
# AUDIO PROCESSING CONFIGURATION
# =============================================================================
# Voice Activity Detection (VAD) Settings
VAD_MIN_VOLUME=0.6
VAD_START_SECS=0.2
VAD_STOP_SECS=1.2
VAD_CONFIDENCE=0.7
# Audio Buffer Settings (in milliseconds)
AUDIO_BUFFER_THRESHOLD_MS=1000
MIN_AUDIO_DURATION_MS=80
# =============================================================================
# SERVICE CONFIGURATION
# =============================================================================
# Deepgram Configuration
DEEPGRAM_MODEL=nova-2-conversationalai
DEEPGRAM_LANGUAGE=en-US
DEEPGRAM_SAMPLE_RATE=16000
# OpenAI Configuration
OPENAI_MODEL=gpt-4o-mini
OPENAI_MAX_TOKENS=1000
OPENAI_TEMPERATURE=0.7
# ElevenLabs Configuration
ELEVENLABS_VOICE_ID=29vD33N1CtxCmqQRPOHJ
ELEVENLABS_OUTPUT_FORMAT=pcm_24000
ELEVENLABS_STABILITY=0.5
ELEVENLABS_SIMILARITY_BOOST=0.75
ELEVENLABS_OPTIMIZE_LATENCY=4
# HeyGen Configuration
HEYGEN_API_BASE_URL=https://api.heygen.com
HEYGEN_QUALITY=high
HEYGEN_AVATAR_NAME=default_avatar
# =============================================================================
# PERFORMANCE TUNING
# =============================================================================
# Pipeline Settings
ALLOW_INTERRUPTIONS=true
ENABLE_METRICS=true
ENABLE_USAGE_METRICS=true
# WebSocket Settings
WS_PING_INTERVAL=30
WS_PING_TIMEOUT=10
WS_CLOSE_TIMEOUT=10
# =============================================================================
# LOGGING CONFIGURATION
# =============================================================================
# Log level (DEBUG, INFO, WARNING, ERROR, CRITICAL)
LOG_LEVEL=INFO
# Enable structured JSON logging
JSON_LOGGING=false
# Log file path (optional, logs to console if not set)
# LOG_FILE=/var/log/echo-mind/backend.log
# =============================================================================
# CORS CONFIGURATION
# =============================================================================
# Allowed origins for CORS (comma-separated)
# Use "*" for development, specific domains for production
CORS_ORIGINS=*
# =============================================================================
# SECURITY CONFIGURATION
# =============================================================================
# API rate limiting (requests per minute)
RATE_LIMIT_PER_MINUTE=60
# Maximum WebSocket connections per IP
MAX_CONNECTIONS_PER_IP=5
# Session timeout (in seconds)
SESSION_TIMEOUT=3600
# =============================================================================
# MONITORING AND HEALTH CHECKS
# =============================================================================
# Health check endpoint path
HEALTH_CHECK_PATH=/api/v1/health
# Enable Prometheus metrics
ENABLE_PROMETHEUS=false
# Metrics endpoint path
METRICS_PATH=/metrics
# =============================================================================
# DEVELOPMENT SETTINGS
# =============================================================================
# Enable auto-reload in development
AUTO_RELOAD=true
# Enable debug mode
DEBUG=false
# Enable API documentation
ENABLE_DOCS=true
# =============================================================================
# OPTIONAL: CUSTOM TOOL CONFIGURATION
# =============================================================================
# Weather API key (for weather tool - Phase 1.2)
# WEATHER_API_KEY=your_weather_api_key_here
# Calendar API credentials (for calendar tool - Phase 1.2)
# CALENDAR_CLIENT_ID=your_calendar_client_id_here
# CALENDAR_CLIENT_SECRET=your_calendar_client_secret_here
# =============================================================================
# MEMOS REST API CONFIGURATION
# =============================================================================
# memOS REST API Configuration
MEMOS_REST_URL=http://localhost:8080
MEMOS_API_KEY=your_memos_api_key_here
USE_MEMOS=false # Set to true to enable memOS REST API integration
# =============================================================================
# NOTES
# =============================================================================
# 1. Never commit the actual .env file to version control
# 2. Keep your API keys secure and rotate them regularly
# 3. Use different API keys for development and production
# 4. Monitor your API usage to avoid unexpected charges
# 5. Test all integrations before deploying to production