Files
life-echo/api/.env.example

143 lines
5.9 KiB
Plaintext
Raw Normal View History

# =============================================================================
# Life Echo API environment example
# 复制为 .env 或 .env.production 后按实际环境修改
# 不要把真实密钥提交到仓库
# =============================================================================
# =============================================================================
# LLM / DeepSeek
# =============================================================================
DEEPSEEK_API_KEY=your_deepseek_api_key
DEEPSEEK_BASE_URL=https://api.deepseek.com
DEEPSEEK_MODEL=deepseek-chat
# =============================================================================
# Database
# =============================================================================
# 本地开发示例:
# DATABASE_URL=postgresql://postgres:postgres@localhost:5432/life_echo
# Docker / production 示例:
# DATABASE_URL=postgresql://postgres:postgres@postgres:5432/life_echo
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/life_echo
# =============================================================================
# Redis
# =============================================================================
# 本地开发示例:
# REDIS_URL=redis://localhost:6379/0
# Docker / production 示例:
# REDIS_URL=redis://redis:6379/0
REDIS_URL=redis://localhost:6379/0
REDIS_SESSION_TTL=86400
# =============================================================================
# Auth
# =============================================================================
# 建议使用: openssl rand -hex 32
SECRET_KEY=replace_with_a_strong_random_secret
ALGORITHM=HS256
ACCESS_TOKEN_EXPIRE_MINUTES=120
# =============================================================================
# Tencent SMS
# =============================================================================
TENCENT_SMS_SECRET_ID=your_tencent_sms_secret_id
TENCENT_SMS_SECRET_KEY=your_tencent_sms_secret_key
TENCENT_SMS_SDK_APP_ID=your_sms_sdk_app_id
TENCENT_SMS_SIGN_NAME=your_sms_sign_name
TENCENT_SMS_TEMPLATE_ID=your_sms_template_id
TENCENT_SMS_TEMPLATE_PARAM_COUNT=1
# =============================================================================
# ASR Provider
# whisper | tencent
# =============================================================================
ASR_PROVIDER=whisper
# Whisper ASR
ASR_MODEL_SIZE=small
ASR_DEVICE=cpu
ASR_COMPUTE_TYPE=int8
# Tencent ASR
# 仅在 ASR_PROVIDER=tencent 时需要
TENCENT_SECRET_ID=your_tencent_asr_secret_id
TENCENT_SECRET_KEY=your_tencent_asr_secret_key
# TENCENT_ASR_APP_ID=
# =============================================================================
2026-03-20 15:15:35 +08:00
# TTS文字转语音Agent 回复播音)— 与上方 ASR 完全独立
# =============================================================================
2026-03-20 15:15:35 +08:00
# ENABLE_TTS仅控制是否合成并下发 TTS_AUDIO不影响用户语音转写ASR
# false / 0 / no 关闭语音合成,不调 TTS 厂商 API
ENABLE_TTS=true
TTS_PROVIDER=tencent
# 仅 TTS_PROVIDER=openai 时需要
# OPENAI_API_KEY=your_openai_api_key
2026-03-20 15:15:35 +08:00
# 仅 TTS_PROVIDER=tencent 时生效;密钥变量名可与 ASR 相同,但开关与流程互不关联
# 音色 ID 见 https://cloud.tencent.com/document/product/1073/92668
TTS_VOICE_TYPE=502001
TTS_CODEC=mp3
# =============================================================================
# WeChat Pay
# =============================================================================
WECHAT_PAY_APP_ID=your_wechat_pay_app_id
WECHAT_PAY_MCH_ID=your_wechat_mch_id
WECHAT_PAY_API_V3_KEY=your_wechat_api_v3_key
WECHAT_PAY_PRIVATE_KEY_PATH=certs/apiclient_key.pem
WECHAT_PAY_CERT_SERIAL_NO=your_wechat_cert_serial_no
WECHAT_PAY_NOTIFY_URL=https://your-domain.com/api/payment/notify/wechat
# 可选平台公钥模式
# WECHAT_PAY_PLATFORM_PUBLIC_KEY_PATH=certs/wechat_platform_public_key.pem
# WECHAT_PAY_PLATFORM_PUBLIC_KEY_ID=your_wechat_platform_public_key_id
# =============================================================================
# Alipay
# =============================================================================
ALIPAY_APP_ID=your_alipay_app_id
ALIPAY_PRIVATE_KEY=your_alipay_private_key
ALIPAY_PUBLIC_KEY=your_alipay_public_key
ALIPAY_NOTIFY_URL=https://your-domain.com/api/payment/notify/alipay
# =============================================================================
# Misc
# =============================================================================
ENABLE_TEST_SUBSCRIPTION=0
# =============================================================================
# Memoir image generation
# =============================================================================
MEMOIR_IMAGE_ENABLED=false
MEMOIR_IMAGE_MAX_PER_CHAPTER=2
MEMOIR_IMAGE_POLL_INTERVAL=3
MEMOIR_IMAGE_MAX_ATTEMPTS=20
# 正文越长,可允许更多图片
MEMOIR_IMAGE_CHARS_PER_EXTRA=1500
MEMOIR_IMAGE_MAX_CAP=8
MEMOIR_IMAGE_PROVIDER=liblib
MEMOIR_IMAGE_STYLE_DEFAULT=watercolor
MEMOIR_IMAGE_SIZE_DEFAULT=1280x720
# 可选,限制 Liblib 下载域名
# MEMOIR_IMAGE_DOWNLOAD_HOSTS=liblib.cloud,liblibai.cloud
# =============================================================================
# Liblib image provider
# =============================================================================
LIBLIB_ACCESS_KEY=your_liblib_access_key
LIBLIB_SECRET_KEY=your_liblib_secret_key
LIBLIB_BASE_URL=https://openapi.liblibai.cloud
LIBLIB_TEMPLATE_UUID=your_liblib_template_uuid
# =============================================================================
# Tencent COS for memoir images
# 生产环境请确认这里使用的是生产 bucket而不是开发 bucket
# =============================================================================
TENCENT_COS_SECRET_ID=your_tencent_cos_secret_id
TENCENT_COS_SECRET_KEY=your_tencent_cos_secret_key
TENCENT_COS_REGION=ap-shanghai
TENCENT_COS_BUCKET=your_production_bucket
TENCENT_COS_BASE_URL=https://your_production_bucket.cos.ap-shanghai.myqcloud.com
# 可选临时凭证
# TENCENT_COS_TOKEN=