# ============================================ # Cyrene v2 配置文件 (.env) # 复制为 .env 后修改。所有配置均从环境变量注入,代码内禁硬编码。 # 注意:.env 仅用于本地开发;生产用 systemd / env_file。 # 敏感信息(API Key / JWT_SECRET)一律不要写进日志。 # ============================================ # ---- 运行环境 ---- ENV=development LOG_LEVEL=debug TZ=Asia/Shanghai # ---- 数据目录(未设置时按 OS 惯例解析) ---- DATA_DIR=./data # ---- 服务器(网关,唯一对外端口) ---- HOST=0.0.0.0 PORT=8080 # ---- 认证 / 管理员 ---- # JWT_SECRET 必填,长度 >= 32;缺失或过短会在启动时 panic。 JWT_SECRET=change-me-to-a-random-string-at-least-32-characters ADMIN_USERNAME=admin ADMIN_PASSWORD=admin12345 REGISTRATION_ENABLED=true # ---- 数据库 ---- # SQLite 为默认(单二进制、无需外部服务)。 DB_SQLITE_PATH=./data/cyrene.db # PostgreSQL + pgvector 为可选增强;未配置时走 SQLite。相关向量能力在 M4 接入。 # DB_PG_URL=postgres://cyrene:cyrene_pass@localhost:5432/cyrene_ai?sslmode=disable # ---- LLM 多供应商 ---- LLM_BASE_URL=https://api.openai.com/v1 LLM_API_KEY=sk-xxxxx LLM_MODEL=gpt-4o LLM_FALLBACK_MODEL=gpt-4o-mini # ---- 记忆嵌入(可选) ---- # 不配置时使用内置 n-gram / FTS 向量。配置后必须真实走语义路径(M4 接入)。 # EMBEDDING_API_URL=http://localhost:11434/v1 # EMBEDDING_API_KEY= # EMBEDDING_MODEL=bge-m3 # ---- IoT 设备提供者 ---- # mock = 模拟智能家居设备(开发测试用);none = 禁用 IoT。 IOT_PROVIDER=mock # ---- 语音服务 ---- TTS_PROVIDER=edge-tts STT_PROVIDER=dashscope # DASHSCOPE_API_KEY=sk-xxxxx # ---- 后台思考 ---- ENABLE_BACKGROUND_THINKING=true THINK_INTERVAL_SEC=300 THINK_SILENCE_TIMEOUT_SEC=120 # ---- WebSocket ---- WS_MAX_CONNECTIONS=1000 SESSION_IDLE_TIMEOUT_MIN=30 # ---- 跨域白名单 ---- ALLOWED_ORIGINS=http://localhost:5173,http://localhost:3000