5d2bced39f
- PROGRESS.md: update to 2026-05-29 with security hardening (T-005), 4-frontend architecture, AI provider refactoring, discovery features, landing page/referral/quota, desktop layout, admin AI management - AGENTS.md: add AI provider list (Alibaba/NVIDIA, removed Claude/DeepL/Local), DB-driven config, CSRF/rate-limit/CORS notes, admin_ai reload quirk - .env.example: sync with actual config, replace deprecated providers with current Sensenova/OpencodeGo/NVIDIA/Spark/Alibaba - docs/PROJECT_STATUS.md: archive (fully superseded by PROGRESS.md) - Remove generated JS files (_bing_search.js, _batch_search.js) - Remove empty directories (data/corpus, data/models) - Remove backend/.coverage (test artifact) - Fix services/.gitignore to cover _bing_search.js - Include pending AI provider DB admin feature (admin_ai, AIProvider model, AIProviders.vue, migration) and T-008 test report
87 lines
2.1 KiB
Bash
87 lines
2.1 KiB
Bash
# 应用配置
|
|
APP_NAME=TradeMate
|
|
SECRET_KEY=change-this-to-a-random-secret-key
|
|
JWT_ALGORITHM=HS256
|
|
ACCESS_TOKEN_EXPIRE_MINUTES=60
|
|
REFRESH_TOKEN_EXPIRE_DAYS=30
|
|
|
|
# 数据库
|
|
DATABASE_URL=postgresql+asyncpg://tradmate:tradmate@localhost:5432/tradmate
|
|
|
|
# Redis
|
|
REDIS_URL=redis://localhost:6379/0
|
|
|
|
# Celery
|
|
CELERY_BROKER_URL=redis://localhost:6379/1
|
|
CELERY_RESULT_BACKEND=redis://localhost:6379/2
|
|
|
|
# AI 提供商(至少配置一个以启用 AI 功能)
|
|
# 主提供商: Sensenova (商汤)
|
|
SENSENOVA_API_KEY=
|
|
SENSENOVA_BASE_URL=https://token.sensenova.cn/v1
|
|
SENSENOVA_MODEL=deepseek-v4-flash
|
|
|
|
# Fallback: OpencodeGo
|
|
OPENCODE_GO_API_KEY=
|
|
OPENCODE_GO_BASE_URL=https://opencode.ai/zen/go/v1
|
|
OPENCODE_GO_MODEL=minimax-m2.7
|
|
|
|
# Fallback: NVIDIA
|
|
NVIDIA_API_KEY=
|
|
NVIDIA_BASE_URL=https://integrate.api.nvidia.com/v1
|
|
NVIDIA_MODEL=stepfun-ai/step-3.5-flash
|
|
|
|
# 翻译专用: 阿里机器翻译 (Alibaba MT)
|
|
ALIBABA_ACCESS_KEY_ID=
|
|
ALIBABA_ACCESS_KEY_SECRET=
|
|
|
|
# 讯飞星火 (Spark)
|
|
IFLYTEK_API_KEY=
|
|
IFLYTEK_API_BASE=https://maas-api.cn-huabei-1.xf-yun.com/v2
|
|
IFLYTEK_MODEL=astron-code-latest
|
|
|
|
# 以下提供商已移除(历史遗留):
|
|
# OPENAI_API_KEY, ANTHROPIC_API_KEY, DEEPL_API_KEY, LOCAL_MODEL_ENABLED
|
|
|
|
# Google Custom Search (客户挖掘)
|
|
GOOGLE_API_KEY=
|
|
GOOGLE_CSE_ID=
|
|
|
|
# WhatsApp Cloud API
|
|
WHATSAPP_API_TOKEN=
|
|
WHATSAPP_PHONE_NUMBER_ID=
|
|
WHATSAPP_WEBHOOK_VERIFY_TOKEN=
|
|
|
|
# 微信小程序
|
|
WECHAT_APP_ID=
|
|
WECHAT_APP_SECRET=
|
|
WECHAT_PUSH_TEMPLATE_ID=
|
|
|
|
# 微信支付
|
|
WECHAT_PAY_MCH_ID=
|
|
WECHAT_PAY_API_KEY=
|
|
WECHAT_PAY_SERIAL_NO=
|
|
WECHAT_PAY_CERT_DIR=./certs
|
|
WECHAT_PAY_NOTIFY_URL=https://your-domain.com/api/v1/payment/notify
|
|
WECHAT_PAY_API_BASE=https://api.mch.weixin.qq.com
|
|
|
|
# 汇率 API(免费层即可)
|
|
EXCHANGE_RATE_API_KEY=
|
|
|
|
# 文件存储
|
|
UPLOAD_DIR=./uploads
|
|
MAX_UPLOAD_SIZE=10485760
|
|
|
|
# 错误监控 (Sentry)
|
|
SENTRY_DSN=
|
|
DEBUG=true
|
|
|
|
# URL
|
|
FRONTEND_URL=http://localhost:5173
|
|
BACKEND_URL=http://localhost:8000
|
|
|
|
# Security (CSRF/CORS)
|
|
# CSRF protection is enabled by default
|
|
# Frontend must send X-CSRF-Token header with state-changing requests
|
|
# The token is provided via csrf_token cookie and X-CSRF-Token response header
|